@charset "UTF-8";
:root {
  --transition-speed-slow: 0.5s;
  --transition-speed: 0.3s;
  --transition-speed-fast: 0.2s;
  --bezier: cubic-bezier(0.4, 0, 0.2, 1);
  --color-black: #222;
  --color-text: var(--color-black);
  --color-brand: #CF111BFF;
  --color-secondary: #F5F4F3FF;
  --color-tertiary: #FAE4E4FF;
}

@layer reset, base, swiper, components;
@layer reset {
  html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline;
  }
  html {
    line-height: 1;
  }
  ol, ul {
    list-style: none;
  }
  table {
    border-collapse: collapse;
    border-spacing: 0;
  }
  caption, th, td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle;
  }
  q, blockquote {
    quotes: none;
  }
  q:before, q:after, blockquote:before, blockquote:after {
    content: "";
    content: none;
  }
  a img {
    border: none;
  }
  article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
    display: block;
  }
}
@layer base {
  * {
    box-sizing: border-box;
  }
  *:before,
*:after {
    box-sizing: border-box;
  }
  *:focus {
    outline: none;
  }
  html {
    font-size: calc(16 / 390 * 100vw);
    height: 100%;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
  }
  @media print, screen and (min-width: 768px) {
    html {
      font-size: min(18px, calc(18 / 1440 * 100vw));
    }
  }
  body {
    color: var(--color-text);
    background-color: #fff;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-size: calc(var(--fs-m) / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    body {
      font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    }
  }
  body.is-fixed, body.fixed {
    overflow: hidden;
  }
  :root:has(dialog[open]) {
    overflow: hidden;
    scrollbar-gutter: stable;
  }
  .serif {
    font-family: YakuHanMP, "Noto Serif JP", serif;
  }
  strong {
    font-weight: 700;
  }
  label {
    cursor: pointer;
  }
  a {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
  }
  a[href^="tel:"] {
    color: inherit;
  }
  abbr {
    text-decoration: none;
  }
  button {
    cursor: pointer;
    background: none;
    border: none;
    padding: 0;
    font: inherit;
    color: inherit;
    text-align: inherit;
  }
  @media print, screen and (min-width: 768px) {
    br.sp-only {
      display: none;
    }
  }
  br.pc-only {
    display: none;
  }
  @media print, screen and (min-width: 768px) {
    br.pc-only {
      display: inline;
    }
  }
  :where(button, [type=button], [type=reset], [type=submit]) {
    touch-action: manipulation;
  }
  :where(:-moz-any-link,
button,
[type=button],
[type=reset],
[type=submit],
label[for],
select,
summary,
[role=tab],
[role=button]) {
    cursor: pointer;
  }
  :where(:any-link,
button,
[type=button],
[type=reset],
[type=submit],
label[for],
select,
summary,
[role=tab],
[role=button]) {
    cursor: pointer;
  }
  :focus:not(:focus-visible) {
    outline: none;
  }
  sup,
sub {
    height: 0;
    line-height: 1;
    vertical-align: baseline;
    position: relative;
    font-size: 0.75em;
  }
  sup {
    bottom: 0.75ex;
  }
  sub {
    top: 0.5ex;
  }
  img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
  }
  .svg_def {
    display: none;
  }
  svg {
    height: auto;
  }
  pre {
    white-space: pre-wrap;
  }
  html.lenis,
html.lenis body {
    height: auto;
  }
  .lenis.lenis-smooth {
    scroll-behavior: auto !important;
  }
  .lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
  }
  .lenis.lenis-stopped {
    overflow: hidden;
  }
  .lenis.lenis-scrolling iframe {
    pointer-events: none;
  }
  html.is-changing .transition-fade {
    transition: opacity 0.5s;
    opacity: 1;
  }
  html.is-animating .transition-fade {
    transition: opacity 0.5s;
    opacity: 0;
  }
  .pc-only {
    display: none;
  }
  @media print, screen and (min-width: 768px) {
    .pc-only {
      display: inline;
    }
  }
  .sp-only {
    display: inline;
  }
  @media print, screen and (min-width: 768px) {
    .sp-only {
      display: none;
    }
  }
  .hidden-sp {
    display: none;
  }
  @media print, screen and (min-width: 768px) {
    .hidden-sp {
      display: unset;
    }
  }
  @media print, screen and (min-width: 768px) {
    .hidden-pc {
      display: none;
    }
  }
  @media print, screen and (min-width: 1080px) {
    .hidden-over-tbl {
      display: none;
    }
  }
  @media print, screen and (min-width: 768px) {
    .hidden-over-tb {
      display: none;
    }
  }
  @media print, screen and (min-width: 375px) {
    .hidden-over-sp {
      display: none;
    }
  }
  .visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
}
@layer swiper {
  /**
   * Swiper 11.1.14
   * Most modern mobile touch slider and framework with hardware accelerated transitions
   * https://swiperjs.com
   *
   * Copyright 2014-2024 Vladimir Kharlampidi
   *
   * Released under the MIT License
   *
   * Released on: September 12, 2024
   */
  @font-face {
    font-family: swiper-icons;
    src: url("data:application/font-woff;charset=utf-8;base64, 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");
    font-weight: 400;
    font-style: normal;
  }
  :root {
    --swiper-theme-color:#007aff;
  }
  :host {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    z-index: 1;
  }
  .swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block;
  }
  .swiper-vertical > .swiper-wrapper {
    flex-direction: column;
  }
  .swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    box-sizing: content-box;
  }
  .swiper-android .swiper-slide, .swiper-ios .swiper-slide, .swiper-wrapper {
    transform: translate3d(0px, 0, 0);
  }
  .swiper-horizontal {
    touch-action: pan-y;
  }
  .swiper-vertical {
    touch-action: pan-x;
  }
  .swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
    display: block;
  }
  .swiper-slide-invisible-blank {
    visibility: hidden;
  }
  .swiper-autoheight, .swiper-autoheight .swiper-slide {
    height: auto;
  }
  .swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height;
  }
  .swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    backface-visibility: hidden;
  }
  .swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px;
  }
  .swiper-3d .swiper-wrapper {
    transform-style: preserve-3d;
  }
  .swiper-3d {
    perspective: 1200px;
  }
  .swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide {
    transform-style: preserve-3d;
  }
  .swiper-css-mode > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
    display: none;
  }
  .swiper-css-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
  }
  .swiper-css-mode.swiper-horizontal > .swiper-wrapper {
    scroll-snap-type: x mandatory;
  }
  .swiper-css-mode.swiper-vertical > .swiper-wrapper {
    scroll-snap-type: y mandatory;
  }
  .swiper-css-mode.swiper-free-mode > .swiper-wrapper {
    scroll-snap-type: none;
  }
  .swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: none;
  }
  .swiper-css-mode.swiper-centered > .swiper-wrapper::before {
    content: "";
    flex-shrink: 0;
    order: 9999;
  }
  .swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always;
  }
  .swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before);
  }
  .swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after);
  }
  .swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before);
  }
  .swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after);
  }
  .swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
  }
  .swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, 0.15);
  }
  .swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent;
  }
  .swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear;
  }
  .swiper-lazy-preloader-white {
    --swiper-preloader-color:#fff;
  }
  .swiper-lazy-preloader-black {
    --swiper-preloader-color:#000;
  }
  @keyframes swiper-preloader-spin {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  .swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    transform: translateZ(0);
  }
  .swiper-virtual.swiper-css-mode .swiper-wrapper::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
  }
  .swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
    height: 1px;
    width: var(--swiper-virtual-size);
  }
  .swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
    width: 1px;
    height: var(--swiper-virtual-size);
  }
  :root {
    --swiper-navigation-size:44px;
  }
  .swiper-button-next, .swiper-button-prev {
    position: absolute;
    top: var(--swiper-navigation-top-offset, 50%);
    width: calc(var(--swiper-navigation-size) / 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - var(--swiper-navigation-size) / 2);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color));
  }
  .swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
  }
  .swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none;
  }
  .swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
    display: none !important;
  }
  .swiper-button-next svg, .swiper-button-prev svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    transform-origin: center;
  }
  .swiper-rtl .swiper-button-next svg, .swiper-rtl .swiper-button-prev svg {
    transform: rotate(180deg);
  }
  .swiper-button-prev, .swiper-rtl .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 10px);
    right: auto;
  }
  .swiper-button-next, .swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto;
  }
  .swiper-button-lock {
    display: none;
  }
  .swiper-button-next:after, .swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1;
  }
  .swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
    content: "prev";
  }
  .swiper-button-next, .swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto;
  }
  .swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
    content: "next";
  }
  .swiper-pagination {
    position: absolute;
    text-align: center;
    transition: 0.3s opacity;
    transform: translate3d(0, 0, 0);
    z-index: 10;
  }
  .swiper-pagination.swiper-pagination-hidden {
    opacity: 0;
  }
  .swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
    display: none !important;
  }
  .swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: var(--swiper-pagination-bottom, 8px);
    top: var(--swiper-pagination-top, auto);
    left: 0;
    width: 100%;
  }
  .swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0;
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative;
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    transform: scale(1);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
  }
  .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
  }
  .swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
    display: inline-block;
    border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
    background: var(--swiper-pagination-bullet-inactive-color, #000);
    opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
  }
  button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
  .swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer;
  }
  .swiper-pagination-bullet:only-child {
    display: none !important;
  }
  .swiper-pagination-bullet-active {
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
  }
  .swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets {
    right: var(--swiper-pagination-right, 8px);
    left: var(--swiper-pagination-left, auto);
    top: 50%;
    transform: translate3d(0px, -50%, 0);
  }
  .swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block;
  }
  .swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
  }
  .swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: 0.2s transform, 0.2s top;
  }
  .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
  }
  .swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
  }
  .swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 0.2s transform, 0.2s left;
  }
  .swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 0.2s transform, 0.2s right;
  }
  .swiper-pagination-fraction {
    color: var(--swiper-pagination-fraction-color, inherit);
  }
  .swiper-pagination-progressbar {
    background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
    position: absolute;
  }
  .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
  }
  .swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top;
  }
  .swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0;
  }
  .swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical > .swiper-pagination-progressbar {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0;
  }
  .swiper-pagination-lock {
    display: none;
  }
  .swiper-scrollbar {
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    position: relative;
    touch-action: none;
    background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
  }
  .swiper-scrollbar-disabled > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-disabled {
    display: none !important;
  }
  .swiper-horizontal > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
    position: absolute;
    left: var(--swiper-scrollbar-sides-offset, 1%);
    bottom: var(--swiper-scrollbar-bottom, 4px);
    top: var(--swiper-scrollbar-top, auto);
    z-index: 50;
    height: var(--swiper-scrollbar-size, 4px);
    width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
  }
  .swiper-scrollbar.swiper-scrollbar-vertical, .swiper-vertical > .swiper-scrollbar {
    position: absolute;
    left: var(--swiper-scrollbar-left, auto);
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    z-index: 50;
    width: var(--swiper-scrollbar-size, 4px);
    height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
  }
  .swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    left: 0;
    top: 0;
  }
  .swiper-scrollbar-cursor-drag {
    cursor: move;
  }
  .swiper-scrollbar-lock {
    display: none;
  }
  .swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
  }
  .swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
  }
  .swiper-slide-zoomed {
    cursor: move;
    touch-action: none;
  }
  .swiper .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000;
  }
  .swiper-free-mode > .swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto;
  }
  .swiper-grid > .swiper-wrapper {
    flex-wrap: wrap;
  }
  .swiper-grid-column > .swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column;
  }
  .swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out;
  }
  .swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
  }
  .swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none;
  }
  .swiper-fade .swiper-slide-active {
    pointer-events: auto;
  }
  .swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
  }
  .swiper.swiper-cube {
    overflow: visible;
  }
  .swiper-cube .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%;
  }
  .swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none;
  }
  .swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0;
  }
  .swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
  }
  .swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-next, .swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible;
  }
  .swiper-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    opacity: 0.6;
    z-index: 0;
  }
  .swiper-cube .swiper-cube-shadow:before {
    content: "";
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    filter: blur(50px);
  }
  .swiper-cube .swiper-slide-next + .swiper-slide {
    pointer-events: auto;
    visibility: visible;
  }
  .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
    z-index: 0;
    backface-visibility: hidden;
  }
  .swiper.swiper-flip {
    overflow: visible;
  }
  .swiper-flip .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
  }
  .swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none;
  }
  .swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
  }
  .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
    z-index: 0;
    backface-visibility: hidden;
  }
  .swiper-creative .swiper-slide {
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height;
  }
  .swiper.swiper-cards {
    overflow: visible;
  }
  .swiper-cards .swiper-slide {
    transform-origin: center bottom;
    backface-visibility: hidden;
    overflow: hidden;
  }
}
@layer components {
  #hero {
    background-image: url(../images/hero_bg.webp);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: calc(618 / 390 * 100vw);
    padding: calc(16 / 390 * 100vw) 0 0 calc(26 / 390 * 100vw);
    position: relative;
  }
  @media print, screen and (min-width: 768px) {
    #hero {
      background-image: url(../images/hero_bg_pc.webp);
      padding: min(44px, calc(44 / 1440 * 100vw)) 0 0 0;
      height: auto;
    }
  }
  @media print, screen and (min-width: 768px) {
    #hero .inner {
      width: min(1046px, calc(1046 / 1440 * 100vw));
      height: min(734px, calc(734 / 1440 * 100vw));
      margin-inline: auto;
      position: relative;
    }
  }
  #hero .logo {
    position: absolute;
    top: calc(28 / 390 * 100vw);
    left: calc(34 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #hero .logo {
      position: static;
    }
  }
  #hero .logo img {
    width: calc(100 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #hero .logo img {
      width: min(152px, calc(152 / 1440 * 100vw));
    }
  }
  #hero .lead {
    padding-right: calc(17 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #hero .lead {
      padding-right: unset;
      margin-top: min(19px, calc(19 / 1440 * 100vw));
      display: flex;
      flex-direction: row-reverse;
      align-items: center;
      justify-content: flex-end;
      gap: min(24px, calc(24 / 1440 * 100vw));
    }
  }
  #hero .lead .badge {
    text-align: right;
  }
  @media print, screen and (min-width: 768px) {
    #hero .lead .badge {
      text-align: left;
    }
  }
  #hero .lead .badge img {
    width: calc(179 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #hero .lead .badge img {
      width: min(227px, calc(227 / 1440 * 100vw));
    }
  }
  #hero .lead p {
    margin-top: calc(24 / 390 * 100vw);
    font-size: calc(18 / 390 * 100vw);
    font-weight: 500;
    color: #fff;
  }
  @media print, screen and (min-width: 768px) {
    #hero .lead p {
      margin-top: unset;
      font-size: min(26px, calc(26 / 1440 * 100vw));
    }
  }
  #hero h1 {
    margin-top: calc(14 / 390 * 100vw);
    font-size: calc(30 / 390 * 100vw);
    font-weight: 500;
    color: #fff;
    line-height: 1.5;
  }
  @media print, screen and (min-width: 768px) {
    #hero h1 {
      margin-top: max(-24px, calc(-24 / 1440 * 100vw));
      font-size: min(54px, calc(54 / 1440 * 100vw));
    }
  }
  #hero h2 {
    margin-top: calc(32 / 390 * 100vw);
    color: #946916;
    font-size: calc(17 / 390 * 100vw);
    font-weight: 600;
    line-height: 180%;
  }
  @media print, screen and (min-width: 768px) {
    #hero h2 {
      margin-top: min(43px, calc(43 / 1440 * 100vw));
      font-size: min(30px, calc(30 / 1440 * 100vw));
      display: flex;
      gap: min(15px, calc(15 / 1440 * 100vw));
    }
  }
  #hero h2 span {
    display: block;
    padding: calc(1 / 390 * 100vw) calc(8 / 390 * 100vw);
    display: block;
    width: calc(174 / 390 * 100vw);
    text-align: center;
    background-color: #fff;
    color: #946916;
  }
  @media print, screen and (min-width: 768px) {
    #hero h2 span {
      padding: min(1px, calc(1 / 1440 * 100vw)) min(8px, calc(8 / 1440 * 100vw));
      width: -moz-fit-content;
      width: fit-content;
    }
  }
  #hero h2 span:last-child {
    margin-top: calc(12 / 390 * 100vw);
    background: linear-gradient(108deg, #DECBA3 13.52%, #F8EACF 50.01%, #DBC39E 89.42%);
  }
  @media print, screen and (min-width: 768px) {
    #hero h2 span:last-child {
      margin-top: unset;
    }
  }
  #hero .character {
    position: absolute;
    width: calc(120 / 390 * 100vw);
    bottom: 0;
    left: calc(48 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #hero .character {
      width: min(256px, calc(256 / 1440 * 100vw));
      left: auto;
      right: 0;
      translate: min(78px, calc(78 / 1440 * 100vw)) 0;
    }
  }
  .headingLarge {
    color: #876828;
    text-align: center;
    font-size: calc(26 / 390 * 100vw);
    font-weight: 600;
    line-height: 120%;
  }
  @media print, screen and (min-width: 768px) {
    .headingLarge {
      font-size: min(36px, calc(36 / 1440 * 100vw));
    }
  }
  .headingLarge span {
    color: var(--color-text);
  }
  #marketprice {
    margin-top: calc(51 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #marketprice {
      margin-top: min(79px, calc(79 / 1440 * 100vw));
    }
  }
  #marketprice .inner {
    padding-inline: calc(14 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #marketprice .inner {
      padding-inline: unset;
      width: min(700px, calc(700 / 1440 * 100vw));
      margin-inline: auto;
    }
  }
  #marketprice .inner p {
    margin-top: calc(2 / 390 * 100vw);
    font-size: calc(16 / 390 * 100vw);
    font-weight: 600;
    line-height: 150%;
    text-align: center;
    color: #876828;
  }
  @media print, screen and (min-width: 768px) {
    #marketprice .inner p {
      margin-top: min(4px, calc(4 / 1440 * 100vw));
      font-size: min(20px, calc(20 / 1440 * 100vw));
    }
  }
  #marketprice .inner table {
    margin-top: calc(15 / 390 * 100vw);
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--color-black);
  }
  @media print, screen and (min-width: 768px) {
    #marketprice .inner table {
      margin-top: min(25px, calc(25 / 1440 * 100vw));
    }
  }
  #marketprice .inner table tr:not(:last-child) {
    border-bottom: 1px solid var(--color-black);
  }
  #marketprice .inner table tr th {
    white-space: nowrap;
    padding: calc(25 / 390 * 100vw) calc(20 / 390 * 100vw);
    font-size: calc(20 / 390 * 100vw);
    font-weight: 600;
  }
  @media print, screen and (min-width: 768px) {
    #marketprice .inner table tr th {
      padding: min(35px, calc(35 / 1440 * 100vw)) min(24px, calc(24 / 1440 * 100vw)) min(35px, calc(35 / 1440 * 100vw)) min(52px, calc(52 / 1440 * 100vw));
      font-size: min(28px, calc(28 / 1440 * 100vw));
    }
  }
  #marketprice .inner table tr td {
    white-space: nowrap;
    padding: calc(25 / 390 * 100vw) calc(20 / 390 * 100vw);
    text-align: right;
  }
  @media print, screen and (min-width: 768px) {
    #marketprice .inner table tr td {
      padding: min(35px, calc(35 / 1440 * 100vw)) min(42px, calc(42 / 1440 * 100vw)) min(35px, calc(35 / 1440 * 100vw)) min(24px, calc(24 / 1440 * 100vw));
    }
  }
  #marketprice .inner table tr td strong {
    font-size: calc(28 / 390 * 100vw);
    font-weight: 600;
  }
  @media print, screen and (min-width: 768px) {
    #marketprice .inner table tr td strong {
      font-size: min(40px, calc(40 / 1440 * 100vw));
    }
  }
  #marketprice .inner table tr td span {
    font-size: calc(20 / 390 * 100vw);
    font-weight: 600;
  }
  @media print, screen and (min-width: 768px) {
    #marketprice .inner table tr td span {
      font-size: min(28px, calc(28 / 1440 * 100vw));
    }
  }
  #marketprice .inner .note {
    margin-top: calc(13 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #marketprice .inner .note {
      margin-top: min(19px, calc(19 / 1440 * 100vw));
    }
  }
  #marketprice .inner .note li {
    font-size: calc(12 / 390 * 100vw);
    line-height: 133%;
    text-align: center;
  }
  @media print, screen and (min-width: 768px) {
    #marketprice .inner .note li {
      font-size: min(14px, calc(14 / 1440 * 100vw));
    }
  }
  #marketprice .inner .note li::before {
    content: "※";
  }
  #achievements {
    margin-top: calc(57 / 390 * 100vw);
    background-image: url(../images/achievements_bg.webp);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding-block: calc(44 / 390 * 100vw) calc(64 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #achievements {
      margin-top: min(91px, calc(91 / 1440 * 100vw));
      background-image: url(../images/achievements_bg_pc.webp);
      padding-block: min(84px, calc(84 / 1440 * 100vw)) min(98px, calc(98 / 1440 * 100vw));
    }
  }
  #achievements .inner {
    padding-inline: calc(12 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #achievements .inner {
      padding-inline: unset;
      width: min(1024px, calc(1024 / 1440 * 100vw));
      margin-inline: auto;
    }
  }
  #achievements .inner .list {
    margin-top: calc(35 / 390 * 100vw);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(14 / 390 * 100vw) calc(12 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #achievements .inner .list {
      margin-top: min(56px, calc(56 / 1440 * 100vw));
      grid-template-columns: repeat(3, 1fr);
      gap: min(80px, calc(80 / 1440 * 100vw)) min(50px, calc(50 / 1440 * 100vw));
    }
  }
  #achievements .inner .list .unit {
    background-color: #fff;
    padding: calc(10 / 390 * 100vw) calc(10 / 390 * 100vw) calc(20 / 390 * 100vw);
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    gap: 0;
  }
  @media print, screen and (min-width: 768px) {
    #achievements .inner .list .unit {
      padding: unset;
      background-color: transparent;
    }
  }
  #achievements .inner .list .unit figure img {
    width: 100%;
    height: auto;
  }
  #achievements .inner .list .unit figure figcaption {
    margin-top: calc(10 / 390 * 100vw);
    font-size: calc(14 / 390 * 100vw);
    font-weight: 600;
    line-height: 157%;
  }
  @media print, screen and (min-width: 768px) {
    #achievements .inner .list .unit figure figcaption {
      margin-top: min(15px, calc(15 / 1440 * 100vw));
      font-size: min(16px, calc(16 / 1440 * 100vw));
    }
  }
  #achievements .inner .list .unit dl {
    margin-top: calc(10 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #achievements .inner .list .unit dl {
      margin-top: min(15px, calc(15 / 1440 * 100vw));
      display: flex;
      align-items: center;
      justify-content: space-between;
    }
  }
  #achievements .inner .list .unit dl dt {
    font-size: calc(13 / 390 * 100vw);
    font-weight: 600;
    border-radius: calc(2 / 390 * 100vw);
    background: #A02D04;
    width: -moz-fit-content;
    width: fit-content;
    padding: calc(2 / 390 * 100vw) calc(8 / 390 * 100vw) calc(3 / 390 * 100vw);
    color: #fff;
  }
  @media print, screen and (min-width: 768px) {
    #achievements .inner .list .unit dl dt {
      font-size: min(16px, calc(16 / 1440 * 100vw));
      padding: min(2px, calc(2 / 1440 * 100vw)) min(8px, calc(8 / 1440 * 100vw)) min(3px, calc(3 / 1440 * 100vw));
      border-radius: 0;
    }
  }
  #achievements .inner .list .unit dl dd {
    margin-top: calc(10 / 390 * 100vw);
    font-size: calc(16 / 390 * 100vw);
    font-weight: 500;
    color: #A02D04;
    text-align: right;
  }
  @media print, screen and (min-width: 768px) {
    #achievements .inner .list .unit dl dd {
      margin-top: unset;
      font-size: min(28px, calc(28 / 1440 * 100vw));
    }
  }
  #achievements .inner .list .unit dl dd strong {
    font-size: calc(22 / 390 * 100vw);
    font-weight: 600;
  }
  @media print, screen and (min-width: 768px) {
    #achievements .inner .list .unit dl dd strong {
      font-size: min(34px, calc(34 / 1440 * 100vw));
    }
  }
  .area_safety {
    background: linear-gradient(108deg, #DECBA3 13.52%, #F8EACF 50.01%, #DBC39E 89.42%);
    padding-block: calc(52 / 390 * 100vw) calc(57 / 390 * 100vw);
    position: relative;
  }
  @media print, screen and (min-width: 768px) {
    .area_safety {
      padding-block: min(76px, calc(76 / 1440 * 100vw)) 0;
    }
  }
  .area_safety .inner {
    padding-inline: calc(20 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner {
      padding-inline: unset;
      width: min(890px, calc(890 / 1440 * 100vw));
      margin-inline: auto;
      position: relative;
      padding-bottom: min(57px, calc(57 / 1440 * 100vw));
    }
  }
  .area_safety .inner .top {
    margin-top: calc(27 / 390 * 100vw);
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: calc(7 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .top {
      margin-top: min(61px, calc(61 / 1440 * 100vw));
      grid-template-columns: repeat(3, 1fr);
      gap: min(25px, calc(25 / 1440 * 100vw));
    }
  }
  .area_safety .inner .top .unit {
    border-radius: calc(8 / 390 * 100vw);
    background: #FFF;
    filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.25));
    display: grid;
    grid-template: "icon title" auto "content content" auto/calc(104 / 390 * 100vw) 1fr;
    gap: 0;
    padding-block: calc(19 / 390 * 100vw) calc(13 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .top .unit {
      display: grid;
      grid-template-rows: subgrid;
      grid-template-columns: none;
      grid-template-areas: none;
      grid-row: span 3;
      border-radius: min(8px, calc(8 / 1440 * 100vw));
      box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.25);
      padding-block: 0 min(27px, calc(27 / 1440 * 100vw));
    }
  }
  .area_safety .inner .top .unit .icon {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    grid-area: icon;
    align-self: center;
    text-align: right;
    padding-bottom: calc(10 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .top .unit .icon {
      grid-area: unset;
      padding-bottom: unset;
      text-align: center;
      translate: 0 max(-17px, calc(-17 / 1440 * 100vw));
    }
  }
  .area_safety .inner .top .unit .icon img {
    width: calc(88 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .top .unit .icon img {
      width: min(96px, calc(96 / 1440 * 100vw));
    }
  }
  .area_safety .inner .top .unit h3 {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    grid-area: title;
    font-size: calc(20 / 390 * 100vw);
    font-weight: 600;
    line-height: 156%;
    text-align: center;
    align-self: center;
    padding-bottom: calc(10 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .top .unit h3 {
      grid-area: unset;
      font-size: min(26px, calc(26 / 1440 * 100vw));
      padding-bottom: unset;
      line-height: 123%;
    }
  }
  .area_safety .inner .top .unit p {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
    grid-area: content;
    border-top: 1px solid #966B33;
    text-align: center;
    padding: calc(5 / 390 * 100vw) calc(5 / 390 * 100vw) 0;
    font-size: calc(14 / 390 * 100vw);
    font-weight: 600;
    line-height: 180%;
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .top .unit p {
      margin-top: min(12px, calc(12 / 1440 * 100vw));
      grid-area: unset;
      font-size: min(16px, calc(16 / 1440 * 100vw));
      padding: unset;
      line-height: 175%;
      border-top: unset;
    }
  }
  .area_safety .inner .middle {
    margin-top: calc(8 / 390 * 100vw);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(8 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .middle {
      margin-top: min(30px, calc(30 / 1440 * 100vw));
      gap: min(22px, calc(22 / 1440 * 100vw));
    }
  }
  .area_safety .inner .middle .unit {
    border-radius: calc(8 / 390 * 100vw);
    background: #FFF;
    filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.25));
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    gap: 0;
    text-align: center;
    padding-block: calc(19 / 390 * 100vw) calc(17 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .middle .unit {
      border-radius: min(8px, calc(8 / 1440 * 100vw));
      box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.25);
      padding-block: min(35px, calc(35 / 1440 * 100vw));
      padding-inline: min(20px, calc(20 / 1440 * 100vw));
      display: flex;
      align-items: center;
      justify-content: center;
      gap: min(24px, calc(24 / 1440 * 100vw));
    }
  }
  .area_safety .inner .middle .unit h3 {
    color: #876828;
    text-align: center;
    font-size: calc(20 / 390 * 100vw);
    font-weight: 600;
    line-height: 130%;
    align-self: center;
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .middle .unit h3 {
      font-size: min(26px, calc(26 / 1440 * 100vw));
      line-height: 123%;
    }
  }
  .area_safety .inner .middle .unit .icon {
    margin-top: calc(12 / 390 * 100vw);
    align-self: center;
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .middle .unit .icon {
      margin-top: unset;
    }
  }
  .area_safety .inner .middle .unit .icon img.zero {
    width: calc(73 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .middle .unit .icon img.zero {
      width: min(119px, calc(119 / 1440 * 100vw));
    }
  }
  .area_safety .inner .middle .unit .icon img.ok {
    width: calc(94 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .middle .unit .icon img.ok {
      width: min(155px, calc(155 / 1440 * 100vw));
      margin-left: min(14px, calc(14 / 1440 * 100vw));
    }
  }
  .area_safety .inner .bottom {
    margin-top: calc(36 / 390 * 100vw);
    padding-left: calc(10 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .bottom {
      margin-top: min(57px, calc(57 / 1440 * 100vw));
      padding-left: min(145px, calc(145 / 1440 * 100vw));
    }
  }
  .area_safety .inner .bottom p {
    color: #876828;
    font-size: calc(16 / 390 * 100vw);
    font-weight: 500;
    line-height: 1.5;
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .bottom p {
      font-size: min(24px, calc(24 / 1440 * 100vw));
      line-height: 141%;
    }
  }
  .area_safety .inner .image {
    position: absolute;
    right: calc(22 / 390 * 100vw);
    bottom: 0;
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .image {
      right: min(109px, calc(109 / 1440 * 100vw));
    }
  }
  .area_safety .inner .image img {
    width: calc(138 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_safety .inner .image img {
      width: min(209px, calc(209 / 1440 * 100vw));
    }
  }
  #why {
    background-color: #EDEAE4;
    padding-block: calc(42 / 390 * 100vw);
    margin-top: calc(58 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #why {
      padding-block: min(100px, calc(100 / 1440 * 100vw));
      margin-top: min(91px, calc(91 / 1440 * 100vw));
    }
  }
  #why .inner {
    padding-inline: calc(23 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #why .inner {
      padding-inline: unset;
      width: min(1020px, calc(1020 / 1440 * 100vw));
      margin-inline: auto;
    }
  }
  #why .inner .swiper {
    margin-top: calc(38 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #why .inner .swiper {
      margin-top: min(48px, calc(48 / 1440 * 100vw));
    }
  }
  #why .inner .swiper .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
  @media print, screen and (min-width: 768px) {
    #why .inner .swiper .swiper-wrapper {
      gap: min(30px, calc(30 / 1440 * 100vw));
    }
  }
  #why .inner .swiper .unit {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    height: auto;
    padding-inline: calc(12 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #why .inner .swiper .unit {
      padding-inline: unset;
      gap: 0;
    }
  }
  #why .inner .swiper .unit .num {
    color: #FFF;
    text-align: center;
    font-size: calc(16 / 390 * 100vw);
    font-weight: 600;
    background-color: #C69C6B;
    border-radius: 999px;
    position: relative;
    z-index: 2;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
    padding: calc(8 / 390 * 100vw) calc(32 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #why .inner .swiper .unit .num {
      font-size: min(18px, calc(18 / 1440 * 100vw));
      padding: min(10px, calc(10 / 1440 * 100vw)) min(40px, calc(40 / 1440 * 100vw));
    }
  }
  #why .inner .swiper .unit .unitinner {
    border: 1px solid #C69C6B;
    background-color: #fff;
    translate: 0 calc(-17 / 390 * 100vw);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  @media print, screen and (min-width: 768px) {
    #why .inner .swiper .unit .unitinner {
      translate: 0 max(-19px, calc(-19 / 1440 * 100vw));
    }
  }
  #why .inner .swiper .unit .unitinner .text {
    padding: calc(50 / 390 * 100vw) calc(38 / 390 * 100vw) calc(20 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #why .inner .swiper .unit .unitinner .text {
      padding: min(50px, calc(50 / 1440 * 100vw)) min(38px, calc(38 / 1440 * 100vw)) min(20px, calc(20 / 1440 * 100vw));
    }
  }
  #why .inner .swiper .unit .unitinner .text h3 {
    font-size: calc(22 / 390 * 100vw);
    font-weight: 600;
    line-height: 172.727%;
  }
  @media print, screen and (min-width: 768px) {
    #why .inner .swiper .unit .unitinner .text h3 {
      font-size: min(24px, calc(24 / 1440 * 100vw));
    }
  }
  #why .inner .swiper .unit .unitinner .text .lead {
    margin-top: calc(20 / 390 * 100vw);
    font-size: calc(16 / 390 * 100vw);
    line-height: 200%;
  }
  @media print, screen and (min-width: 768px) {
    #why .inner .swiper .unit .unitinner .text .lead {
      margin-top: min(20px, calc(20 / 1440 * 100vw));
      font-size: min(16px, calc(16 / 1440 * 100vw));
    }
  }
  #why .inner .swiper .swiper-pagination {
    margin-top: calc(24 / 390 * 100vw);
    position: static;
  }
  @media print, screen and (min-width: 768px) {
    #why .inner .swiper .swiper-pagination {
      display: none;
    }
  }
  #why .inner .swiper .swiper-pagination .swiper-pagination-bullet {
    width: calc(10 / 390 * 100vw);
    height: calc(10 / 390 * 100vw);
    background-color: transparent;
    border: 1px solid var(--color-black);
    margin-inline: calc(12 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #why .inner .swiper .swiper-pagination .swiper-pagination-bullet {
      width: min(10px, calc(10 / 1440 * 100vw));
      height: min(10px, calc(10 / 1440 * 100vw));
    }
  }
  #why .inner .swiper .swiper-pagination .swiper-pagination-bullet-active {
    background-color: var(--color-black);
  }
  #conditions {
    margin-top: calc(70 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #conditions {
      margin-top: min(90px, calc(90 / 1440 * 100vw));
    }
  }
  #conditions .inner {
    padding-inline: calc(13 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #conditions .inner {
      padding-inline: unset;
      width: min(843px, calc(843 / 1440 * 100vw));
      margin-inline: auto;
    }
  }
  #conditions .inner .list {
    margin-top: calc(38 / 390 * 100vw);
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: calc(8 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #conditions .inner .list {
      margin-top: min(62px, calc(62 / 1440 * 100vw));
      gap: min(8px, calc(8 / 1440 * 100vw));
    }
  }
  #conditions .inner .list li figure {
    display: flex;
    align-items: stretch;
    gap: calc(6 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #conditions .inner .list li figure {
      gap: 0;
    }
  }
  #conditions .inner .list li figure img {
    width: calc(167 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #conditions .inner .list li figure img {
      width: min(169px, calc(169 / 1440 * 100vw));
    }
  }
  #conditions .inner .list li figure figcaption {
    width: 100%;
    padding-left: calc(8 / 390 * 100vw);
    display: block;
    font-size: calc(16 / 390 * 100vw);
    font-weight: 600;
    line-height: 162%;
    border-bottom: 1px solid var(--color-black);
    display: flex;
    align-items: center;
  }
  @media print, screen and (min-width: 768px) {
    #conditions .inner .list li figure figcaption {
      padding-left: min(30px, calc(30 / 1440 * 100vw));
      font-size: min(26px, calc(26 / 1440 * 100vw));
    }
  }
  #reasons {
    margin-top: calc(84 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #reasons {
      margin-top: min(184px, calc(184 / 1440 * 100vw));
    }
  }
  #reasons .header {
    display: grid;
    grid-template-columns: auto auto auto;
    justify-content: center;
    align-items: center;
    gap: calc(20 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #reasons .header {
      gap: min(40px, calc(40 / 1440 * 100vw));
    }
  }
  #reasons .header::before, #reasons .header::after {
    display: block;
    content: "";
    width: 1px;
    height: calc(100 / 390 * 100vw);
    background-color: #AF8F50;
    transform-origin: center;
  }
  @media print, screen and (min-width: 768px) {
    #reasons .header::before, #reasons .header::after {
      height: min(130px, calc(130 / 1440 * 100vw));
    }
  }
  #reasons .header::before {
    rotate: z -30deg;
  }
  #reasons .header::after {
    rotate: z 30deg;
  }
  #reasons .header .headingLarge {
    translate: 0 calc(-10 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #reasons .header .headingLarge {
      translate: 0 max(-10px, calc(-10 / 1440 * 100vw));
    }
  }
  #reasons .list {
    margin-top: calc(22 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #reasons .list {
      margin-top: min(47px, calc(47 / 1440 * 100vw));
    }
  }
  #reasons .list .unit {
    background-color: #F6F2E8;
    padding-bottom: calc(44 / 390 * 100vw);
    position: relative;
  }
  @media print, screen and (min-width: 768px) {
    #reasons .list .unit {
      padding-block: min(65px, calc(65 / 1440 * 100vw)) min(52px, calc(52 / 1440 * 100vw));
    }
  }
  @media print, screen and (min-width: 768px) {
    #reasons .list .unit:nth-child(even) .text {
      translate: max(265px, calc(265 / 1440 * 100vw)) 0;
    }
  }
  @media print, screen and (min-width: 768px) {
    #reasons .list .unit .bg {
      position: absolute;
      inset: 0;
    }
    #reasons .list .unit .bg img {
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
      object-fit: cover;
    }
  }
  #reasons .list .unit .text {
    margin-top: calc(-110 / 390 * 100vw);
    margin-inline: calc(26 / 390 * 100vw);
    border-top: 1px solid #946916;
    background-color: #fff;
    filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.25));
    padding: calc(29 / 390 * 100vw) calc(29 / 390 * 100vw) calc(32 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #reasons .list .unit .text {
      margin-top: unset;
      margin-inline: auto;
      padding: min(60px, calc(60 / 1440 * 100vw)) min(50px, calc(50 / 1440 * 100vw)) min(47px, calc(47 / 1440 * 100vw));
      width: min(520px, calc(520 / 1440 * 100vw));
      translate: max(-265px, calc(-265 / 1440 * 100vw)) 0;
    }
  }
  #reasons .list .unit .text dl {
    display: flex;
    align-items: center;
    gap: calc(15 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #reasons .list .unit .text dl {
      gap: min(20px, calc(20 / 1440 * 100vw));
    }
  }
  #reasons .list .unit .text dl dt {
    background: linear-gradient(145deg, #D0B78E 32.87%, #948663 55.64%, #D0B78E 97.66%);
    -webkit-background-clip: text;
    background-clip: text;
    font-size: calc(53 / 390 * 100vw);
    font-weight: 600;
    color: transparent;
    width: calc(85 / 390 * 100vw);
    position: relative;
  }
  @media print, screen and (min-width: 768px) {
    #reasons .list .unit .text dl dt {
      width: min(113px, calc(113 / 1440 * 100vw));
      font-size: min(76px, calc(76 / 1440 * 100vw));
    }
  }
  #reasons .list .unit .text dl dt::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    display: block;
    width: 1px;
    height: calc(63 / 390 * 100vw);
    background: linear-gradient(145deg, #D0B78E 32.87%, #948663 55.64%, #D0B78E 97.66%);
  }
  @media print, screen and (min-width: 768px) {
    #reasons .list .unit .text dl dt::after {
      height: min(83px, calc(83 / 1440 * 100vw));
    }
  }
  #reasons .list .unit .text dl dd {
    font-size: calc(20 / 390 * 100vw);
    font-weight: 600;
    line-height: 140%;
    color: #876828;
  }
  @media print, screen and (min-width: 768px) {
    #reasons .list .unit .text dl dd {
      font-size: min(28px, calc(28 / 1440 * 100vw));
    }
  }
  #reasons .list .unit .text p {
    margin-top: calc(30 / 390 * 100vw);
    font-size: calc(16 / 390 * 100vw);
    line-height: 2;
  }
  @media print, screen and (min-width: 768px) {
    #reasons .list .unit .text p {
      margin-top: min(40px, calc(40 / 1440 * 100vw));
      font-size: min(16px, calc(16 / 1440 * 100vw));
    }
  }
  #reasons .list .unit .text .appeal {
    margin-top: calc(30 / 390 * 100vw);
    font-size: calc(20 / 390 * 100vw);
    font-weight: 600;
    color: #fff;
    background: linear-gradient(145deg, #948663 8.49%, #D0B78E 97.66%);
    text-align: center;
    padding: calc(10 / 390 * 100vw) calc(16 / 390 * 100vw) calc(12 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #reasons .list .unit .text .appeal {
      margin-top: min(40px, calc(40 / 1440 * 100vw));
      font-size: min(22px, calc(22 / 1440 * 100vw));
      padding: min(16px, calc(16 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw)) min(18px, calc(18 / 1440 * 100vw));
    }
  }
  #method {
    margin-top: calc(64 / 390 * 100vw);
    padding-bottom: calc(42 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #method {
      margin-top: min(120px, calc(120 / 1440 * 100vw));
      padding-bottom: min(98px, calc(98 / 1440 * 100vw));
    }
  }
  #method .inner {
    padding-inline: calc(37 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #method .inner {
      padding-inline: unset;
      width: min(1040px, calc(1040 / 1440 * 100vw));
      margin-inline: auto;
    }
  }
  #method .inner .list {
    margin-top: calc(67 / 390 * 100vw);
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: calc(21 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #method .inner .list {
      margin-top: min(73px, calc(73 / 1440 * 100vw));
      gap: min(35px, calc(35 / 1440 * 100vw));
      grid-template-columns: repeat(3, 1fr);
    }
  }
  #method .inner .list .unit {
    border-top: 3px solid #C69C6B;
    background-color: #F3F3F3;
    filter: drop-shadow(4px 4px 8px rgba(0, 0, 0, 0.15));
  }
  @media print, screen and (min-width: 768px) {
    #method .inner .list .unit {
      display: grid;
      grid-template-rows: subgrid;
      grid-row: span 2;
    }
  }
  #method .inner .list .unit i {
    display: block;
    position: absolute;
    width: -moz-fit-content;
    width: fit-content;
    background-color: #C69C6B;
    clip-path: polygon(0 0, 90% 0%, 100% 100%, 0% 100%);
    padding: calc(8 / 390 * 100vw) calc(32 / 390 * 100vw) calc(10 / 390 * 100vw) calc(16 / 390 * 100vw);
    font-size: calc(18 / 390 * 100vw);
    font-weight: 600;
    color: #fff;
    top: calc(-36 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #method .inner .list .unit i {
      font-size: min(18px, calc(18 / 1440 * 100vw));
      padding: min(8px, calc(8 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw)) min(10px, calc(10 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
      top: max(-36px, calc(-36 / 1440 * 100vw));
    }
  }
  #method .inner .list .unit .text {
    padding: calc(40 / 390 * 100vw) calc(32 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #method .inner .list .unit .text {
      padding: min(40px, calc(40 / 1440 * 100vw)) min(48px, calc(48 / 1440 * 100vw));
    }
  }
  #method .inner .list .unit .text h3 {
    color: #966B33;
    font-size: calc(22 / 390 * 100vw);
    font-weight: 600;
    line-height: 140%;
  }
  @media print, screen and (min-width: 768px) {
    #method .inner .list .unit .text h3 {
      font-size: min(30px, calc(30 / 1440 * 100vw));
    }
  }
  #method .inner .list .unit .text h4 {
    margin-top: calc(20 / 390 * 100vw);
    color: #000;
    font-size: calc(18 / 390 * 100vw);
    font-weight: 500;
    line-height: 140%;
  }
  @media print, screen and (min-width: 768px) {
    #method .inner .list .unit .text h4 {
      margin-top: min(20px, calc(20 / 1440 * 100vw));
      font-size: min(20px, calc(20 / 1440 * 100vw));
    }
  }
  #method .inner .list .unit .text p {
    margin-top: calc(20 / 390 * 100vw);
    color: #000;
    font-size: calc(16 / 390 * 100vw);
    line-height: 200%;
  }
  @media print, screen and (min-width: 768px) {
    #method .inner .list .unit .text p {
      margin-top: min(20px, calc(20 / 1440 * 100vw));
      font-size: min(16px, calc(16 / 1440 * 100vw));
    }
  }
  #method .inner .att {
    border: 1px solid #966B33;
    background: #FFF;
    padding: calc(20 / 390 * 100vw) calc(24 / 390 * 100vw);
    text-align: center;
    margin-top: calc(17 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #method .inner .att {
      padding: min(20px, calc(20 / 1440 * 100vw)) min(50px, calc(50 / 1440 * 100vw));
      text-align: center;
      margin-top: min(16px, calc(16 / 1440 * 100vw));
    }
  }
  #method .inner .att h3 {
    color: #966B33;
    font-size: calc(18 / 390 * 100vw);
    font-weight: 600;
    line-height: 150%;
  }
  @media print, screen and (min-width: 768px) {
    #method .inner .att h3 {
      font-size: min(20px, calc(20 / 1440 * 100vw));
    }
  }
  #method .inner .att p {
    margin-top: calc(10 / 390 * 100vw);
    color: #966B33;
    font-size: calc(14 / 390 * 100vw);
    font-weight: 300;
    line-height: 150%;
  }
  @media print, screen and (min-width: 768px) {
    #method .inner .att p {
      margin-top: min(10px, calc(10 / 1440 * 100vw));
      font-size: min(16px, calc(16 / 1440 * 100vw));
    }
  }
  #method .inner .note {
    margin-top: calc(18 / 390 * 100vw);
    font-size: calc(12 / 390 * 100vw);
    line-height: 140%;
    font-weight: 300;
    text-align: center;
  }
  @media print, screen and (min-width: 768px) {
    #method .inner .note {
      margin-top: min(15px, calc(15 / 1440 * 100vw));
      font-size: min(14px, calc(14 / 1440 * 100vw));
    }
  }
  #steps {
    margin-top: calc(59 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #steps {
      margin-top: min(72px, calc(72 / 1440 * 100vw));
    }
  }
  #steps .inner {
    padding-inline: calc(36 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #steps .inner {
      padding-inline: unset;
      width: min(890px, calc(890 / 1440 * 100vw));
      margin-inline: auto;
    }
  }
  #steps .inner .lead {
    font-size: calc(15 / 390 * 100vw);
    font-weight: 700;
    text-align: center;
    margin-bottom: calc(12 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #steps .inner .lead {
      font-size: min(20px, calc(20 / 1440 * 100vw));
      margin-bottom: min(16px, calc(16 / 1440 * 100vw));
    }
  }
  #steps .inner picture {
    margin-top: calc(21 / 390 * 100vw);
    display: block;
  }
  @media print, screen and (min-width: 768px) {
    #steps .inner picture {
      margin-top: min(36px, calc(36 / 1440 * 100vw));
    }
  }
  #map {
    background-color: #F6F2E8;
    padding-block: calc(32 / 390 * 100vw) calc(39 / 390 * 100vw);
    margin-top: calc(65 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #map {
      padding-block: min(78px, calc(78 / 1440 * 100vw)) min(70px, calc(70 / 1440 * 100vw));
      margin-top: min(95px, calc(95 / 1440 * 100vw));
    }
  }
  @media print, screen and (min-width: 768px) {
    #map .inner {
      width: min(1083px, calc(1083 / 1440 * 100vw));
      margin-inline: auto;
    }
  }
  #map .inner .lead {
    margin-top: calc(15 / 390 * 100vw);
    font-size: calc(16 / 390 * 100vw);
    line-height: 200%;
    text-align: center;
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .lead {
      margin-top: min(19px, calc(19 / 1440 * 100vw));
      font-size: min(20px, calc(20 / 1440 * 100vw));
    }
  }
  #map .inner .list {
    margin-top: calc(15 / 390 * 100vw);
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: calc(15 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list {
      margin-top: min(51px, calc(51 / 1440 * 100vw));
      gap: min(35px, calc(35 / 1440 * 100vw));
      grid-template-columns: repeat(2, 1fr);
    }
  }
  #map .inner .list .unit {
    background-color: #fff;
    padding: calc(40 / 390 * 100vw) 0 calc(35 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit {
      padding: min(40px, calc(40 / 1440 * 100vw)) min(37px, calc(37 / 1440 * 100vw)) min(50px, calc(50 / 1440 * 100vw));
    }
  }
  #map .inner .list .unit .header {
    padding-inline: calc(8 / 390 * 100vw);
    text-align: center;
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .header {
      padding-inline: unset;
    }
  }
  #map .inner .list .unit .header h3 {
    color: #966B33;
    font-size: calc(22 / 390 * 100vw);
    font-weight: 600;
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .header h3 {
      font-size: min(32px, calc(32 / 1440 * 100vw));
    }
  }
  #map .inner .list .unit .header address {
    margin-top: calc(17 / 390 * 100vw);
    font-size: calc(16 / 390 * 100vw);
    font-weight: 600;
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .header address {
      margin-top: min(30px, calc(30 / 1440 * 100vw));
      font-size: min(18px, calc(18 / 1440 * 100vw));
    }
  }
  #map .inner .list .unit .header .access {
    margin-top: calc(17 / 390 * 100vw);
    font-size: calc(14 / 390 * 100vw);
    font-weight: 300;
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .header .access {
      margin-top: min(10px, calc(10 / 1440 * 100vw));
      font-size: min(16px, calc(16 / 1440 * 100vw));
    }
  }
  #map .inner .list .unit .map {
    margin-top: calc(17 / 390 * 100vw);
    padding-inline: calc(20 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .map {
      margin-top: min(30px, calc(30 / 1440 * 100vw));
      padding-inline: unset;
    }
  }
  #map .inner .list .unit .map iframe {
    aspect-ratio: 350/216;
    width: 100%;
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .map iframe {
      aspect-ratio: 450/278;
    }
  }
  #map .inner .list .unit .tel {
    margin-top: calc(17 / 390 * 100vw);
    margin-inline: calc(20 / 390 * 100vw);
    padding: calc(15 / 390 * 100vw);
    text-align: center;
    border-radius: calc(7 / 390 * 100vw);
    border: 1px solid #A02D04;
    background: #FFF;
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .tel {
      margin-top: min(30px, calc(30 / 1440 * 100vw));
      margin-inline: unset;
      padding: min(20px, calc(20 / 1440 * 100vw));
      border-radius: min(10px, calc(10 / 1440 * 100vw));
    }
  }
  #map .inner .list .unit .tel dt {
    font-size: calc(14 / 390 * 100vw);
    font-weight: 600;
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .tel dt {
      font-size: min(18px, calc(18 / 1440 * 100vw));
    }
  }
  #map .inner .list .unit .tel dd {
    margin-top: calc(6 / 390 * 100vw);
    color: #A02D04;
    font-family: "Roboto" sans-serif;
    font-size: calc(24 / 390 * 100vw);
    font-weight: 600;
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .tel dd {
      margin-top: min(10px, calc(10 / 1440 * 100vw));
      font-size: min(32px, calc(32 / 1440 * 100vw));
      pointer-events: none;
    }
  }
  #map .inner .list .unit .info {
    margin-top: calc(17 / 390 * 100vw);
    margin-inline: calc(20 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .info {
      margin-top: min(30px, calc(30 / 1440 * 100vw));
      margin-inline: unset;
    }
  }
  #map .inner .list .unit .info th {
    padding-bottom: calc(15 / 390 * 100vw);
    padding-right: calc(14 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .info th {
      padding-bottom: min(12px, calc(12 / 1440 * 100vw));
      padding-right: min(14px, calc(14 / 1440 * 100vw));
    }
  }
  #map .inner .list .unit .info th span {
    display: flex;
    width: calc(92 / 390 * 100vw);
    padding: calc(5 / 390 * 100vw) calc(4 / 390 * 100vw) calc(6 / 390 * 100vw);
    justify-content: center;
    align-items: center;
    color: #FFF;
    text-align: center;
    font-size: calc(16 / 390 * 100vw);
    font-weight: 500;
    background-color: var(--color-black);
    border-radius: calc(4 / 390 * 100vw);
    line-height: 130%;
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .info th span {
      width: min(92px, calc(92 / 1440 * 100vw));
      padding: min(5px, calc(5 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw)) min(6px, calc(6 / 1440 * 100vw));
      font-size: min(18px, calc(18 / 1440 * 100vw));
      border-radius: min(4px, calc(4 / 1440 * 100vw));
    }
  }
  #map .inner .list .unit .info td {
    padding-bottom: calc(15 / 390 * 100vw);
    font-size: calc(14 / 390 * 100vw);
    font-weight: 500;
    line-height: 150%;
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .info td {
      padding-bottom: min(12px, calc(12 / 1440 * 100vw));
      font-size: min(14px, calc(14 / 1440 * 100vw));
    }
  }
  #map .inner .list .unit .info td strong {
    font-size: calc(16 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #map .inner .list .unit .info td strong {
      font-size: min(18px, calc(18 / 1440 * 100vw));
    }
  }
  #faq {
    margin-top: calc(61 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #faq {
      margin-top: min(81px, calc(81 / 1440 * 100vw));
    }
  }
  #faq .inner {
    padding-inline: calc(19 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #faq .inner {
      padding-inline: unset;
      width: min(834px, calc(834 / 1440 * 100vw));
      margin-inline: auto;
    }
  }
  #faq .inner .list {
    margin-top: calc(50 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #faq .inner .list {
      margin-top: min(60px, calc(60 / 1440 * 100vw));
    }
  }
  #faq .inner .list .unit {
    margin-top: calc(20 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #faq .inner .list .unit {
      margin-top: min(20px, calc(20 / 1440 * 100vw));
    }
  }
  #faq .inner .list .unit.is-active .q::after {
    content: "−";
  }
  #faq .inner .list .unit.is-active .a {
    display: block;
  }
  #faq .inner .list .unit .q {
    background-color: #C69C6B;
    padding: calc(15 / 390 * 100vw) calc(30 / 390 * 100vw);
    font-size: calc(14 / 390 * 100vw);
    font-weight: 500;
    color: #fff;
    line-height: 171%;
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: calc(20 / 390 * 100vw);
    align-items: center;
    cursor: pointer;
  }
  @media print, screen and (min-width: 768px) {
    #faq .inner .list .unit .q {
      padding: min(15px, calc(15 / 1440 * 100vw)) min(30px, calc(30 / 1440 * 100vw));
      font-size: min(16px, calc(16 / 1440 * 100vw));
      gap: min(20px, calc(20 / 1440 * 100vw));
    }
  }
  #faq .inner .list .unit .q::before {
    content: "Q";
    font-size: calc(20 / 390 * 100vw);
    font-weight: 600;
  }
  @media print, screen and (min-width: 768px) {
    #faq .inner .list .unit .q::before {
      font-size: min(20px, calc(20 / 1440 * 100vw));
    }
  }
  #faq .inner .list .unit .q::after {
    content: "+";
    font-size: calc(20 / 390 * 100vw);
    font-weight: 600;
  }
  @media print, screen and (min-width: 768px) {
    #faq .inner .list .unit .q::after {
      font-size: min(20px, calc(20 / 1440 * 100vw));
    }
  }
  #faq .inner .list .unit .a {
    padding-top: calc(15 / 390 * 100vw);
    font-size: calc(14 / 390 * 100vw);
    line-height: 171%;
    overflow: hidden;
    display: none;
  }
  @media print, screen and (min-width: 768px) {
    #faq .inner .list .unit .a {
      padding-top: min(15px, calc(15 / 1440 * 100vw));
      font-size: min(16px, calc(16 / 1440 * 100vw));
    }
  }
  footer {
    margin-top: calc(50 / 390 * 100vw);
    padding-bottom: calc(160 / 390 * 100vw);
    padding-inline: calc(20 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    footer {
      margin-top: min(63px, calc(63 / 1440 * 100vw));
      padding-bottom: min(128px, calc(128 / 1440 * 100vw));
      padding-inline: unset;
    }
  }
  @media print, screen and (min-width: 768px) {
    footer dl {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: min(33px, calc(33 / 1440 * 100vw));
    }
  }
  footer dl dt {
    text-align: center;
  }
  footer dl dt img {
    width: calc(156 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    footer dl dt img {
      width: min(156px, calc(156 / 1440 * 100vw));
    }
  }
  footer dl dd {
    font-size: calc(14 / 390 * 100vw);
    font-weight: 600;
    line-height: 150%;
    margin-top: calc(25 / 390 * 100vw);
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
  }
  @media print, screen and (min-width: 768px) {
    footer dl dd {
      font-size: min(14px, calc(14 / 1440 * 100vw));
      margin-top: unset;
      width: auto;
      margin-inline: unset;
    }
  }
  footer p {
    margin-top: calc(25 / 390 * 100vw);
    font-size: calc(13 / 390 * 100vw);
    font-weight: 300;
    text-align: center;
  }
  @media print, screen and (min-width: 768px) {
    footer p {
      margin-top: min(24px, calc(24 / 1440 * 100vw));
      font-size: min(13px, calc(13 / 1440 * 100vw));
      font-weight: 400;
    }
  }
  #buttons {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 999;
    width: 100%;
    background: rgba(33, 30, 28, 0.9);
    padding: calc(9 / 390 * 100vw) calc(14 / 390 * 100vw) calc(9 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #buttons {
      padding-block: min(11px, calc(11 / 1440 * 100vw)) min(14px, calc(14 / 1440 * 100vw));
    }
  }
  #buttons .inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(6 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #buttons .inner {
      gap: min(10px, calc(10 / 1440 * 100vw));
      display: flex;
      justify-content: center;
      align-items: center;
    }
  }
  #buttons .inner .unit {
    text-align: center;
  }
  #buttons .inner .unit h2 {
    font-size: calc(13 / 390 * 100vw);
    font-weight: 500;
    color: #FFF;
  }
  @media print, screen and (min-width: 768px) {
    #buttons .inner .unit h2 {
      font-size: min(14px, calc(14 / 1440 * 100vw));
    }
  }
  #buttons .inner .unit a, #buttons .inner .unit button {
    margin-top: calc(6 / 390 * 100vw);
    width: 100%;
    padding-block: calc(8 / 390 * 100vw) calc(10 / 390 * 100vw);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: calc(8 / 390 * 100vw);
    color: #FFF;
    font-size: calc(15 / 390 * 100vw);
    font-weight: 600;
    line-height: 140%;
    border-radius: calc(5 / 390 * 100vw);
    border: 1px solid transparent;
  }
  @media print, screen and (min-width: 768px) {
    #buttons .inner .unit a, #buttons .inner .unit button {
      margin-top: min(6px, calc(6 / 1440 * 100vw));
      padding-block: min(4px, calc(4 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw));
      border-radius: min(5px, calc(5 / 1440 * 100vw));
      gap: min(10px, calc(10 / 1440 * 100vw));
      font-size: min(20px, calc(20 / 1440 * 100vw));
      width: min(340px, calc(340 / 1440 * 100vw));
      min-height: min(62px, calc(62 / 1440 * 100vw));
    }
  }
  #buttons .inner .unit a::before, #buttons .inner .unit button::before {
    content: "";
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  #buttons .inner .unit a.line, #buttons .inner .unit button.line {
    background-color: #03A043;
    border-color: #03A043;
  }
  #buttons .inner .unit a.line::before, #buttons .inner .unit button.line::before {
    width: calc(39 / 390 * 100vw);
    height: calc(39 / 390 * 100vw);
    background-image: url(../images/line.webp);
  }
  @media print, screen and (min-width: 768px) {
    #buttons .inner .unit a.line::before, #buttons .inner .unit button.line::before {
      width: min(45px, calc(45 / 1440 * 100vw));
      height: min(45px, calc(45 / 1440 * 100vw));
    }
  }
  @media (any-hover: hover) {
    #buttons .inner .unit a.line:hover, #buttons .inner .unit button.line:hover {
      background-color: #fff;
      border-color: #06C755;
      color: #06C755;
    }
  }
  #buttons .inner .unit a.tel, #buttons .inner .unit button.tel {
    background-color: #C85A32;
    border-color: #C85A32;
    gap: calc(10 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #buttons .inner .unit a.tel, #buttons .inner .unit button.tel {
      gap: min(10px, calc(10 / 1440 * 100vw));
    }
  }
  #buttons .inner .unit a.tel::before, #buttons .inner .unit button.tel::before {
    width: calc(24 / 390 * 100vw);
    height: calc(38 / 390 * 100vw);
    -webkit-mask-image: url(../images/phone.svg);
    mask-image: url(../images/phone.svg);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    background-color: #fff;
  }
  @media print, screen and (min-width: 768px) {
    #buttons .inner .unit a.tel::before, #buttons .inner .unit button.tel::before {
      width: min(24px, calc(24 / 1440 * 100vw));
      height: min(38px, calc(38 / 1440 * 100vw));
    }
  }
  @media (any-hover: hover) {
    #buttons .inner .unit a.tel:hover, #buttons .inner .unit button.tel:hover {
      background-color: #fff;
      color: #C85A32;
    }
    #buttons .inner .unit a.tel:hover::before, #buttons .inner .unit button.tel:hover::before {
      background-color: #C85A32;
    }
  }
  .area_line {
    margin-top: calc(40 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_line {
      margin-top: min(96px, calc(96 / 1440 * 100vw));
    }
  }
  @media print, screen and (min-width: 768px) {
    #steps + .area_line {
      margin-top: min(70px, calc(70 / 1440 * 100vw));
    }
  }
  .area_line .inner {
    padding-inline: calc(16 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_line .inner {
      padding-inline: unset;
      width: min(850px, calc(850 / 1440 * 100vw));
      margin-inline: auto;
    }
  }
  .area_line .inner h2 {
    display: grid;
    grid-template-columns: auto auto auto;
    justify-content: center;
    align-items: center;
    gap: calc(20 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_line .inner h2 {
      gap: min(40px, calc(40 / 1440 * 100vw));
    }
  }
  .area_line .inner h2::before, .area_line .inner h2::after {
    display: block;
    content: "";
    width: 1px;
    height: calc(45 / 390 * 100vw);
    background-color: #06C755;
    transform-origin: center;
  }
  @media print, screen and (min-width: 768px) {
    .area_line .inner h2::before, .area_line .inner h2::after {
      height: min(92px, calc(92 / 1440 * 100vw));
    }
  }
  .area_line .inner h2::before {
    rotate: z -30deg;
  }
  .area_line .inner h2::after {
    rotate: z 30deg;
  }
  .area_line .inner h2 span {
    translate: 0 calc(-2 / 390 * 100vw);
    text-align: center;
    color: #1EAC58;
    font-size: calc(15 / 390 * 100vw);
    font-weight: 600;
    line-height: 150%;
  }
  @media print, screen and (min-width: 768px) {
    .area_line .inner h2 span {
      font-size: min(30px, calc(30 / 1440 * 100vw));
      translate: 0 max(-6px, calc(-6 / 1440 * 100vw));
      line-height: 140%;
    }
  }
  .area_line .inner a {
    margin-top: calc(28 / 390 * 100vw);
    display: block;
    border-radius: calc(7 / 390 * 100vw);
    background: #03A043;
    box-shadow: 0 2.827px 2.827px 0 rgba(179, 174, 174, 0.55);
    padding: calc(22 / 390 * 100vw) calc(12 / 390 * 100vw) calc(22 / 390 * 100vw);
    position: relative;
    border: 2px solid #03A043;
  }
  @media print, screen and (min-width: 768px) {
    .area_line .inner a {
      margin-top: min(59px, calc(59 / 1440 * 100vw));
      padding: min(22px, calc(22 / 1440 * 100vw)) min(36px, calc(36 / 1440 * 100vw)) min(22px, calc(22 / 1440 * 100vw)) min(12px, calc(12 / 1440 * 100vw));
      border-radius: min(10px, calc(10 / 1440 * 100vw));
      box-shadow: 2px 4px 6px 0 rgba(179, 174, 174, 0.55);
    }
  }
  @media (any-hover: hover) {
    .area_line .inner a:hover {
      background: linear-gradient(180deg, #FFF 65.16%, #EFF9F3 100.05%);
      border-color: #06C755;
    }
    .area_line .inner a:hover i {
      background-color: #06C755;
      color: #fff;
    }
    .area_line .inner a:hover i::after {
      background-color: #06C755;
    }
    .area_line .inner a:hover strong {
      color: #06C755;
    }
    .area_line .inner a:hover strong::after {
      background-color: #06C755;
    }
  }
  .area_line .inner a i {
    position: absolute;
    display: block;
    top: calc(-14 / 390 * 100vw);
    left: 50%;
    transform: translateX(-50%);
    border-radius: 999px;
    background-color: #fff;
    border: 1px solid #06C755;
    white-space: nowrap;
    font-size: calc(11 / 390 * 100vw);
    font-weight: 500;
    padding: calc(6 / 390 * 100vw) calc(14 / 390 * 100vw) calc(8 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    .area_line .inner a i {
      top: max(-32px, calc(-32 / 1440 * 100vw));
      font-size: min(20px, calc(20 / 1440 * 100vw));
      padding: min(14px, calc(14 / 1440 * 100vw)) min(54px, calc(54 / 1440 * 100vw)) min(17px, calc(17 / 1440 * 100vw));
    }
  }
  .area_line .inner a i::after {
    content: "";
    position: absolute;
    left: 50%;
    translate: -50% 0;
    bottom: calc(-12 / 390 * 100vw);
    display: block;
    width: calc(13 / 390 * 100vw);
    height: calc(13 / 390 * 100vw);
    background-color: #fff;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
  }
  @media print, screen and (min-width: 768px) {
    .area_line .inner a i::after {
      width: min(26px, calc(26 / 1440 * 100vw));
      height: min(26px, calc(26 / 1440 * 100vw));
      bottom: max(-22px, calc(-22 / 1440 * 100vw));
    }
  }
  .area_line .inner a strong {
    display: grid;
    grid-template-columns: auto auto auto;
    align-items: center;
    justify-content: center;
    gap: calc(12 / 390 * 100vw);
    font-size: calc(25 / 390 * 100vw);
    font-weight: 600;
    color: #fff;
  }
  @media print, screen and (min-width: 768px) {
    .area_line .inner a strong {
      font-size: min(46px, calc(46 / 1440 * 100vw));
      gap: min(55px, calc(55 / 1440 * 100vw));
    }
  }
  .area_line .inner a strong::before {
    content: "";
    display: block;
    width: calc(52 / 390 * 100vw);
    height: calc(52 / 390 * 100vw);
    background-image: url(../images/line.webp);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
  }
  @media print, screen and (min-width: 768px) {
    .area_line .inner a strong::before {
      width: min(125px, calc(125 / 1440 * 100vw));
      height: min(125px, calc(125 / 1440 * 100vw));
    }
  }
  .area_line .inner a strong::after {
    content: "";
    display: block;
    width: calc(9 / 390 * 100vw);
    height: calc(14 / 390 * 100vw);
    -webkit-mask-image: url(../images/arrow.svg);
    mask-image: url(../images/arrow.svg);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    background-color: #fff;
  }
  @media print, screen and (min-width: 768px) {
    .area_line .inner a strong::after {
      width: min(21px, calc(21 / 1440 * 100vw));
      height: min(35px, calc(35 / 1440 * 100vw));
    }
  }
  #tel-dialog {
    --duration: 0.3s;
    --scale: 0.6;
    width: calc(346 / 390 * 100vw);
    border-radius: calc(10 / 390 * 100vw);
    border: none;
    background: #FFF;
    padding: calc(40 / 390 * 100vw) calc(23 / 390 * 100vw) calc(26 / 390 * 100vw);
    text-align: center;
    transition: display var(--duration) allow-discrete, overlay var(--duration) allow-discrete, opacity var(--duration), scale var(--duration);
    opacity: 0;
    scale: var(--scale);
  }
  @media print, screen and (min-width: 768px) {
    #tel-dialog {
      width: min(916px, calc(916 / 1440 * 100vw));
      border-radius: min(10px, calc(10 / 1440 * 100vw));
      padding: min(51px, calc(51 / 1440 * 100vw)) min(44px, calc(44 / 1440 * 100vw)) min(31px, calc(31 / 1440 * 100vw));
    }
  }
  #tel-dialog[open] {
    opacity: 1;
    scale: 1;
  }
  @starting-style {
    #tel-dialog[open] {
      opacity: 0;
      scale: var(--scale);
    }
  }
  #tel-dialog::backdrop {
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    transition: opacity var(--duration);
  }
  #tel-dialog[open]::backdrop {
    opacity: 1;
  }
  @starting-style {
    #tel-dialog[open]::backdrop {
      opacity: 0;
    }
  }
  #tel-dialog h2 {
    font-size: calc(24 / 390 * 100vw);
    font-weight: 600;
    line-height: 140%;
  }
  @media print, screen and (min-width: 768px) {
    #tel-dialog h2 {
      font-size: min(30px, calc(30 / 1440 * 100vw));
    }
  }
  #tel-dialog .inner {
    margin-top: calc(26 / 390 * 100vw);
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: calc(22 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #tel-dialog .inner {
      margin-top: min(25px, calc(25 / 1440 * 100vw));
      gap: min(28px, calc(28 / 1440 * 100vw));
      grid-template-columns: repeat(2, 1fr);
    }
  }
  #tel-dialog .inner .unit {
    display: block;
    padding: calc(20 / 390 * 100vw) calc(16 / 390 * 100vw) calc(22 / 390 * 100vw);
    border-radius: calc(10 / 390 * 100vw);
    border: 2px solid #C23D0E;
    background: #FFF;
    box-shadow: 3px 3px 6px 0 rgba(0, 0, 0, 0.2);
  }
  @media print, screen and (min-width: 768px) {
    #tel-dialog .inner .unit {
      padding: min(40px, calc(40 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw)) min(29px, calc(29 / 1440 * 100vw));
      border-radius: min(10px, calc(10 / 1440 * 100vw));
    }
  }
  @media (any-hover: hover) {
    #tel-dialog .inner .unit:hover {
      background-color: #C23D0E;
      color: #fff;
    }
    #tel-dialog .inner .unit:hover .title::before {
      background-color: #fff;
    }
    #tel-dialog .inner .unit:hover .title strong {
      color: #fff;
    }
    #tel-dialog .inner .unit:hover .tel {
      color: #fff;
    }
  }
  #tel-dialog .inner .unit .title {
    font-size: calc(18 / 390 * 100vw);
    font-weight: 600;
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: calc(12 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #tel-dialog .inner .unit .title {
      font-size: min(26px, calc(26 / 1440 * 100vw));
      gap: min(19px, calc(19 / 1440 * 100vw));
    }
  }
  #tel-dialog .inner .unit .title::before {
    content: "";
    display: block;
    width: calc(24 / 390 * 100vw);
    height: calc(38 / 390 * 100vw);
    -webkit-mask-image: url(../images/phone.svg);
    mask-image: url(../images/phone.svg);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    background-color: #C85A32;
  }
  @media print, screen and (min-width: 768px) {
    #tel-dialog .inner .unit .title::before {
      width: min(24px, calc(24 / 1440 * 100vw));
      height: min(38px, calc(38 / 1440 * 100vw));
    }
  }
  #tel-dialog .inner .unit .title strong {
    color: #C23D0E;
  }
  #tel-dialog .inner .unit .tel {
    margin-top: calc(6 / 390 * 100vw);
    font-size: calc(30 / 390 * 100vw);
    font-weight: 600;
    line-height: 140%;
    color: #C23D0E;
  }
  @media print, screen and (min-width: 768px) {
    #tel-dialog .inner .unit .tel {
      margin-top: min(17px, calc(17 / 1440 * 100vw));
      font-size: min(40px, calc(40 / 1440 * 100vw));
    }
  }
  #tel-dialog .inner .unit .hours {
    margin-top: calc(7 / 390 * 100vw);
    font-size: calc(15 / 390 * 100vw);
    font-weight: 600;
  }
  @media print, screen and (min-width: 768px) {
    #tel-dialog .inner .unit .hours {
      margin-top: min(17px, calc(17 / 1440 * 100vw));
      font-size: min(20px, calc(20 / 1440 * 100vw));
    }
  }
  #tel-dialog .close {
    margin-top: calc(36 / 390 * 100vw);
    margin-inline: auto;
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: calc(18 / 390 * 100vw);
    font-family: Roboto, sans-serif;
    font-size: calc(14 / 390 * 100vw);
  }
  @media print, screen and (min-width: 768px) {
    #tel-dialog .close {
      margin-top: min(30px, calc(30 / 1440 * 100vw));
      gap: min(18px, calc(18 / 1440 * 100vw));
      font-size: min(14px, calc(14 / 1440 * 100vw));
    }
  }
  #tel-dialog .close::before {
    content: "";
    display: block;
    width: calc(10 / 390 * 100vw);
    height: calc(10 / 390 * 100vw);
    -webkit-mask-image: url(../images/close.svg);
    mask-image: url(../images/close.svg);
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    background-color: var(--color-black);
  }
  @media print, screen and (min-width: 768px) {
    #tel-dialog .close::before {
      width: min(10px, calc(10 / 1440 * 100vw));
      height: min(10px, calc(10 / 1440 * 100vw));
    }
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsInN0eWxlLnNjc3MiLCJfcmVzZXQuc2NzcyIsIl9taXhpbnMuc2NzcyIsIl9zd2lwZXIuc2NzcyIsIjxubyBzb3VyY2U+Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0doQjtFQUNFLDZCQUFBO0VBQ0Esd0JBQUE7RUFDQSw2QkFBQTtFQUNBLHNDQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQ0FBQTtFQUNBLHdCQUFBO0VBQ0EsNEJBQUE7RUFDQSwyQkFBQTtBRERGOztBQ0dBLHNDQUFBO0FBRUE7RUNoQkE7SUFDRSxTQUFBO0lBQ0EsVUFBQTtJQUNBLFNBQUE7SUFDQSxhQUFBO0lBQ0EsZUFBQTtJQUNBLHdCQUFBO0VGZ0JBO0VFZEY7SUFDRSxjQUFBO0VGZ0JBO0VFZEY7SUFDRSxnQkFBQTtFRmdCQTtFRWRGO0lBQ0UseUJBQUE7SUFDQSxpQkFBQTtFRmdCQTtFRWRGO0lBQ0UsZ0JBQUE7SUFDQSxtQkFBQTtJQUNBLHNCQUFBO0VGZ0JBO0VFZEY7SUFDRSxZQUFBO0VGZ0JBO0VFZEY7SUFDRSxXQUFBO0lBQ0EsYUFBQTtFRmdCQTtFRWRGO0lBQ0UsWUFBQTtFRmdCQTtFRWRGO0lBQ0UsY0FBQTtFRmdCQTtBQUNGO0FDL0JBO0VBQ0U7SUFDRSxzQkFBQTtFRGlDRjtFQy9CQTs7SUFFRSxzQkFBQTtFRGlDRjtFQy9CQTtJQUNFLGFBQUE7RURpQ0Y7RUMvQkE7SUFDRSxpQ0FBQTtJQUNBLFlBQUE7SUFDQSw4QkFBQTtJQUFBLDJCQUFBO0lBQUEsc0JBQUE7RURpQ0Y7RUd2REE7SUZtQkE7TUFLSSw2Q0FBQTtJRG1DRjtFQUNGO0VDakNBO0lBQ0Usd0JBQUE7SUFDQSxzQkFBQTtJQUNBLHVDQUFBO0lBQ0EseUJBQUE7SUFDQSwwQ0FBQTtFRG1DRjtFR25FQTtJRjJCQTtNQU9JLHlFQUFBO0lEcUNGO0VBQ0Y7RUNwQ0U7SUFDRSxnQkFBQTtFRHNDSjtFQ25DQTtJQUNFLGdCQUFBO0lBQ0Esd0JBQUE7RURxQ0Y7RUNuQ0E7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O0lBQ0EsZ0JBQUE7SUFDQSxpQkFBQTtJQUNBLGNBQUE7RUQ2NUJSO0VHL3pGQTtJRjY1RE07TUFPSSw4Q0FBQTtNQUNBLDZDQUFBO0lEKzVCUjtFQUNGO0VDNzVCTTtJQUNFLGlDQUFBO0lBQ0EsaUNBQUE7SUFDQSxnQkFBQTtFRCs1QlI7RUcxMEZBO0lGdzZETTtNQUtJLDhDQUFBO01BQ0EsNkNBQUE7SURpNkJSO0VBQ0Y7RUM3NUJFO0lBQ0Usa0NBQUE7SUFDQSxtQkFBQTtJQUNBLGFBQUE7SUFDQSxnQ0FBQTtJQUNBLG1CQUFBO0lBQ0EsdUJBQUE7SUFDQSwyQkFBQTtJQUNBLCtCQUFBO0lBQ0EsaUNBQUE7RUQrNUJKO0VHMzFGQTtJRm03REU7TUFXSSw4Q0FBQTtNQUNBLHVDQUFBO01BQ0EsNkNBQUE7SURpNkJKO0VBQ0Y7RUNoNkJJO0lBQ0UsV0FBQTtJQUNBLGNBQUE7SUFDQSw2QkFBQTtJQUNBLDhCQUFBO0lBQ0EsNENBQUE7SUFBQSxvQ0FBQTtJQUNBLDBCQUFBO0lBQUEsa0JBQUE7SUFDQSw4QkFBQTtJQUFBLHNCQUFBO0lBQ0EsNkJBQUE7SUFBQSxxQkFBQTtJQUNBLG9DQUFBO0VEazZCTjtFRzcyRkE7SUZrOERJO01BV0kseUNBQUE7TUFDQSwwQ0FBQTtJRG82Qk47RUFDRjtBQUNGIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbjpyb290IHtcbiAgLS10cmFuc2l0aW9uLXNwZWVkLXNsb3c6IDAuNXM7XG4gIC0tdHJhbnNpdGlvbi1zcGVlZDogMC4zcztcbiAgLS10cmFuc2l0aW9uLXNwZWVkLWZhc3Q6IDAuMnM7XG4gIC0tYmV6aWVyOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAtLWNvbG9yLWJsYWNrOiAjMjIyO1xuICAtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgLS1jb2xvci1icmFuZDogI0NGMTExQkZGO1xuICAtLWNvbG9yLXNlY29uZGFyeTogI0Y1RjRGM0ZGO1xuICAtLWNvbG9yLXRlcnRpYXJ5OiAjRkFFNEU0RkY7XG59XG5cbkBsYXllciByZXNldCwgYmFzZSwgc3dpcGVyLCBjb21wb25lbnRzO1xuQGxheWVyIHJlc2V0IHtcbiAgaHRtbCwgYm9keSwgZGl2LCBzcGFuLCBhcHBsZXQsIG9iamVjdCwgaWZyYW1lLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsIGEsIGFiYnIsIGFjcm9ueW0sIGFkZHJlc3MsIGJpZywgY2l0ZSwgY29kZSwgZGVsLCBkZm4sIGVtLCBpbWcsIGlucywga2JkLCBxLCBzLCBzYW1wLCBzbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLCBiLCB1LCBpLCBjZW50ZXIsIGRsLCBkdCwgZGQsIG9sLCB1bCwgbGksIGZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLCB0YWJsZSwgY2FwdGlvbiwgdGJvZHksIHRmb290LCB0aGVhZCwgdHIsIHRoLCB0ZCwgYXJ0aWNsZSwgYXNpZGUsIGNhbnZhcywgZGV0YWlscywgZW1iZWQsIGZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBvdXRwdXQsIHJ1YnksIHNlY3Rpb24sIHN1bW1hcnksIHRpbWUsIG1hcmssIGF1ZGlvLCB2aWRlbyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuICBodG1sIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuICBvbCwgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbiAgdGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIH1cbiAgY2FwdGlvbiwgdGgsIHRkIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICBxLCBibG9ja3F1b3RlIHtcbiAgICBxdW90ZXM6IG5vbmU7XG4gIH1cbiAgcTpiZWZvcmUsIHE6YWZ0ZXIsIGJsb2NrcXVvdGU6YmVmb3JlLCBibG9ja3F1b3RlOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gIH1cbiAgYSBpbWcge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuICBhcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24sIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5AbGF5ZXIgYmFzZSB7XG4gICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbiAgKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG4gICo6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbiAgaHRtbCB7XG4gICAgZm9udC1zaXplOiBjYWxjKDE2IC8gMzkwICogMTAwdncpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGh0bWwge1xuICAgICAgZm9udC1zaXplOiBtaW4oMThweCwgY2FsYygxOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICBib2R5IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBmb250LWZhbWlseTogXCJOb3RvIFNhbnMgSlBcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LW9wdGljYWwtc2l6aW5nOiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1tKSAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5IHtcbiAgICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gIGJvZHkuaXMtZml4ZWQsIGJvZHkuZml4ZWQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgOnJvb3Q6aGFzKGRpYWxvZ1tvcGVuXSkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgc2Nyb2xsYmFyLWd1dHRlcjogc3RhYmxlO1xuICB9XG4gIC5zZXJpZiB7XG4gICAgZm9udC1mYW1pbHk6IFlha3VIYW5NUCwgXCJOb3RvIFNlcmlmIEpQXCIsIHNlcmlmO1xuICB9XG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxuICBsYWJlbCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgYVtocmVmXj1cInRlbDpcIl0ge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG4gIGFiYnIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICBidXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBici5zcC1vbmx5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIGJyLnBjLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYnIucGMtb25seSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuICB9XG4gIDp3aGVyZShidXR0b24sIFt0eXBlPWJ1dHRvbl0sIFt0eXBlPXJlc2V0XSwgW3R5cGU9c3VibWl0XSkge1xuICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICB9XG4gIDp3aGVyZSg6YW55LWxpbmssXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSxcbmxhYmVsW2Zvcl0sXG5zZWxlY3QsXG5zdW1tYXJ5LFxuW3JvbGU9dGFiXSxcbltyb2xlPWJ1dHRvbl0pIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbiAgc3VwLFxuc3ViIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDAuNzVlbTtcbiAgfVxuICBzdXAge1xuICAgIGJvdHRvbTogMC43NWV4O1xuICB9XG4gIHN1YiB7XG4gICAgdG9wOiAwLjVleDtcbiAgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgfVxuICAuc3ZnX2RlZiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBzdmcge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICBwcmUge1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgfVxuICBodG1sLmxlbmlzLFxuaHRtbC5sZW5pcyBib2R5IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmxlbmlzLmxlbmlzLXNtb290aCB7XG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmxlbmlzLmxlbmlzLXNtb290aCBbZGF0YS1sZW5pcy1wcmV2ZW50XSB7XG4gICAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjtcbiAgfVxuICAubGVuaXMubGVuaXMtc3RvcHBlZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAubGVuaXMubGVuaXMtc2Nyb2xsaW5nIGlmcmFtZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgaHRtbC5pcy1jaGFuZ2luZyAudHJhbnNpdGlvbi1mYWRlIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICBodG1sLmlzLWFuaW1hdGluZyAudHJhbnNpdGlvbi1mYWRlIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXM7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAucGMtb25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAucGMtb25seSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuICB9XG4gIC5zcC1vbmx5IHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnNwLW9ubHkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLmhpZGRlbi1zcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuaGlkZGVuLXNwIHtcbiAgICAgIGRpc3BsYXk6IHVuc2V0O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuaGlkZGVuLXBjIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDgwcHgpIHtcbiAgICAuaGlkZGVuLW92ZXItdGJsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5oaWRkZW4tb3Zlci10YiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpIHtcbiAgICAuaGlkZGVuLW92ZXItc3Age1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLnZpc3VhbGx5LWhpZGRlbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICB9XG59XG5AbGF5ZXIgc3dpcGVyIHtcbiAgLyoqXG4gICAqIFN3aXBlciAxMS4xLjE0XG4gICAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gICAqIGh0dHBzOi8vc3dpcGVyanMuY29tXG4gICAqXG4gICAqIENvcHlyaWdodCAyMDE0LTIwMjQgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAgICpcbiAgICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gICAqXG4gICAqIFJlbGVhc2VkIG9uOiBTZXB0ZW1iZXIgMTIsIDIwMjRcbiAgICovXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBzd2lwZXItaWNvbnM7XG4gICAgc3JjOiB1cmwoXCJkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCwgZDA5R1JnQUJBQUFBQUFaZ0FCQUFBQUFBREFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJHUmxSTkFBQUdSQUFBQUJvQUFBQWNpNnFIa1VkRVJVWUFBQVdnQUFBQUl3QUFBQ1FBWUFCWFIxQlBVd0FBQmhRQUFBQXVBQUFBTnVBWTcreEhVMVZDQUFBRnhBQUFBRkFBQUFCbTJmUGN6VTlUTHpJQUFBSGNBQUFBU2dBQUFHQlA5VjVSWTIxaGNBQUFBa1FBQUFDSUFBQUJZdDZGMGNCamRuUWdBQUFDekFBQUFBUUFBQUFFQUJFQlJHZGhjM0FBQUFXWUFBQUFDQUFBQUFqLy93QURaMng1WmdBQUF5d0FBQURNQUFBRDJNSHRyeVZvWldGa0FBQUJiQUFBQURBQUFBQTJFMitlb1dob1pXRUFBQUdjQUFBQUh3QUFBQ1FDOWdEemFHMTBlQUFBQWlnQUFBQVpBQUFBcmdKa0FCRnNiMk5oQUFBQzBBQUFBRm9BQUFCYUZRQVVHRzFoZUhBQUFBRzhBQUFBSHdBQUFDQUFjQUJBYm1GdFpRQUFBL2dBQUFFNUFBQUNYdkZkQndsd2IzTjBBQUFGTkFBQUFHSUFBQUNFNXM3NGhYamFZMkJrWUdBQVlwZjVIdS9qK1cyK01uQXpNWURBemFYNlFqRDYvNC8vQnhqNUdBOEF1UndNWUdrQVB5d0wxM2phWTJCa1lHQTg4UDhBZ3g0aisvOGZRRFlmQTFBRUJXZ0RBSUIyQk9vQWVOcGpZR1JnWU5CaDRHZGdZZ0FCRU1uSUFCSnpZTkFEQ1FBQUNXZ0FzUUI0Mm1OZ1lmekNPSUdCbFlHQjBZY3hqWUdCd1IxS2YyV1FaR2hoWUdCaVlHVm1nQUZHQmlRUWtPYWF3dERBb01CUXhYamcvd0VHUGNZRERBNHdOVUEyQ0Nnd3NBQUFPNEVMNmdBQWVOcGoyTTBneUFBQ3F4Z0dOV0JrWjJENC93TUEreGtEZGdBQUFIamFZMkJnWUdhQVlCa0dSZ1lRaUFIeUdNRjhGZ1lISU0zRHdNSEFCR1FyTU9neVdETEVNMVQ5L3c4VUJmRU1nTHpFLy8vL1AvNS8vZi9WL3h2K3I0ZWFBQWVNYkF4d0lVWW1JTUhFZ0tZQVlqVWNzREF3c0xLeGMzQnljZlB3OGpFUUEvZ1pCQVNGaEVWRXhjUWxKS1drWldUbDVCVVVsWlJWVk5YVU5UUVpCZ01BQU1SK0UrZ0FFUUZFQUFBQUtnQXFBQ29BTkFBK0FFZ0FVZ0JjQUdZQWNBQjZBSVFBamdDWUFLSUFyQUMyQU1BQXlnRFVBTjRBNkFEeUFQd0JCZ0VRQVJvQkpBRXVBVGdCUWdGTUFWWUJZQUZxQVhRQmZnR0lBWklCbkFHbUFiSUJ6Z0hzQUFCNDJ1Mk5NUTZDVUF5R1c1Njh4OUFuZVlZZ200TUpiaEtGYUV4SU9BVlg4QXBld1N0NEJpYzRBZmVBaWQzVk9CaXhEeGZQWUV6YTVPK1hmaTA0WUFEZ2dpVUlVTEN1RUpLOFZoTzRiU3ZwZG5rdEhJNVFDWXRkaTJzbDhablhhSGxxVXJOS3pkS2NUOGNqbHErcndaU3ZJVmN6TmllenNmblAvdXpubWZQRkJOT0RNMks3TVRRNDVZRUFacUdQODFBbUdHY0YzaVBxT29wMHIxU1BUYVRiVmtmVWU0SFhqOTd3WUUreU53V1l4d1d1NHYxdWdXSGdvM1MxWGRaRVZxV003RVQwY2ZuTEd4V2ZrZ1I0Mm8yUHZXckRNQlNGai9JSExhRjB6S2pSZ2RpVk13U2NOUkFvV1VvSDc4WTJpY0IveUlZMDlBbjZBSDJCZHUvVUIreXhvcFlzaFFpRXZudnUwZFVSZ0R0OFFlQzhQRHc3RnBqaTNmRUE0ei9QRUo2WU9CNWhLaDRkajNFdlhoeFBxSC9TS1VZM3JKN3NyWjRGWm5oMVBNQXRQaHdQNmZsMlBNSk1QRGdlUTRyWThZVDZHemFvMGVBRUE0MDlEdWdnbVRuRm5PY1NDaUVpTE1neENpVEk2Q3E1RFpVZDNRbXAxMHZPMExhTFRkMmNqTjRmT3VtbGM3bFVZYlNRY1pGa3V0Ukc3ZzZKS1pLeTBSbWRMWTY4MENEbkVKK1VNa3BGRmUxUk43bnhkVnBYckM0YVR0bmF1ck9uWWVyY1pnMllWbUxOL2QvZ2N6ZkVpbXJFL2ZzL2JPdXEyOVptbjh0bG9PUmFYZ1pnR2E3OHlPOS9jblhtMkJwYUd2cTI1RHY5UzRFOSs1U0ljOVBxdXBKS2hZRlNTbDQ3K1FjcjFtWU5BQUFBZU5wdHcwY0t3a0FBQU1EWkpBOFE3T1VKdmtMc1BmWjZ6RlZFUlB5OHFIaDJZRVIrM2kvQlA4M3ZJQkxMeVNzb0tpbXJxS3FwYTJocDYranE2UnNZR2htYm1KcVpTeTBzcmF4dGJPM3NIUnlkbkVNVTR1UjZ5eDdKSlh2ZVA3V3JEeWNBQUFBQUFBSC8vd0FDZU5wallHUmdZT0FCWWhrZ1pnSkNaZ1pOQmtZR0xRWnRJSnNGTE1ZQUFBdzNBTGdBZU5vbGl6RUtnREFRQkNjaFJiQzJzRkVSMFlENnFWUWlCQ3YvSDllekdJNlo1WEJBdzhDQksvbTVpUVFWYXVWYlhMbk9yTVp2Mm9MZEtGYThQanVydTJoSnpHYWJtT1NMek5NenZ1dHBCM040Mm1OZ1pHQmc0R0tRWXpCaFlNeEpMTWxqNEdCZ0FZb3cvUC9QQUpKaExNNnNTb1dLZldDQUF3REFqZ2JSQUFCNDJtTmdZR0JrQUlJYkNabzVJUHJtVW4waEdBMEFPOEVGVFFBQVwiKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxuICA6cm9vdCB7XG4gICAgLS1zd2lwZXItdGhlbWUtY29sb3I6IzAwN2FmZjtcbiAgfVxuICA6aG9zdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gIC5zd2lwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5zd2lwZXItd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zd2lwZXItd3JhcHBlci10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgaW5pdGlhbCk7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIH1cbiAgLnN3aXBlci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsIC5zd2lwZXItaW9zIC5zd2lwZXItc2xpZGUsIC5zd2lwZXItd3JhcHBlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApO1xuICB9XG4gIC5zd2lwZXItaG9yaXpvbnRhbCB7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgfVxuICAuc3dpcGVyLXZlcnRpY2FsIHtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi14O1xuICB9XG4gIC5zd2lwZXItc2xpZGUge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtaW52aXNpYmxlLWJsYW5rIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLnN3aXBlci1hdXRvaGVpZ2h0LCAuc3dpcGVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXdyYXBwZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0O1xuICB9XG4gIC5zd2lwZXItYmFja2ZhY2UtaGlkZGVuIC5zd2lwZXItc2xpZGUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLnN3aXBlci0zZC5zd2lwZXItY3NzLW1vZGUgLnN3aXBlci13cmFwcGVyIHtcbiAgICBwZXJzcGVjdGl2ZTogMTIwMHB4O1xuICB9XG4gIC5zd2lwZXItM2QgLnN3aXBlci13cmFwcGVyIHtcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB9XG4gIC5zd2lwZXItM2Qge1xuICAgIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIH1cbiAgLnN3aXBlci0zZCAuc3dpcGVyLWN1YmUtc2hhZG93LCAuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUge1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIH1cbiAgLnN3aXBlci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgfVxuICAuc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0IHN0YXJ0O1xuICB9XG4gIC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICB9XG4gIC5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBzY3JvbGwtc25hcC10eXBlOiB5IG1hbmRhdG9yeTtcbiAgfVxuICAuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIHNjcm9sbC1zbmFwLXR5cGU6IG5vbmU7XG4gIH1cbiAgLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gICAgc2Nyb2xsLXNuYXAtYWxpZ246IG5vbmU7XG4gIH1cbiAgLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBvcmRlcjogOTk5OTtcbiAgfVxuICAuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xuICAgIHNjcm9sbC1zbmFwLWFsaWduOiBjZW50ZXIgY2VudGVyO1xuICAgIHNjcm9sbC1zbmFwLXN0b3A6IGFsd2F5cztcbiAgfVxuICAuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKTtcbiAgfVxuICAuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlcjo6YmVmb3JlIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIHdpZHRoOiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKTtcbiAgfVxuICAuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKTtcbiAgfVxuICAuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKTtcbiAgfVxuICAuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LCAuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSwgLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LCAuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LCAuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxuICAuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICB9XG4gIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIH1cbiAgLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG4gIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG4gIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG4gIC5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xuICAgIHdpZHRoOiA0MnB4O1xuICAgIGhlaWdodDogNDJweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMjFweDtcbiAgICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3JkZXI6IDRweCBzb2xpZCB2YXIoLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgLnN3aXBlci13YXRjaC1wcm9ncmVzcyAuc3dpcGVyLXNsaWRlLXZpc2libGUgLnN3aXBlci1sYXp5LXByZWxvYWRlciwgLnN3aXBlcjpub3QoLnN3aXBlci13YXRjaC1wcm9ncmVzcykgLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gICAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgaW5maW5pdGUgbGluZWFyO1xuICB9XG4gIC5zd2lwZXItbGF6eS1wcmVsb2FkZXItd2hpdGUge1xuICAgIC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjojZmZmO1xuICB9XG4gIC5zd2lwZXItbGF6eS1wcmVsb2FkZXItYmxhY2sge1xuICAgIC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjojMDAwO1xuICB9XG4gIEBrZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluIHtcbiAgICAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbiAgfVxuICAuc3dpcGVyLXZpcnR1YWwgLnN3aXBlci1zbGlkZSB7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB9XG4gIC5zd2lwZXItdmlydHVhbC5zd2lwZXItY3NzLW1vZGUgLnN3aXBlci13cmFwcGVyOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgLnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItaG9yaXpvbnRhbCAuc3dpcGVyLXdyYXBwZXI6OmFmdGVyIHtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICB3aWR0aDogdmFyKC0tc3dpcGVyLXZpcnR1YWwtc2l6ZSk7XG4gIH1cbiAgLnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItdmVydGljYWwgLnN3aXBlci13cmFwcGVyOjphZnRlciB7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IHZhcigtLXN3aXBlci12aXJ0dWFsLXNpemUpO1xuICB9XG4gIDpyb290IHtcbiAgICAtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemU6NDRweDtcbiAgfVxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0LCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi10b3Atb2Zmc2V0LCA1MCUpO1xuICAgIHdpZHRoOiBjYWxjKHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpIC8gNDQgKiAyNyk7XG4gICAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDBweCAtIHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpIC8gMik7XG4gICAgei1pbmRleDogMTA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICB9XG4gIC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCwgLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjM1O1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24taGlkZGVuLCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24taGlkZGVuIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGN1cnNvcjogYXV0bztcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAuc3dpcGVyLW5hdmlnYXRpb24tZGlzYWJsZWQgLnN3aXBlci1idXR0b24tbmV4dCwgLnN3aXBlci1uYXZpZ2F0aW9uLWRpc2FibGVkIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0IHN2ZywgLnN3aXBlci1idXR0b24tcHJldiBzdmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgfVxuICAuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHN2ZywgLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldiBzdmcge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbiAgLnN3aXBlci1idXR0b24tcHJldiwgLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgbGVmdDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCAxMHB4KTtcbiAgICByaWdodDogYXV0bztcbiAgfVxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0LCAuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgICByaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCAxMHB4KTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5zd2lwZXItYnV0dG9uLWxvY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnN3aXBlci1idXR0b24tbmV4dDphZnRlciwgLnN3aXBlci1idXR0b24tcHJldjphZnRlciB7XG4gICAgZm9udC1mYW1pbHk6IHN3aXBlci1pY29ucztcbiAgICBmb250LXNpemU6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgZm9udC12YXJpYW50OiBpbml0aWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG4gIC5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXIsIC5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwicHJldlwiO1xuICB9XG4gIC5zd2lwZXItYnV0dG9uLW5leHQsIC5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICAgIHJpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDEwcHgpO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLnN3aXBlci1idXR0b24tbmV4dDphZnRlciwgLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldjphZnRlciB7XG4gICAgY29udGVudDogXCJuZXh0XCI7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRyYW5zaXRpb246IDAuM3Mgb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWRpc2FibGVkID4gLnN3aXBlci1wYWdpbmF0aW9uLCAuc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cywgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCwgLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSwgLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcbiAgICBib3R0b206IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJvdHRvbSwgOHB4KTtcbiAgICB0b3A6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXRvcCwgYXV0byk7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1tYWluIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYtcHJldiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgd2lkdGg6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC13aWR0aCwgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweCkpO1xuICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhlaWdodCwgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweCkpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYm9yZGVyLXJhZGl1cywgNTAlKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtY29sb3IsICMwMDApO1xuICAgIG9wYWNpdHk6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5LCAwLjIpO1xuICB9XG4gIGJ1dHRvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQ6b25seS1jaGlsZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eSwgMSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLCAuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICAgIHJpZ2h0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1yaWdodCwgOHB4KTtcbiAgICBsZWZ0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1sZWZ0LCBhdXRvKTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCwgLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIG1hcmdpbjogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcCwgNnB4KSAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYywgLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiA4cHg7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRyYW5zaXRpb246IDAuMnMgdHJhbnNmb3JtLCAwLjJzIHRvcDtcbiAgfVxuICAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LCAuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIG1hcmdpbjogMCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaG9yaXpvbnRhbC1nYXAsIDRweCk7XG4gIH1cbiAgLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljLCAuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG4gIC5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LCAuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIHRyYW5zZm9ybSwgMC4ycyBsZWZ0O1xuICB9XG4gIC5zd2lwZXItaG9yaXpvbnRhbC5zd2lwZXItcnRsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIHRyYW5zZm9ybSwgMC4ycyByaWdodDtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24ge1xuICAgIGNvbG9yOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbi1jb2xvciwgaW5oZXJpdCk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1iZy1jb2xvciwgcmdiYSgwLCAwLCAwLCAwLjI1KSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgfVxuICAuc3dpcGVyLXJ0bCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbiAgfVxuICAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSwgNHB4KTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxuICAuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwsIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICAgIHdpZHRoOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1zaXplLCA0cHgpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuc3dpcGVyLXNjcm9sbGJhciB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1ib3JkZXItcmFkaXVzLCAxMHB4KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG91Y2gtYWN0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItYmctY29sb3IsIHJnYmEoMCwgMCwgMCwgMC4xKSk7XG4gIH1cbiAgLnN3aXBlci1zY3JvbGxiYXItZGlzYWJsZWQgPiAuc3dpcGVyLXNjcm9sbGJhciwgLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci1kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItc2Nyb2xsYmFyLCAuc3dpcGVyLXNjcm9sbGJhci5zd2lwZXItc2Nyb2xsYmFyLWhvcml6b250YWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwgMSUpO1xuICAgIGJvdHRvbTogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1ib3R0b20sIDRweCk7XG4gICAgdG9wOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXRvcCwgYXV0byk7XG4gICAgei1pbmRleDogNTA7XG4gICAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpemUsIDRweCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIgKiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwgMSUpKTtcbiAgfVxuICAuc3dpcGVyLXNjcm9sbGJhci5zd2lwZXItc2Nyb2xsYmFyLXZlcnRpY2FsLCAuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWxlZnQsIGF1dG8pO1xuICAgIHJpZ2h0OiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXJpZ2h0LCA0cHgpO1xuICAgIHRvcDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsIDElKTtcbiAgICB6LWluZGV4OiA1MDtcbiAgICB3aWR0aDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaXplLCA0cHgpO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMiAqIHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2lkZXMtb2Zmc2V0LCAxJSkpO1xuICB9XG4gIC5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1kcmFnLWJnLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuNSkpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItYm9yZGVyLXJhZGl1cywgMTBweCk7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLnN3aXBlci1zY3JvbGxiYXItY3Vyc29yLWRyYWcge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgfVxuICAuc3dpcGVyLXNjcm9sbGJhci1sb2NrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5zd2lwZXItem9vbS1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5zd2lwZXItem9vbS1jb250YWluZXIgPiBjYW52YXMsIC5zd2lwZXItem9vbS1jb250YWluZXIgPiBpbWcsIC5zd2lwZXItem9vbS1jb250YWluZXIgPiBzdmcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gIH1cbiAgLnN3aXBlci1zbGlkZS16b29tZWQge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gIH1cbiAgLnN3aXBlciAuc3dpcGVyLW5vdGlmaWNhdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgei1pbmRleDogLTEwMDA7XG4gIH1cbiAgLnN3aXBlci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICAuc3dpcGVyLWdyaWQgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAuc3dpcGVyLWdyaWQtY29sdW1uID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAuc3dpcGVyLWZhZGUuc3dpcGVyLWZyZWUtbW9kZSAuc3dpcGVyLXNsaWRlIHtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIH1cbiAgLnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIH1cbiAgLnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgLnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxuICAuc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG4gIC5zd2lwZXIuc3dpcGVyLWN1YmUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgei1pbmRleDogMTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICAuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAuc3dpcGVyLWN1YmUuc3dpcGVyLXJ0bCAuc3dpcGVyLXNsaWRlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gIH1cbiAgLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlLCAuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG4gIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSwgLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCwgLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtcHJldiB7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAuc3dpcGVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgICB6LWluZGV4OiAwO1xuICB9XG4gIC5zd2lwZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgZmlsdGVyOiBibHVyKDUwcHgpO1xuICB9XG4gIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQgKyAuc3dpcGVyLXNsaWRlIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLCAuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgICB6LWluZGV4OiAwO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAuc3dpcGVyLnN3aXBlci1mbGlwIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAuc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlLCAuc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG4gIC5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLCAuc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctZmxpcC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsIC5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsIC5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgICB6LWluZGV4OiAwO1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAuc3dpcGVyLWNyZWF0aXZlIC5zd2lwZXItc2xpZGUge1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eSwgaGVpZ2h0O1xuICB9XG4gIC5zd2lwZXIuc3dpcGVyLWNhcmRzIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAuc3dpcGVyLWNhcmRzIC5zd2lwZXItc2xpZGUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cbkBsYXllciBjb21wb25lbnRzIHtcbiAgI2hlcm8ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaGVyb19iZy53ZWJwKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGhlaWdodDogY2FsYyg2MTggLyAzOTAgKiAxMDB2dyk7XG4gICAgcGFkZGluZzogY2FsYygxNiAvIDM5MCAqIDEwMHZ3KSAwIDAgY2FsYygyNiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2hlcm8ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9oZXJvX2JnX3BjLndlYnApO1xuICAgICAgcGFkZGluZzogbWluKDQ0cHgsIGNhbGMoNDQgLyAxNDQwICogMTAwdncpKSAwIDAgMDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2hlcm8gLmlubmVyIHtcbiAgICAgIHdpZHRoOiBtaW4oMTA0NnB4LCBjYWxjKDEwNDYgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGhlaWdodDogbWluKDczNHB4LCBjYWxjKDczNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gIH1cbiAgI2hlcm8gLmxvZ28ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoMjggLyAzOTAgKiAxMDB2dyk7XG4gICAgbGVmdDogY2FsYygzNCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjaGVybyAubG9nbyB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIH1cbiAgfVxuICAjaGVybyAubG9nbyBpbWcge1xuICAgIHdpZHRoOiBjYWxjKDEwMCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjaGVybyAubG9nbyBpbWcge1xuICAgICAgd2lkdGg6IG1pbigxNTJweCwgY2FsYygxNTIgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI2hlcm8gLmxlYWQge1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMTcgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2hlcm8gLmxlYWQge1xuICAgICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMTlweCwgY2FsYygxOSAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgZ2FwOiBtaW4oMjRweCwgY2FsYygyNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjaGVybyAubGVhZCAuYmFkZ2Uge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNoZXJvIC5sZWFkIC5iYWRnZSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxuICAjaGVybyAubGVhZCAuYmFkZ2UgaW1nIHtcbiAgICB3aWR0aDogY2FsYygxNzkgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2hlcm8gLmxlYWQgLmJhZGdlIGltZyB7XG4gICAgICB3aWR0aDogbWluKDIyN3B4LCBjYWxjKDIyNyAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjaGVybyAubGVhZCBwIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDI0IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxOCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNoZXJvIC5sZWFkIHAge1xuICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICBmb250LXNpemU6IG1pbigyNnB4LCBjYWxjKDI2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNoZXJvIGgxIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDE0IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygzMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2hlcm8gaDEge1xuICAgICAgbWFyZ2luLXRvcDogbWF4KC0yNHB4LCBjYWxjKC0yNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oNTRweCwgY2FsYyg1NCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjaGVybyBoMiB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygzMiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBjb2xvcjogIzk0NjkxNjtcbiAgICBmb250LXNpemU6IGNhbGMoMTcgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTgwJTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjaGVybyBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oNDNweCwgY2FsYyg0MyAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oMzBweCwgY2FsYygzMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogbWluKDE1cHgsIGNhbGMoMTUgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI2hlcm8gaDIgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogY2FsYygxIC8gMzkwICogMTAwdncpIGNhbGMoOCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogY2FsYygxNzQgLyAzOTAgKiAxMDB2dyk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICM5NDY5MTY7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2hlcm8gaDIgc3BhbiB7XG4gICAgICBwYWRkaW5nOiBtaW4oMXB4LCBjYWxjKDEgLyAxNDQwICogMTAwdncpKSBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKTtcbiAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICB9XG4gIH1cbiAgI2hlcm8gaDIgc3BhbjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDEyIC8gMzkwICogMTAwdncpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMDhkZWcsICNERUNCQTMgMTMuNTIlLCAjRjhFQUNGIDUwLjAxJSwgI0RCQzM5RSA4OS40MiUpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNoZXJvIGgyIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICB9XG4gIH1cbiAgI2hlcm8gLmNoYXJhY3RlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiBjYWxjKDEyMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogY2FsYyg0OCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjaGVybyAuY2hhcmFjdGVyIHtcbiAgICAgIHdpZHRoOiBtaW4oMjU2cHgsIGNhbGMoMjU2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0cmFuc2xhdGU6IG1pbig3OHB4LCBjYWxjKDc4IC8gMTQ0MCAqIDEwMHZ3KSkgMDtcbiAgICB9XG4gIH1cbiAgLmhlYWRpbmdMYXJnZSB7XG4gICAgY29sb3I6ICM4NzY4Mjg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogY2FsYygyNiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5oZWFkaW5nTGFyZ2Uge1xuICAgICAgZm9udC1zaXplOiBtaW4oMzZweCwgY2FsYygzNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAuaGVhZGluZ0xhcmdlIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgfVxuICAjbWFya2V0cHJpY2Uge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoNTEgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21hcmtldHByaWNlIHtcbiAgICAgIG1hcmdpbi10b3A6IG1pbig3OXB4LCBjYWxjKDc5IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtYXJrZXRwcmljZSAuaW5uZXIge1xuICAgIHBhZGRpbmctaW5saW5lOiBjYWxjKDE0IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtYXJrZXRwcmljZSAuaW5uZXIge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICAgd2lkdGg6IG1pbig3MDBweCwgY2FsYyg3MDAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgfVxuICB9XG4gICNtYXJrZXRwcmljZSAuaW5uZXIgcCB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygyIC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxNiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogIzg3NjgyODtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjbWFya2V0cHJpY2UgLmlubmVyIHAge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBmb250LXNpemU6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtYXJrZXRwcmljZSAuaW5uZXIgdGFibGUge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMTUgLyAzOTAgKiAxMDB2dyk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibGFjayk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21hcmtldHByaWNlIC5pbm5lciB0YWJsZSB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMjVweCwgY2FsYygyNSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjbWFya2V0cHJpY2UgLmlubmVyIHRhYmxlIHRyOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibGFjayk7XG4gIH1cbiAgI21hcmtldHByaWNlIC5pbm5lciB0YWJsZSB0ciB0aCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBwYWRkaW5nOiBjYWxjKDI1IC8gMzkwICogMTAwdncpIGNhbGMoMjAgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC1zaXplOiBjYWxjKDIwIC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21hcmtldHByaWNlIC5pbm5lciB0YWJsZSB0ciB0aCB7XG4gICAgICBwYWRkaW5nOiBtaW4oMzVweCwgY2FsYygzNSAvIDE0NDAgKiAxMDB2dykpIG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDM1cHgsIGNhbGMoMzUgLyAxNDQwICogMTAwdncpKSBtaW4oNTJweCwgY2FsYyg1MiAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oMjhweCwgY2FsYygyOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjbWFya2V0cHJpY2UgLmlubmVyIHRhYmxlIHRyIHRkIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBhZGRpbmc6IGNhbGMoMjUgLyAzOTAgKiAxMDB2dykgY2FsYygyMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjbWFya2V0cHJpY2UgLmlubmVyIHRhYmxlIHRyIHRkIHtcbiAgICAgIHBhZGRpbmc6IG1pbigzNXB4LCBjYWxjKDM1IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDQycHgsIGNhbGMoNDIgLyAxNDQwICogMTAwdncpKSBtaW4oMzVweCwgY2FsYygzNSAvIDE0NDAgKiAxMDB2dykpIG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtYXJrZXRwcmljZSAuaW5uZXIgdGFibGUgdHIgdGQgc3Ryb25nIHtcbiAgICBmb250LXNpemU6IGNhbGMoMjggLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjbWFya2V0cHJpY2UgLmlubmVyIHRhYmxlIHRyIHRkIHN0cm9uZyB7XG4gICAgICBmb250LXNpemU6IG1pbig0MHB4LCBjYWxjKDQwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtYXJrZXRwcmljZSAuaW5uZXIgdGFibGUgdHIgdGQgc3BhbiB7XG4gICAgZm9udC1zaXplOiBjYWxjKDIwIC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21hcmtldHByaWNlIC5pbm5lciB0YWJsZSB0ciB0ZCBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDI4cHgsIGNhbGMoMjggLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI21hcmtldHByaWNlIC5pbm5lciAubm90ZSB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygxMyAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjbWFya2V0cHJpY2UgLmlubmVyIC5ub3RlIHtcbiAgICAgIG1hcmdpbi10b3A6IG1pbigxOXB4LCBjYWxjKDE5IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtYXJrZXRwcmljZSAuaW5uZXIgLm5vdGUgbGkge1xuICAgIGZvbnQtc2l6ZTogY2FsYygxMiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBsaW5lLWhlaWdodDogMTMzJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21hcmtldHByaWNlIC5pbm5lciAubm90ZSBsaSB7XG4gICAgICBmb250LXNpemU6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtYXJrZXRwcmljZSAuaW5uZXIgLm5vdGUgbGk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLigLtcIjtcbiAgfVxuICAjYWNoaWV2ZW1lbnRzIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDU3IC8gMzkwICogMTAwdncpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYWNoaWV2ZW1lbnRzX2JnLndlYnApO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcGFkZGluZy1ibG9jazogY2FsYyg0NCAvIDM5MCAqIDEwMHZ3KSBjYWxjKDY0IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNhY2hpZXZlbWVudHMge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDkxcHgsIGNhbGMoOTEgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvYWNoaWV2ZW1lbnRzX2JnX3BjLndlYnApO1xuICAgICAgcGFkZGluZy1ibG9jazogbWluKDg0cHgsIGNhbGMoODQgLyAxNDQwICogMTAwdncpKSBtaW4oOThweCwgY2FsYyg5OCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjYWNoaWV2ZW1lbnRzIC5pbm5lciB7XG4gICAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMTIgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2FjaGlldmVtZW50cyAuaW5uZXIge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICAgd2lkdGg6IG1pbigxMDI0cHgsIGNhbGMoMTAyNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICB9XG4gIH1cbiAgI2FjaGlldmVtZW50cyAuaW5uZXIgLmxpc3Qge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMzUgLyAzOTAgKiAxMDB2dyk7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIGdhcDogY2FsYygxNCAvIDM5MCAqIDEwMHZ3KSBjYWxjKDEyIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNhY2hpZXZlbWVudHMgLmlubmVyIC5saXN0IHtcbiAgICAgIG1hcmdpbi10b3A6IG1pbig1NnB4LCBjYWxjKDU2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgZ2FwOiBtaW4oODBweCwgY2FsYyg4MCAvIDE0NDAgKiAxMDB2dykpIG1pbig1MHB4LCBjYWxjKDUwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNhY2hpZXZlbWVudHMgLmlubmVyIC5saXN0IC51bml0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IGNhbGMoMTAgLyAzOTAgKiAxMDB2dykgY2FsYygxMCAvIDM5MCAqIDEwMHZ3KSBjYWxjKDIwIC8gMzkwICogMTAwdncpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBzdWJncmlkO1xuICAgIGdyaWQtcm93OiBzcGFuIDI7XG4gICAgZ2FwOiAwO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNhY2hpZXZlbWVudHMgLmlubmVyIC5saXN0IC51bml0IHtcbiAgICAgIHBhZGRpbmc6IHVuc2V0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG4gICNhY2hpZXZlbWVudHMgLmlubmVyIC5saXN0IC51bml0IGZpZ3VyZSBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAjYWNoaWV2ZW1lbnRzIC5pbm5lciAubGlzdCAudW5pdCBmaWd1cmUgZmlnY2FwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygxMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXNpemU6IGNhbGMoMTQgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTU3JTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjYWNoaWV2ZW1lbnRzIC5pbm5lciAubGlzdCAudW5pdCBmaWd1cmUgZmlnY2FwdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMTVweCwgY2FsYygxNSAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjYWNoaWV2ZW1lbnRzIC5pbm5lciAubGlzdCAudW5pdCBkbCB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygxMCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjYWNoaWV2ZW1lbnRzIC5pbm5lciAubGlzdCAudW5pdCBkbCB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMTVweCwgY2FsYygxNSAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuICB9XG4gICNhY2hpZXZlbWVudHMgLmlubmVyIC5saXN0IC51bml0IGRsIGR0IHtcbiAgICBmb250LXNpemU6IGNhbGMoMTMgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBib3JkZXItcmFkaXVzOiBjYWxjKDIgLyAzOTAgKiAxMDB2dyk7XG4gICAgYmFja2dyb3VuZDogI0EwMkQwNDtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgcGFkZGluZzogY2FsYygyIC8gMzkwICogMTAwdncpIGNhbGMoOCAvIDM5MCAqIDEwMHZ3KSBjYWxjKDMgLyAzOTAgKiAxMDB2dyk7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2FjaGlldmVtZW50cyAuaW5uZXIgLmxpc3QgLnVuaXQgZGwgZHQge1xuICAgICAgZm9udC1zaXplOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgcGFkZGluZzogbWluKDJweCwgY2FsYygyIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDhweCwgY2FsYyg4IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDNweCwgY2FsYygzIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cbiAgfVxuICAjYWNoaWV2ZW1lbnRzIC5pbm5lciAubGlzdCAudW5pdCBkbCBkZCB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygxMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXNpemU6IGNhbGMoMTYgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogI0EwMkQwNDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjYWNoaWV2ZW1lbnRzIC5pbm5lciAubGlzdCAudW5pdCBkbCBkZCB7XG4gICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDI4cHgsIGNhbGMoMjggLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI2FjaGlldmVtZW50cyAuaW5uZXIgLmxpc3QgLnVuaXQgZGwgZGQgc3Ryb25nIHtcbiAgICBmb250LXNpemU6IGNhbGMoMjIgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjYWNoaWV2ZW1lbnRzIC5pbm5lciAubGlzdCAudW5pdCBkbCBkZCBzdHJvbmcge1xuICAgICAgZm9udC1zaXplOiBtaW4oMzRweCwgY2FsYygzNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAuYXJlYV9zYWZldHkge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMDhkZWcsICNERUNCQTMgMTMuNTIlLCAjRjhFQUNGIDUwLjAxJSwgI0RCQzM5RSA4OS40MiUpO1xuICAgIHBhZGRpbmctYmxvY2s6IGNhbGMoNTIgLyAzOTAgKiAxMDB2dykgY2FsYyg1NyAvIDM5MCAqIDEwMHZ3KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmFyZWFfc2FmZXR5IHtcbiAgICAgIHBhZGRpbmctYmxvY2s6IG1pbig3NnB4LCBjYWxjKDc2IC8gMTQ0MCAqIDEwMHZ3KSkgMDtcbiAgICB9XG4gIH1cbiAgLmFyZWFfc2FmZXR5IC5pbm5lciB7XG4gICAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMjAgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmFyZWFfc2FmZXR5IC5pbm5lciB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgICB3aWR0aDogbWluKDg5MHB4LCBjYWxjKDg5MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBtaW4oNTdweCwgY2FsYyg1NyAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAuYXJlYV9zYWZldHkgLmlubmVyIC50b3Age1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMjcgLyAzOTAgKiAxMDB2dyk7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgIGdhcDogY2FsYyg3IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hcmVhX3NhZmV0eSAuaW5uZXIgLnRvcCB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oNjFweCwgY2FsYyg2MSAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgIGdhcDogbWluKDI1cHgsIGNhbGMoMjUgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgLmFyZWFfc2FmZXR5IC5pbm5lciAudG9wIC51bml0IHtcbiAgICBib3JkZXItcmFkaXVzOiBjYWxjKDggLyAzOTAgKiAxMDB2dyk7XG4gICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpKTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGU6IFwiaWNvbiB0aXRsZVwiIGF1dG8gXCJjb250ZW50IGNvbnRlbnRcIiBhdXRvL2NhbGMoMTA0IC8gMzkwICogMTAwdncpIDFmcjtcbiAgICBnYXA6IDA7XG4gICAgcGFkZGluZy1ibG9jazogY2FsYygxOSAvIDM5MCAqIDEwMHZ3KSBjYWxjKDEzIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hcmVhX3NhZmV0eSAuaW5uZXIgLnRvcCAudW5pdCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBzdWJncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBub25lO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogbm9uZTtcbiAgICAgIGdyaWQtcm93OiBzcGFuIDM7XG4gICAgICBib3JkZXItcmFkaXVzOiBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgICBwYWRkaW5nLWJsb2NrOiAwIG1pbigyN3B4LCBjYWxjKDI3IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gIC5hcmVhX3NhZmV0eSAuaW5uZXIgLnRvcCAudW5pdCAuaWNvbiB7XG4gICAgZ3JpZC1hcmVhOiBpY29uO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygxMCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9zYWZldHkgLmlubmVyIC50b3AgLnVuaXQgLmljb24ge1xuICAgICAgZ3JpZC1hcmVhOiB1bnNldDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB1bnNldDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRyYW5zbGF0ZTogMCBtYXgoLTE3cHgsIGNhbGMoLTE3IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gIC5hcmVhX3NhZmV0eSAuaW5uZXIgLnRvcCAudW5pdCAuaWNvbiBpbWcge1xuICAgIHdpZHRoOiBjYWxjKDg4IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hcmVhX3NhZmV0eSAuaW5uZXIgLnRvcCAudW5pdCAuaWNvbiBpbWcge1xuICAgICAgd2lkdGg6IG1pbig5NnB4LCBjYWxjKDk2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gIC5hcmVhX3NhZmV0eSAuaW5uZXIgLnRvcCAudW5pdCBoMyB7XG4gICAgZ3JpZC1hcmVhOiB0aXRsZTtcbiAgICBmb250LXNpemU6IGNhbGMoMjAgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTU2JTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDEwIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hcmVhX3NhZmV0eSAuaW5uZXIgLnRvcCAudW5pdCBoMyB7XG4gICAgICBncmlkLWFyZWE6IHVuc2V0O1xuICAgICAgZm9udC1zaXplOiBtaW4oMjZweCwgY2FsYygyNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgcGFkZGluZy1ib3R0b206IHVuc2V0O1xuICAgICAgbGluZS1oZWlnaHQ6IDEyMyU7XG4gICAgfVxuICB9XG4gIC5hcmVhX3NhZmV0eSAuaW5uZXIgLnRvcCAudW5pdCBwIHtcbiAgICBncmlkLWFyZWE6IGNvbnRlbnQ7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM5NjZCMzM7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IGNhbGMoNSAvIDM5MCAqIDEwMHZ3KSBjYWxjKDUgLyAzOTAgKiAxMDB2dykgMDtcbiAgICBmb250LXNpemU6IGNhbGMoMTQgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTgwJTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9zYWZldHkgLmlubmVyIC50b3AgLnVuaXQgcCB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZ3JpZC1hcmVhOiB1bnNldDtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIHBhZGRpbmc6IHVuc2V0O1xuICAgICAgbGluZS1oZWlnaHQ6IDE3NSU7XG4gICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICB9XG4gIH1cbiAgLmFyZWFfc2FmZXR5IC5pbm5lciAubWlkZGxlIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDggLyAzOTAgKiAxMDB2dyk7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIGdhcDogY2FsYyg4IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hcmVhX3NhZmV0eSAuaW5uZXIgLm1pZGRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMzBweCwgY2FsYygzMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZ2FwOiBtaW4oMjJweCwgY2FsYygyMiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAuYXJlYV9zYWZldHkgLmlubmVyIC5taWRkbGUgLnVuaXQge1xuICAgIGJvcmRlci1yYWRpdXM6IGNhbGMoOCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGO1xuICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBzdWJncmlkO1xuICAgIGdyaWQtcm93OiBzcGFuIDI7XG4gICAgZ2FwOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLWJsb2NrOiBjYWxjKDE5IC8gMzkwICogMTAwdncpIGNhbGMoMTcgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmFyZWFfc2FmZXR5IC5pbm5lciAubWlkZGxlIC51bml0IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IG1pbig4cHgsIGNhbGMoOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICAgIHBhZGRpbmctYmxvY2s6IG1pbigzNXB4LCBjYWxjKDM1IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBwYWRkaW5nLWlubGluZTogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBnYXA6IG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gIC5hcmVhX3NhZmV0eSAuaW5uZXIgLm1pZGRsZSAudW5pdCBoMyB7XG4gICAgY29sb3I6ICM4NzY4Mjg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogY2FsYygyMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxMzAlO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9zYWZldHkgLmlubmVyIC5taWRkbGUgLnVuaXQgaDMge1xuICAgICAgZm9udC1zaXplOiBtaW4oMjZweCwgY2FsYygyNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEyMyU7XG4gICAgfVxuICB9XG4gIC5hcmVhX3NhZmV0eSAuaW5uZXIgLm1pZGRsZSAudW5pdCAuaWNvbiB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygxMiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmFyZWFfc2FmZXR5IC5pbm5lciAubWlkZGxlIC51bml0IC5pY29uIHtcbiAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgIH1cbiAgfVxuICAuYXJlYV9zYWZldHkgLmlubmVyIC5taWRkbGUgLnVuaXQgLmljb24gaW1nLnplcm8ge1xuICAgIHdpZHRoOiBjYWxjKDczIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hcmVhX3NhZmV0eSAuaW5uZXIgLm1pZGRsZSAudW5pdCAuaWNvbiBpbWcuemVybyB7XG4gICAgICB3aWR0aDogbWluKDExOXB4LCBjYWxjKDExOSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAuYXJlYV9zYWZldHkgLmlubmVyIC5taWRkbGUgLnVuaXQgLmljb24gaW1nLm9rIHtcbiAgICB3aWR0aDogY2FsYyg5NCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9zYWZldHkgLmlubmVyIC5taWRkbGUgLnVuaXQgLmljb24gaW1nLm9rIHtcbiAgICAgIHdpZHRoOiBtaW4oMTU1cHgsIGNhbGMoMTU1IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBtYXJnaW4tbGVmdDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgLmFyZWFfc2FmZXR5IC5pbm5lciAuYm90dG9tIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDM2IC8gMzkwICogMTAwdncpO1xuICAgIHBhZGRpbmctbGVmdDogY2FsYygxMCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9zYWZldHkgLmlubmVyIC5ib3R0b20ge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDU3cHgsIGNhbGMoNTcgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIHBhZGRpbmctbGVmdDogbWluKDE0NXB4LCBjYWxjKDE0NSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAuYXJlYV9zYWZldHkgLmlubmVyIC5ib3R0b20gcCB7XG4gICAgY29sb3I6ICM4NzY4Mjg7XG4gICAgZm9udC1zaXplOiBjYWxjKDE2IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9zYWZldHkgLmlubmVyIC5ib3R0b20gcCB7XG4gICAgICBmb250LXNpemU6IG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBsaW5lLWhlaWdodDogMTQxJTtcbiAgICB9XG4gIH1cbiAgLmFyZWFfc2FmZXR5IC5pbm5lciAuaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogY2FsYygyMiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBib3R0b206IDA7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmFyZWFfc2FmZXR5IC5pbm5lciAuaW1hZ2Uge1xuICAgICAgcmlnaHQ6IG1pbigxMDlweCwgY2FsYygxMDkgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgLmFyZWFfc2FmZXR5IC5pbm5lciAuaW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogY2FsYygxMzggLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmFyZWFfc2FmZXR5IC5pbm5lciAuaW1hZ2UgaW1nIHtcbiAgICAgIHdpZHRoOiBtaW4oMjA5cHgsIGNhbGMoMjA5IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICN3aHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFREVBRTQ7XG4gICAgcGFkZGluZy1ibG9jazogY2FsYyg0MiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDU4IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICN3aHkge1xuICAgICAgcGFkZGluZy1ibG9jazogbWluKDEwMHB4LCBjYWxjKDEwMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgbWFyZ2luLXRvcDogbWluKDkxcHgsIGNhbGMoOTEgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3doeSAuaW5uZXIge1xuICAgIHBhZGRpbmctaW5saW5lOiBjYWxjKDIzIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICN3aHkgLmlubmVyIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgICAgIHdpZHRoOiBtaW4oMTAyMHB4LCBjYWxjKDEwMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgfVxuICB9XG4gICN3aHkgLmlubmVyIC5zd2lwZXIge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMzggLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3doeSAuaW5uZXIgLnN3aXBlciB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oNDhweCwgY2FsYyg0OCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjd2h5IC5pbm5lciAuc3dpcGVyIC5zd2lwZXItd3JhcHBlciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICN3aHkgLmlubmVyIC5zd2lwZXIgLnN3aXBlci13cmFwcGVyIHtcbiAgICAgIGdhcDogbWluKDMwcHgsIGNhbGMoMzAgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3doeSAuaW5uZXIgLnN3aXBlciAudW5pdCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHN1YmdyaWQ7XG4gICAgZ3JpZC1yb3c6IHNwYW4gMjtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMTIgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3doeSAuaW5uZXIgLnN3aXBlciAudW5pdCB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgICBnYXA6IDA7XG4gICAgfVxuICB9XG4gICN3aHkgLmlubmVyIC5zd2lwZXIgLnVuaXQgLm51bSB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxNiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNDNjlDNkI7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgcGFkZGluZzogY2FsYyg4IC8gMzkwICogMTAwdncpIGNhbGMoMzIgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3doeSAuaW5uZXIgLnN3aXBlciAudW5pdCAubnVtIHtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDE4cHgsIGNhbGMoMTggLyAxNDQwICogMTAwdncpKTtcbiAgICAgIHBhZGRpbmc6IG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDQwcHgsIGNhbGMoNDAgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3doeSAuaW5uZXIgLnN3aXBlciAudW5pdCAudW5pdGlubmVyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQzY5QzZCO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgdHJhbnNsYXRlOiAwIGNhbGMoLTE3IC8gMzkwICogMTAwdncpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICN3aHkgLmlubmVyIC5zd2lwZXIgLnVuaXQgLnVuaXRpbm5lciB7XG4gICAgICB0cmFuc2xhdGU6IDAgbWF4KC0xOXB4LCBjYWxjKC0xOSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjd2h5IC5pbm5lciAuc3dpcGVyIC51bml0IC51bml0aW5uZXIgLnRleHQge1xuICAgIHBhZGRpbmc6IGNhbGMoNTAgLyAzOTAgKiAxMDB2dykgY2FsYygzOCAvIDM5MCAqIDEwMHZ3KSBjYWxjKDIwIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICN3aHkgLmlubmVyIC5zd2lwZXIgLnVuaXQgLnVuaXRpbm5lciAudGV4dCB7XG4gICAgICBwYWRkaW5nOiBtaW4oNTBweCwgY2FsYyg1MCAvIDE0NDAgKiAxMDB2dykpIG1pbigzOHB4LCBjYWxjKDM4IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3doeSAuaW5uZXIgLnN3aXBlciAudW5pdCAudW5pdGlubmVyIC50ZXh0IGgzIHtcbiAgICBmb250LXNpemU6IGNhbGMoMjIgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTcyLjcyNyU7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3doeSAuaW5uZXIgLnN3aXBlciAudW5pdCAudW5pdGlubmVyIC50ZXh0IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDI0cHgsIGNhbGMoMjQgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3doeSAuaW5uZXIgLnN3aXBlciAudW5pdCAudW5pdGlubmVyIC50ZXh0IC5sZWFkIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDIwIC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxNiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBsaW5lLWhlaWdodDogMjAwJTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjd2h5IC5pbm5lciAuc3dpcGVyIC51bml0IC51bml0aW5uZXIgLnRleHQgLmxlYWQge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3doeSAuaW5uZXIgLnN3aXBlciAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMjQgLyAzOTAgKiAxMDB2dyk7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjd2h5IC5pbm5lciAuc3dpcGVyIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAjd2h5IC5pbm5lciAuc3dpcGVyIC5zd2lwZXItcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICB3aWR0aDogY2FsYygxMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAgLyAzOTAgKiAxMDB2dyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIG1hcmdpbi1pbmxpbmU6IGNhbGMoMTIgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3doeSAuaW5uZXIgLnN3aXBlciAuc3dpcGVyLXBhZ2luYXRpb24gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgICB3aWR0aDogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGhlaWdodDogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3doeSAuaW5uZXIgLnN3aXBlciAuc3dpcGVyLXBhZ2luYXRpb24gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgfVxuICAjY29uZGl0aW9ucyB7XG4gICAgbWFyZ2luLXRvcDogY2FsYyg3MCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjY29uZGl0aW9ucyB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oOTBweCwgY2FsYyg5MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjY29uZGl0aW9ucyAuaW5uZXIge1xuICAgIHBhZGRpbmctaW5saW5lOiBjYWxjKDEzIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNjb25kaXRpb25zIC5pbm5lciB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgICB3aWR0aDogbWluKDg0M3B4LCBjYWxjKDg0MyAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICB9XG4gIH1cbiAgI2NvbmRpdGlvbnMgLmlubmVyIC5saXN0IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDM4IC8gMzkwICogMTAwdncpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICBnYXA6IGNhbGMoOCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjY29uZGl0aW9ucyAuaW5uZXIgLmxpc3Qge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDYycHgsIGNhbGMoNjIgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGdhcDogbWluKDhweCwgY2FsYyg4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNjb25kaXRpb25zIC5pbm5lciAubGlzdCBsaSBmaWd1cmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgZ2FwOiBjYWxjKDYgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2NvbmRpdGlvbnMgLmlubmVyIC5saXN0IGxpIGZpZ3VyZSB7XG4gICAgICBnYXA6IDA7XG4gICAgfVxuICB9XG4gICNjb25kaXRpb25zIC5pbm5lciAubGlzdCBsaSBmaWd1cmUgaW1nIHtcbiAgICB3aWR0aDogY2FsYygxNjcgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2NvbmRpdGlvbnMgLmlubmVyIC5saXN0IGxpIGZpZ3VyZSBpbWcge1xuICAgICAgd2lkdGg6IG1pbigxNjlweCwgY2FsYygxNjkgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI2NvbmRpdGlvbnMgLmlubmVyIC5saXN0IGxpIGZpZ3VyZSBmaWdjYXB0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoOCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IGNhbGMoMTYgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTYyJTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmxhY2spO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjY29uZGl0aW9ucyAuaW5uZXIgLmxpc3QgbGkgZmlndXJlIGZpZ2NhcHRpb24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiBtaW4oMzBweCwgY2FsYygzMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oMjZweCwgY2FsYygyNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjcmVhc29ucyB7XG4gICAgbWFyZ2luLXRvcDogY2FsYyg4NCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjcmVhc29ucyB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMTg0cHgsIGNhbGMoMTg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNyZWFzb25zIC5oZWFkZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG8gYXV0bztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogY2FsYygyMCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjcmVhc29ucyAuaGVhZGVyIHtcbiAgICAgIGdhcDogbWluKDQwcHgsIGNhbGMoNDAgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3JlYXNvbnMgLmhlYWRlcjo6YmVmb3JlLCAjcmVhc29ucyAuaGVhZGVyOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogY2FsYygxMDAgLyAzOTAgKiAxMDB2dyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0FGOEY1MDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3JlYXNvbnMgLmhlYWRlcjo6YmVmb3JlLCAjcmVhc29ucyAuaGVhZGVyOjphZnRlciB7XG4gICAgICBoZWlnaHQ6IG1pbigxMzBweCwgY2FsYygxMzAgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3JlYXNvbnMgLmhlYWRlcjo6YmVmb3JlIHtcbiAgICByb3RhdGU6IHogLTMwZGVnO1xuICB9XG4gICNyZWFzb25zIC5oZWFkZXI6OmFmdGVyIHtcbiAgICByb3RhdGU6IHogMzBkZWc7XG4gIH1cbiAgI3JlYXNvbnMgLmhlYWRlciAuaGVhZGluZ0xhcmdlIHtcbiAgICB0cmFuc2xhdGU6IDAgY2FsYygtMTAgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3JlYXNvbnMgLmhlYWRlciAuaGVhZGluZ0xhcmdlIHtcbiAgICAgIHRyYW5zbGF0ZTogMCBtYXgoLTEwcHgsIGNhbGMoLTEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNyZWFzb25zIC5saXN0IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDIyIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNyZWFzb25zIC5saXN0IHtcbiAgICAgIG1hcmdpbi10b3A6IG1pbig0N3B4LCBjYWxjKDQ3IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNyZWFzb25zIC5saXN0IC51bml0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGMkU4O1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDQ0IC8gMzkwICogMTAwdncpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjcmVhc29ucyAubGlzdCAudW5pdCB7XG4gICAgICBwYWRkaW5nLWJsb2NrOiBtaW4oNjVweCwgY2FsYyg2NSAvIDE0NDAgKiAxMDB2dykpIG1pbig1MnB4LCBjYWxjKDUyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNyZWFzb25zIC5saXN0IC51bml0Om50aC1jaGlsZChldmVuKSAudGV4dCB7XG4gICAgICB0cmFuc2xhdGU6IG1heCgyNjVweCwgY2FsYygyNjUgLyAxNDQwICogMTAwdncpKSAwO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjcmVhc29ucyAubGlzdCAudW5pdCAuYmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaW5zZXQ6IDA7XG4gICAgfVxuICAgICNyZWFzb25zIC5saXN0IC51bml0IC5iZyBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG4gIH1cbiAgI3JlYXNvbnMgLmxpc3QgLnVuaXQgLnRleHQge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoLTExMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBtYXJnaW4taW5saW5lOiBjYWxjKDI2IC8gMzkwICogMTAwdncpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOTQ2OTE2O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjI1KSk7XG4gICAgcGFkZGluZzogY2FsYygyOSAvIDM5MCAqIDEwMHZ3KSBjYWxjKDI5IC8gMzkwICogMTAwdncpIGNhbGMoMzIgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3JlYXNvbnMgLmxpc3QgLnVuaXQgLnRleHQge1xuICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgcGFkZGluZzogbWluKDYwcHgsIGNhbGMoNjAgLyAxNDQwICogMTAwdncpKSBtaW4oNTBweCwgY2FsYyg1MCAvIDE0NDAgKiAxMDB2dykpIG1pbig0N3B4LCBjYWxjKDQ3IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICB3aWR0aDogbWluKDUyMHB4LCBjYWxjKDUyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgdHJhbnNsYXRlOiBtYXgoLTI2NXB4LCBjYWxjKC0yNjUgLyAxNDQwICogMTAwdncpKSAwO1xuICAgIH1cbiAgfVxuICAjcmVhc29ucyAubGlzdCAudW5pdCAudGV4dCBkbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogY2FsYygxNSAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjcmVhc29ucyAubGlzdCAudW5pdCAudGV4dCBkbCB7XG4gICAgICBnYXA6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNyZWFzb25zIC5saXN0IC51bml0IC50ZXh0IGRsIGR0IHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCAjRDBCNzhFIDMyLjg3JSwgIzk0ODY2MyA1NS42NCUsICNEMEI3OEUgOTcuNjYlKTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gICAgZm9udC1zaXplOiBjYWxjKDUzIC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHdpZHRoOiBjYWxjKDg1IC8gMzkwICogMTAwdncpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjcmVhc29ucyAubGlzdCAudW5pdCAudGV4dCBkbCBkdCB7XG4gICAgICB3aWR0aDogbWluKDExM3B4LCBjYWxjKDExMyAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oNzZweCwgY2FsYyg3NiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjcmVhc29ucyAubGlzdCAudW5pdCAudGV4dCBkbCBkdDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IGNhbGMoNjMgLyAzOTAgKiAxMDB2dyk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0NWRlZywgI0QwQjc4RSAzMi44NyUsICM5NDg2NjMgNTUuNjQlLCAjRDBCNzhFIDk3LjY2JSk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3JlYXNvbnMgLmxpc3QgLnVuaXQgLnRleHQgZGwgZHQ6OmFmdGVyIHtcbiAgICAgIGhlaWdodDogbWluKDgzcHgsIGNhbGMoODMgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3JlYXNvbnMgLmxpc3QgLnVuaXQgLnRleHQgZGwgZGQge1xuICAgIGZvbnQtc2l6ZTogY2FsYygyMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgIGNvbG9yOiAjODc2ODI4O1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNyZWFzb25zIC5saXN0IC51bml0IC50ZXh0IGRsIGRkIHtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDI4cHgsIGNhbGMoMjggLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3JlYXNvbnMgLmxpc3QgLnVuaXQgLnRleHQgcCB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygzMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXNpemU6IGNhbGMoMTYgLyAzOTAgKiAxMDB2dyk7XG4gICAgbGluZS1oZWlnaHQ6IDI7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3JlYXNvbnMgLmxpc3QgLnVuaXQgLnRleHQgcCB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oNDBweCwgY2FsYyg0MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjcmVhc29ucyAubGlzdCAudW5pdCAudGV4dCAuYXBwZWFsIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDMwIC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygyMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNDVkZWcsICM5NDg2NjMgOC40OSUsICNEMEI3OEUgOTcuNjYlKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogY2FsYygxMCAvIDM5MCAqIDEwMHZ3KSBjYWxjKDE2IC8gMzkwICogMTAwdncpIGNhbGMoMTIgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3JlYXNvbnMgLmxpc3QgLnVuaXQgLnRleHQgLmFwcGVhbCB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oNDBweCwgY2FsYyg0MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oMjJweCwgY2FsYygyMiAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgcGFkZGluZzogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKSBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpIG1pbigxOHB4LCBjYWxjKDE4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtZXRob2Qge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoNjQgLyAzOTAgKiAxMDB2dyk7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoNDIgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21ldGhvZCB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMTIwcHgsIGNhbGMoMTIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogbWluKDk4cHgsIGNhbGMoOTggLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI21ldGhvZCAuaW5uZXIge1xuICAgIHBhZGRpbmctaW5saW5lOiBjYWxjKDM3IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtZXRob2QgLmlubmVyIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgICAgIHdpZHRoOiBtaW4oMTA0MHB4LCBjYWxjKDEwNDAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgfVxuICB9XG4gICNtZXRob2QgLmlubmVyIC5saXN0IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDY3IC8gMzkwICogMTAwdncpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICBnYXA6IGNhbGMoMjEgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21ldGhvZCAuaW5uZXIgLmxpc3Qge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDczcHgsIGNhbGMoNzMgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGdhcDogbWluKDM1cHgsIGNhbGMoMzUgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgfVxuICB9XG4gICNtZXRob2QgLmlubmVyIC5saXN0IC51bml0IHtcbiAgICBib3JkZXItdG9wOiAzcHggc29saWQgI0M2OUM2QjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjNGM0YzO1xuICAgIGZpbHRlcjogZHJvcC1zaGFkb3coNHB4IDRweCA4cHggcmdiYSgwLCAwLCAwLCAwLjE1KSk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21ldGhvZCAuaW5uZXIgLmxpc3QgLnVuaXQge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogc3ViZ3JpZDtcbiAgICAgIGdyaWQtcm93OiBzcGFuIDI7XG4gICAgfVxuICB9XG4gICNtZXRob2QgLmlubmVyIC5saXN0IC51bml0IGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0M2OUM2QjtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCA5MCUgMCUsIDEwMCUgMTAwJSwgMCUgMTAwJSk7XG4gICAgcGFkZGluZzogY2FsYyg4IC8gMzkwICogMTAwdncpIGNhbGMoMzIgLyAzOTAgKiAxMDB2dykgY2FsYygxMCAvIDM5MCAqIDEwMHZ3KSBjYWxjKDE2IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxOCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRvcDogY2FsYygtMzYgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21ldGhvZCAuaW5uZXIgLmxpc3QgLnVuaXQgaSB7XG4gICAgICBmb250LXNpemU6IG1pbigxOHB4LCBjYWxjKDE4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBwYWRkaW5nOiBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKSBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpIG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIHRvcDogbWF4KC0zNnB4LCBjYWxjKC0zNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjbWV0aG9kIC5pbm5lciAubGlzdCAudW5pdCAudGV4dCB7XG4gICAgcGFkZGluZzogY2FsYyg0MCAvIDM5MCAqIDEwMHZ3KSBjYWxjKDMyIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtZXRob2QgLmlubmVyIC5saXN0IC51bml0IC50ZXh0IHtcbiAgICAgIHBhZGRpbmc6IG1pbig0MHB4LCBjYWxjKDQwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDQ4cHgsIGNhbGMoNDggLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI21ldGhvZCAuaW5uZXIgLmxpc3QgLnVuaXQgLnRleHQgaDMge1xuICAgIGNvbG9yOiAjOTY2QjMzO1xuICAgIGZvbnQtc2l6ZTogY2FsYygyMiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtZXRob2QgLmlubmVyIC5saXN0IC51bml0IC50ZXh0IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDMwcHgsIGNhbGMoMzAgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI21ldGhvZCAuaW5uZXIgLmxpc3QgLnVuaXQgLnRleHQgaDQge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMjAgLyAzOTAgKiAxMDB2dyk7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZm9udC1zaXplOiBjYWxjKDE4IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21ldGhvZCAuaW5uZXIgLmxpc3QgLnVuaXQgLnRleHQgaDQge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI21ldGhvZCAuaW5uZXIgLmxpc3QgLnVuaXQgLnRleHQgcCB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygyMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBmb250LXNpemU6IGNhbGMoMTYgLyAzOTAgKiAxMDB2dyk7XG4gICAgbGluZS1oZWlnaHQ6IDIwMCU7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21ldGhvZCAuaW5uZXIgLmxpc3QgLnVuaXQgLnRleHQgcCB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjbWV0aG9kIC5pbm5lciAuYXR0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTY2QjMzO1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgcGFkZGluZzogY2FsYygyMCAvIDM5MCAqIDEwMHZ3KSBjYWxjKDI0IC8gMzkwICogMTAwdncpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDE3IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtZXRob2QgLmlubmVyIC5hdHQge1xuICAgICAgcGFkZGluZzogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKSBtaW4oNTBweCwgY2FsYyg1MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI21ldGhvZCAuaW5uZXIgLmF0dCBoMyB7XG4gICAgY29sb3I6ICM5NjZCMzM7XG4gICAgZm9udC1zaXplOiBjYWxjKDE4IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21ldGhvZCAuaW5uZXIgLmF0dCBoMyB7XG4gICAgICBmb250LXNpemU6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtZXRob2QgLmlubmVyIC5hdHQgcCB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygxMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBjb2xvcjogIzk2NkIzMztcbiAgICBmb250LXNpemU6IGNhbGMoMTQgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjbWV0aG9kIC5pbm5lciAuYXR0IHAge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI21ldGhvZCAuaW5uZXIgLm5vdGUge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMTggLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC1zaXplOiBjYWxjKDEyIC8gMzkwICogMTAwdncpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtZXRob2QgLmlubmVyIC5ub3RlIHtcbiAgICAgIG1hcmdpbi10b3A6IG1pbigxNXB4LCBjYWxjKDE1IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBmb250LXNpemU6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNzdGVwcyB7XG4gICAgbWFyZ2luLXRvcDogY2FsYyg1OSAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjc3RlcHMge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDcycHgsIGNhbGMoNzIgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3N0ZXBzIC5pbm5lciB7XG4gICAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMzYgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3N0ZXBzIC5pbm5lciB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgICB3aWR0aDogbWluKDg5MHB4LCBjYWxjKDg5MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICB9XG4gIH1cbiAgI3N0ZXBzIC5pbm5lciAubGVhZCB7XG4gICAgZm9udC1zaXplOiBjYWxjKDE1IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoMTIgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3N0ZXBzIC5pbm5lciAubGVhZCB7XG4gICAgICBmb250LXNpemU6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjc3RlcHMgLmlubmVyIHBpY3R1cmUge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMjEgLyAzOTAgKiAxMDB2dyk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3N0ZXBzIC5pbm5lciBwaWN0dXJlIHtcbiAgICAgIG1hcmdpbi10b3A6IG1pbigzNnB4LCBjYWxjKDM2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtYXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkYyRTg7XG4gICAgcGFkZGluZy1ibG9jazogY2FsYygzMiAvIDM5MCAqIDEwMHZ3KSBjYWxjKDM5IC8gMzkwICogMTAwdncpO1xuICAgIG1hcmdpbi10b3A6IGNhbGMoNjUgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21hcCB7XG4gICAgICBwYWRkaW5nLWJsb2NrOiBtaW4oNzhweCwgY2FsYyg3OCAvIDE0NDAgKiAxMDB2dykpIG1pbig3MHB4LCBjYWxjKDcwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oOTVweCwgY2FsYyg5NSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjbWFwIC5pbm5lciB7XG4gICAgICB3aWR0aDogbWluKDEwODNweCwgY2FsYygxMDgzIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIH1cbiAgfVxuICAjbWFwIC5pbm5lciAubGVhZCB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygxNSAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXNpemU6IGNhbGMoMTYgLyAzOTAgKiAxMDB2dyk7XG4gICAgbGluZS1oZWlnaHQ6IDIwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtYXAgLmlubmVyIC5sZWFkIHtcbiAgICAgIG1hcmdpbi10b3A6IG1pbigxOXB4LCBjYWxjKDE5IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBmb250LXNpemU6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtYXAgLmlubmVyIC5saXN0IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDE1IC8gMzkwICogMTAwdncpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICBnYXA6IGNhbGMoMTUgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21hcCAuaW5uZXIgLmxpc3Qge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDUxcHgsIGNhbGMoNTEgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGdhcDogbWluKDM1cHgsIGNhbGMoMzUgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuICB9XG4gICNtYXAgLmlubmVyIC5saXN0IC51bml0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IGNhbGMoNDAgLyAzOTAgKiAxMDB2dykgMCBjYWxjKDM1IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtYXAgLmlubmVyIC5saXN0IC51bml0IHtcbiAgICAgIHBhZGRpbmc6IG1pbig0MHB4LCBjYWxjKDQwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDM3cHgsIGNhbGMoMzcgLyAxNDQwICogMTAwdncpKSBtaW4oNTBweCwgY2FsYyg1MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjbWFwIC5pbm5lciAubGlzdCAudW5pdCAuaGVhZGVyIHtcbiAgICBwYWRkaW5nLWlubGluZTogY2FsYyg4IC8gMzkwICogMTAwdncpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjbWFwIC5pbm5lciAubGlzdCAudW5pdCAuaGVhZGVyIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgICB9XG4gIH1cbiAgI21hcCAuaW5uZXIgLmxpc3QgLnVuaXQgLmhlYWRlciBoMyB7XG4gICAgY29sb3I6ICM5NjZCMzM7XG4gICAgZm9udC1zaXplOiBjYWxjKDIyIC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21hcCAuaW5uZXIgLmxpc3QgLnVuaXQgLmhlYWRlciBoMyB7XG4gICAgICBmb250LXNpemU6IG1pbigzMnB4LCBjYWxjKDMyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtYXAgLmlubmVyIC5saXN0IC51bml0IC5oZWFkZXIgYWRkcmVzcyB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygxNyAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXNpemU6IGNhbGMoMTYgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjbWFwIC5pbm5lciAubGlzdCAudW5pdCAuaGVhZGVyIGFkZHJlc3Mge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDMwcHgsIGNhbGMoMzAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDE4cHgsIGNhbGMoMTggLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI21hcCAuaW5uZXIgLmxpc3QgLnVuaXQgLmhlYWRlciAuYWNjZXNzIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDE3IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxNCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtYXAgLmlubmVyIC5saXN0IC51bml0IC5oZWFkZXIgLmFjY2VzcyB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjbWFwIC5pbm5lciAubGlzdCAudW5pdCAubWFwIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDE3IC8gMzkwICogMTAwdncpO1xuICAgIHBhZGRpbmctaW5saW5lOiBjYWxjKDIwIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtYXAgLmlubmVyIC5saXN0IC51bml0IC5tYXAge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDMwcHgsIGNhbGMoMzAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgICB9XG4gIH1cbiAgI21hcCAuaW5uZXIgLmxpc3QgLnVuaXQgLm1hcCBpZnJhbWUge1xuICAgIGFzcGVjdC1yYXRpbzogMzUwLzIxNjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjbWFwIC5pbm5lciAubGlzdCAudW5pdCAubWFwIGlmcmFtZSB7XG4gICAgICBhc3BlY3QtcmF0aW86IDQ1MC8yNzg7XG4gICAgfVxuICB9XG4gICNtYXAgLmlubmVyIC5saXN0IC51bml0IC50ZWwge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMTcgLyAzOTAgKiAxMDB2dyk7XG4gICAgbWFyZ2luLWlubGluZTogY2FsYygyMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBwYWRkaW5nOiBjYWxjKDE1IC8gMzkwICogMTAwdncpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiBjYWxjKDcgLyAzOTAgKiAxMDB2dyk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0EwMkQwNDtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtYXAgLmlubmVyIC5saXN0IC51bml0IC50ZWwge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDMwcHgsIGNhbGMoMzAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IHVuc2V0O1xuICAgICAgcGFkZGluZzogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtYXAgLmlubmVyIC5saXN0IC51bml0IC50ZWwgZHQge1xuICAgIGZvbnQtc2l6ZTogY2FsYygxNCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtYXAgLmlubmVyIC5saXN0IC51bml0IC50ZWwgZHQge1xuICAgICAgZm9udC1zaXplOiBtaW4oMThweCwgY2FsYygxOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjbWFwIC5pbm5lciAubGlzdCAudW5pdCAudGVsIGRkIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDYgLyAzOTAgKiAxMDB2dyk7XG4gICAgY29sb3I6ICNBMDJEMDQ7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IGNhbGMoMjQgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjbWFwIC5pbm5lciAubGlzdCAudW5pdCAudGVsIGRkIHtcbiAgICAgIG1hcmdpbi10b3A6IG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBmb250LXNpemU6IG1pbigzMnB4LCBjYWxjKDMyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbiAgI21hcCAuaW5uZXIgLmxpc3QgLnVuaXQgLmluZm8ge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMTcgLyAzOTAgKiAxMDB2dyk7XG4gICAgbWFyZ2luLWlubGluZTogY2FsYygyMCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjbWFwIC5pbm5lciAubGlzdCAudW5pdCAuaW5mbyB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMzBweCwgY2FsYygzMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgbWFyZ2luLWlubGluZTogdW5zZXQ7XG4gICAgfVxuICB9XG4gICNtYXAgLmlubmVyIC5saXN0IC51bml0IC5pbmZvIHRoIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygxNSAvIDM5MCAqIDEwMHZ3KTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDE0IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtYXAgLmlubmVyIC5saXN0IC51bml0IC5pbmZvIHRoIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgcGFkZGluZy1yaWdodDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI21hcCAuaW5uZXIgLmxpc3QgLnVuaXQgLmluZm8gdGggc3BhbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogY2FsYyg5MiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBwYWRkaW5nOiBjYWxjKDUgLyAzOTAgKiAxMDB2dykgY2FsYyg0IC8gMzkwICogMTAwdncpIGNhbGMoNiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IGNhbGMoMTYgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgYm9yZGVyLXJhZGl1czogY2FsYyg0IC8gMzkwICogMTAwdncpO1xuICAgIGxpbmUtaGVpZ2h0OiAxMzAlO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtYXAgLmlubmVyIC5saXN0IC51bml0IC5pbmZvIHRoIHNwYW4ge1xuICAgICAgd2lkdGg6IG1pbig5MnB4LCBjYWxjKDkyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBwYWRkaW5nOiBtaW4oNXB4LCBjYWxjKDUgLyAxNDQwICogMTAwdncpKSBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKSBtaW4oNnB4LCBjYWxjKDYgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDE4cHgsIGNhbGMoMTggLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjbWFwIC5pbm5lciAubGlzdCAudW5pdCAuaW5mbyB0ZCB7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoMTUgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC1zaXplOiBjYWxjKDE0IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI21hcCAuaW5uZXIgLmxpc3QgLnVuaXQgLmluZm8gdGQge1xuICAgICAgcGFkZGluZy1ib3R0b206IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBmb250LXNpemU6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNtYXAgLmlubmVyIC5saXN0IC51bml0IC5pbmZvIHRkIHN0cm9uZyB7XG4gICAgZm9udC1zaXplOiBjYWxjKDE2IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNtYXAgLmlubmVyIC5saXN0IC51bml0IC5pbmZvIHRkIHN0cm9uZyB7XG4gICAgICBmb250LXNpemU6IG1pbigxOHB4LCBjYWxjKDE4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNmYXEge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoNjEgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2ZhcSB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oODFweCwgY2FsYyg4MSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjZmFxIC5pbm5lciB7XG4gICAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMTkgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2ZhcSAuaW5uZXIge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICAgd2lkdGg6IG1pbig4MzRweCwgY2FsYyg4MzQgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgfVxuICB9XG4gICNmYXEgLmlubmVyIC5saXN0IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDUwIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNmYXEgLmlubmVyIC5saXN0IHtcbiAgICAgIG1hcmdpbi10b3A6IG1pbig2MHB4LCBjYWxjKDYwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNmYXEgLmlubmVyIC5saXN0IC51bml0IHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDIwIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNmYXEgLmlubmVyIC5saXN0IC51bml0IHtcbiAgICAgIG1hcmdpbi10b3A6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNmYXEgLmlubmVyIC5saXN0IC51bml0LmlzLWFjdGl2ZSAucTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi4oiSXCI7XG4gIH1cbiAgI2ZhcSAuaW5uZXIgLmxpc3QgLnVuaXQuaXMtYWN0aXZlIC5hIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAjZmFxIC5pbm5lciAubGlzdCAudW5pdCAucSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0M2OUM2QjtcbiAgICBwYWRkaW5nOiBjYWxjKDE1IC8gMzkwICogMTAwdncpIGNhbGMoMzAgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC1zaXplOiBjYWxjKDE0IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbGluZS1oZWlnaHQ6IDE3MSU7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyIGF1dG87XG4gICAgZ2FwOiBjYWxjKDIwIC8gMzkwICogMTAwdncpO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNmYXEgLmlubmVyIC5saXN0IC51bml0IC5xIHtcbiAgICAgIHBhZGRpbmc6IG1pbigxNXB4LCBjYWxjKDE1IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDMwcHgsIGNhbGMoMzAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGdhcDogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI2ZhcSAuaW5uZXIgLmxpc3QgLnVuaXQgLnE6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJRXCI7XG4gICAgZm9udC1zaXplOiBjYWxjKDIwIC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2ZhcSAuaW5uZXIgLmxpc3QgLnVuaXQgLnE6OmJlZm9yZSB7XG4gICAgICBmb250LXNpemU6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNmYXEgLmlubmVyIC5saXN0IC51bml0IC5xOjphZnRlciB7XG4gICAgY29udGVudDogXCIrXCI7XG4gICAgZm9udC1zaXplOiBjYWxjKDIwIC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2ZhcSAuaW5uZXIgLmxpc3QgLnVuaXQgLnE6OmFmdGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI2ZhcSAuaW5uZXIgLmxpc3QgLnVuaXQgLmEge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKDE1IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxNCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBsaW5lLWhlaWdodDogMTcxJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2ZhcSAuaW5uZXIgLmxpc3QgLnVuaXQgLmEge1xuICAgICAgcGFkZGluZy10b3A6IG1pbigxNXB4LCBjYWxjKDE1IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBmb250LXNpemU6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gIGZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogY2FsYyg1MCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygxNjAgLyAzOTAgKiAxMDB2dyk7XG4gICAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMjAgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgZm9vdGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IG1pbig2M3B4LCBjYWxjKDYzIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogbWluKDEyOHB4LCBjYWxjKDEyOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgIH1cbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBmb290ZXIgZGwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGdhcDogbWluKDMzcHgsIGNhbGMoMzMgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgZm9vdGVyIGRsIGR0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgZm9vdGVyIGRsIGR0IGltZyB7XG4gICAgd2lkdGg6IGNhbGMoMTU2IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGZvb3RlciBkbCBkdCBpbWcge1xuICAgICAgd2lkdGg6IG1pbigxNTZweCwgY2FsYygxNTYgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgZm9vdGVyIGRsIGRkIHtcbiAgICBmb250LXNpemU6IGNhbGMoMTQgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDI1IC8gMzkwICogMTAwdncpO1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIGZvb3RlciBkbCBkZCB7XG4gICAgICBmb250LXNpemU6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLWlubGluZTogdW5zZXQ7XG4gICAgfVxuICB9XG4gIGZvb3RlciBwIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDI1IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxMyAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBmb290ZXIgcCB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMjRweCwgY2FsYygyNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oMTNweCwgY2FsYygxMyAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG4gIH1cbiAgI2J1dHRvbnMge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgzMywgMzAsIDI4LCAwLjkpO1xuICAgIHBhZGRpbmc6IGNhbGMoOSAvIDM5MCAqIDEwMHZ3KSBjYWxjKDE0IC8gMzkwICogMTAwdncpIGNhbGMoOSAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjYnV0dG9ucyB7XG4gICAgICBwYWRkaW5nLWJsb2NrOiBtaW4oMTFweCwgY2FsYygxMSAvIDE0NDAgKiAxMDB2dykpIG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNidXR0b25zIC5pbm5lciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIGdhcDogY2FsYyg2IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNidXR0b25zIC5pbm5lciB7XG4gICAgICBnYXA6IG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgfVxuICAjYnV0dG9ucyAuaW5uZXIgLnVuaXQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAjYnV0dG9ucyAuaW5uZXIgLnVuaXQgaDIge1xuICAgIGZvbnQtc2l6ZTogY2FsYygxMyAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAjRkZGO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNidXR0b25zIC5pbm5lciAudW5pdCBoMiB7XG4gICAgICBmb250LXNpemU6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICNidXR0b25zIC5pbm5lciAudW5pdCBhLCAjYnV0dG9ucyAuaW5uZXIgLnVuaXQgYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDYgLyAzOTAgKiAxMDB2dyk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1ibG9jazogY2FsYyg4IC8gMzkwICogMTAwdncpIGNhbGMoMTAgLyAzOTAgKiAxMDB2dyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogY2FsYyg4IC8gMzkwICogMTAwdncpO1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxNSAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IGNhbGMoNSAvIDM5MCAqIDEwMHZ3KTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjYnV0dG9ucyAuaW5uZXIgLnVuaXQgYSwgI2J1dHRvbnMgLmlubmVyIC51bml0IGJ1dHRvbiB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oNnB4LCBjYWxjKDYgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIHBhZGRpbmctYmxvY2s6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpIG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgYm9yZGVyLXJhZGl1czogbWluKDVweCwgY2FsYyg1IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBnYXA6IG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBmb250LXNpemU6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICB3aWR0aDogbWluKDM0MHB4LCBjYWxjKDM0MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgbWluLWhlaWdodDogbWluKDYycHgsIGNhbGMoNjIgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI2J1dHRvbnMgLmlubmVyIC51bml0IGE6OmJlZm9yZSwgI2J1dHRvbnMgLmlubmVyIC51bml0IGJ1dHRvbjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgfVxuICAjYnV0dG9ucyAuaW5uZXIgLnVuaXQgYS5saW5lLCAjYnV0dG9ucyAuaW5uZXIgLnVuaXQgYnV0dG9uLmxpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwM0EwNDM7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDNBMDQzO1xuICB9XG4gICNidXR0b25zIC5pbm5lciAudW5pdCBhLmxpbmU6OmJlZm9yZSwgI2J1dHRvbnMgLmlubmVyIC51bml0IGJ1dHRvbi5saW5lOjpiZWZvcmUge1xuICAgIHdpZHRoOiBjYWxjKDM5IC8gMzkwICogMTAwdncpO1xuICAgIGhlaWdodDogY2FsYygzOSAvIDM5MCAqIDEwMHZ3KTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2xpbmUud2VicCk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI2J1dHRvbnMgLmlubmVyIC51bml0IGEubGluZTo6YmVmb3JlLCAjYnV0dG9ucyAuaW5uZXIgLnVuaXQgYnV0dG9uLmxpbmU6OmJlZm9yZSB7XG4gICAgICB3aWR0aDogbWluKDQ1cHgsIGNhbGMoNDUgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGhlaWdodDogbWluKDQ1cHgsIGNhbGMoNDUgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgI2J1dHRvbnMgLmlubmVyIC51bml0IGEubGluZTpob3ZlciwgI2J1dHRvbnMgLmlubmVyIC51bml0IGJ1dHRvbi5saW5lOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXItY29sb3I6ICMwNkM3NTU7XG4gICAgICBjb2xvcjogIzA2Qzc1NTtcbiAgICB9XG4gIH1cbiAgI2J1dHRvbnMgLmlubmVyIC51bml0IGEudGVsLCAjYnV0dG9ucyAuaW5uZXIgLnVuaXQgYnV0dG9uLnRlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0M4NUEzMjtcbiAgICBib3JkZXItY29sb3I6ICNDODVBMzI7XG4gICAgZ2FwOiBjYWxjKDEwIC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICNidXR0b25zIC5pbm5lciAudW5pdCBhLnRlbCwgI2J1dHRvbnMgLmlubmVyIC51bml0IGJ1dHRvbi50ZWwge1xuICAgICAgZ2FwOiBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjYnV0dG9ucyAuaW5uZXIgLnVuaXQgYS50ZWw6OmJlZm9yZSwgI2J1dHRvbnMgLmlubmVyIC51bml0IGJ1dHRvbi50ZWw6OmJlZm9yZSB7XG4gICAgd2lkdGg6IGNhbGMoMjQgLyAzOTAgKiAxMDB2dyk7XG4gICAgaGVpZ2h0OiBjYWxjKDM4IC8gMzkwICogMTAwdncpO1xuICAgIG1hc2staW1hZ2U6IHVybCguLi9pbWFnZXMvcGhvbmUuc3ZnKTtcbiAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjYnV0dG9ucyAuaW5uZXIgLnVuaXQgYS50ZWw6OmJlZm9yZSwgI2J1dHRvbnMgLmlubmVyIC51bml0IGJ1dHRvbi50ZWw6OmJlZm9yZSB7XG4gICAgICB3aWR0aDogbWluKDI0cHgsIGNhbGMoMjQgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGhlaWdodDogbWluKDM4cHgsIGNhbGMoMzggLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgI2J1dHRvbnMgLmlubmVyIC51bml0IGEudGVsOmhvdmVyLCAjYnV0dG9ucyAuaW5uZXIgLnVuaXQgYnV0dG9uLnRlbDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgY29sb3I6ICNDODVBMzI7XG4gICAgfVxuICAgICNidXR0b25zIC5pbm5lciAudW5pdCBhLnRlbDpob3Zlcjo6YmVmb3JlLCAjYnV0dG9ucyAuaW5uZXIgLnVuaXQgYnV0dG9uLnRlbDpob3Zlcjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNDODVBMzI7XG4gICAgfVxuICB9XG4gIC5hcmVhX2xpbmUge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoNDAgLyAzOTAgKiAxMDB2dyk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmFyZWFfbGluZSB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oOTZweCwgY2FsYyg5NiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjc3RlcHMgKyAuYXJlYV9saW5lIHtcbiAgICAgIG1hcmdpbi10b3A6IG1pbig3MHB4LCBjYWxjKDcwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gIC5hcmVhX2xpbmUgLmlubmVyIHtcbiAgICBwYWRkaW5nLWlubGluZTogY2FsYygxNiAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9saW5lIC5pbm5lciB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgICB3aWR0aDogbWluKDg1MHB4LCBjYWxjKDg1MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICB9XG4gIH1cbiAgLmFyZWFfbGluZSAuaW5uZXIgaDIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG8gYXV0bztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogY2FsYygyMCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9saW5lIC5pbm5lciBoMiB7XG4gICAgICBnYXA6IG1pbig0MHB4LCBjYWxjKDQwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gIC5hcmVhX2xpbmUgLmlubmVyIGgyOjpiZWZvcmUsIC5hcmVhX2xpbmUgLmlubmVyIGgyOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogY2FsYyg0NSAvIDM5MCAqIDEwMHZ3KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDZDNzU1O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9saW5lIC5pbm5lciBoMjo6YmVmb3JlLCAuYXJlYV9saW5lIC5pbm5lciBoMjo6YWZ0ZXIge1xuICAgICAgaGVpZ2h0OiBtaW4oOTJweCwgY2FsYyg5MiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAuYXJlYV9saW5lIC5pbm5lciBoMjo6YmVmb3JlIHtcbiAgICByb3RhdGU6IHogLTMwZGVnO1xuICB9XG4gIC5hcmVhX2xpbmUgLmlubmVyIGgyOjphZnRlciB7XG4gICAgcm90YXRlOiB6IDMwZGVnO1xuICB9XG4gIC5hcmVhX2xpbmUgLmlubmVyIGgyIHNwYW4ge1xuICAgIHRyYW5zbGF0ZTogMCBjYWxjKC0yIC8gMzkwICogMTAwdncpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogIzFFQUM1ODtcbiAgICBmb250LXNpemU6IGNhbGMoMTUgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9saW5lIC5pbm5lciBoMiBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDMwcHgsIGNhbGMoMzAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIHRyYW5zbGF0ZTogMCBtYXgoLTZweCwgY2FsYygtNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gICAgfVxuICB9XG4gIC5hcmVhX2xpbmUgLmlubmVyIGEge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMjggLyAzOTAgKiAxMDB2dyk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogY2FsYyg3IC8gMzkwICogMTAwdncpO1xuICAgIGJhY2tncm91bmQ6ICMwM0EwNDM7XG4gICAgYm94LXNoYWRvdzogMCAyLjgyN3B4IDIuODI3cHggMCByZ2JhKDE3OSwgMTc0LCAxNzQsIDAuNTUpO1xuICAgIHBhZGRpbmc6IGNhbGMoMjIgLyAzOTAgKiAxMDB2dykgY2FsYygxMiAvIDM5MCAqIDEwMHZ3KSBjYWxjKDIyIC8gMzkwICogMTAwdncpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjMDNBMDQzO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hcmVhX2xpbmUgLmlubmVyIGEge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDU5cHgsIGNhbGMoNTkgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIHBhZGRpbmc6IG1pbigyMnB4LCBjYWxjKDIyIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDM2cHgsIGNhbGMoMzYgLyAxNDQwICogMTAwdncpKSBtaW4oMjJweCwgY2FsYygyMiAvIDE0NDAgKiAxMDB2dykpIG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBib3JkZXItcmFkaXVzOiBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgYm94LXNoYWRvdzogMnB4IDRweCA2cHggMCByZ2JhKDE3OSwgMTc0LCAxNzQsIDAuNTUpO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAuYXJlYV9saW5lIC5pbm5lciBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNGRkYgNjUuMTYlLCAjRUZGOUYzIDEwMC4wNSUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDZDNzU1O1xuICAgIH1cbiAgICAuYXJlYV9saW5lIC5pbm5lciBhOmhvdmVyIGkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA2Qzc1NTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgICAuYXJlYV9saW5lIC5pbm5lciBhOmhvdmVyIGk6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwNkM3NTU7XG4gICAgfVxuICAgIC5hcmVhX2xpbmUgLmlubmVyIGE6aG92ZXIgc3Ryb25nIHtcbiAgICAgIGNvbG9yOiAjMDZDNzU1O1xuICAgIH1cbiAgICAuYXJlYV9saW5lIC5pbm5lciBhOmhvdmVyIHN0cm9uZzo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA2Qzc1NTtcbiAgICB9XG4gIH1cbiAgLmFyZWFfbGluZSAuaW5uZXIgYSBpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdG9wOiBjYWxjKC0xNCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzA2Qzc1NTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGZvbnQtc2l6ZTogY2FsYygxMSAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHBhZGRpbmc6IGNhbGMoNiAvIDM5MCAqIDEwMHZ3KSBjYWxjKDE0IC8gMzkwICogMTAwdncpIGNhbGMoOCAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9saW5lIC5pbm5lciBhIGkge1xuICAgICAgdG9wOiBtYXgoLTMycHgsIGNhbGMoLTMyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBmb250LXNpemU6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBwYWRkaW5nOiBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpIG1pbig1NHB4LCBjYWxjKDU0IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDE3cHgsIGNhbGMoMTcgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgLmFyZWFfbGluZSAuaW5uZXIgYSBpOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zbGF0ZTogLTUwJSAwO1xuICAgIGJvdHRvbTogY2FsYygtMTIgLyAzOTAgKiAxMDB2dyk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IGNhbGMoMTMgLyAzOTAgKiAxMDB2dyk7XG4gICAgaGVpZ2h0OiBjYWxjKDEzIC8gMzkwICogMTAwdncpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgNTAlIDEwMCUsIDEwMCUgMCk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmFyZWFfbGluZSAuaW5uZXIgYSBpOjphZnRlciB7XG4gICAgICB3aWR0aDogbWluKDI2cHgsIGNhbGMoMjYgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGhlaWdodDogbWluKDI2cHgsIGNhbGMoMjYgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGJvdHRvbTogbWF4KC0yMnB4LCBjYWxjKC0yMiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAuYXJlYV9saW5lIC5pbm5lciBhIHN0cm9uZyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0byBhdXRvO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiBjYWxjKDEyIC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygyNSAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hcmVhX2xpbmUgLmlubmVyIGEgc3Ryb25nIHtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDQ2cHgsIGNhbGMoNDYgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGdhcDogbWluKDU1cHgsIGNhbGMoNTUgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgLmFyZWFfbGluZSAuaW5uZXIgYSBzdHJvbmc6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogY2FsYyg1MiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBoZWlnaHQ6IGNhbGMoNTIgLyAzOTAgKiAxMDB2dyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9saW5lLndlYnApO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9saW5lIC5pbm5lciBhIHN0cm9uZzo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiBtaW4oMTI1cHgsIGNhbGMoMTI1IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBoZWlnaHQ6IG1pbigxMjVweCwgY2FsYygxMjUgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgLmFyZWFfbGluZSAuaW5uZXIgYSBzdHJvbmc6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBjYWxjKDkgLyAzOTAgKiAxMDB2dyk7XG4gICAgaGVpZ2h0OiBjYWxjKDE0IC8gMzkwICogMTAwdncpO1xuICAgIG1hc2staW1hZ2U6IHVybCguLi9pbWFnZXMvYXJyb3cuc3ZnKTtcbiAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuYXJlYV9saW5lIC5pbm5lciBhIHN0cm9uZzo6YWZ0ZXIge1xuICAgICAgd2lkdGg6IG1pbigyMXB4LCBjYWxjKDIxIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBoZWlnaHQ6IG1pbigzNXB4LCBjYWxjKDM1IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG4gICN0ZWwtZGlhbG9nIHtcbiAgICAtLWR1cmF0aW9uOiAwLjNzO1xuICAgIC0tc2NhbGU6IDAuNjtcbiAgICB3aWR0aDogY2FsYygzNDYgLyAzOTAgKiAxMDB2dyk7XG4gICAgYm9yZGVyLXJhZGl1czogY2FsYygxMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICBwYWRkaW5nOiBjYWxjKDQwIC8gMzkwICogMTAwdncpIGNhbGMoMjMgLyAzOTAgKiAxMDB2dykgY2FsYygyNiAvIDM5MCAqIDEwMHZ3KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogZGlzcGxheSB2YXIoLS1kdXJhdGlvbikgYWxsb3ctZGlzY3JldGUsIG92ZXJsYXkgdmFyKC0tZHVyYXRpb24pIGFsbG93LWRpc2NyZXRlLCBvcGFjaXR5IHZhcigtLWR1cmF0aW9uKSwgc2NhbGUgdmFyKC0tZHVyYXRpb24pO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgc2NhbGU6IHZhcigtLXNjYWxlKTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjdGVsLWRpYWxvZyB7XG4gICAgICB3aWR0aDogbWluKDkxNnB4LCBjYWxjKDkxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgYm9yZGVyLXJhZGl1czogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIHBhZGRpbmc6IG1pbig1MXB4LCBjYWxjKDUxIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDQ0cHgsIGNhbGMoNDQgLyAxNDQwICogMTAwdncpKSBtaW4oMzFweCwgY2FsYygzMSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjdGVsLWRpYWxvZ1tvcGVuXSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBzY2FsZTogMTtcbiAgfVxuICBAc3RhcnRpbmctc3R5bGUge1xuICAgICN0ZWwtZGlhbG9nW29wZW5dIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBzY2FsZTogdmFyKC0tc2NhbGUpO1xuICAgIH1cbiAgfVxuICAjdGVsLWRpYWxvZzo6YmFja2Ryb3Age1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tZHVyYXRpb24pO1xuICB9XG4gICN0ZWwtZGlhbG9nW29wZW5dOjpiYWNrZHJvcCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICBAc3RhcnRpbmctc3R5bGUge1xuICAgICN0ZWwtZGlhbG9nW29wZW5dOjpiYWNrZHJvcCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuICAjdGVsLWRpYWxvZyBoMiB7XG4gICAgZm9udC1zaXplOiBjYWxjKDI0IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3RlbC1kaWFsb2cgaDIge1xuICAgICAgZm9udC1zaXplOiBtaW4oMzBweCwgY2FsYygzMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjdGVsLWRpYWxvZyAuaW5uZXIge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMjYgLyAzOTAgKiAxMDB2dyk7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgIGdhcDogY2FsYygyMiAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjdGVsLWRpYWxvZyAuaW5uZXIge1xuICAgICAgbWFyZ2luLXRvcDogbWluKDI1cHgsIGNhbGMoMjUgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGdhcDogbWluKDI4cHgsIGNhbGMoMjggLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgfVxuICB9XG4gICN0ZWwtZGlhbG9nIC5pbm5lciAudW5pdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogY2FsYygyMCAvIDM5MCAqIDEwMHZ3KSBjYWxjKDE2IC8gMzkwICogMTAwdncpIGNhbGMoMjIgLyAzOTAgKiAxMDB2dyk7XG4gICAgYm9yZGVyLXJhZGl1czogY2FsYygxMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjQzIzRDBFO1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgYm94LXNoYWRvdzogM3B4IDNweCA2cHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3RlbC1kaWFsb2cgLmlubmVyIC51bml0IHtcbiAgICAgIHBhZGRpbmc6IG1pbig0MHB4LCBjYWxjKDQwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKSBtaW4oMjlweCwgY2FsYygyOSAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgYm9yZGVyLXJhZGl1czogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgI3RlbC1kaWFsb2cgLmlubmVyIC51bml0OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNDMjNEMEU7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gICAgI3RlbC1kaWFsb2cgLmlubmVyIC51bml0OmhvdmVyIC50aXRsZTo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgfVxuICAgICN0ZWwtZGlhbG9nIC5pbm5lciAudW5pdDpob3ZlciAudGl0bGUgc3Ryb25nIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgICAjdGVsLWRpYWxvZyAuaW5uZXIgLnVuaXQ6aG92ZXIgLnRlbCB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cbiAgI3RlbC1kaWFsb2cgLmlubmVyIC51bml0IC50aXRsZSB7XG4gICAgZm9udC1zaXplOiBjYWxjKDE4IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogY2FsYygxMiAvIDM5MCAqIDEwMHZ3KTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjdGVsLWRpYWxvZyAuaW5uZXIgLnVuaXQgLnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogbWluKDI2cHgsIGNhbGMoMjYgLyAxNDQwICogMTAwdncpKTtcbiAgICAgIGdhcDogbWluKDE5cHgsIGNhbGMoMTkgLyAxNDQwICogMTAwdncpKTtcbiAgICB9XG4gIH1cbiAgI3RlbC1kaWFsb2cgLmlubmVyIC51bml0IC50aXRsZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBjYWxjKDI0IC8gMzkwICogMTAwdncpO1xuICAgIGhlaWdodDogY2FsYygzOCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBtYXNrLWltYWdlOiB1cmwoLi4vaW1hZ2VzL3Bob25lLnN2Zyk7XG4gICAgbWFzay1zaXplOiBjb250YWluO1xuICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNDODVBMzI7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3RlbC1kaWFsb2cgLmlubmVyIC51bml0IC50aXRsZTo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiBtaW4oMjRweCwgY2FsYygyNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgaGVpZ2h0OiBtaW4oMzhweCwgY2FsYygzOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjdGVsLWRpYWxvZyAuaW5uZXIgLnVuaXQgLnRpdGxlIHN0cm9uZyB7XG4gICAgY29sb3I6ICNDMjNEMEU7XG4gIH1cbiAgI3RlbC1kaWFsb2cgLmlubmVyIC51bml0IC50ZWwge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoNiAvIDM5MCAqIDEwMHZ3KTtcbiAgICBmb250LXNpemU6IGNhbGMoMzAgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTQwJTtcbiAgICBjb2xvcjogI0MyM0QwRTtcbiAgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAjdGVsLWRpYWxvZyAuaW5uZXIgLnVuaXQgLnRlbCB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMTdweCwgY2FsYygxNyAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oNDBweCwgY2FsYyg0MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjdGVsLWRpYWxvZyAuaW5uZXIgLnVuaXQgLmhvdXJzIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKDcgLyAzOTAgKiAxMDB2dyk7XG4gICAgZm9udC1zaXplOiBjYWxjKDE1IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3RlbC1kaWFsb2cgLmlubmVyIC51bml0IC5ob3VycyB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMTdweCwgY2FsYygxNyAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjdGVsLWRpYWxvZyAuY2xvc2Uge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMzYgLyAzOTAgKiAxMDB2dyk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiBjYWxjKDE4IC8gMzkwICogMTAwdncpO1xuICAgIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiBjYWxjKDE0IC8gMzkwICogMTAwdncpO1xuICB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICN0ZWwtZGlhbG9nIC5jbG9zZSB7XG4gICAgICBtYXJnaW4tdG9wOiBtaW4oMzBweCwgY2FsYygzMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZ2FwOiBtaW4oMThweCwgY2FsYygxOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgICAgZm9udC1zaXplOiBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIH1cbiAgfVxuICAjdGVsLWRpYWxvZyAuY2xvc2U6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogY2FsYygxMCAvIDM5MCAqIDEwMHZ3KTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAgLyAzOTAgKiAxMDB2dyk7XG4gICAgbWFzay1pbWFnZTogdXJsKC4uL2ltYWdlcy9jbG9zZS5zdmcpO1xuICAgIG1hc2stc2l6ZTogY29udGFpbjtcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgI3RlbC1kaWFsb2cgLmNsb3NlOjpiZWZvcmUge1xuICAgICAgd2lkdGg6IG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgICBoZWlnaHQ6IG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgfVxuICB9XG59IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuXG46cm9vdCB7XG4gIC0tdHJhbnNpdGlvbi1zcGVlZC1zbG93OiAwLjVzO1xuICAtLXRyYW5zaXRpb24tc3BlZWQ6IDAuM3M7XG4gIC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0OiAwLjJzO1xuICAtLWJlemllcjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgLS1jb2xvci1ibGFjazogIzIyMjtcbiAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1ibGFjayk7XG4gIC0tY29sb3ItYnJhbmQ6ICNDRjExMUJGRjtcbiAgLS1jb2xvci1zZWNvbmRhcnk6ICNGNUY0RjNGRjtcbiAgLS1jb2xvci10ZXJ0aWFyeTogI0ZBRTRFNEZGO1xufVxuQGxheWVyIHJlc2V0LCBiYXNlLCBzd2lwZXIsIGNvbXBvbmVudHM7XG5cbkBsYXllciByZXNldCB7XG4gIEBpbXBvcnQgXCJyZXNldFwiO1xufVxuXG5AbGF5ZXIgYmFzZSB7XG4gICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbiAgKjpiZWZvcmUsXG4gICo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbiAgKjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuICBodG1sIHtcbiAgICBmb250LXNpemU6IHZ3KDE2cHgpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgZm9udC1zaXplOiBwYygxOHB4KTtcbiAgICB9XG4gIH1cbiAgYm9keSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgZm9udC1mYW1pbHk6IFwiTm90byBTYW5zIEpQXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1vcHRpY2FsLXNpemluZzogYXV0bztcbiAgICBmb250LXNpemU6IHZ3KC0tZnMtbSk7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgfVxuICAgICYuaXMtZml4ZWQsICYuZml4ZWQge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cbiAgOnJvb3Q6aGFzKGRpYWxvZ1tvcGVuXSkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgc2Nyb2xsYmFyLWd1dHRlcjogc3RhYmxlO1xuICB9XG4gIC5zZXJpZiB7XG4gICAgZm9udC1mYW1pbHk6IFlha3VIYW5NUCwgXCJOb3RvIFNlcmlmIEpQXCIsIHNlcmlmO1xuICB9XG5cbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG4gIGxhYmVsIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmW2hyZWZePVwidGVsOlwiXSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gIH1cbiAgYWJiciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIGJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udDogaW5oZXJpdDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB9XG4gIGJyIHtcbiAgICAmLnNwLW9ubHkge1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgICYucGMtb25seSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgOndoZXJlKGJ1dHRvbiwgW3R5cGU9J2J1dHRvbiddLCBbdHlwZT0ncmVzZXQnXSwgW3R5cGU9J3N1Ym1pdCddKSB7XG4gICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIH1cbiAgOndoZXJlKFxuICAgICAgOmFueS1saW5rLFxuICAgICAgYnV0dG9uLFxuICAgICAgW3R5cGU9J2J1dHRvbiddLFxuICAgICAgW3R5cGU9J3Jlc2V0J10sXG4gICAgICBbdHlwZT0nc3VibWl0J10sXG4gICAgICBsYWJlbFtmb3JdLFxuICAgICAgc2VsZWN0LFxuICAgICAgc3VtbWFyeSxcbiAgICAgIFtyb2xlPSd0YWInXSxcbiAgICAgIFtyb2xlPSdidXR0b24nXVxuICAgICkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICA6Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuICBzdXAsXG4gIHN1YiB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAwLjc1ZW07XG4gIH1cbiAgc3VwIHtcbiAgICBib3R0b206IC43NWV4O1xuICB9XG4gIHN1YiB7XG4gICAgdG9wOiAuNWV4O1xuICB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG4gIC5zdmdfZGVmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHN2ZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIHByZSB7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICB9XG4gIGh0bWwubGVuaXMsXG4gIGh0bWwubGVuaXMgYm9keSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5sZW5pcy5sZW5pcy1zbW9vdGgge1xuICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5sZW5pcy5sZW5pcy1zbW9vdGggW2RhdGEtbGVuaXMtcHJldmVudF0ge1xuICAgIG92ZXJzY3JvbGwtYmVoYXZpb3I6IGNvbnRhaW47XG4gIH1cbiAgLmxlbmlzLmxlbmlzLXN0b3BwZWQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLmxlbmlzLmxlbmlzLXNjcm9sbGluZyBpZnJhbWUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gIGh0bWwuaXMtY2hhbmdpbmcgLnRyYW5zaXRpb24tZmFkZSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXM7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIGh0bWwuaXMtYW5pbWF0aW5nIC50cmFuc2l0aW9uLWZhZGUge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjVzO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgLnBjLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuICB9XG4gIC5zcC1vbmx5IHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAuaGlkZGVuLXNwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGRpc3BsYXk6IHVuc2V0O1xuICAgIH1cbiAgfVxuICAuaGlkZGVuLXBje1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5oaWRkZW4tb3Zlci10Ymwge1xuICAgIEBpbmNsdWRlIG1xKHRibCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLmhpZGRlbi1vdmVyLXRiIHtcbiAgICBAaW5jbHVkZSBtcSh0Yikge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLmhpZGRlbi1vdmVyLXNwIHtcbiAgICBAaW5jbHVkZSBtcShzcCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAudmlzdWFsbHktaGlkZGVuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAtMXB4ICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBsYXllciBzd2lwZXIge1xuICBAaW1wb3J0IFwic3dpcGVyXCI7XG59XG5AbGF5ZXIgY29tcG9uZW50cyB7XG4gICNoZXJvIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2hlcm9fYmcud2VicCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBoZWlnaHQ6IHZ3KDYxOHB4KTtcbiAgICBwYWRkaW5nOiB2dygxNnB4KSAwIDAgdncoMjZweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9oZXJvX2JnX3BjLndlYnApO1xuICAgICAgcGFkZGluZzogcGMoNDRweCkgMCAwIDA7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICAgIC5pbm5lciB7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgd2lkdGg6IHBjKDEwNDZweCk7XG4gICAgICAgIGhlaWdodDogcGMoNzM0cHgpO1xuICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5sb2dvIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogdncoMjhweCk7XG4gICAgICBsZWZ0OiB2dygzNHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IHZ3KDEwMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgd2lkdGg6IHBjKDE1MnB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubGVhZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2dygxN3B4KTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICAgICAgbWFyZ2luLXRvcDogcGMoMTlweCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgZ2FwOiBwYygyNHB4KTtcbiAgICAgIH1cbiAgICAgIC5iYWRnZSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IHZ3KDE3OXB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgIHdpZHRoOiBwYygyMjdweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMjRweCk7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoMThweCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICBmb250LXNpemU6IHBjKDI2cHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGgxIHtcbiAgICAgIG1hcmdpbi10b3A6IHZ3KDE0cHgpO1xuICAgICAgZm9udC1zaXplOiB2dygzMHB4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcGNtYXgoLTI0cHgpO1xuICAgICAgICBmb250LXNpemU6IHBjKDU0cHgpO1xuICAgICAgfVxuICAgIH1cbiAgICBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiB2dygzMnB4KTtcbiAgICAgIGNvbG9yOiAjOTQ2OTE2O1xuICAgICAgZm9udC1zaXplOiB2dygxN3B4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTgwJTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBtYXJnaW4tdG9wOiBwYyg0M3B4KTtcbiAgICAgICAgZm9udC1zaXplOiBwYygzMHB4KTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiBwYygxNXB4KTtcbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogdncoMXB4KSB2dyg4cHgpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IHZ3KDE3NHB4KTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICBjb2xvcjogIzk0NjkxNjtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgcGFkZGluZzogcGMoMXB4KSBwYyg4cHgpO1xuICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDEycHgpO1xuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMDhkZWcsICNERUNCQTMgMTMuNTIlLCAjRjhFQUNGIDUwLjAxJSwgI0RCQzM5RSA4OS40MiUpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5jaGFyYWN0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IHZ3KDEyMHB4KTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IHZ3KDQ4cHgpO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIHdpZHRoOiBwYygyNTZweCk7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0cmFuc2xhdGU6IHBjKDc4cHgpIDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5oZWFkaW5nTGFyZ2Uge1xuICAgIGNvbG9yOiAjODc2ODI4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IHZ3KDI2cHgpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICBmb250LXNpemU6IHBjKDM2cHgpO1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgICB9XG4gIH1cbiAgI21hcmtldHByaWNlIHtcbiAgICBtYXJnaW4tdG9wOiB2dyg1MXB4KTtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDc5cHgpO1xuICAgIH1cbiAgICAuaW5uZXIge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHZ3KDE0cHgpO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgICAgICAgd2lkdGg6IHBjKDcwMHB4KTtcbiAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygycHgpO1xuICAgICAgICBmb250LXNpemU6IHZ3KDE2cHgpO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogIzg3NjgyODtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcGMoNHB4KTtcbiAgICAgICAgICBmb250LXNpemU6IHBjKDIwcHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0YWJsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZ3KDE1cHgpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYygyNXB4KTtcbiAgICAgICAgfVxuICAgICAgICB0ciB7XG4gICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICBwYWRkaW5nOiB2dygyNXB4KSB2dygyMHB4KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMjBweCk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IHBjKDM1cHgpIHBjKDI0cHgpIHBjKDM1cHgpIHBjKDUycHgpO1xuICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDI4cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgcGFkZGluZzogdncoMjVweCkgdncoMjBweCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICBwYWRkaW5nOiBwYygzNXB4KSBwYyg0MnB4KSBwYygzNXB4KSBwYygyNHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMjhweCk7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoNDBweCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBmb250LXNpemU6IHZ3KDIwcHgpO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDI4cHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubm90ZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZ3KDEzcHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYygxOXB4KTtcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygxMnB4KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTMzJTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKDE0cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCLigLtcIjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgI2FjaGlldmVtZW50cyB7XG4gICAgbWFyZ2luLXRvcDogdncoNTdweCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9hY2hpZXZlbWVudHNfYmcud2VicCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBwYWRkaW5nLWJsb2NrOiB2dyg0NHB4KSB2dyg2NHB4KTtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDkxcHgpO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9hY2hpZXZlbWVudHNfYmdfcGMud2VicCk7XG4gICAgICBwYWRkaW5nLWJsb2NrOiBwYyg4NHB4KSBwYyg5OHB4KTtcbiAgICB9XG4gICAgLmlubmVyIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2dygxMnB4KTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgICAgIHdpZHRoOiBwYygxMDI0cHgpO1xuICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgfVxuICAgICAgLmxpc3Qge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygzNXB4KTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgZ2FwOiB2dygxNHB4KSB2dygxMnB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcGMoNTZweCk7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgICBnYXA6IHBjKDgwcHgpIHBjKDUwcHgpO1xuICAgICAgICB9XG4gICAgICAgIC51bml0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIHBhZGRpbmc6IHZ3KDEwcHgpIHZ3KDEwcHgpIHZ3KDIwcHgpO1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBzdWJncmlkO1xuICAgICAgICAgIGdyaWQtcm93OiBzcGFuIDI7XG4gICAgICAgICAgZ2FwOiAwO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgcGFkZGluZzogdW5zZXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBmaWdjYXB0aW9uIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoMTBweCk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMTRweCk7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTclO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygxNXB4KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDE2cHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGRsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDEwcHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDE1cHgpO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBkdCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMTNweCk7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDJweCk7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNBMDJEMDQ7XG4gICAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgICAgICAgcGFkZGluZzogdncoMnB4KSB2dyg4cHgpIHZ3KDNweCk7XG4gICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDE2cHgpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHBjKDJweCkgcGMoOHB4KSBwYygzcHgpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGRkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoMTBweCk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMTZweCk7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIGNvbG9yOiAjQTAyRDA0O1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygyOHB4KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMjJweCk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoMzRweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hcmVhX3NhZmV0eSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEwOGRlZywgI0RFQ0JBMyAxMy41MiUsICNGOEVBQ0YgNTAuMDElLCAjREJDMzlFIDg5LjQyJSk7XG4gICAgcGFkZGluZy1ibG9jazogdncoNTJweCkgdncoNTdweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgcGFkZGluZy1ibG9jazogcGMoNzZweCkgMDtcbiAgICB9XG4gICAgLmlubmVyIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2dygyMHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgICAgIHdpZHRoOiBwYyg4OTBweCk7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHBjKDU3cHgpO1xuICAgICAgfVxuICAgICAgLnRvcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZ3KDI3cHgpO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgICAgICBnYXA6IHZ3KDdweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDYxcHgpO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgICAgZ2FwOiBwYygyNXB4KTtcbiAgICAgICAgfVxuICAgICAgICAudW5pdCB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdncoOHB4KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGO1xuICAgICAgICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkpO1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZTogXG4gICAgICAgICAgICBcImljb24gdGl0bGVcIiBhdXRvXG4gICAgICAgICAgICBcImNvbnRlbnQgY29udGVudFwiIGF1dG9cbiAgICAgICAgICAgIC8gdncoMTA0cHgpIDFmcjtcbiAgICAgICAgICBnYXA6IDA7XG4gICAgICAgICAgcGFkZGluZy1ibG9jazogdncoMTlweCkgdncoMTNweCk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBzdWJncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBub25lO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogbm9uZTtcbiAgICAgICAgICAgIGdyaWQtcm93OiBzcGFuIDM7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg4cHgpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDAgcGMoMjdweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgIGdyaWQtYXJlYTogaWNvbjtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZ3KDEwcHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgIGdyaWQtYXJlYTogdW5zZXQ7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB1bnNldDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICB0cmFuc2xhdGU6IDAgcGNtYXgoLTE3cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgd2lkdGg6IHZ3KDg4cHgpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogcGMoOTZweCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZ3JpZC1hcmVhOiB0aXRsZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMjBweCk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1NiU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdncoMTBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgZ3JpZC1hcmVhOiB1bnNldDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygyNnB4KTtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHVuc2V0O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTIzJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBncmlkLWFyZWE6IGNvbnRlbnQ7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzk2NkIzMztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IHZ3KDVweCkgdncoNXB4KSAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2dygxNHB4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTgwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygxMnB4KTtcbiAgICAgICAgICAgICAgZ3JpZC1hcmVhOiB1bnNldDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygxNnB4KTtcbiAgICAgICAgICAgICAgcGFkZGluZzogdW5zZXQ7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNzUlO1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5taWRkbGUge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dyg4cHgpO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICBnYXA6IHZ3KDhweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDMwcHgpO1xuICAgICAgICAgIGdhcDogcGMoMjJweCk7XG4gICAgICAgIH1cbiAgICAgICAgLnVuaXQge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDhweCk7XG4gICAgICAgICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICAgICAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpKTtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogc3ViZ3JpZDtcbiAgICAgICAgICBncmlkLXJvdzogc3BhbiAyO1xuICAgICAgICAgIGdhcDogMDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZy1ibG9jazogdncoMTlweCkgdncoMTdweCk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg4cHgpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA0cHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IHBjKDM1cHgpO1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IHBjKDIwcHgpO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogcGMoMjRweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGNvbG9yOiAjODc2ODI4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2dygyMHB4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTMwJTtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDI2cHgpO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTIzJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoMTJweCk7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAmLnplcm8ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiB2dyg3M3B4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiBwYygxMTlweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICYub2sge1xuICAgICAgICAgICAgICAgIHdpZHRoOiB2dyg5NHB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiBwYygxNTVweCk7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogcGMoMTRweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYm90dG9tIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMzZweCk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogdncoMTBweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDU3cHgpO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogcGMoMTQ1cHgpO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgIGNvbG9yOiAjODc2ODI4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogdncoMTZweCk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygyNHB4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNDElO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmltYWdlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogdncoMjJweCk7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgcmlnaHQ6IHBjKDEwOXB4KTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiB2dygxMzhweCk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICB3aWR0aDogcGMoMjA5cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAjd2h5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRURFQUU0O1xuICAgIHBhZGRpbmctYmxvY2s6IHZ3KDQycHgpO1xuICAgIG1hcmdpbi10b3A6IHZ3KDU4cHgpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgcGFkZGluZy1ibG9jazogcGMoMTAwcHgpO1xuICAgICAgbWFyZ2luLXRvcDogcGMoOTFweCk7XG4gICAgfVxuICAgIC5pbm5lciB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdncoMjNweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICAgICB3aWR0aDogcGMoMTAyMHB4KTtcbiAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgIH1cbiAgICAgIC5zd2lwZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygzOHB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcGMoNDhweCk7XG4gICAgICAgIH1cbiAgICAgICAgLnN3aXBlci13cmFwcGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBnYXA6IHBjKDMwcHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudW5pdCB7XG4gICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHN1YmdyaWQ7XG4gICAgICAgICAgZ3JpZC1yb3c6IHNwYW4gMjtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgcGFkZGluZy1pbmxpbmU6IHZ3KDEycHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICAgICAgICAgZ2FwOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAubnVtIHtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2dygxNnB4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzY5QzZCO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IHZ3KDhweCkgdncoMzJweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygxOHB4KTtcbiAgICAgICAgICAgICAgcGFkZGluZzogcGMoMTBweCkgcGMoNDBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC51bml0aW5uZXIge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0M2OUM2QjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB0cmFuc2xhdGU6IDAgdncoLTE3cHgpO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgdHJhbnNsYXRlOiAwIHBjbWF4KC0xOXB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgcGFkZGluZzogdncoNTBweCkgdncoMzhweCkgdncoMjBweCk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHBjKDUwcHgpIHBjKDM4cHgpIHBjKDIwcHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZ3KDIycHgpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE3Mi43MjclO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygyNHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmxlYWQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDIwcHgpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMTZweCk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwMCU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygyMHB4KTtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoMTZweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdncoMjRweCk7XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgICAgICAgICAgd2lkdGg6IHZ3KDEwcHgpO1xuICAgICAgICAgICAgaGVpZ2h0OiB2dygxMHB4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmxhY2spO1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogdncoMTJweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IHBjKDEwcHgpO1xuICAgICAgICAgICAgICBoZWlnaHQ6IHBjKDEwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgI2NvbmRpdGlvbnMge1xuICAgIG1hcmdpbi10b3A6IHZ3KDcwcHgpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgbWFyZ2luLXRvcDogcGMoOTBweCk7XG4gICAgfVxuICAgIC5pbm5lciB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdncoMTNweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICAgICB3aWR0aDogcGMoODQzcHgpO1xuICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgfVxuICAgICAgLmxpc3Qge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygzOHB4KTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICAgICAgZ2FwOiB2dyg4cHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg2MnB4KTtcbiAgICAgICAgICBnYXA6IHBjKDhweCk7XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgICAgICBnYXA6IHZ3KDZweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgZ2FwOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgd2lkdGg6IHZ3KDE2N3B4KTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHBjKDE2OXB4KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZmlnY2FwdGlvbiB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZ3KDhweCk7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBmb250LXNpemU6IHZ3KDE2cHgpO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTYyJTtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBwYygzMHB4KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDI2cHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbiAgI3JlYXNvbnMge1xuICAgIG1hcmdpbi10b3A6IHZ3KDg0cHgpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgbWFyZ2luLXRvcDogcGMoMTg0cHgpO1xuICAgIH1cbiAgICAuaGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0byBhdXRvO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiB2dygyMHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBnYXA6IHBjKDQwcHgpO1xuICAgICAgfVxuICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgaGVpZ2h0OiB2dygxMDBweCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNBRjhGNTA7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgaGVpZ2h0OiBwYygxMzBweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHJvdGF0ZTogeiAtMzBkZWdcbiAgICAgIH1cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgcm90YXRlOiB6IDMwZGVnXG4gICAgICB9XG4gICAgICAuaGVhZGluZ0xhcmdlIHtcbiAgICAgICAgdHJhbnNsYXRlOiAwIHZ3KC0xMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgdHJhbnNsYXRlOiAwIHBjbWF4KC0xMHB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubGlzdCB7XG4gICAgICBtYXJnaW4tdG9wOiB2dygyMnB4KTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBtYXJnaW4tdG9wOiBwYyg0N3B4KTtcbiAgICAgIH1cbiAgICAgIC51bml0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjJFODtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZ3KDQ0cHgpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIHBhZGRpbmctYmxvY2s6IHBjKDY1cHgpIHBjKDUycHgpO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgdHJhbnNsYXRlOiBwY21heCgyNjVweCkgMCA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5iZyB7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGV4dCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdncoLTExMHB4KTtcbiAgICAgICAgICBtYXJnaW4taW5saW5lOiB2dygyNnB4KTtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzk0NjkxNjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yNSkpO1xuICAgICAgICAgIHBhZGRpbmc6IHZ3KDI5cHgpIHZ3KDI5cHgpIHZ3KDMycHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZzogcGMoNjBweCkgcGMoNTBweCkgcGMoNDdweCk7XG4gICAgICAgICAgICB3aWR0aDogcGMoNTIwcHgpO1xuICAgICAgICAgICAgdHJhbnNsYXRlOiBwY21heCgtMjY1cHgpIDAgO1xuICAgICAgICAgIH1cbiAgICAgICAgICBkbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogdncoMTVweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgZ2FwOiBwYygyMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGR0IHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0NWRlZywgI0QwQjc4RSAzMi44NyUsICM5NDg2NjMgNTUuNjQlLCAjRDBCNzhFIDk3LjY2JSk7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2dyg1M3B4KTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICB3aWR0aDogdncoODVweCk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHBjKDExM3B4KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDc2cHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogdncoNjNweCk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0NWRlZywgI0QwQjc4RSAzMi44NyUsICM5NDg2NjMgNTUuNjQlLCAjRDBCNzhFIDk3LjY2JSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IHBjKDgzcHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGQge1xuICAgICAgICAgICAgICBmb250LXNpemU6IHZ3KDIwcHgpO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTQwJTtcbiAgICAgICAgICAgICAgY29sb3I6ICM4NzY4Mjg7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoMjhweCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2dygzMHB4KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMTZweCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg0MHB4KTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygxNnB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmFwcGVhbCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2dygzMHB4KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMjBweCk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCAjOTQ4NjYzIDguNDklLCAjRDBCNzhFIDk3LjY2JSk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiB2dygxMHB4KSB2dygxNnB4KSB2dygxMnB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg0MHB4KTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygyMnB4KTtcbiAgICAgICAgICAgICAgcGFkZGluZzogcGMoMTZweCkgcGMoMTZweCkgcGMoMThweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICNtZXRob2Qge1xuICAgIG1hcmdpbi10b3A6IHZ3KDY0cHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiB2dyg0MnB4KTtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDEyMHB4KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBwYyg5OHB4KTtcbiAgICB9XG4gICAgLmlubmVyIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2dygzN3B4KTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgICAgIHdpZHRoOiBwYygxMDQwcHgpO1xuICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgfVxuICAgICAgLmxpc3Qge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dyg2N3B4KTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICAgICAgZ2FwOiB2dygyMXB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcGMoNzNweCk7XG4gICAgICAgICAgZ2FwOiBwYygzNXB4KTtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICB9XG4gICAgICAgIC51bml0IHtcbiAgICAgICAgICBib3JkZXItdG9wOiAzcHggc29saWQgI0M2OUM2QjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjNGM0YzO1xuICAgICAgICAgIGZpbHRlcjogZHJvcC1zaGFkb3coNHB4IDRweCA4cHggcmdiYSgwLCAwLCAwLCAwLjE1KSk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBzdWJncmlkO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IHNwYW4gMjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNDNjlDNkI7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCA5MCUgMCUsIDEwMCUgMTAwJSwgMCUgMTAwJSk7XG4gICAgICAgICAgICBwYWRkaW5nOiB2dyg4cHgpIHZ3KDMycHgpIHZ3KDEwcHgpIHZ3KDE2cHgpO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2dygxOHB4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIHRvcDogdncoLTM2cHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoMThweCk7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IHBjKDhweCkgcGMoMzJweCkgcGMoMTBweCkgcGMoMTZweCk7XG4gICAgICAgICAgICAgIHRvcDogcGNtYXgoLTM2cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICBwYWRkaW5nOiB2dyg0MHB4KSB2dygzMnB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICBwYWRkaW5nOiBwYyg0MHB4KSBwYyg0OHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgY29sb3I6ICM5NjZCMzM7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMjJweCk7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDMwcHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDIwcHgpO1xuICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygxOHB4KTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDIwcHgpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoMjBweCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2dygyMHB4KTtcbiAgICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMTZweCk7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMDAlO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygyMHB4KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDE2cHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYXR0IHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk2NkIzMztcbiAgICAgICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICAgICAgcGFkZGluZzogdncoMjBweCkgdncoMjRweCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMTdweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIHBhZGRpbmc6IHBjKDIwcHgpIHBjKDUwcHgpO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYygxNnB4KTtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgY29sb3I6ICM5NjZCMzM7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygxOHB4KTtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygyMHB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdncoMTBweCk7XG4gICAgICAgICAgY29sb3I6ICM5NjZCMzM7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygxNHB4KTtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoMTBweCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKDE2cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm5vdGUge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygxOHB4KTtcbiAgICAgICAgZm9udC1zaXplOiB2dygxMnB4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcGMoMTVweCk7XG4gICAgICAgICAgZm9udC1zaXplOiBwYygxNHB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAjc3RlcHMge1xuICAgIG1hcmdpbi10b3A6IHZ3KDU5cHgpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgbWFyZ2luLXRvcDogcGMoNzJweCk7XG4gICAgfVxuICAgIC5pbm5lciB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdncoMzZweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICAgICB3aWR0aDogcGMoODkwcHgpO1xuICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgfVxuICAgICAgLmxlYWQge1xuICAgICAgICBmb250LXNpemU6IHZ3KDE1cHgpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDEycHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBmb250LXNpemU6IHBjKDIwcHgpO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHBjKDE2cHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBwaWN0dXJlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMjFweCk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYygzNnB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAjbWFwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGMkU4O1xuICAgIHBhZGRpbmctYmxvY2s6IHZ3KDMycHgpIHZ3KDM5cHgpO1xuICAgIG1hcmdpbi10b3A6IHZ3KDY1cHgpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgcGFkZGluZy1ibG9jazogcGMoNzhweCkgcGMoNzBweCk7XG4gICAgICBtYXJnaW4tdG9wOiBwYyg5NXB4KTtcbiAgICB9XG4gICAgLmlubmVyIHtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICB3aWR0aDogcGMoMTA4M3B4KTtcbiAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgIH1cbiAgICAgIC5sZWFkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMTVweCk7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoMTZweCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDE5cHgpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoMjBweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5saXN0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMTVweCk7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICAgIGdhcDogdncoMTVweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDUxcHgpO1xuICAgICAgICAgIGdhcDogcGMoMzVweCk7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgfVxuICAgICAgICAudW5pdCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICBwYWRkaW5nOiB2dyg0MHB4KSAwIHZ3KDM1cHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgcGFkZGluZzogcGMoNDBweCkgcGMoMzdweCkgcGMoNTBweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IHZ3KDhweCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICBjb2xvcjogIzk2NkIzMztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygyMnB4KTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygzMnB4KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYWRkcmVzcyB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDE3cHgpO1xuICAgICAgICAgICAgICBmb250LXNpemU6IHZ3KDE2cHgpO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygzMHB4KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDE4cHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWNjZXNzIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoMTdweCk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMTRweCk7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDEwcHgpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoMTZweCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLm1hcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2dygxN3B4KTtcbiAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiB2dygyMHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygzMHB4KTtcbiAgICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAzNTAgLyAyMTY7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDQ1MCAvIDI3ODtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAudGVsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDE3cHgpO1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogdncoMjBweCk7XG4gICAgICAgICAgICBwYWRkaW5nOiB2dygxNXB4KTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDdweCk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjQTAyRDA0O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygzMHB4KTtcbiAgICAgICAgICAgICAgbWFyZ2luLWlubGluZTogdW5zZXQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IHBjKDIwcHgpO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYygxMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGR0IHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygxNHB4KTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygxOHB4KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGQge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2dyg2cHgpO1xuICAgICAgICAgICAgICBjb2xvcjogI0EwMkQwNDtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygyNHB4KTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoMTBweCk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygzMnB4KTtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2dygxN3B4KTtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IHZ3KDIwcHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDMwcHgpO1xuICAgICAgICAgICAgICBtYXJnaW4taW5saW5lOiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZ3KDE1cHgpO1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2dygxNHB4KTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHBjKDEycHgpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHBjKDE0cHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHZ3KDkycHgpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZ3KDVweCkgdncoNHB4KSB2dyg2cHgpO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMTZweCk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibGFjayk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdncoNHB4KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTMwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiBwYyg5MnB4KTtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHBjKDVweCkgcGMoNHB4KSBwYyg2cHgpO1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygxOHB4KTtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDRweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2dygxNXB4KTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygxNHB4KTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBwYygxMnB4KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDE0cHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygxNnB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoMThweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICNmYXEge1xuICAgIG1hcmdpbi10b3A6IHZ3KDYxcHgpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgbWFyZ2luLXRvcDogcGMoODFweCk7XG4gICAgfVxuICAgIC5pbm5lciB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdncoMTlweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICAgICB3aWR0aDogcGMoODM0cHgpO1xuICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgfVxuICAgICAgLmxpc3Qge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dyg1MHB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcGMoNjBweCk7XG4gICAgICAgIH1cbiAgICAgICAgLnVuaXQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDIwcHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoMjBweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgICAgIC5xIHtcbiAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICfiiJInO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAucSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzY5QzZCO1xuICAgICAgICAgICAgcGFkZGluZzogdncoMTVweCkgdncoMzBweCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHZ3KDE0cHgpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE3MSU7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmciBhdXRvO1xuICAgICAgICAgICAgZ2FwOiB2dygyMHB4KTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogcGMoMTVweCkgcGMoMzBweCk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoMTZweCk7XG4gICAgICAgICAgICAgIGdhcDogcGMoMjBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiAnUSc7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoMjBweCk7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoMjBweCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogJysnO1xuICAgICAgICAgICAgICBmb250LXNpemU6IHZ3KDIwcHgpO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDIwcHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG4gICAgICAgICAgLmEge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHZ3KDE1cHgpO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2dygxNHB4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNzElO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IHBjKDE1cHgpO1xuICAgICAgICAgICAgICBmb250LXNpemU6IHBjKDE2cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBmb290ZXIge1xuICAgIG1hcmdpbi10b3A6IHZ3KDUwcHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiB2dygxNjBweCk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZ3KDIwcHgpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgbWFyZ2luLXRvcDogcGMoNjNweCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcGMoMTI4cHgpO1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgIH1cbiAgICBkbCB7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogcGMoMzNweCk7XG4gICAgICB9XG4gICAgICBkdCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogdncoMTU2cHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgd2lkdGg6IHBjKDE1NnB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGRkIHtcbiAgICAgICAgZm9udC1zaXplOiB2dygxNHB4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IHZ3KDI1cHgpO1xuICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoMTRweCk7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWlubGluZTogdW5zZXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICBtYXJnaW4tdG9wOiB2dygyNXB4KTtcbiAgICAgIGZvbnQtc2l6ZTogdncoMTNweCk7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHBjKDI0cHgpO1xuICAgICAgICBmb250LXNpemU6IHBjKDEzcHgpO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAjYnV0dG9ucyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDMzLCAzMCwgMjgsIDAuOTApO1xuICAgIHBhZGRpbmc6IHZ3KDlweCkgdncoMTRweCkgdncoOXB4KTtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHBjKDExcHgpIHBjKDE0cHgpO1xuICAgIH1cbiAgICAuaW5uZXIge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICBnYXA6IHZ3KDZweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgZ2FwOiBwYygxMHB4KTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG4gICAgICAudW5pdCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdncoMTNweCk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoMTRweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEsIGJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdncoNnB4KTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nLWJsb2NrOiB2dyg4cHgpIHZ3KDEwcHgpO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBnYXA6IHZ3KDhweCk7XG4gICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygxNXB4KTtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDVweCk7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg2cHgpO1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogcGMoNHB4KSBwYyg0cHgpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcGMoNXB4KTtcbiAgICAgICAgICAgIGdhcDogcGMoMTBweCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKDIwcHgpO1xuICAgICAgICAgICAgd2lkdGg6IHBjKDM0MHB4KTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHBjKDYycHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICAgICYubGluZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDNBMDQzO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDNBMDQzO1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgd2lkdGg6IHZ3KDM5cHgpO1xuICAgICAgICAgICAgICBoZWlnaHQ6IHZ3KDM5cHgpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2xpbmUud2VicCk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBwYyg0NXB4KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHBjKDQ1cHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMwNkM3NTU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMwNkM3NTU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi50ZWwge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0M4NUEzMjtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI0M4NUEzMjtcbiAgICAgICAgICAgIGdhcDogdncoMTBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgZ2FwOiBwYygxMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIHdpZHRoOiB2dygyNHB4KTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiB2dygzOHB4KTtcbiAgICAgICAgICAgICAgbWFzay1pbWFnZTogdXJsKC4uL2ltYWdlcy9waG9uZS5zdmcpO1xuICAgICAgICAgICAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHBjKDI0cHgpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogcGMoMzhweCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjQzg1QTMyO1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQzg1QTMyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYXJlYV9saW5lIHtcbiAgICBtYXJnaW4tdG9wOiB2dyg0MHB4KTtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDk2cHgpO1xuICAgIH1cbiAgICAjc3RlcHMgKyAmIHtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBtYXJnaW4tdG9wOiBwYyg3MHB4KTtcbiAgICAgIH1cbiAgICAgIFxuICAgIH1cbiAgICAuaW5uZXIge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHZ3KDE2cHgpO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgICAgICAgd2lkdGg6IHBjKDg1MHB4KTtcbiAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgIH1cbiAgICAgIGgyIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG8gYXV0bztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogdncoMjBweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIGdhcDogcGMoNDBweCk7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICBoZWlnaHQ6IHZ3KDQ1cHgpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwNkM3NTU7XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgaGVpZ2h0OiBwYyg5MnB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICByb3RhdGU6IHogLTMwZGVnXG4gICAgICAgIH1cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHJvdGF0ZTogeiAzMGRlZ1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIHRyYW5zbGF0ZTogMCB2dygtMnB4KTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgY29sb3I6ICMxRUFDNTg7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygxNXB4KTtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygzMHB4KTtcbiAgICAgICAgICAgIHRyYW5zbGF0ZTogMCBwY21heCgtNnB4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZ3KDI4cHgpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdncoN3B4KTtcbiAgICAgICAgYmFja2dyb3VuZDogIzAzQTA0MztcbiAgICAgICAgYm94LXNoYWRvdzogMCAyLjgyN3B4IDIuODI3cHggMCByZ2JhKDE3OSwgMTc0LCAxNzQsIDAuNTUpO1xuICAgICAgICBwYWRkaW5nOiB2dygyMnB4KSB2dygxMnB4KSB2dygyMnB4KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjMDNBMDQzO1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg1OXB4KTtcbiAgICAgICAgICBwYWRkaW5nOiBwYygyMnB4KSBwYygzNnB4KSBwYygyMnB4KSBwYygxMnB4KTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYygxMHB4KTtcbiAgICAgICAgICBib3gtc2hhZG93OiAycHggNHB4IDZweCAwIHJnYmEoMTc5LCAxNzQsIDE3NCwgMC41NSk7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjRkZGIDY1LjE2JSwgI0VGRjlGMyAxMDAuMDUlKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzA2Qzc1NTtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDZDNzU1O1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwNkM3NTU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjMDZDNzU1O1xuICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA2Qzc1NTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgdG9wOiB2dygtMTRweCk7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMwNkM3NTU7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KDExcHgpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgcGFkZGluZzogdncoNnB4KSB2dygxNHB4KSB2dyg4cHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgdG9wOiBwY21heCgtMzJweCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKDIwcHgpO1xuICAgICAgICAgICAgcGFkZGluZzogcGMoMTRweCkgcGMoNTRweCkgcGMoMTdweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNsYXRlOiAtNTAlIDA7XG4gICAgICAgICAgICBib3R0b206IHZ3KC0xMnB4KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IHZ3KDEzcHgpO1xuICAgICAgICAgICAgaGVpZ2h0OiB2dygxM3B4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCAwLCA1MCUgMTAwJSwgMTAwJSAwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICB3aWR0aDogcGMoMjZweCk7XG4gICAgICAgICAgICAgIGhlaWdodDogcGMoMjZweCk7XG4gICAgICAgICAgICAgIGJvdHRvbTogcGNtYXgoLTIycHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG8gYXV0bztcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGdhcDogdncoMTJweCk7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygyNXB4KTtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYyg0NnB4KTtcbiAgICAgICAgICAgIGdhcDogcGMoNTVweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IHZ3KDUycHgpO1xuICAgICAgICAgICAgaGVpZ2h0OiB2dyg1MnB4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvbGluZS53ZWJwKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IHBjKDEyNXB4KTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBwYygxMjVweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogdncoOXB4KTtcbiAgICAgICAgICAgIGhlaWdodDogdncoMTRweCk7XG4gICAgICAgICAgICBtYXNrLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2Fycm93LnN2Zyk7XG4gICAgICAgICAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICB3aWR0aDogcGMoMjFweCk7XG4gICAgICAgICAgICAgIGhlaWdodDogcGMoMzVweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICN0ZWwtZGlhbG9nIHtcbiAgICAtLWR1cmF0aW9uOiAwLjNzO1xuICAgIC0tc2NhbGU6IDAuNjtcblxuICAgIHdpZHRoOiB2dygzNDZweCk7XG4gICAgYm9yZGVyLXJhZGl1czogdncoMTBweCk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgcGFkZGluZzogdncoNDBweCkgdncoMjNweCkgdncoMjZweCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRyYW5zaXRpb246XG4gICAgICBkaXNwbGF5IHZhcigtLWR1cmF0aW9uKSBhbGxvdy1kaXNjcmV0ZSxcbiAgICAgIG92ZXJsYXkgdmFyKC0tZHVyYXRpb24pIGFsbG93LWRpc2NyZXRlLFxuICAgICAgb3BhY2l0eSB2YXIoLS1kdXJhdGlvbiksXG4gICAgICBzY2FsZSB2YXIoLS1kdXJhdGlvbik7XG4gICAgb3BhY2l0eTogMDtcbiAgICBzY2FsZTogdmFyKC0tc2NhbGUpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgd2lkdGg6IHBjKDkxNnB4KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDEwcHgpO1xuICAgICAgcGFkZGluZzogcGMoNTFweCkgcGMoNDRweCkgcGMoMzFweCk7XG4gICAgfVxuICAgICZbb3Blbl0ge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHNjYWxlOiAxO1xuICAgICAgQHN0YXJ0aW5nLXN0eWxlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgc2NhbGU6IHZhcigtLXNjYWxlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjo6YmFja2Ryb3Age1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAgMCAwIC8gNTAlKTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLWR1cmF0aW9uKTtcbiAgICB9XG4gICAgJltvcGVuXTo6YmFja2Ryb3Age1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIEBzdGFydGluZy1zdHlsZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogdncoMjRweCk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgZm9udC1zaXplOiBwYygzMHB4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmlubmVyIHtcbiAgICAgIG1hcmdpbi10b3A6IHZ3KDI2cHgpO1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICBnYXA6IHZ3KDIycHgpO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHBjKDI1cHgpO1xuICAgICAgICBnYXA6IHBjKDI4cHgpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgfVxuICAgICAgLnVuaXQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogdncoMjBweCkgdncoMTZweCkgdncoMjJweCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDEwcHgpO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjQzIzRDBFO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGO1xuICAgICAgICBib3gtc2hhZG93OiAzcHggM3B4IDZweCAwIHJnYmEoMCwgMCwgMCwgMC4yMCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIHBhZGRpbmc6IHBjKDQwcHgpIHBjKDE2cHgpIHBjKDI5cHgpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDEwcHgpO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0MyM0QwRTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC50ZWwge1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KDE4cHgpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGdhcDogdncoMTJweCk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKDI2cHgpO1xuICAgICAgICAgICAgZ2FwOiBwYygxOXB4KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogdncoMjRweCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHZ3KDM4cHgpO1xuICAgICAgICAgICAgbWFzay1pbWFnZTogdXJsKC4uL2ltYWdlcy9waG9uZS5zdmcpO1xuICAgICAgICAgICAgbWFzay1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNDODVBMzI7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IHBjKDI0cHgpO1xuICAgICAgICAgICAgICBoZWlnaHQ6IHBjKDM4cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgY29sb3I6ICNDMjNEMEU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50ZWwge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDZweCk7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygzMHB4KTtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgICAgICAgIGNvbG9yOiAjQzIzRDBFO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoMTdweCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKDQwcHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaG91cnMge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDdweCk7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygxNXB4KTtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoMTdweCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKDIwcHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY2xvc2Uge1xuICAgICAgbWFyZ2luLXRvcDogdncoMzZweCk7XG4gICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZ2FwOiB2dygxOHB4KTtcbiAgICAgIGZvbnQtZmFtaWx5OiBSb2JvdG8sIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IHZ3KDE0cHgpO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHBjKDMwcHgpO1xuICAgICAgICBnYXA6IHBjKDE4cHgpO1xuICAgICAgICBmb250LXNpemU6IHBjKDE0cHgpO1xuICAgICAgfVxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogdncoMTBweCk7XG4gICAgICAgIGhlaWdodDogdncoMTBweCk7XG4gICAgICAgIG1hc2staW1hZ2U6IHVybCguLi9pbWFnZXMvY2xvc2Uuc3ZnKTtcbiAgICAgICAgbWFzay1zaXplOiBjb250YWluO1xuICAgICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgd2lkdGg6IHBjKDEwcHgpO1xuICAgICAgICAgIGhlaWdodDogcGMoMTBweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJodG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSwgYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLCBkZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsIHNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsIGIsIHUsIGksIGNlbnRlciwgZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSwgZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsIHRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLCBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCwgZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSwgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxub2wsIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5jYXB0aW9uLCB0aCwgdGQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxucSwgYmxvY2txdW90ZSB7XG4gIHF1b3Rlczogbm9uZTtcbn1cbnE6YmVmb3JlLCBxOmFmdGVyLCBibG9ja3F1b3RlOmJlZm9yZSwgYmxvY2txdW90ZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5hIGltZyB7XG4gIGJvcmRlcjogbm9uZTtcbn1cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiwgc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiXG4kYnJlYWtwb2ludHM6IChcbiAgJ21pbic6ICdwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzRweCknLFxuICAnc3AnOiAncHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzc1cHgpJyxcbiAgJ3NwbCc6ICdwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpJyxcbiAgJ3RiJzogJ3ByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KScsXG4gICd0YmwnOiAncHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA4MHB4KScsXG4gICdwYyc6ICdwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDQwcHgpJyxcbiAgJ3BjbGFyZ2UnOiAncHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTkyMHB4KScsXG4pICFkZWZhdWx0O1xuXG5AbWl4aW4gbXEoJGJyZWFrcG9pbnQ6IHRiKSB7XG4gIEBtZWRpYSAje21hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCl9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuQGZ1bmN0aW9uIGlzLWNzcy12YXIoJHZhbHVlKSB7XG4gICRmaXJzdC1jaGFyczogc3RyLXNsaWNlKCN7JHZhbHVlfSwgMSwgMik7XG4gIEByZXR1cm4gJGZpcnN0LWNoYXJzID09ICctLScgb3Igc3RyLWluZGV4KCN7JHZhbHVlfSwgJ3ZhcigtLScpICE9IG51bGw7XG59XG5AbWl4aW4gcGQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtaXhpbiBob3Zlck9wKCRvcDowLjY1KSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIHZhcigtLWJlemllcik7XG4gIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogJG9wO1xuICAgIH1cbiAgfVxufVxuQG1peGluIGhvdmVyQ29sb3IoJGNvbG9yKSB7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4zcyB2YXIoLS1iZXppZXIpO1xuICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBpZiBpcy1jc3MtdmFyKCRjb2xvcikge1xuICAgICAgICBAaWYgc3RyLWluZGV4KCN7JGNvbG9yfSwgJ3ZhcignKSAhPSBudWxsIHtcbiAgICAgICAgICBjb2xvcjogI3skY29sb3J9O1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBjb2xvcjogdmFyKCN7JGNvbG9yfSk7XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuQG1peGluIGNvbnRhaW5lcigkd2lkdGg6MTAyNnB4KSB7XG4gIHBhZGRpbmctbGVmdDogdncoLS1jb250YWluZXItcGFkZGluZy1zcCk7XG4gIHBhZGRpbmctcmlnaHQ6IHZ3KC0tY29udGFpbmVyLXBhZGRpbmctc3ApO1xuICBAaW5jbHVkZSBtcSgpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgQGlmICR3aWR0aCA9PSB3aWRle1xuICAgICAgd2lkdGg6IHBjKDEyNDBweCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB3aWR0aDogcGMoJHdpZHRoKTtcbiAgICB9XG4gIH1cbn1cbkBtaXhpbiBwYWRkaW5nTFIge1xuICBwYWRkaW5nLWxlZnQ6IHZ3KC0tY29udGFpbmVyLXBhZGRpbmctc3ApO1xuICBwYWRkaW5nLXJpZ2h0OiB2dygtLWNvbnRhaW5lci1wYWRkaW5nLXNwKTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gIH1cbn1cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW1iZXIpIHtcbiAgQGlmIHR5cGUtb2YoJG51bWJlcikgPT0gJ251bWJlcicgYW5kIG5vdCB1bml0bGVzcygkbnVtYmVyKSB7XG4gICAgQHJldHVybiAkbnVtYmVyIC8gKCRudW1iZXIgKiAwICsgMSk7XG4gIH1cbiAgQHJldHVybiAkbnVtYmVyO1xufVxuXG5AZnVuY3Rpb24gdncoJHB4LCAkYmFzZTogMzkwcHgpIHtcbiAgQGlmIGlzLWNzcy12YXIoJHB4KSB7XG4gICAgQGlmIHN0ci1pbmRleCgjeyRweH0sICd2YXIoJykgIT0gbnVsbCB7XG4gICAgICBAcmV0dXJuIGNhbGMoI3skcHh9IC8gI3tzdHJpcC11bml0KCRiYXNlKX0gKiAxMDB2dyk7XG4gICAgfVxuICAgIEByZXR1cm4gY2FsYyh2YXIoI3skcHh9KSAvICN7c3RyaXAtdW5pdCgkYmFzZSl9ICogMTAwdncpO1xuICB9XG5cbiAgJHZhbHVlOiAkcHg7XG4gIEBpZiAodW5pdCgkcHgpICE9ICdweCcpIHtcbiAgICBAd2FybiAndncoKeOBruW8leaVsOOBq3B45Lul5aSW44Gu5YCk44KS5oyH5a6a44GX44Gm44KC6KiI566X44Gn44GN44G+44Gb44KTJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuICAkdmFsdWU6IGNhbGMoI3tzdHJpcC11bml0KCRweCl9IC8gI3tzdHJpcC11bml0KCRiYXNlKX0gKiAxMDB2dyk7XG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5AZnVuY3Rpb24gcGMoJHB4LCAkYmFzZTogMTQ0MHB4KSB7XG4gIEBpZiBpcy1jc3MtdmFyKCRweCkge1xuICAgIEBpZiBzdHItaW5kZXgoI3skcHh9LCAndmFyKCcpICE9IG51bGwge1xuICAgICAgJHZ3LXZhbHVlOiBjYWxjKCN7JHB4fSAvICN7c3RyaXAtdW5pdCgkYmFzZSl9ICogMTAwdncpO1xuICAgICAgQHJldHVybiBtaW4oY2FsYygjeyRweH0gKiAxcHgpLCAjeyR2dy12YWx1ZX0pO1xuICAgIH1cbiAgICAkdnctdmFsdWU6IGNhbGModmFyKCN7JHB4fSkgLyAje3N0cmlwLXVuaXQoJGJhc2UpfSAqIDEwMHZ3KTtcbiAgICBAcmV0dXJuIG1pbihjYWxjKHZhcigjeyRweH0pICogMXB4KSwgI3skdnctdmFsdWV9KTtcbiAgfVxuXG4gICR2YWx1ZTogJHB4O1xuICBAaWYgKHVuaXQoJHB4KSAhPSAncHgnKSB7XG4gICAgQHdhcm4gJ3BjKCnjga7lvJXmlbDjgatweOS7peWkluOBruWApOOCkuaMh+WumuOBl+OBpuOCguioiOeul+OBp+OBjeOBvuOBm+OCkyc7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbiAgJHZhbHVlOiBjYWxjKCN7c3RyaXAtdW5pdCgkcHgpfSAvICN7c3RyaXAtdW5pdCgkYmFzZSl9ICogMTAwdncpO1xuICBAcmV0dXJuIG1pbigjeyRweH0sICN7JHZhbHVlfSk7XG59XG5cblxuQGZ1bmN0aW9uIHBjbWF4KCRweCwgJGJhc2U6IDE0NDBweCkge1xuICBAaWYgaXMtY3NzLXZhcigkcHgpIHtcbiAgICBAaWYgc3RyLWluZGV4KCN7JHB4fSwgJ3ZhcignKSAhPSBudWxsIHtcbiAgICAgICR2dy12YWx1ZTogY2FsYygjeyRweH0gLyAje3N0cmlwLXVuaXQoJGJhc2UpfSAqIDEwMHZ3KTtcbiAgICAgIEByZXR1cm4gbWF4KGNhbGMoI3skcHh9ICogMXB4KSwgI3skdnctdmFsdWV9KTtcbiAgICB9XG4gICAgJHZ3LXZhbHVlOiBjYWxjKHZhcigjeyRweH0pIC8gI3tzdHJpcC11bml0KCRiYXNlKX0gKiAxMDB2dyk7XG4gICAgQHJldHVybiBtYXgoY2FsYyh2YXIoI3skcHh9KSAqIDFweCksICN7JHZ3LXZhbHVlfSk7XG4gIH1cblxuICAkdmFsdWU6ICRweDtcbiAgQGlmICh1bml0KCRweCkgIT0gJ3B4Jykge1xuICAgIEB3YXJuICdwY21heCgp44Gu5byV5pWw44GrcHjku6XlpJbjga7lgKTjgpLmjIflrprjgZfjgabjgoLoqIjnrpfjgafjgY3jgb7jgZvjgpMnO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG4gICR2YWx1ZTogY2FsYygje3N0cmlwLXVuaXQoJHB4KX0gLyAje3N0cmlwLXVuaXQoJGJhc2UpfSAqIDEwMHZ3KTtcbiAgQHJldHVybiBtYXgoI3skcHh9LCAjeyR2YWx1ZX0pO1xufVxuXG5cbkBtaXhpbiBzcF9wYyB7XG4gICYuc3Age1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gICYucGMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBob3Zlck9wKCRvcDowLjcpIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgdmFyKC0tYmV6aWVyKTtcbiAgJjpob3ZlciB7XG4gICAgb3BhY2l0eTogJG9wO1xuICB9XG59XG5AbWl4aW4gaG92ZXJDb2xvcigkY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpKSB7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4zcyB2YXIoLS1iZXppZXIpO1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbkBtaXhpbiBncmlkKCRjb2xzLCRnYXAtdmVydCwkZ2FwLWhvcml6KSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KCRjb2xzLCAxZnIpO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgxLCBhdXRvKTtcbiAgZ3JpZC1nYXA6ICRnYXAtdmVydCAkZ2FwLWhvcml6O1xufVxuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiAnJztcbiAgfVxufVxuQG1peGluIHNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiB2dygtLW1hcmdpbi1zZWN0aW9uKTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIG1hcmdpbi10b3A6IHBjKC0tbWFyZ2luLXNlY3Rpb24tcGMpO1xuICB9XG59XG5AbWl4aW4gbW9kdWxlIHtcbiAgbWFyZ2luLXRvcDogdncoLS1tYXJnaW4tbW9kdWxlKTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIG1hcmdpbi10b3A6IHBjKC0tbWFyZ2luLW1vZHVsZS1wYyk7XG4gIH1cbn1cbkBtaXhpbiBwYXJ0cyB7XG4gIG1hcmdpbi10b3A6IHZ3KC0tbWFyZ2luLXBhcnRzKTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIG1hcmdpbi10b3A6IHBjKC0tbWFyZ2luLXBhcnRzLXBjKTtcbiAgfVxufVxuQG1peGluIGhlYWRpbmctc21hbGwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgZm9udC1zaXplOiB2dygtLWZzLW0pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHNtYWxsKTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgZ2FwOiB2dyg4cHgpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGhpcmQtd2Vhayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1lbik7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBmb250LXNpemU6IHBjKC0tZnMteGwpO1xuICAgIGdhcDogcGMoMTZweCk7XG4gIH1cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDFsaDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvaWNvbl9oZWFkaW5nLnN2ZycpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTAuMWVtKTtcbiAgICB3aWR0aDogdncoMTBweCk7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICB3aWR0aDogcGMoMTZweCk7XG4gICAgfVxuICB9XG59XG5cblxuQG1peGluIGZzKCRmdHMsICRsaW46IDE0LCRsczowKSB7XG4gICRyZW06IGNhbGMoJGZ0cyAvIDEwKTtcbiAgJGxpblM6IGNhbGMoJGxpbiAvICRmdHMpO1xuICAkbHNtOiBjYWxjKCRscyAqIDAuMDAxKTtcbiAgZm9udC1zaXplOiAjeyRmdHN9cHg7XG4gIGZvbnQtc2l6ZTogI3skcmVtfXJlbTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5TO1xuICBsZXR0ZXItc3BhY2luZzogI3skbHNtfWVtO1xuICBcbn1cblxuQG1peGluIHRleHQoJHNpemU6bWVkaXVtKXtcbiAgQGlmICRzaXplID09IHh4c21hbGwge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1lbik7XG4gICAgQGluY2x1ZGUgZnMoMTAsMTYsNTApO1xuICAgIEBpbmNsdWRlIG1xKHRibCkge1xuICAgICAgQGluY2x1ZGUgZnMoMTIsMTgsNTApO1xuICAgIH1cbiAgfVxuICBAaWYgJHNpemUgPT0geHNtYWxsIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktZW4pO1xuICAgIEBpbmNsdWRlIGZzKDExLDE4LDUwKTtcbiAgICBAaW5jbHVkZSBtcSh0YmwpIHtcbiAgICAgIEBpbmNsdWRlIGZzKDEzLDIxLDUwKTtcbiAgICB9XG4gIH1cbiAgQGlmICRzaXplID09IHNtYWxsIHtcbiAgICBAaW5jbHVkZSBmcygxMiwyMiw1MCk7XG4gICAgQGluY2x1ZGUgbXEodGJsKSB7XG4gICAgICBAaW5jbHVkZSBmcygxNCwyOCw1MCk7XG4gICAgfVxuICB9XG4gIEBpZiAkc2l6ZSA9PSBtZWRpdW0ge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1lbik7XG4gICAgQGluY2x1ZGUgZnMoMTUsMjgsNTApO1xuICAgIEBpbmNsdWRlIG1xKHRibCkge1xuICAgICAgQGluY2x1ZGUgZnMoMTYsMzQsNTApO1xuICAgIH1cbiAgfVxuICBAaWYgJHNpemUgPT0gbGFyZ2Uge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1lbik7XG4gICAgQGluY2x1ZGUgZnMoMTYsMzAsNTApO1xuICAgIEBpbmNsdWRlIG1xKHRibCkge1xuICAgICAgQGluY2x1ZGUgZnMoMTgsMzIsNTApO1xuICAgIH1cbiAgfVxuICBAaWYgJHNpemUgPT0geGxhcmdlIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktZW4pO1xuICAgIEBpbmNsdWRlIGZzKDE4LDMyLDUwKTtcbiAgICBAaW5jbHVkZSBtcSh0YmwpIHtcbiAgICAgIEBpbmNsdWRlIGZzKDIwLDM0LDUwKTtcbiAgICB9XG4gIH1cbiAgQGlmICRzaXplID09IGNhcHRpb24ge1xuICAgIEBpbmNsdWRlIGZzKDExLDE4LDUwKTtcbiAgICBjb2xvcjogJGdyYXk7XG4gICAgQGluY2x1ZGUgbXEodGJsKSB7XG4gICAgICBAaW5jbHVkZSBmcygxMywyMSw1MCk7XG4gICAgfVxuICB9XG4gIEBpZiAkc2l6ZSA9PSBoZWFkaW5nLWxhcmdlIHtcbiAgICBmb250LWZhbWlseTp2YXIoLS1mb250LWZhbWlseS1lbik7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIEBpbmNsdWRlIGZzKDIwLDM0LDUwKTtcbiAgICBAaW5jbHVkZSBtcSh0YmwpIHtcbiAgICAgIEBpbmNsdWRlIGZzKDMyLDU4LDUwKTtcbiAgICB9XG4gIH1cbiAgQGlmICRzaXplID09IGhlYWRpbmctbWVkaXVtIHtcbiAgICBmb250LWZhbWlseTp2YXIoLS1mb250LWZhbWlseS1lbik7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIEBpbmNsdWRlIGZzKDE3LDI1LDEwMCk7XG4gICAgQGluY2x1ZGUgbXEodGJsKSB7XG4gICAgICBAaW5jbHVkZSBmcygyNiw0NiwxMDApO1xuICAgIH1cbiAgfVxuICBAaWYgJHNpemUgPT0gaGVhZGluZy1zbWFsbCB7XG4gICAgZm9udC1mYW1pbHk6dmFyKC0tZm9udC1mYW1pbHktZW4pO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBAaW5jbHVkZSBmcygxNCwyMCwxMDApO1xuICAgIEBpbmNsdWRlIG1xKHRibCkge1xuICAgICAgQGluY2x1ZGUgZnMoMjAsMzAsMTAwKTtcbiAgICB9XG4gIH1cbiAgQGlmICRzaXplID09IGhlYWRpbmcteHNtYWxsIHtcbiAgICBmb250LWZhbWlseTp2YXIoLS1mb250LWZhbWlseS1lbik7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIEBpbmNsdWRlIGZzKDE0LDIwLDEwMCk7XG4gICAgQGluY2x1ZGUgbXEodGJsKSB7XG4gICAgICBAaW5jbHVkZSBmcygyMCwzMCwxMDApO1xuICAgIH1cbiAgfVxuICBAaWYgJHNpemUgPT0gaGVhZGluZy14eHNtYWxsIHtcbiAgICBmb250LWZhbWlseTp2YXIoLS1mb250LWZhbWlseS1lbik7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIEBpbmNsdWRlIGZzKDE0LDIwLDEwMCk7XG4gICAgQGluY2x1ZGUgbXEodGJsKSB7XG4gICAgICBAaW5jbHVkZSBmcygyMCwzMCwxMDApO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2xpY2tkb3RzKCR3aWR0aDo4cHgsJGhlaWdodDo4cHgpIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBidXR0b24ge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICB3aWR0aDogJHdpZHRoO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRoaXJkLXdlYWspO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdG9wbWFyZ2luKCRzaXplOm1lZGl1bSl7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIEBpbmNsdWRlIG1xKHRibCkge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbiAgQGlmICRzaXplID09IHNtYWxsIHtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIEBpbmNsdWRlIG1xKHRibCkge1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHNpemUgPT0gbGFyZ2Uge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgQGluY2x1ZGUgbXEodGJsKSB7XG4gICAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkc2l6ZSA9PSB4bGFyZ2Uge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgQGluY2x1ZGUgbXEodGJsKSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHNpemUgPT0geHhsYXJnZSB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XG4gICAgQGluY2x1ZGUgbXEodGJsKSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMjBweDtcbiAgICB9XG4gIH1cbn1cblxuXG5AbWl4aW4gaGVhZGluZ0xQIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBpIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgQGluY2x1ZGUgZnMoMTYsMjIsNTApO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBpbmNsdWRlIG1xKHRibCkge1xuICAgICAgQGluY2x1ZGUgZnMoMTgsMjUsNTApO1xuICAgIH1cbiAgfVxuICBoMSB7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIEBpbmNsdWRlIGZzKDMwLDM2LDUwKTtcbiAgICBAaW5jbHVkZSBtcSh0YmwpIHtcbiAgICAgIEBpbmNsdWRlIGZzKDM2LDQ2LDUwKTtcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBAaW5jbHVkZSBmcygxNCwyNCw1MCk7XG4gICAgQGluY2x1ZGUgbXEodGJsKSB7XG4gICAgICBAaW5jbHVkZSBmcygxNiwzMiw1MCk7XG4gICAgfVxuICB9XG59IiwiLyoqXG4gKiBTd2lwZXIgMTEuMS4xNFxuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcbiAqIGh0dHBzOi8vc3dpcGVyanMuY29tXG4gKlxuICogQ29weXJpZ2h0IDIwMTQtMjAyNCBWbGFkaW1pciBLaGFybGFtcGlkaVxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZVxuICpcbiAqIFJlbGVhc2VkIG9uOiBTZXB0ZW1iZXIgMTIsIDIwMjRcbiAqL1xuXG4gQGZvbnQtZmFjZXtmb250LWZhbWlseTpzd2lwZXItaWNvbnM7c3JjOnVybCgnZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsIGQwOUdSZ0FCQUFBQUFBWmdBQkFBQUFBQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUFHUkFBQUFCb0FBQUFjaTZxSGtVZEVSVVlBQUFXZ0FBQUFJd0FBQUNRQVlBQlhSMUJQVXdBQUJoUUFBQUF1QUFBQU51QVk3K3hIVTFWQ0FBQUZ4QUFBQUZBQUFBQm0yZlBjelU5VEx6SUFBQUhjQUFBQVNnQUFBR0JQOVY1UlkyMWhjQUFBQWtRQUFBQ0lBQUFCWXQ2RjBjQmpkblFnQUFBQ3pBQUFBQVFBQUFBRUFCRUJSR2RoYzNBQUFBV1lBQUFBQ0FBQUFBai8vd0FEWjJ4NVpnQUFBeXdBQUFETUFBQUQyTUh0cnlWb1pXRmtBQUFCYkFBQUFEQUFBQUEyRTIrZW9XaG9aV0VBQUFHY0FBQUFId0FBQUNRQzlnRHphRzEwZUFBQUFpZ0FBQUFaQUFBQXJnSmtBQkZzYjJOaEFBQUMwQUFBQUZvQUFBQmFGUUFVR0cxaGVIQUFBQUc4QUFBQUh3QUFBQ0FBY0FCQWJtRnRaUUFBQS9nQUFBRTVBQUFDWHZGZEJ3bHdiM04wQUFBRk5BQUFBR0lBQUFDRTVzNzRoWGphWTJCa1lHQUFZcGY1SHUvaitXMitNbkF6TVlEQXphWDZRakQ2LzQvL0J4ajVHQThBdVJ3TVlHa0FQeXdMMTNqYVkyQmtZR0E4OFA4QWd4NGorLzhmUURZZkExQUVCV2dEQUlCMkJPb0FlTnBqWUdSZ1lOQmg0R2RnWWdBQkVNbklBQkp6WU5BRENRQUFDV2dBc1FCNDJtTmdZZnpDT0lHQmxZR0IwWWN4allHQndSMUtmMldRWkdoaFlHQmlZR1ZtZ0FGR0JpUVFrT2Fhd3REQW9NQlF4WGpnL3dFR1BjWUREQTR3TlVBMkNDZ3dzQUFBTzRFTDZnQUFlTnBqMk0wZ3lBQUNxeGdHTldCa1oyRDQvd01BK3hrRGRnQUFBSGphWTJCZ1lHYUFZQmtHUmdZUWlBSHlHTUY4RmdZSElNM0R3TUhBQkdRck1PZ3lXRExFTTFUOS93OFVCZkVNZ0x6RS8vLy9QLzUvL2YvVi94dityNGVhQUFlTWJBeHdJVVltSU1IRWdLWUFZalVjc0RBd3NMS3hjM0J5Y2ZQdzhqRVFBL2daQkFTRmhFVkV4Y1FsSktXa1pXVGw1QlVVbFpSVlZOWFVOVFFaQmdNQUFNUitFK2dBRVFGRUFBQUFLZ0FxQUNvQU5BQStBRWdBVWdCY0FHWUFjQUI2QUlRQWpnQ1lBS0lBckFDMkFNQUF5Z0RVQU40QTZBRHlBUHdCQmdFUUFSb0JKQUV1QVRnQlFnRk1BVllCWUFGcUFYUUJmZ0dJQVpJQm5BR21BYklCemdIc0FBQjQydTJOTVE2Q1VBeUdXNTY4eDlBbmVZWWdtNE1KYmhLRmFFeElPQVZYOEFwZXdTdDRCaWM0QWZlQWlkM1ZPQml4RHhmUFlFemE1TytYZmkwNFlBRGdnaVVJVUxDdUVKSzhWaE80YlN2cGRua3RISTVRQ1l0ZGkyc2w4Wm5YYUhscVVyTkt6ZEtjVDhjamxxK3J3WlN2SVZjek5pZXpzZm5QL3V6bm1mUEZCTk9ETTJLN01UUTQ1WUVBWnFHUDgxQW1HR2NGM2lQcU9vcDByMVNQVGFUYlZrZlVlNEhYajk3d1lFK3lOd1dZeHdXdTR2MXVnV0hnbzNTMVhkWkVWcVdNN0VUMGNmbkxHeFdma2dSNDJvMlB2V3JETUJTRmovSUhMYUYwektqUmdkaVZNd1NjTlJBb1dVb0g3OFkyaWNCL3lJWTA5QW42QUgyQmR1L1VCK3l4b3BZc2hRaUV2bnZ1MGRVUmdEdDhRZUM4UER3N0ZwamkzZkVBNHovUEVKNllPQjVoS2g0ZGozRXZYaHhQcUgvU0tVWTNySjdzclo0RlpuaDFQTUF0UGh3UDZmbDJQTUpNUERnZVE0clk4WVQ2R3phbzBlQUVBNDA5RHVnZ21UbkZuT2NTQ2lFaUxNZ3hDaVRJNkNxNURaVWQzUW1wMTB2TzBMYUxUZDJjak40Zk91bWxjN2xVWWJTUWNaRmt1dFJHN2c2SktaS3kwUm1kTFk2ODBDRG5FSitVTWtwRkZlMVJON254ZFZwWHJDNGFUdG5hdXJPblllcmNaZzJZVm1MTi9kL2djemZFaW1yRS9mcy9iT3VxMjlabW44dGxvT1JhWGdaZ0dhNzh5TzkvY25YbTJCcGFHdnEyNUR2OVM0RTkrNVNJYzlQcXVwSktoWUZTU2w0NytRY3IxbVlOQUFBQWVOcHR3MGNLd2tBQUFNRFpKQThRN09VSnZrTHNQZlo2ekZWRVJQeThxSGgyWUVSKzNpL0JQODN2SUJMTHlTc29LaW1ycUtxcGEyaHA2K2pxNlJzWUdobWJtSnFaU3kwc3JheHRiTzNzSFJ5ZG5FTVU0dVI2eXg3SkpYdmVQN1dyRHljQUFBQUFBQUgvL3dBQ2VOcGpZR1JnWU9BQlloa2daZ0pDWmdaTkJrWUdMUVp0SUpzRkxNWUFBQXczQUxnQWVOb2xpekVLZ0RBUUJDY2hSYkMyc0ZFUjBZRDZxVlFpQkN2L0g5ZXpHSTZaNVhCQXc4Q0JLL201aVFRVmF1VmJYTG5Pck1adjJvTGRLRmE4UGp1cnUyaEp6R2FibU9TTHpOTXp2dXRwQjNONDJtTmdaR0JnNEdLUVl6QmhZTXhKTE1sajRHQmdBWW93L1AvUEFKSmhMTTZzU29XS2ZXQ0FBd0RBamdiUkFBQjQybU5nWUdCa0FJSWJDWm81SVBybVVuMGhHQTBBTzhFRlRRQUEnKTtmb250LXdlaWdodDo0MDA7Zm9udC1zdHlsZTpub3JtYWx9OnJvb3R7LS1zd2lwZXItdGhlbWUtY29sb3I6IzAwN2FmZn06aG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrO21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXJpZ2h0OmF1dG87ei1pbmRleDoxfS5zd2lwZXJ7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47bGlzdC1zdHlsZTpub25lO3BhZGRpbmc6MDt6LWluZGV4OjE7ZGlzcGxheTpibG9ja30uc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItd3JhcHBlcntmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnN3aXBlci13cmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDoxO2Rpc3BsYXk6ZmxleDt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybTt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS1zd2lwZXItd3JhcHBlci10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbixpbml0aWFsKTtib3gtc2l6aW5nOmNvbnRlbnQtYm94fS5zd2lwZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLC5zd2lwZXItaW9zIC5zd2lwZXItc2xpZGUsLnN3aXBlci13cmFwcGVye3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwcHgsMCwwKX0uc3dpcGVyLWhvcml6b250YWx7dG91Y2gtYWN0aW9uOnBhbi15fS5zd2lwZXItdmVydGljYWx7dG91Y2gtYWN0aW9uOnBhbi14fS5zd2lwZXItc2xpZGV7ZmxleC1zaHJpbms6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtO2Rpc3BsYXk6YmxvY2t9LnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmt7dmlzaWJpbGl0eTpoaWRkZW59LnN3aXBlci1hdXRvaGVpZ2h0LC5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXNsaWRle2hlaWdodDphdXRvfS5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXdyYXBwZXJ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxoZWlnaHR9LnN3aXBlci1iYWNrZmFjZS1oaWRkZW4gLnN3aXBlci1zbGlkZXt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVufS5zd2lwZXItM2Quc3dpcGVyLWNzcy1tb2RlIC5zd2lwZXItd3JhcHBlcntwZXJzcGVjdGl2ZToxMjAwcHh9LnN3aXBlci0zZCAuc3dpcGVyLXdyYXBwZXJ7dHJhbnNmb3JtLXN0eWxlOnByZXNlcnZlLTNkfS5zd2lwZXItM2R7cGVyc3BlY3RpdmU6MTIwMHB4fS5zd2lwZXItM2QgLnN3aXBlci1jdWJlLXNoYWRvdywuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGV7dHJhbnNmb3JtLXN0eWxlOnByZXNlcnZlLTNkfS5zd2lwZXItY3NzLW1vZGU+LnN3aXBlci13cmFwcGVye292ZXJmbG93OmF1dG87c2Nyb2xsYmFyLXdpZHRoOm5vbmU7LW1zLW92ZXJmbG93LXN0eWxlOm5vbmV9LnN3aXBlci1jc3MtbW9kZT4uc3dpcGVyLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0uc3dpcGVyLWNzcy1tb2RlPi5zd2lwZXItd3JhcHBlcj4uc3dpcGVyLXNsaWRle3Njcm9sbC1zbmFwLWFsaWduOnN0YXJ0IHN0YXJ0fS5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci13cmFwcGVye3Njcm9sbC1zbmFwLXR5cGU6eCBtYW5kYXRvcnl9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItdmVydGljYWw+LnN3aXBlci13cmFwcGVye3Njcm9sbC1zbmFwLXR5cGU6eSBtYW5kYXRvcnl9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItZnJlZS1tb2RlPi5zd2lwZXItd3JhcHBlcntzY3JvbGwtc25hcC10eXBlOm5vbmV9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItZnJlZS1tb2RlPi5zd2lwZXItd3JhcHBlcj4uc3dpcGVyLXNsaWRle3Njcm9sbC1zbmFwLWFsaWduOm5vbmV9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQ+LnN3aXBlci13cmFwcGVyOjpiZWZvcmV7Y29udGVudDonJztmbGV4LXNocmluazowO29yZGVyOjk5OTl9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQ+LnN3aXBlci13cmFwcGVyPi5zd2lwZXItc2xpZGV7c2Nyb2xsLXNuYXAtYWxpZ246Y2VudGVyIGNlbnRlcjtzY3JvbGwtc25hcC1zdG9wOmFsd2F5c30uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXdyYXBwZXI+LnN3aXBlci1zbGlkZTpmaXJzdC1jaGlsZHttYXJnaW4taW5saW5lLXN0YXJ0OnZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKX0uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXdyYXBwZXI6OmJlZm9yZXtoZWlnaHQ6MTAwJTttaW4taGVpZ2h0OjFweDt3aWR0aDp2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKX0uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWw+LnN3aXBlci13cmFwcGVyPi5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGR7bWFyZ2luLWJsb2NrLXN0YXJ0OnZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKX0uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWw+LnN3aXBlci13cmFwcGVyOjpiZWZvcmV7d2lkdGg6MTAwJTttaW4td2lkdGg6MXB4O2hlaWdodDp2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKX0uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9we3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3BvaW50ZXItZXZlbnRzOm5vbmU7ei1pbmRleDoxMH0uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93e2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMTUpfS5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdHtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBsZWZ0LHJnYmEoMCwwLDAsLjUpLHJnYmEoMCwwLDAsMCkpfS5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHR7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQscmdiYSgwLDAsMCwuNSkscmdiYSgwLDAsMCwwKSl9LnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3B7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gdG9wLHJnYmEoMCwwLDAsLjUpLHJnYmEoMCwwLDAsMCkpfS5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9te2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSxyZ2JhKDAsMCwwLC41KSxyZ2JhKDAsMCwwLDApKX0uc3dpcGVyLWxhenktcHJlbG9hZGVye3dpZHRoOjQycHg7aGVpZ2h0OjQycHg7cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7dG9wOjUwJTttYXJnaW4tbGVmdDotMjFweDttYXJnaW4tdG9wOi0yMXB4O3otaW5kZXg6MTA7dHJhbnNmb3JtLW9yaWdpbjo1MCU7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjo0cHggc29saWQgdmFyKC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtib3JkZXItcmFkaXVzOjUwJTtib3JkZXItdG9wLWNvbG9yOnRyYW5zcGFyZW50fS5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MgLnN3aXBlci1zbGlkZS12aXNpYmxlIC5zd2lwZXItbGF6eS1wcmVsb2FkZXIsLnN3aXBlcjpub3QoLnN3aXBlci13YXRjaC1wcm9ncmVzcykgLnN3aXBlci1sYXp5LXByZWxvYWRlcnthbmltYXRpb246c3dpcGVyLXByZWxvYWRlci1zcGluIDFzIGluZmluaXRlIGxpbmVhcn0uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRley0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjojZmZmfS5zd2lwZXItbGF6eS1wcmVsb2FkZXItYmxhY2t7LS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiMwMDB9QGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW57MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX0xMDAle3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19LnN3aXBlci12aXJ0dWFsIC5zd2lwZXItc2xpZGV7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX0uc3dpcGVyLXZpcnR1YWwuc3dpcGVyLWNzcy1tb2RlIC5zd2lwZXItd3JhcHBlcjo6YWZ0ZXJ7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7cG9pbnRlci1ldmVudHM6bm9uZX0uc3dpcGVyLXZpcnR1YWwuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1ob3Jpem9udGFsIC5zd2lwZXItd3JhcHBlcjo6YWZ0ZXJ7aGVpZ2h0OjFweDt3aWR0aDp2YXIoLS1zd2lwZXItdmlydHVhbC1zaXplKX0uc3dpcGVyLXZpcnR1YWwuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci12ZXJ0aWNhbCAuc3dpcGVyLXdyYXBwZXI6OmFmdGVye3dpZHRoOjFweDtoZWlnaHQ6dmFyKC0tc3dpcGVyLXZpcnR1YWwtc2l6ZSl9OnJvb3R7LS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOjQ0cHh9LnN3aXBlci1idXR0b24tbmV4dCwuc3dpcGVyLWJ1dHRvbi1wcmV2e3Bvc2l0aW9uOmFic29sdXRlO3RvcDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi10b3Atb2Zmc2V0LDUwJSk7d2lkdGg6Y2FsYyh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKS8gNDQgKiAyNyk7aGVpZ2h0OnZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO21hcmdpbi10b3A6Y2FsYygwcHggLSAodmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkvIDIpKTt6LWluZGV4OjEwO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjb2xvcjp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKX0uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQsLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVke29wYWNpdHk6LjM1O2N1cnNvcjphdXRvO3BvaW50ZXItZXZlbnRzOm5vbmV9LnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWhpZGRlbiwuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24taGlkZGVue29wYWNpdHk6MDtjdXJzb3I6YXV0bztwb2ludGVyLWV2ZW50czpub25lfS5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAuc3dpcGVyLWJ1dHRvbi1uZXh0LC5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAuc3dpcGVyLWJ1dHRvbi1wcmV2e2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LnN3aXBlci1idXR0b24tbmV4dCBzdmcsLnN3aXBlci1idXR0b24tcHJldiBzdmd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvbnRhaW47dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXJ9LnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCBzdmcsLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldiBzdmd7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS5zd2lwZXItYnV0dG9uLXByZXYsLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dHtsZWZ0OnZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCwxMHB4KTtyaWdodDphdXRvfS5zd2lwZXItYnV0dG9uLW5leHQsLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldntyaWdodDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsMTBweCk7bGVmdDphdXRvfS5zd2lwZXItYnV0dG9uLWxvY2t7ZGlzcGxheTpub25lfS5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIsLnN3aXBlci1idXR0b24tcHJldjphZnRlcntmb250LWZhbWlseTpzd2lwZXItaWNvbnM7Zm9udC1zaXplOnZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO3RleHQtdHJhbnNmb3JtOm5vbmUhaW1wb3J0YW50O2xldHRlci1zcGFjaW5nOjA7Zm9udC12YXJpYW50OmluaXRpYWw7bGluZS1oZWlnaHQ6MX0uc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyLC5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXJ7Y29udGVudDoncHJldid9LnN3aXBlci1idXR0b24tbmV4dCwuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2e3JpZ2h0OnZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCwxMHB4KTtsZWZ0OmF1dG99LnN3aXBlci1idXR0b24tbmV4dDphZnRlciwuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVye2NvbnRlbnQ6J25leHQnfS5zd2lwZXItcGFnaW5hdGlvbntwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt0cmFuc2l0aW9uOi4zcyBvcGFjaXR5O3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7ei1pbmRleDoxMH0uc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVue29wYWNpdHk6MH0uc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQ+LnN3aXBlci1wYWdpbmF0aW9uLC5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZHtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cywuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLC5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9ue2JvdHRvbTp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b20sOHB4KTt0b3A6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tdG9wLGF1dG8pO2xlZnQ6MDt3aWR0aDoxMDAlfS5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWN7b3ZlcmZsb3c6aGlkZGVuO2ZvbnQtc2l6ZTowfS5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHt0cmFuc2Zvcm06c2NhbGUoLjMzKTtwb3NpdGlvbjpyZWxhdGl2ZX0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZle3RyYW5zZm9ybTpzY2FsZSgxKX0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW1haW57dHJhbnNmb3JtOnNjYWxlKDEpfS5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldnt0cmFuc2Zvcm06c2NhbGUoLjY2KX0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYtcHJldnt0cmFuc2Zvcm06c2NhbGUoLjMzKX0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHR7dHJhbnNmb3JtOnNjYWxlKC42Nil9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHR7dHJhbnNmb3JtOnNjYWxlKC4zMyl9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHt3aWR0aDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtd2lkdGgsdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsOHB4KSk7aGVpZ2h0OnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1oZWlnaHQsdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsOHB4KSk7ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym9yZGVyLXJhZGl1czp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYm9yZGVyLXJhZGl1cyw1MCUpO2JhY2tncm91bmQ6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yLCMwMDApO29wYWNpdHk6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHksIC4yKX1idXR0b24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e2JvcmRlcjpub25lO21hcmdpbjowO3BhZGRpbmc6MDtib3gtc2hhZG93Om5vbmU7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lfS5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHtjdXJzb3I6cG9pbnRlcn0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0Om9ubHktY2hpbGR7ZGlzcGxheTpub25lIWltcG9ydGFudH0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZXtvcGFjaXR5OnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1vcGFjaXR5LCAxKTtiYWNrZ3JvdW5kOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpfS5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLC5zd2lwZXItdmVydGljYWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHN7cmlnaHQ6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcmlnaHQsOHB4KTtsZWZ0OnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWxlZnQsYXV0byk7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMHB4LC01MCUsMCl9LnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCwuc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7bWFyZ2luOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC12ZXJ0aWNhbC1nYXAsNnB4KSAwO2Rpc3BsYXk6YmxvY2t9LnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljLC5zd2lwZXItdmVydGljYWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWlje3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7d2lkdGg6OHB4fS5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LC5zd2lwZXItdmVydGljYWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7ZGlzcGxheTppbmxpbmUtYmxvY2s7dHJhbnNpdGlvbjouMnMgdHJhbnNmb3JtLC4ycyB0b3B9LnN3aXBlci1ob3Jpem9udGFsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e21hcmdpbjowIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ob3Jpem9udGFsLWdhcCw0cHgpfS5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMsLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWN7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7d2hpdGUtc3BhY2U6bm93cmFwfS5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCwuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e3RyYW5zaXRpb246LjJzIHRyYW5zZm9ybSwuMnMgbGVmdH0uc3dpcGVyLWhvcml6b250YWwuc3dpcGVyLXJ0bD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7dHJhbnNpdGlvbjouMnMgdHJhbnNmb3JtLC4ycyByaWdodH0uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb257Y29sb3I6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24tY29sb3IsaW5oZXJpdCl9LnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFye2JhY2tncm91bmQ6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItYmctY29sb3IscmdiYSgwLDAsMCwuMjUpKTtwb3NpdGlvbjphYnNvbHV0ZX0uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGx7YmFja2dyb3VuZDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt0cmFuc2Zvcm06c2NhbGUoMCk7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0IHRvcH0uc3dpcGVyLXJ0bCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGx7dHJhbnNmb3JtLW9yaWdpbjpyaWdodCB0b3B9LnN3aXBlci1ob3Jpem9udGFsPi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhciwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsLnN3aXBlci12ZXJ0aWNhbD4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGV7d2lkdGg6MTAwJTtoZWlnaHQ6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSw0cHgpO2xlZnQ6MDt0b3A6MH0uc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbCwuc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhcnt3aWR0aDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1zaXplLDRweCk7aGVpZ2h0OjEwMCU7bGVmdDowO3RvcDowfS5zd2lwZXItcGFnaW5hdGlvbi1sb2Nre2Rpc3BsYXk6bm9uZX0uc3dpcGVyLXNjcm9sbGJhcntib3JkZXItcmFkaXVzOnZhcigtLXN3aXBlci1zY3JvbGxiYXItYm9yZGVyLXJhZGl1cywxMHB4KTtwb3NpdGlvbjpyZWxhdGl2ZTt0b3VjaC1hY3Rpb246bm9uZTtiYWNrZ3JvdW5kOnZhcigtLXN3aXBlci1zY3JvbGxiYXItYmctY29sb3IscmdiYSgwLDAsMCwuMSkpfS5zd2lwZXItc2Nyb2xsYmFyLWRpc2FibGVkPi5zd2lwZXItc2Nyb2xsYmFyLC5zd2lwZXItc2Nyb2xsYmFyLnN3aXBlci1zY3JvbGxiYXItZGlzYWJsZWR7ZGlzcGxheTpub25lIWltcG9ydGFudH0uc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci1zY3JvbGxiYXIsLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci1ob3Jpem9udGFse3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsMSUpO2JvdHRvbTp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJvdHRvbSw0cHgpO3RvcDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXRvcCxhdXRvKTt6LWluZGV4OjUwO2hlaWdodDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpemUsNHB4KTt3aWR0aDpjYWxjKDEwMCUgLSAyICogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsMSUpKX0uc3dpcGVyLXNjcm9sbGJhci5zd2lwZXItc2Nyb2xsYmFyLXZlcnRpY2FsLC5zd2lwZXItdmVydGljYWw+LnN3aXBlci1zY3JvbGxiYXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWxlZnQsYXV0byk7cmlnaHQ6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1yaWdodCw0cHgpO3RvcDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwxJSk7ei1pbmRleDo1MDt3aWR0aDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpemUsNHB4KTtoZWlnaHQ6Y2FsYygxMDAlIC0gMiAqIHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2lkZXMtb2Zmc2V0LDElKSl9LnN3aXBlci1zY3JvbGxiYXItZHJhZ3toZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2JhY2tncm91bmQ6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1kcmFnLWJnLWNvbG9yLHJnYmEoMCwwLDAsLjUpKTtib3JkZXItcmFkaXVzOnZhcigtLXN3aXBlci1zY3JvbGxiYXItYm9yZGVyLXJhZGl1cywxMHB4KTtsZWZ0OjA7dG9wOjB9LnN3aXBlci1zY3JvbGxiYXItY3Vyc29yLWRyYWd7Y3Vyc29yOm1vdmV9LnN3aXBlci1zY3JvbGxiYXItbG9ja3tkaXNwbGF5Om5vbmV9LnN3aXBlci16b29tLWNvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcn0uc3dpcGVyLXpvb20tY29udGFpbmVyPmNhbnZhcywuc3dpcGVyLXpvb20tY29udGFpbmVyPmltZywuc3dpcGVyLXpvb20tY29udGFpbmVyPnN2Z3ttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb250YWlufS5zd2lwZXItc2xpZGUtem9vbWVke2N1cnNvcjptb3ZlO3RvdWNoLWFjdGlvbjpub25lfS5zd2lwZXIgLnN3aXBlci1ub3RpZmljYXRpb257cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowO3otaW5kZXg6LTEwMDB9LnN3aXBlci1mcmVlLW1vZGU+LnN3aXBlci13cmFwcGVye3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2Utb3V0O21hcmdpbjowIGF1dG99LnN3aXBlci1ncmlkPi5zd2lwZXItd3JhcHBlcntmbGV4LXdyYXA6d3JhcH0uc3dpcGVyLWdyaWQtY29sdW1uPi5zd2lwZXItd3JhcHBlcntmbGV4LXdyYXA6d3JhcDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnN3aXBlci1mYWRlLnN3aXBlci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dH0uc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZXtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eX0uc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRle3BvaW50ZXItZXZlbnRzOm5vbmV9LnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZle3BvaW50ZXItZXZlbnRzOmF1dG99LnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZle3BvaW50ZXItZXZlbnRzOmF1dG99LnN3aXBlci5zd2lwZXItY3ViZXtvdmVyZmxvdzp2aXNpYmxlfS5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRle3BvaW50ZXItZXZlbnRzOm5vbmU7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjt6LWluZGV4OjE7dmlzaWJpbGl0eTpoaWRkZW47dHJhbnNmb3JtLW9yaWdpbjowIDA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJX0uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRle3BvaW50ZXItZXZlbnRzOm5vbmV9LnN3aXBlci1jdWJlLnN3aXBlci1ydGwgLnN3aXBlci1zbGlkZXt0cmFuc2Zvcm0tb3JpZ2luOjEwMCUgMH0uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZle3BvaW50ZXItZXZlbnRzOmF1dG99LnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlLC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQsLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtcHJldntwb2ludGVyLWV2ZW50czphdXRvO3Zpc2liaWxpdHk6dmlzaWJsZX0uc3dpcGVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvd3twb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7Ym90dG9tOjBweDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO29wYWNpdHk6LjY7ei1pbmRleDowfS5zd2lwZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93OmJlZm9yZXtjb250ZW50OicnO2JhY2tncm91bmQ6IzAwMDtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7Ym90dG9tOjA7cmlnaHQ6MDtmaWx0ZXI6Ymx1cig1MHB4KX0uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1uZXh0Ky5zd2lwZXItc2xpZGV7cG9pbnRlci1ldmVudHM6YXV0bzt2aXNpYmlsaXR5OnZpc2libGV9LnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWN1YmUuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWN1YmUuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWN1YmUuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3B7ei1pbmRleDowOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW59LnN3aXBlci5zd2lwZXItZmxpcHtvdmVyZmxvdzp2aXNpYmxlfS5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRle3BvaW50ZXItZXZlbnRzOm5vbmU7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjt6LWluZGV4OjF9LnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZXtwb2ludGVyLWV2ZW50czpub25lfS5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSwuc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmV7cG9pbnRlci1ldmVudHM6YXV0b30uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctZmxpcC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSwuc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctZmxpcC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwuc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctZmxpcC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcHt6LWluZGV4OjA7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbn0uc3dpcGVyLWNyZWF0aXZlIC5zd2lwZXItc2xpZGV7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0sb3BhY2l0eSxoZWlnaHR9LnN3aXBlci5zd2lwZXItY2FyZHN7b3ZlcmZsb3c6dmlzaWJsZX0uc3dpcGVyLWNhcmRzIC5zd2lwZXItc2xpZGV7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47b3ZlcmZsb3c6aGlkZGVufSIsbnVsbF19 */
