/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/components/Social.vue?vue&type=style&index=0&id=7dc52ce4&lang=css ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

.colourful-svg {
    mask-size: contain;
    mask-position: center;
    mask-repeat: no-repeat;
}

/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/components/MainNav.vue?vue&type=style&index=0&id=0e2a1559&scoped=true&lang=css ***!
  \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

.logMasked[data-v-0e2a1559] {
  mask-image: -webkit-linear-gradient(top, black,black ), url(/build/frontend/images/main-logo.212eac3b.svg);
  mask-repeat: no-repeat; 
  mask-position: center, center;
  mask-composite: subtract;
}
a[data-v-0e2a1559]:visited{
    color: inherit;
}

/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/components/blocks/LazyImage.vue?vue&type=style&index=0&id=05d811c2&scoped=true&lang=css ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

img[data-v-05d811c2] {
        transition: opacity 0.5s ease;
}

/*!************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/components/blocks/ContentTabs.vue?vue&type=style&index=0&id=1b77af22&lang=css ***!
  \************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

.v-enter-active,
.v-leave-active {
  transition: opacity 0.6s ease;
}
.v-enter-from,
.v-leave-to {
  opacity: 0;
}


/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/components/blocks/HeadingDropdown.vue?vue&type=style&index=0&id=67eba70b&lang=css ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

/* .header {

  letter-spacing: -0.035em;

  i {
    font-family: "abril-titling";
  }
  strong, b, em {
    font-weight: normal;
    font-family: "abril-titling";
    font-size: var(--text-6xl);
    color: var(--p-primary-color);
  }
} */


/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/components/blocks/Heading.vue?vue&type=style&index=0&id=82353d4c&lang=css ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

.header {

  letter-spacing: -0.035em;
i {
    font-family: "abril-titling";
}
strong, b, em {
    font-weight: normal;
    font-family: "abril-titling";
    font-size: var(--text-4xl);
    color: var(--p-primary-color);
}
}
@media (width >= 48rem) {
.header {
strong, b, em {      
      font-size: var(--text-6xl);
}
}
}

/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/components/blocks/Video.vue?vue&type=style&index=0&id=10b18353&lang=css ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

.p-dialog-close-button {
    border: none;
    border-radius: 0;
    background-color: var(--p-surface-950);
    border: solid 1px var(--p-surface-0);
}
.p-dialog-close-button:focus-visible {
    outline: none;
}

/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/components/blocks/Gallery.vue?vue&type=style&index=0&id=2b0d32aa&scoped=true&lang=css ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

[data-v-2b0d32aa] .p-button-secondary .pi {
    color: var(--p-surface-950);
}
[data-v-2b0d32aa] .p-button-secondary:hover .pi {
    color: var(--p-surface-0);
}
[data-v-2b0d32aa] .p-button-secondary::before,[data-v-2b0d32aa] .p-button-secondary::after {
    border-color: var(--p-surface-950);
}
[data-v-2b0d32aa] .p-button-secondary:hover::before,[data-v-2b0d32aa] .p-button-secondary:hover::after {
    border-color: transparent;
}
[data-v-2b0d32aa] .p-button.main-button.p-button-secondary:hover {
    background-color: var(--p-primary-500);
}

/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/components/blocks/Text.vue?vue&type=style&index=0&id=4637ef85&lang=css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

p {
        padding: 0.4rem 0;
}

/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/components/blocks/TransitionTest.vue?vue&type=style&index=0&id=353a90df&lang=css ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

.shuffle-move {
    transition: transform 0.5s ease;
}
.shuffle-enter-active,
  .shuffle-leave-active {
    transition: all 0.5s ease;
}
.shuffle-enter-from,
  .shuffle-leave-to {
    opacity: 0;
    transform: translateY(-20px);
}
.shuffle-enter-to,
  .shuffle-leave-from {
    opacity: 1;
    transform: translateY(0);
}

/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/components/lazyLoadComponentIfVisible.vue?vue&type=style&index=0&id=5c338133&scoped=true&lang=css ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

.placeholder[data-v-5c338133] {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #e0e0e0;
  color: #666;
  border: 1px dashed #999;
}
.loading-state[data-v-5c338133] {
  padding: 20px;
  background-color: #f0f0f0;
  border: 1px solid #ddd;
  text-align: center;
}

/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/layouts/DefaultLayout.vue?vue&type=style&index=0&id=2d7d110d&lang=css ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

header {
h1 {
    letter-spacing: -0.05em;
}
i {
    font-family: "abril-titling";
}
strong, b, em {
    font-weight: normal;
    font-family: "abril-titling";
    font-size: var(--text-6xl);
    color: var(--p-primary-color);
}
}
@media (width >= 48rem) {
header {
strong, b, em {      
      font-size: var(--text-8xl);
}
}
}

/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/vue-loader/dist/stylePostLoader.js!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./assets/frontend/vue/pages/Team/TeamMasonry.vue?vue&type=style&index=0&id=afb32bae&lang=css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************/

.masonry {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.5rem;
> div {
      grid-row: span 2;
}
img {
      /* height: 100%; */
      object-fit: cover;
      aspect-ratio: 1 / 1;
}
div.portrait {
      grid-row: span 3;
img {
        aspect-ratio: 2 / 3;
}
}
div.unportrait {
      grid-row: span 2;
img {
        aspect-ratio: 1 / 1;
}
}
div.open {
      /* grid-row: 1 / -1; */
      grid-column: span 3;
      grid-row: span 3;
img {
        aspect-ratio: unset;
}
}
}



/*!****************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??clonedRuleSet-4.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-4.use[2]!./assets/frontend/styles/app.css ***!
  \****************************************************************************************************************************************************************************/
/*! tailwindcss v4.1.8 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-green-200: oklch(92.5% 0.084 155.995);
    --color-blue-200: oklch(88.2% 0.059 254.128);
    --color-blue-500: oklch(62.3% 0.214 259.815);
    --color-purple-300: oklch(82.7% 0.119 306.383);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --text-7xl: 4.5rem;
    --text-7xl--line-height: 1;
    --text-8xl: 6rem;
    --font-weight-normal: 400;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-tight: -0.025em;
    --tracking-wide: 0.025em;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --animate-spin: spin 1s linear infinite;
    --blur-md: 12px;
    --blur-xl: 24px;
    --blur-3xl: 64px;
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
    --animate-loaderimg: loaderimg 1s ease-in-out 1;
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .pointer-events-none {
    pointer-events: none;
  }
  .visible {
    visibility: visible;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-2 {
    top: calc(var(--spacing) * 2);
  }
  .top-\[33\%\] {
    top: 33%;
  }
  .top-\[220px\] {
    top: 220px;
  }
  .right-0 {
    right: calc(var(--spacing) * 0);
  }
  .right-3 {
    right: calc(var(--spacing) * 3);
  }
  .right-6 {
    right: calc(var(--spacing) * 6);
  }
  .right-\[25\%\] {
    right: 25%;
  }
  .right-\[calc\(50\%-37px\)\] {
    right: calc(50% - 37px);
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .bottom-\[33\%\] {
    bottom: 33%;
  }
  .left-0 {
    left: calc(var(--spacing) * 0);
  }
  .left-\[25\%\] {
    left: 25%;
  }
  .left-\[calc\(50\%-37px\)\] {
    left: calc(50% - 37px);
  }
  .-z-0 {
    z-index: calc(0 * -1);
  }
  .-z-1 {
    z-index: calc(1 * -1);
  }
  .z-1 {
    z-index: 1;
  }
  .z-2 {
    z-index: 2;
  }
  .z-3 {
    z-index: 3;
  }
  .z-10 {
    z-index: 10;
  }
  .z-11 {
    z-index: 11;
  }
  .z-19 {
    z-index: 19;
  }
  .z-20 {
    z-index: 20;
  }
  .z-21 {
    z-index: 21;
  }
  .z-22 {
    z-index: 22;
  }
  .z-30 {
    z-index: 30;
  }
  .order-0 {
    order: 0;
  }
  .order-1 {
    order: 1;
  }
  .col-span-2 {
    grid-column: span 2 / span 2;
  }
  .col-span-3 {
    grid-column: span 3 / span 3;
  }
  .col-start-1 {
    grid-column-start: 1;
  }
  .col-start-2 {
    grid-column-start: 2;
  }
  .row-span-3 {
    grid-row: span 3 / span 3;
  }
  .row-start-1 {
    grid-row-start: 1;
  }
  .contain {
    margin: 0 auto;
    padding: 0;
    width: 100%;
    @media screen and (min-width: 1200px) {
      padding: 0;
      max-width: 1400px;
    }
  }
  .m-2 {
    margin: calc(var(--spacing) * 2);
  }
  .mx-4 {
    margin-inline: calc(var(--spacing) * 4);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .my-3 {
    margin-block: calc(var(--spacing) * 3);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-20 {
    margin-top: calc(var(--spacing) * 20);
  }
  .mr-1 {
    margin-right: calc(var(--spacing) * 1);
  }
  .mr-1\.5 {
    margin-right: calc(var(--spacing) * 1.5);
  }
  .mr-6 {
    margin-right: calc(var(--spacing) * 6);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-12 {
    margin-bottom: calc(var(--spacing) * 12);
  }
  .mb-16 {
    margin-bottom: calc(var(--spacing) * 16);
  }
  .ml-1 {
    margin-left: calc(var(--spacing) * 1);
  }
  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }
  .ml-3 {
    margin-left: calc(var(--spacing) * 3);
  }
  .block {
    display: block;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .table {
    display: table;
  }
  .aspect-\[1\/0\.7\] {
    aspect-ratio: 1/0.7;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .size-14 {
    width: calc(var(--spacing) * 14);
    height: calc(var(--spacing) * 14);
  }
  .h-7 {
    height: calc(var(--spacing) * 7);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-14 {
    height: calc(var(--spacing) * 14);
  }
  .h-23 {
    height: calc(var(--spacing) * 23);
  }
  .h-\[1px\] {
    height: 1px;
  }
  .h-\[2px\] {
    height: 2px;
  }
  .h-\[43px\] {
    height: 43px;
  }
  .h-\[50\%\] {
    height: 50%;
  }
  .h-\[120px\] {
    height: 120px;
  }
  .h-auto {
    height: auto;
  }
  .h-full {
    height: 100%;
  }
  .h-screen {
    height: 100vh;
  }
  .min-h-\[120px\] {
    min-height: 120px;
  }
  .min-h-full {
    min-height: 100%;
  }
  .\!w-full {
    width: 100% !important;
  }
  .w-7 {
    width: calc(var(--spacing) * 7);
  }
  .w-13 {
    width: calc(var(--spacing) * 13);
  }
  .w-140 {
    width: calc(var(--spacing) * 140);
  }
  .w-200 {
    width: calc(var(--spacing) * 200);
  }
  .w-400 {
    width: calc(var(--spacing) * 400);
  }
  .w-\[1px\] {
    width: 1px;
  }
  .w-\[2px\] {
    width: 2px;
  }
  .w-\[10px\] {
    width: 10px;
  }
  .w-\[50\%\] {
    width: 50%;
  }
  .w-\[74px\] {
    width: 74px;
  }
  .w-auto {
    width: auto;
  }
  .w-full {
    width: 100%;
  }
  .max-w-\[620px\] {
    max-width: 620px;
  }
  .max-w-full {
    max-width: 100%;
  }
  .max-w-none {
    max-width: none;
  }
  .min-w-35 {
    min-width: calc(var(--spacing) * 35);
  }
  .min-w-96 {
    min-width: calc(var(--spacing) * 96);
  }
  .min-w-full {
    min-width: 100%;
  }
  .flex-1 {
    flex: 1;
  }
  .flex-3 {
    flex: 3;
  }
  .flex-\[1_1_calc\(50\%-1rem\)\] {
    flex: 1 1 calc(50% - 1rem);
  }
  .flex-none {
    flex: none;
  }
  .shrink {
    flex-shrink: 1;
  }
  .grow {
    flex-grow: 1;
  }
  .basis-\[20\%\] {
    flex-basis: 20%;
  }
  .basis-\[25\%\] {
    flex-basis: 25%;
  }
  .basis-\[33\.33\%\] {
    flex-basis: 33.33%;
  }
  .basis-\[50\%\] {
    flex-basis: 50%;
  }
  .basis-\[100\%\] {
    flex-basis: 100%;
  }
  .-translate-x-7 {
    --tw-translate-x: calc(var(--spacing) * -7);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-full {
    --tw-translate-y: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .rotate-180 {
    rotate: 180deg;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .animate-fadein {
    animation: fadein 0.15s linear;
  }
  .animate-fadeout {
    animation: fadeout 0.15s linear;
  }
  .animate-loaderimg {
    animation: var(--animate-loaderimg);
  }
  .animate-spin {
    animation: var(--animate-spin);
  }
  .cursor-default {
    cursor: default;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .cursor-text\! {
    cursor: text !important;
  }
  .resize {
    resize: both;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .grid-cols-\[auto_1fr\] {
    grid-template-columns: auto 1fr;
  }
  .grid-cols-subgrid {
    grid-template-columns: subgrid;
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-row {
    flex-direction: row;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .content-center {
    align-content: center;
  }
  .content-end {
    align-content: flex-end;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .items-start {
    align-items: flex-start;
  }
  .items-stretch {
    align-items: stretch;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .gap-x-1 {
    column-gap: calc(var(--spacing) * 1);
  }
  .gap-x-2 {
    column-gap: calc(var(--spacing) * 2);
  }
  .gap-x-3 {
    column-gap: calc(var(--spacing) * 3);
  }
  .gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }
  .gap-x-8 {
    column-gap: calc(var(--spacing) * 8);
  }
  .gap-x-34 {
    column-gap: calc(var(--spacing) * 34);
  }
  .gap-x-\[74px\] {
    column-gap: 74px;
  }
  .-space-x-0\! {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 0 !important;
      margin-inline-start: calc(calc(var(--spacing) * -0) * var(--tw-space-x-reverse)) !important;
      margin-inline-end: calc(calc(var(--spacing) * -0) * calc(1 - var(--tw-space-x-reverse))) !important;
    }
  }
  .-space-x-3 {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(calc(var(--spacing) * -3) * var(--tw-space-x-reverse));
      margin-inline-end: calc(calc(var(--spacing) * -3) * calc(1 - var(--tw-space-x-reverse)));
    }
  }
  .gap-y-1 {
    row-gap: calc(var(--spacing) * 1);
  }
  .gap-y-2 {
    row-gap: calc(var(--spacing) * 2);
  }
  .gap-y-3 {
    row-gap: calc(var(--spacing) * 3);
  }
  .gap-y-4 {
    row-gap: calc(var(--spacing) * 4);
  }
  .gap-y-5 {
    row-gap: calc(var(--spacing) * 5);
  }
  .gap-y-6 {
    row-gap: calc(var(--spacing) * 6);
  }
  .gap-y-8 {
    row-gap: calc(var(--spacing) * 8);
  }
  .gap-y-14 {
    row-gap: calc(var(--spacing) * 14);
  }
  .gap-y-16 {
    row-gap: calc(var(--spacing) * 16);
  }
  .gap-y-22 {
    row-gap: calc(var(--spacing) * 22);
  }
  .divide-y-1 {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 0;
      border-bottom-style: var(--tw-border-style);
      border-top-style: var(--tw-border-style);
      border-top-width: calc(1px * var(--tw-divide-y-reverse));
      border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    }
  }
  .divide-surface-950 {
    :where(& > :not(:last-child)) {
      border-color: var(--p-surface-950);
    }
  }
  .self-center {
    align-self: center;
  }
  .self-end {
    align-self: flex-end;
  }
  .self-start {
    align-self: flex-start;
  }
  .justify-self-center {
    justify-self: center;
  }
  .justify-self-end {
    justify-self: flex-end;
  }
  .justify-self-start {
    justify-self: flex-start;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-x-hidden {
    overflow-x: hidden;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .overflow-y-scroll {
    overflow-y: scroll;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-none {
    border-radius: 0;
  }
  .rounded-xl {
    border-radius: var(--radius-xl);
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .border-1 {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }
  .border-t-1 {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-b-1 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-b-3 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 3px;
  }
  .border-primary\! {
    border-color: var(--p-primary-color) !important;
  }
  .border-primary-400 {
    border-color: var(--p-primary-400);
  }
  .border-primary-500 {
    border-color: var(--p-primary-500);
  }
  .border-surface-600 {
    border-color: var(--p-surface-600);
  }
  .border-surface-800 {
    border-color: var(--p-surface-800);
  }
  .border-surface-900 {
    border-color: var(--p-surface-900);
  }
  .border-transparent {
    border-color: transparent;
  }
  .bg-black\/40 {
    background-color: color-mix(in srgb, #000 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-black) 40%, transparent);
    }
  }
  .bg-blue-200 {
    background-color: var(--color-blue-200);
  }
  .bg-green-200 {
    background-color: var(--color-green-200);
  }
  .bg-primary {
    background-color: var(--p-primary-color);
  }
  .bg-primary\! {
    background-color: var(--p-primary-color) !important;
  }
  .bg-primary-500 {
    background-color: var(--p-primary-500);
  }
  .bg-purple-300 {
    background-color: var(--color-purple-300);
  }
  .bg-surface-0 {
    background-color: var(--p-surface-0);
  }
  .bg-surface-500 {
    background-color: var(--p-surface-500);
  }
  .bg-surface-950 {
    background-color: var(--p-surface-950);
  }
  .bg-surface-950\/40 {
    background-color: var(--p-surface-950);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--p-surface-950) 40%, transparent);
    }
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-white\/30 {
    background-color: color-mix(in srgb, #fff 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 30%, transparent);
    }
  }
  .bg-radial {
    --tw-gradient-position: in oklab;
    background-image: radial-gradient(var(--tw-gradient-stops));
  }
  .bg-\[linear-gradient\(to_bottom\,var\(--p-primary-600\)_60\%\,transparent_40\%\)\] {
    background-image: linear-gradient(to bottom,var(--p-primary-600) 60%,transparent 40%);
  }
  .bg-\[linear-gradient\(to_bottom\,var\(--p-primary-600\)_65\%\,transparent_35\%\)\] {
    background-image: linear-gradient(to bottom,var(--p-primary-600) 65%,transparent 35%);
  }
  .bg-\[linear-gradient\(to_bottom\,var\(--p-surface-600\)_65\%\,transparent_35\%\)\] {
    background-image: linear-gradient(to bottom,var(--p-surface-600) 65%,transparent 35%);
  }
  .bg-\[linear-gradient\(to_bottom\,var\(--p-surface-600\)_75\%\,transparent_15\%\)\] {
    background-image: linear-gradient(to bottom,var(--p-surface-600) 75%,transparent 15%);
  }
  .bg-\[linear-gradient\(to_right\,var\(--p-primary-600\)_60\%\,transparent_40\%\)\] {
    background-image: linear-gradient(to right,var(--p-primary-600) 60%,transparent 40%);
  }
  .bg-\[linear-gradient\(to_right\,var\(--p-surface-600\)_65\%\,transparent_35\%\)\] {
    background-image: linear-gradient(to right,var(--p-surface-600) 65%,transparent 35%);
  }
  .bg-\[linear-gradient\(to_right\,var\(--p-surface-600\)_75\%\,transparent_15\%\)\] {
    background-image: linear-gradient(to right,var(--p-surface-600) 75%,transparent 15%);
  }
  .bg-\[url\(\'\/assets\/frontend\/vue\/img\/error\.gif\'\)\] {
    background-image: url(/build/frontend/images/error.28108040.gif);
  }
  .bg-\[url\(\'\/assets\/frontend\/vue\/img\/error\.png\'\)\] {
    background-image: url(/build/frontend/images/error.99b661c7.png);
  }
  .bg-\[url\(\'\/assets\/frontend\/vue\/img\/main-logo\.svg\'\)\] {
    background-image: url(/build/frontend/images/main-logo.212eac3b.svg);
  }
  .from-primary-500 {
    --tw-gradient-from: var(--p-primary-500);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-40\% {
    --tw-gradient-from-position: 40%;
  }
  .to-primary-800 {
    --tw-gradient-to: var(--p-primary-800);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .bg-\[size\:1px_15px\] {
    background-size: 1px 15px;
  }
  .bg-\[size\:2px_40px\] {
    background-size: 2px 40px;
  }
  .bg-\[size\:15px_1px\] {
    background-size: 15px 1px;
  }
  .bg-\[size\:40px_2px\] {
    background-size: 40px 2px;
  }
  .bg-cover {
    background-size: cover;
  }
  .bg-bottom {
    background-position: bottom;
  }
  .bg-center {
    background-position: center;
  }
  .bg-left {
    background-position: left;
  }
  .bg-right {
    background-position: right;
  }
  .bg-no-repeat {
    background-repeat: no-repeat;
  }
  .bg-repeat-x {
    background-repeat: repeat-x;
  }
  .bg-repeat-y {
    background-repeat: repeat-y;
  }
  .mask-repeat {
    mask-repeat: repeat;
  }
  .object-cover {
    object-fit: cover;
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-5 {
    padding: calc(var(--spacing) * 5);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .p-12 {
    padding: calc(var(--spacing) * 12);
  }
  .p-20 {
    padding: calc(var(--spacing) * 20);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-10 {
    padding-inline: calc(var(--spacing) * 10);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-5 {
    padding-block: calc(var(--spacing) * 5);
  }
  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .py-11 {
    padding-block: calc(var(--spacing) * 11);
  }
  .py-14 {
    padding-block: calc(var(--spacing) * 14);
  }
  .py-22 {
    padding-block: calc(var(--spacing) * 22);
  }
  .pe-2 {
    padding-inline-end: calc(var(--spacing) * 2);
  }
  .pe-4 {
    padding-inline-end: calc(var(--spacing) * 4);
  }
  .\!pt-0 {
    padding-top: calc(var(--spacing) * 0) !important;
  }
  .pt-1 {
    padding-top: calc(var(--spacing) * 1);
  }
  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }
  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }
  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }
  .pt-6 {
    padding-top: calc(var(--spacing) * 6);
  }
  .pt-8 {
    padding-top: calc(var(--spacing) * 8);
  }
  .pt-10 {
    padding-top: calc(var(--spacing) * 10);
  }
  .pt-12 {
    padding-top: calc(var(--spacing) * 12);
  }
  .pt-16 {
    padding-top: calc(var(--spacing) * 16);
  }
  .pt-\[13px\] {
    padding-top: 13px;
  }
  .pt-\[120px\] {
    padding-top: 120px;
  }
  .pr-3 {
    padding-right: calc(var(--spacing) * 3);
  }
  .pr-5 {
    padding-right: calc(var(--spacing) * 5);
  }
  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }
  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .pb-6 {
    padding-bottom: calc(var(--spacing) * 6);
  }
  .pb-7 {
    padding-bottom: calc(var(--spacing) * 7);
  }
  .pb-8 {
    padding-bottom: calc(var(--spacing) * 8);
  }
  .pb-10 {
    padding-bottom: calc(var(--spacing) * 10);
  }
  .pb-12 {
    padding-bottom: calc(var(--spacing) * 12);
  }
  .pb-23 {
    padding-bottom: calc(var(--spacing) * 23);
  }
  .pl-1 {
    padding-left: calc(var(--spacing) * 1);
  }
  .pl-1\.5 {
    padding-left: calc(var(--spacing) * 1.5);
  }
  .pl-2 {
    padding-left: calc(var(--spacing) * 2);
  }
  .pl-3 {
    padding-left: calc(var(--spacing) * 3);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .font-\[\'abril-titling\'\] {
    font-family: 'abril-titling';
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .text-4xl {
    font-size: var(--text-4xl);
    line-height: var(--tw-leading, var(--text-4xl--line-height));
  }
  .text-5xl {
    font-size: var(--text-5xl);
    line-height: var(--tw-leading, var(--text-5xl--line-height));
  }
  .text-5xl\/14 {
    font-size: var(--text-5xl);
    line-height: calc(var(--spacing) * 14);
  }
  .text-6xl {
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-lg\/9 {
    font-size: var(--text-lg);
    line-height: calc(var(--spacing) * 9);
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .text-xl\/6\! {
    font-size: var(--text-xl) !important;
    line-height: calc(var(--spacing) * 6) !important;
  }
  .text-\[1\.1rem\] {
    font-size: 1.1rem;
  }
  .text-\[2\.8rem\] {
    font-size: 2.8rem;
  }
  .leading-5 {
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
  }
  .leading-8 {
    --tw-leading: calc(var(--spacing) * 8);
    line-height: calc(var(--spacing) * 8);
  }
  .leading-10 {
    --tw-leading: calc(var(--spacing) * 10);
    line-height: calc(var(--spacing) * 10);
  }
  .leading-16 {
    --tw-leading: calc(var(--spacing) * 16);
    line-height: calc(var(--spacing) * 16);
  }
  .leading-18 {
    --tw-leading: calc(var(--spacing) * 18);
    line-height: calc(var(--spacing) * 18);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-normal {
    --tw-font-weight: var(--font-weight-normal);
    font-weight: var(--font-weight-normal);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-\[-0\.035em\] {
    --tw-tracking: -0.035em;
    letter-spacing: -0.035em;
  }
  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }
  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }
  .text-nowrap {
    text-wrap: nowrap;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .whitespace-pre-line {
    white-space: pre-line;
  }
  .text-blue-500 {
    color: var(--color-blue-500);
  }
  .text-color {
    color: var(--p-text-color);
  }
  .text-primary {
    color: var(--p-primary-color);
  }
  .text-primary-500 {
    color: var(--p-primary-500);
  }
  .text-surface-0 {
    color: var(--p-surface-0);
  }
  .text-surface-50 {
    color: var(--p-surface-50);
  }
  .text-surface-500 {
    color: var(--p-surface-500);
  }
  .text-surface-700 {
    color: var(--p-surface-700);
  }
  .text-surface-700\! {
    color: var(--p-surface-700) !important;
  }
  .text-surface-800 {
    color: var(--p-surface-800);
  }
  .text-surface-950 {
    color: var(--p-surface-950);
  }
  .text-surface-950\! {
    color: var(--p-surface-950) !important;
  }
  .text-white {
    color: var(--color-white);
  }
  .capitalize {
    text-transform: capitalize;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .underline {
    text-decoration-line: underline;
  }
  .decoration-primary-500 {
    text-decoration-color: var(--p-primary-500);
  }
  .decoration-2 {
    text-decoration-thickness: 2px;
  }
  .decoration-3 {
    text-decoration-thickness: 3px;
  }
  .underline-offset-3 {
    text-underline-offset: 3px;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .opacity-50 {
    opacity: 50%;
  }
  .opacity-80 {
    opacity: 80%;
  }
  .opacity-100 {
    opacity: 100%;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-3 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring-white {
    --tw-ring-color: var(--color-white);
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .blur-3xl {
    --tw-blur: blur(var(--blur-3xl));
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .blur-xl {
    --tw-blur: blur(var(--blur-xl));
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .backdrop-blur-md {
    --tw-backdrop-blur: blur(var(--blur-md));
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .duration-250 {
    --tw-duration: 250ms;
    transition-duration: 250ms;
  }
  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  .duration-500 {
    --tw-duration: 500ms;
    transition-duration: 500ms;
  }
  .duration-800 {
    --tw-duration: 800ms;
    transition-duration: 800ms;
  }
  .duration-900 {
    --tw-duration: 900ms;
    transition-duration: 900ms;
  }
  .duration-1000 {
    --tw-duration: 1000ms;
    transition-duration: 1000ms;
  }
  .ease-in-out {
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
  .animate-enter {
    animation-name: enter;
    --p-enter-opacity: initial;
    --p-enter-scale: initial;
    --p-enter-rotate: initial;
    --p-enter-translate-x: initial;
    --p-enter-translate-y: initial;
  }
  .animate-delay-50 {
    animation-delay: 50ms;
  }
  .animate-delay-50 {
    animation-delay: 50 ms;
  }
  .animate-delay-100 {
    animation-delay: 100ms;
  }
  .animate-delay-100 {
    animation-delay: 100 ms;
  }
  .animate-delay-500 {
    animation-delay: 500ms;
  }
  .animate-delay-500 {
    animation-delay: 500 ms;
  }
  .animate-duration-150 {
    animation-duration: 150ms;
  }
  .animate-duration-200 {
    animation-duration: 200ms;
  }
  .animate-duration-300 {
    animation-duration: 300ms;
  }
  .animate-duration-500 {
    animation-duration: 500ms;
  }
  .animate-duration-600 {
    animation-duration: 600ms;
  }
  .animate-duration-2000 {
    animation-duration: 2000ms;
  }
  .animate-duration-18000 {
    animation-duration: 18000ms;
  }
  .animate-fill-backwards {
    animation-fill-mode: backwards;
  }
  .animate-fill-both {
    animation-fill-mode: both;
  }
  .animate-once {
    animation-iteration-count: 1;
  }
  .fade-in-0 {
    --p-enter-opacity: calc(0 * 0.01);
  }
  .fade-in-10 {
    --p-enter-opacity: calc(10 * 0.01);
  }
  .slide-in-from-b-8 {
    --p-enter-translate-y: calc(var(--spacing) * 8);
  }
  .slide-in-from-b-18 {
    --p-enter-translate-y: calc(var(--spacing) * 18);
  }
  .slide-in-from-b-24 {
    --p-enter-translate-y: calc(var(--spacing) * 24);
  }
  .slide-in-from-b-26 {
    --p-enter-translate-y: calc(var(--spacing) * 26);
  }
  .slide-in-from-b-28 {
    --p-enter-translate-y: calc(var(--spacing) * 28);
  }
  .slide-in-from-b-32 {
    --p-enter-translate-y: calc(var(--spacing) * 32);
  }
  .slide-in-from-b-34 {
    --p-enter-translate-y: calc(var(--spacing) * 34);
  }
  .slide-in-from-b-48 {
    --p-enter-translate-y: calc(var(--spacing) * 48);
  }
  .slide-in-from-b-500 {
    --p-enter-translate-y: calc(var(--spacing) * 500);
  }
  .slide-in-from-l-500 {
    --p-enter-translate-x: calc(var(--spacing) * 500 * -1);
  }
  .slide-in-from-r-500 {
    --p-enter-translate-x: calc(var(--spacing) * 500);
  }
  .slide-in-from-t-500 {
    --p-enter-translate-y: calc(var(--spacing) * 500 * -1);
  }
  .\*\:p-0\! {
    :is(& > *) {
      padding: calc(var(--spacing) * 0) !important;
    }
  }
  .group-hover\:scale-110 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-scale-x: 110%;
        --tw-scale-y: 110%;
        --tw-scale-z: 110%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .group-hover\:pr-3 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        padding-right: calc(var(--spacing) * 3);
      }
    }
  }
  .group-hover\:text-surface-950 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--p-surface-950);
      }
    }
  }
  .group-hover\:underline {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .group-hover\/closer\:rotate-90 {
    &:is(:where(.group\/closer):hover *) {
      @media (hover: hover) {
        rotate: 90deg;
      }
    }
  }
  .group-hover\/closer\:text-primary {
    &:is(:where(.group\/closer):hover *) {
      @media (hover: hover) {
        color: var(--p-primary-color);
      }
    }
  }
  .group-hover\/link\:border-none {
    &:is(:where(.group\/link):hover *) {
      @media (hover: hover) {
        --tw-border-style: none;
        border-style: none;
      }
    }
  }
  .group-hover\/link\:bg-primary {
    &:is(:where(.group\/link):hover *) {
      @media (hover: hover) {
        background-color: var(--p-primary-color);
      }
    }
  }
  .group-hover\/link\:text-surface-0 {
    &:is(:where(.group\/link):hover *) {
      @media (hover: hover) {
        color: var(--p-surface-0);
      }
    }
  }
  .group-hover\/link\:text-surface-500 {
    &:is(:where(.group\/link):hover *) {
      @media (hover: hover) {
        color: var(--p-surface-500);
      }
    }
  }
  .group-active\/link\:border-none {
    &:is(:where(.group\/link):active *) {
      --tw-border-style: none;
      border-style: none;
    }
  }
  .group-active\/link\:bg-primary {
    &:is(:where(.group\/link):active *) {
      background-color: var(--p-primary-color);
    }
  }
  .group-active\/link\:text-primary {
    &:is(:where(.group\/link):active *) {
      color: var(--p-primary-color);
    }
  }
  .group-active\/link\:text-surface-500 {
    &:is(:where(.group\/link):active *) {
      color: var(--p-surface-500);
    }
  }
  .group-\[\.open\]\:block {
    &:is(:where(.group):is(.open) *) {
      display: block;
    }
  }
  .group-\[\.open\]\:grid {
    &:is(:where(.group):is(.open) *) {
      display: grid;
    }
  }
  .group-\[\.open\]\:hidden {
    &:is(:where(.group):is(.open) *) {
      display: none;
    }
  }
  .group-\[\.open\]\:grid-cols-1 {
    &:is(:where(.group):is(.open) *) {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  .group-\[\.open\]\:gap-x-\[20px\] {
    &:is(:where(.group):is(.open) *) {
      column-gap: 20px;
    }
  }
  .group-\[\.p-togglebutton-checked\]\:border-white {
    &:is(:where(.group):is(.p-togglebutton-checked) *) {
      border-color: var(--color-white);
    }
  }
  .group-\[\.p-togglebutton-checked\]\:text-surface-950 {
    &:is(:where(.group):is(.p-togglebutton-checked) *) {
      color: var(--p-surface-950);
    }
  }
  .group-hover\/link\:before\:transform {
    &:is(:where(.group\/link):hover *) {
      @media (hover: hover) {
        &::before {
          content: var(--tw-content);
          transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
        }
      }
    }
  }
  .group-hover\/link\:before\:border-transparent {
    &:is(:where(.group\/link):hover *) {
      @media (hover: hover) {
        &::before {
          content: var(--tw-content);
          border-color: transparent;
        }
      }
    }
  }
  .group-active\/link\:before\:transform {
    &:is(:where(.group\/link):active *) {
      &::before {
        content: var(--tw-content);
        transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
      }
    }
  }
  .group-active\/link\:before\:border-transparent {
    &:is(:where(.group\/link):active *) {
      &::before {
        content: var(--tw-content);
        border-color: transparent;
      }
    }
  }
  .group-hover\/link\:after\:transform {
    &:is(:where(.group\/link):hover *) {
      @media (hover: hover) {
        &::after {
          content: var(--tw-content);
          transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
        }
      }
    }
  }
  .group-hover\/link\:after\:border-transparent {
    &:is(:where(.group\/link):hover *) {
      @media (hover: hover) {
        &::after {
          content: var(--tw-content);
          border-color: transparent;
        }
      }
    }
  }
  .group-active\/link\:after\:transform {
    &:is(:where(.group\/link):active *) {
      &::after {
        content: var(--tw-content);
        transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
      }
    }
  }
  .group-active\/link\:after\:border-transparent {
    &:is(:where(.group\/link):active *) {
      &::after {
        content: var(--tw-content);
        border-color: transparent;
      }
    }
  }
  .first\:pt-0 {
    &:first-child {
      padding-top: calc(var(--spacing) * 0);
    }
  }
  .last\:border-none {
    &:last-child {
      --tw-border-style: none;
      border-style: none;
    }
  }
  .last\:pb-0 {
    &:last-child {
      padding-bottom: calc(var(--spacing) * 0);
    }
  }
  .last\:text-surface-950\! {
    &:last-child {
      color: var(--p-surface-950) !important;
    }
  }
  .last\:no-underline\! {
    &:last-child {
      text-decoration-line: none !important;
    }
  }
  .hover\:rotate-90 {
    &:hover {
      @media (hover: hover) {
        rotate: 90deg;
      }
    }
  }
  .hover\:border-primary {
    &:hover {
      @media (hover: hover) {
        border-color: var(--p-primary-color);
      }
    }
  }
  .hover\:border-b-surface-900 {
    &:hover {
      @media (hover: hover) {
        border-bottom-color: var(--p-surface-900);
      }
    }
  }
  .hover\:bg-primary-500 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--p-primary-500);
      }
    }
  }
  .hover\:bg-surface-950\! {
    &:hover {
      @media (hover: hover) {
        background-color: var(--p-surface-950) !important;
      }
    }
  }
  .hover\:text-primary-800 {
    &:hover {
      @media (hover: hover) {
        color: var(--p-primary-800);
      }
    }
  }
  .hover\:text-surface-0 {
    &:hover {
      @media (hover: hover) {
        color: var(--p-surface-0);
      }
    }
  }
  .hover\:text-surface-0\! {
    &:hover {
      @media (hover: hover) {
        color: var(--p-surface-0) !important;
      }
    }
  }
  .hover\:text-surface-950\! {
    &:hover {
      @media (hover: hover) {
        color: var(--p-surface-950) !important;
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .hover\:opacity-100 {
    &:hover {
      @media (hover: hover) {
        opacity: 100%;
      }
    }
  }
  .focus-visible\:outline-0 {
    &:focus-visible {
      outline-style: var(--tw-outline-style);
      outline-width: 0px;
    }
  }
  .sm\:px-18 {
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 18);
    }
  }
  .sm\:py-18 {
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 18);
    }
  }
  .md\:sticky {
    @media (width >= 48rem) {
      position: sticky;
    }
  }
  .md\:top-3 {
    @media (width >= 48rem) {
      top: calc(var(--spacing) * 3);
    }
  }
  .md\:top-\[220px\] {
    @media (width >= 48rem) {
      top: 220px;
    }
  }
  .md\:right-4 {
    @media (width >= 48rem) {
      right: calc(var(--spacing) * 4);
    }
  }
  .md\:order-0 {
    @media (width >= 48rem) {
      order: 0;
    }
  }
  .md\:order-1 {
    @media (width >= 48rem) {
      order: 1;
    }
  }
  .md\:col-span-2 {
    @media (width >= 48rem) {
      grid-column: span 2 / span 2;
    }
  }
  .md\:contain {
    @media (width >= 48rem) {
      margin: 0 auto;
      padding: 0;
      width: 100%;
      @media screen and (min-width: 1200px) {
        padding: 0;
        max-width: 1400px;
      }
    }
  }
  .md\:block {
    @media (width >= 48rem) {
      display: block;
    }
  }
  .md\:flex {
    @media (width >= 48rem) {
      display: flex;
    }
  }
  .md\:hidden {
    @media (width >= 48rem) {
      display: none;
    }
  }
  .md\:inline-block {
    @media (width >= 48rem) {
      display: inline-block;
    }
  }
  .md\:min-h-\[645px\] {
    @media (width >= 48rem) {
      min-height: 645px;
    }
  }
  .md\:\!w-80 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 80) !important;
    }
  }
  .md\:w-56 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 56);
    }
  }
  .md\:w-\[40\%\] {
    @media (width >= 48rem) {
      width: 40%;
    }
  }
  .md\:w-\[80\%\] {
    @media (width >= 48rem) {
      width: 80%;
    }
  }
  .md\:w-auto {
    @media (width >= 48rem) {
      width: auto;
    }
  }
  .md\:min-w-0 {
    @media (width >= 48rem) {
      min-width: calc(var(--spacing) * 0);
    }
  }
  .md\:flex-1 {
    @media (width >= 48rem) {
      flex: 1;
    }
  }
  .md\:grid-cols-2 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .md\:grid-rows-1 {
    @media (width >= 48rem) {
      grid-template-rows: repeat(1, minmax(0, 1fr));
    }
  }
  .md\:flex-row {
    @media (width >= 48rem) {
      flex-direction: row;
    }
  }
  .md\:items-center {
    @media (width >= 48rem) {
      align-items: center;
    }
  }
  .md\:items-end {
    @media (width >= 48rem) {
      align-items: flex-end;
    }
  }
  .md\:items-start {
    @media (width >= 48rem) {
      align-items: flex-start;
    }
  }
  .md\:gap-10 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 10);
    }
  }
  .md\:gap-x-\[74px\] {
    @media (width >= 48rem) {
      column-gap: 74px;
    }
  }
  .md\:gap-y-0 {
    @media (width >= 48rem) {
      row-gap: calc(var(--spacing) * 0);
    }
  }
  .md\:gap-y-36 {
    @media (width >= 48rem) {
      row-gap: calc(var(--spacing) * 36);
    }
  }
  .md\:self-center {
    @media (width >= 48rem) {
      align-self: center;
    }
  }
  .md\:self-end {
    @media (width >= 48rem) {
      align-self: flex-end;
    }
  }
  .md\:p-4 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 4);
    }
  }
  .md\:px-0 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 0);
    }
  }
  .md\:px-6 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 6);
    }
  }
  .md\:px-10 {
    @media (width >= 48rem) {
      padding-inline: calc(var(--spacing) * 10);
    }
  }
  .md\:py-0 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 0);
    }
  }
  .md\:py-4 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 4);
    }
  }
  .md\:py-5 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 5);
    }
  }
  .md\:py-18 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 18);
    }
  }
  .md\:py-26 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 26);
    }
  }
  .md\:py-36 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 36);
    }
  }
  .md\:pt-0 {
    @media (width >= 48rem) {
      padding-top: calc(var(--spacing) * 0);
    }
  }
  .md\:pt-26 {
    @media (width >= 48rem) {
      padding-top: calc(var(--spacing) * 26);
    }
  }
  .md\:pt-\[645px\] {
    @media (width >= 48rem) {
      padding-top: 645px;
    }
  }
  .md\:pb-0 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 0);
    }
  }
  .md\:pb-3 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 3);
    }
  }
  .md\:pb-8 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 8);
    }
  }
  .md\:pb-22 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 22);
    }
  }
  .md\:pl-1 {
    @media (width >= 48rem) {
      padding-left: calc(var(--spacing) * 1);
    }
  }
  .md\:text-left {
    @media (width >= 48rem) {
      text-align: left;
    }
  }
  .md\:text-right {
    @media (width >= 48rem) {
      text-align: right;
    }
  }
  .md\:text-2xl {
    @media (width >= 48rem) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .md\:text-3xl {
    @media (width >= 48rem) {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }
  .md\:text-4xl {
    @media (width >= 48rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .md\:text-6xl {
    @media (width >= 48rem) {
      font-size: var(--text-6xl);
      line-height: var(--tw-leading, var(--text-6xl--line-height));
    }
  }
  .md\:text-6xl\/20 {
    @media (width >= 48rem) {
      font-size: var(--text-6xl);
      line-height: calc(var(--spacing) * 20);
    }
  }
  .md\:text-7xl {
    @media (width >= 48rem) {
      font-size: var(--text-7xl);
      line-height: var(--tw-leading, var(--text-7xl--line-height));
    }
  }
  .md\:text-lg {
    @media (width >= 48rem) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .md\:text-xl {
    @media (width >= 48rem) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .md\:font-normal {
    @media (width >= 48rem) {
      --tw-font-weight: var(--font-weight-normal);
      font-weight: var(--font-weight-normal);
    }
  }
  .md\:duration-200 {
    @media (width >= 48rem) {
      --tw-duration: 200ms;
      transition-duration: 200ms;
    }
  }
  .md\:group-hover\:not-group-\[\.open\]\:scale-110 {
    @media (width >= 48rem) {
      &:is(:where(.group):hover *) {
        @media (hover: hover) {
          &:not(*:is(:where(.group):is(.open) *)) {
            --tw-scale-x: 110%;
            --tw-scale-y: 110%;
            --tw-scale-z: 110%;
            scale: var(--tw-scale-x) var(--tw-scale-y);
          }
        }
      }
    }
  }
  .md\:group-\[\.open\]\:grid-cols-2 {
    @media (width >= 48rem) {
      &:is(:where(.group):is(.open) *) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }
  }
  .md\:group-\[\.open\]\:gap-x-\[74px\] {
    @media (width >= 48rem) {
      &:is(:where(.group):is(.open) *) {
        column-gap: 74px;
      }
    }
  }
  .md\:first\:pt-\[65px\] {
    @media (width >= 48rem) {
      &:first-child {
        padding-top: 65px;
      }
    }
  }
  .md\:last\:pb-\[130px\] {
    @media (width >= 48rem) {
      &:last-child {
        padding-bottom: 130px;
      }
    }
  }
  .lg\:col-span-1 {
    @media (width >= 64rem) {
      grid-column: span 1 / span 1;
    }
  }
  .lg\:col-span-3 {
    @media (width >= 64rem) {
      grid-column: span 3 / span 3;
    }
  }
  .lg\:col-start-3 {
    @media (width >= 64rem) {
      grid-column-start: 3;
    }
  }
  .lg\:my-0 {
    @media (width >= 64rem) {
      margin-block: calc(var(--spacing) * 0);
    }
  }
  .lg\:ml-22 {
    @media (width >= 64rem) {
      margin-left: calc(var(--spacing) * 22);
    }
  }
  .lg\:block {
    @media (width >= 64rem) {
      display: block;
    }
  }
  .lg\:hidden {
    @media (width >= 64rem) {
      display: none;
    }
  }
  .lg\:h-16 {
    @media (width >= 64rem) {
      height: calc(var(--spacing) * 16);
    }
  }
  .lg\:\!w-\[30rem\] {
    @media (width >= 64rem) {
      width: 30rem !important;
    }
  }
  .lg\:w-16 {
    @media (width >= 64rem) {
      width: calc(var(--spacing) * 16);
    }
  }
  .lg\:grow {
    @media (width >= 64rem) {
      flex-grow: 1;
    }
  }
  .lg\:grid-cols-\[33\%_1fr_74px_calc\(50\%-37px\)\] {
    @media (width >= 64rem) {
      grid-template-columns: 33% 1fr 74px calc(50% - 37px);
    }
  }
  .lg\:grid-cols-subgrid {
    @media (width >= 64rem) {
      grid-template-columns: subgrid;
    }
  }
  .lg\:flex-row {
    @media (width >= 64rem) {
      flex-direction: row;
    }
  }
  .lg\:items-center {
    @media (width >= 64rem) {
      align-items: center;
    }
  }
  .lg\:gap-x-3 {
    @media (width >= 64rem) {
      column-gap: calc(var(--spacing) * 3);
    }
  }
  .lg\:gap-y-0 {
    @media (width >= 64rem) {
      row-gap: calc(var(--spacing) * 0);
    }
  }
  .lg\:rounded-full {
    @media (width >= 64rem) {
      border-radius: calc(infinity * 1px);
    }
  }
  .lg\:border-b-1 {
    @media (width >= 64rem) {
      border-bottom-style: var(--tw-border-style);
      border-bottom-width: 1px;
    }
  }
  .lg\:py-0 {
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 0);
    }
  }
  .lg\:py-8 {
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 8);
    }
  }
  .lg\:pl-4 {
    @media (width >= 64rem) {
      padding-left: calc(var(--spacing) * 4);
    }
  }
  .lg\:text-left {
    @media (width >= 64rem) {
      text-align: left;
    }
  }
  .lg\:text-right {
    @media (width >= 64rem) {
      text-align: right;
    }
  }
  .lg\:hover\:text-primary {
    @media (width >= 64rem) {
      &:hover {
        @media (hover: hover) {
          color: var(--p-primary-color);
        }
      }
    }
  }
  .\32 xl\:right-\[calc\(50\%-55px\)\] {
    @media (width >= 96rem) {
      right: calc(50% - 55px);
    }
  }
  .\32 xl\:left-\[calc\(50\%-55px\)\] {
    @media (width >= 96rem) {
      left: calc(50% - 55px);
    }
  }
  .\32 xl\:h-30 {
    @media (width >= 96rem) {
      height: calc(var(--spacing) * 30);
    }
  }
  .\32 xl\:h-\[50px\] {
    @media (width >= 96rem) {
      height: 50px;
    }
  }
  .\32 xl\:h-\[180px\] {
    @media (width >= 96rem) {
      height: 180px;
    }
  }
  .\32 xl\:min-h-\[180px\] {
    @media (width >= 96rem) {
      min-height: 180px;
    }
  }
  .\32 xl\:w-\[110px\] {
    @media (width >= 96rem) {
      width: 110px;
    }
  }
  .\32 xl\:grid-cols-\[33\%_1fr_110px_calc\(50\%-55px\)\] {
    @media (width >= 96rem) {
      grid-template-columns: 33% 1fr 110px calc(50% - 55px);
    }
  }
  .\32 xl\:gap-x-\[110px\] {
    @media (width >= 96rem) {
      column-gap: 110px;
    }
  }
  .\32 xl\:pt-\[180px\] {
    @media (width >= 96rem) {
      padding-top: 180px;
    }
  }
  .\32 xl\:pb-10 {
    @media (width >= 96rem) {
      padding-bottom: calc(var(--spacing) * 10);
    }
  }
  .\32 xl\:group-\[\.open\]\:gap-x-\[110px\] {
    @media (width >= 96rem) {
      &:is(:where(.group):is(.open) *) {
        column-gap: 110px;
      }
    }
  }
  .\[\.p-button-secondary\]\:group-hover\/link\:bg-surface-0 {
    &:is(.p-button-secondary) {
      &:is(:where(.group\/link):hover *) {
        @media (hover: hover) {
          background-color: var(--p-surface-0);
        }
      }
    }
  }
  .\[\.p-button-secondary\]\:group-hover\/link\:\*\:text-primary {
    &:is(.p-button-secondary) {
      &:is(:where(.group\/link):hover *) {
        @media (hover: hover) {
          :is(& > *) {
            color: var(--p-primary-color);
          }
        }
      }
    }
  }
  .\[\.p-button-secondary\]\:group-active\/link\:bg-surface-0 {
    &:is(.p-button-secondary) {
      &:is(:where(.group\/link):active *) {
        background-color: var(--p-surface-0);
      }
    }
  }
  .\[\.p-button-secondary\]\:group-active\/link\:\*\:text-primary {
    &:is(.p-button-secondary) {
      &:is(:where(.group\/link):active *) {
        :is(& > *) {
          color: var(--p-primary-color);
        }
      }
    }
  }
}
@layer keyframes {
  @keyframes enter {
    from {
      opacity: var(--p-enter-opacity, 1);
      transform: translate3d(var(--p-enter-translate-x, 0), var(--p-enter-translate-y, 0), 0) scale3d(var(--p-enter-scale, 1), var(--p-enter-scale, 1), var(--p-enter-scale, 1)) rotate(var(--p-enter-rotate, 0));
    }
  }
  @keyframes leave {
    to {
      opacity: var(--p-leave-opacity, 1);
      transform: translate3d(var(--p-leave-translate-x, 0), var(--p-leave-translate-y, 0), 0) scale3d(var(--p-leave-scale, 1), var(--p-leave-scale, 1), var(--p-leave-scale, 1)) rotate(var(--p-leave-rotate, 0));
    }
  }
  @keyframes fadein {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }
  @keyframes fadeout {
    0% {
      opacity: 1;
    }
    100% {
      opacity: 0;
    }
  }
  @keyframes infinite-scroll {
    from {
      transform: translateX(0);
    }
    to {
      transform: translateX(-100%);
    }
  }
  @keyframes scalein {
    0% {
      opacity: 0;
      transform: scaleY(0.8);
      transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1), opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
    }
    100% {
      opacity: 1;
      transform: scaleY(1);
    }
  }
  @keyframes slidedown {
    0% {
      max-height: 0;
    }
    100% {
      max-height: auto;
    }
  }
  @keyframes slideup {
    0% {
      max-height: 1000px;
    }
    100% {
      max-height: 0;
    }
  }
  @keyframes fadeinleft {
    0% {
      opacity: 0;
      transform: translateX(-100%);
      transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1), opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
    }
    100% {
      opacity: 1;
      transform: translateX(0%);
    }
  }
  @keyframes fadeoutleft {
    0% {
      opacity: 1;
      transform: translateX(0%);
      transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1), opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
    }
    100% {
      opacity: 0;
      transform: translateX(-100%);
    }
  }
  @keyframes fadeinright {
    0% {
      opacity: 0;
      transform: translateX(100%);
      transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1), opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
    }
    100% {
      opacity: 1;
      transform: translateX(0%);
    }
  }
  @keyframes fadeoutright {
    0% {
      opacity: 1;
      transform: translateX(0%);
      transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1), opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
    }
    100% {
      opacity: 0;
      transform: translateX(100%);
    }
  }
  @keyframes fadeinup {
    0% {
      opacity: 0;
      transform: translateY(-100%);
      transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1), opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
    }
    100% {
      opacity: 1;
      transform: translateY(0%);
    }
  }
  @keyframes fadeoutup {
    0% {
      opacity: 1;
      transform: translateY(0%);
      transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1), opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
    }
    100% {
      opacity: 0;
      transform: translateY(-100%);
    }
  }
  @keyframes fadeindown {
    0% {
      opacity: 0;
      transform: translateY(100%);
      transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1), opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
    }
    100% {
      opacity: 1;
      transform: translateY(0%);
    }
  }
  @keyframes fadeoutdown {
    0% {
      opacity: 1;
      transform: translateY(0%);
      transition: transform 0.12s cubic-bezier(0, 0, 0.2, 1), opacity 0.12s cubic-bezier(0, 0, 0.2, 1);
    }
    100% {
      opacity: 0;
      transform: translateY(100%);
    }
  }
  @keyframes width {
    0% {
      width: 0;
    }
    100% {
      width: 100%;
    }
  }
  @keyframes flip {
    from {
      transform: perspective(2000px) rotateX(-100deg);
    }
    to {
      transform: perspective(2000px) rotateX(0);
    }
  }
  @keyframes flipleft {
    from {
      transform: perspective(2000px) rotateY(-100deg);
      opacity: 0;
    }
    to {
      transform: perspective(2000px) rotateY(0);
      opacity: 1;
    }
  }
  @keyframes flipright {
    from {
      transform: perspective(2000px) rotateY(100deg);
      opacity: 0;
    }
    to {
      transform: perspective(2000px) rotateY(0);
      opacity: 1;
    }
  }
  @keyframes flipup {
    from {
      transform: perspective(2000px) rotateX(-100deg);
      opacity: 0;
    }
    to {
      transform: perspective(2000px) rotateX(0);
      opacity: 1;
    }
  }
  @keyframes zoomin {
    from {
      transform: scale3d(0.3, 0.3, 0.3);
      opacity: 0;
    }
    50% {
      opacity: 1;
    }
  }
  @keyframes zoomindown {
    from {
      transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
      opacity: 0;
    }
    60% {
      transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
      opacity: 1;
    }
  }
  @keyframes zoominleft {
    from {
      transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
      opacity: 0;
    }
    60% {
      transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
      opacity: 1;
    }
  }
}
html {
  font-family: "lato", "abril-titling", Inter var;
  font-size: 14px;
}
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: var(--p-surface-950);
  font-weight: 400;
  margin: 0;
  min-height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}
.font-accent {
  font-family: "abril-titling";
}
a:hover {
  cursor: pointer;
  color: var(--p-primary-color);
}
.shuffle-move {
  transition: transform 0.5s ease;
}
.shuffle-enter-active,
.shuffle-leave-active {
  transition: all 0.5s ease;
}
.shuffle-enter-from,
.shuffle-leave-to {
  opacity: 0;
  transform: translateY(-20px);
}
.shuffle-enter-to,
.shuffle-leave-from {
  opacity: 1;
  transform: translateY(0);
}
.fade-scroll {
  --fade-amount: 10%;
  mask-image: linear-gradient(to bottom, transparent, black var(--fade-amount), black calc(100% - var(--fade-amount)), transparent);
  overflow-y: scroll;
}
.ckeditor-content h2 {
  margin-top: calc(var(--spacing) * 8);
  margin-bottom: calc(var(--spacing) * 4);
  font-size: var(--text-5xl);
  line-height: var(--tw-leading, var(--text-5xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.ckeditor-content h3 {
  margin-top: calc(var(--spacing) * 6);
  margin-bottom: calc(var(--spacing) * 3);
  font-size: var(--text-4xl);
  line-height: var(--tw-leading, var(--text-4xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.ckeditor-content h4 {
  margin-top: calc(var(--spacing) * 4);
  margin-bottom: calc(var(--spacing) * 2);
  font-size: var(--text-3xl);
  line-height: var(--tw-leading, var(--text-3xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.ckeditor-content h5 {
  margin-top: calc(var(--spacing) * 2);
  margin-bottom: calc(var(--spacing) * 1);
  font-size: var(--text-2xl);
  line-height: var(--tw-leading, var(--text-2xl--line-height));
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.ckeditor-content h6 {
  margin-top: calc(var(--spacing) * 1);
  margin-bottom: calc(var(--spacing) * 0);
  --tw-font-weight: var(--font-weight-bold);
  font-weight: var(--font-weight-bold);
}
.ckeditor-content ul {
  margin-bottom: calc(var(--spacing) * 4);
  list-style-type: disc;
  padding-left: calc(var(--spacing) * 6);
}
.ckeditor-content ol {
  margin-bottom: calc(var(--spacing) * 4);
  list-style-type: decimal;
  padding-left: calc(var(--spacing) * 6);
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-content {
  syntax: "*";
  initial-value: "";
  inherits: false;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes loaderimg {
  0% {
    opacity: 0;
    filter: blur(50px);
  }
  25% {
    opacity: 1;
  }
  100% {
    filter: blur(0);
  }
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-space-x-reverse: 0;
      --tw-divide-y-reverse: 0;
      --tw-border-style: solid;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
      --tw-content: "";
    }
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHdDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHdDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHdDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHFDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHNDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGtCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHdDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHdDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHdDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHlDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHNDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGdCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGlCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDBCQUFtQjtNQUFuQiw0REFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSwwQkFBbUI7TUFBbkIsNERBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsMEJBQW1CO01BQW5CLDREQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDBCQUFtQjtNQUFuQiw0REFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSwwQkFBbUI7TUFBbkIsc0NBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsMEJBQW1CO01BQW5CLDREQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHlCQUFtQjtNQUFuQiwyREFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSx5QkFBbUI7TUFBbkIsMkRBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsMkNBQW1CO01BQW5CLHNDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLG9CQUFtQjtNQUFuQiwwQkFBbUI7SUFBQTtFQUFBO0VB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QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7RUFBbkIsZ0JBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtFQUFuQixnQkFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLG9CQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLGlCQUFtQjtFQUFuQixlQUFtQjtFQUFuQixvQkFBbUI7QUFBQTtBQUFuQjtFQUFBLGlCQUFtQjtFQUFuQixlQUFtQjtFQUFuQixvQkFBbUI7QUFBQTtBQUFuQjtFQUFBLGlCQUFtQjtFQUFuQixlQUFtQjtFQUFuQixvQkFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsNkJBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLGlCQUFtQjtBQUFBO0FBQW5CO0VBQUEsNkJBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLGtCQUFtQjtBQUFBO0FBQW5CO0VBQUEsNkJBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLG1CQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7RUFBbkIsd0JBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsc0JBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLG1CQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7RUFBbkIsd0JBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsc0JBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLG1CQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLHdCQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLHdCQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLGtCQUFtQjtFQUFuQixlQUFtQjtFQUFuQixrQkFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLG1CQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7RUFBbkIsd0JBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtFQUFuQixvQkFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsc0JBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLG1CQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7RUFBbkIsZ0JBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtFQUFuQixnQkFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLGdCQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsaUJBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFuZWpCO0VBQ0U7SUFDRSx5QkFBeUI7RUFEeEI7QUFEVztBQzFYbEI7RUFDRTtJQUNFLFVBQVc7SUFDWCxrQkFBbUI7RUFDcEI7RUFDRDtJQUNFLFVBQVk7RUFDYjtFQUNEO0lBQ0UsZUFBZ0I7RUFDakI7QUFDRjtBRGsxQkQ7RUFBQTtJQUFBO01BQUEsbUJBQW1CO01BQW5CLG1CQUFtQjtNQUFuQixtQkFBbUI7TUFBbkIsc0JBQW1CO01BQW5CLHNCQUFtQjtNQUFuQixzQkFBbUI7TUFBbkIsb0JBQW1CO01BQW5CLG9CQUFtQjtNQUFuQix1QkFBbUI7TUFBbkIsd0JBQW1CO01BQW5CLHdCQUFtQjtNQUFuQiwrQkFBbUI7TUFBbkIseUJBQW1CO01BQW5CLHdCQUFtQjtNQUFuQix1QkFBbUI7TUFBbkIsNEJBQW1CO01BQW5CLGdDQUFtQjtNQUFuQiwrQkFBbUI7TUFBbkIsK0JBQW1CO01BQW5CLCtCQUFtQjtNQUFuQixxQkFBbUI7TUFBbkIseUJBQW1CO01BQW5CLHNCQUFtQjtNQUFuQixzQkFBbUI7TUFBbkIsMEJBQW1CO01BQW5CLHVCQUFtQjtNQUFuQiw0QkFBbUI7TUFBbkIsZ0NBQW1CO01BQW5CLDZCQUFtQjtNQUFuQix3QkFBbUI7TUFBbkIsMkJBQW1CO01BQW5CLDhCQUFtQjtNQUFuQixpQ0FBbUI7TUFBbkIsd0JBQW1CO01BQW5CLDJCQUFtQjtNQUFuQiw0QkFBbUI7TUFBbkIsa0NBQW1CO01BQW5CLHlCQUFtQjtNQUFuQixrQkFBbUI7TUFBbkIsd0JBQW1CO01BQW5CLHNCQUFtQjtNQUFuQix1QkFBbUI7TUFBbkIsd0JBQW1CO01BQW5CLG9CQUFtQjtNQUFuQixxQkFBbUI7TUFBbkIsc0JBQW1CO01BQW5CLG1CQUFtQjtNQUFuQix5QkFBbUI7TUFBbkIsK0JBQW1CO01BQW5CLDRCQUFtQjtNQUFuQiw4QkFBbUI7TUFBbkIsMkJBQW1CO01BQW5CLGlDQUFtQjtNQUFuQiwrQkFBbUI7TUFBbkIsZ0NBQW1CO01BQW5CLGlDQUFtQjtNQUFuQiw2QkFBbUI7TUFBbkIsOEJBQW1CO01BQW5CLCtCQUFtQjtNQUFuQiw0QkFBbUI7TUFBbkIsc0JBQW1CO01BQW5CLGtCQUFtQjtNQUFuQixlQUFtQjtNQUFuQixlQUFtQjtNQUFuQixlQUFtQjtNQUFuQixnQkFBbUI7SUFBQTtFQUFBO0FBQUEsQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2Fzc2V0cy9mcm9udGVuZC92dWUvY29tcG9uZW50cy9Tb2NpYWwudnVlIiwid2VicGFjazovLy8uL2Fzc2V0cy9mcm9udGVuZC92dWUvY29tcG9uZW50cy9NYWluTmF2LnZ1ZSIsIndlYnBhY2s6Ly8vLi9hc3NldHMvZnJvbnRlbmQvdnVlL2NvbXBvbmVudHMvYmxvY2tzL0xhenlJbWFnZS52dWUiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Zyb250ZW5kL3Z1ZS9jb21wb25lbnRzL2Jsb2Nrcy9Db250ZW50VGFicy52dWUiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Zyb250ZW5kL3Z1ZS9jb21wb25lbnRzL2Jsb2Nrcy9IZWFkaW5nRHJvcGRvd24udnVlIiwid2VicGFjazovLy8uL2Fzc2V0cy9mcm9udGVuZC92dWUvY29tcG9uZW50cy9ibG9ja3MvSGVhZGluZy52dWUiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Zyb250ZW5kL3Z1ZS9jb21wb25lbnRzL2Jsb2Nrcy9WaWRlby52dWUiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Zyb250ZW5kL3Z1ZS9jb21wb25lbnRzL2Jsb2Nrcy9HYWxsZXJ5LnZ1ZSIsIndlYnBhY2s6Ly8vLi9hc3NldHMvZnJvbnRlbmQvdnVlL2NvbXBvbmVudHMvYmxvY2tzL1RleHQudnVlIiwid2VicGFjazovLy8uL2Fzc2V0cy9mcm9udGVuZC92dWUvY29tcG9uZW50cy9ibG9ja3MvVHJhbnNpdGlvblRlc3QudnVlIiwid2VicGFjazovLy8uL2Fzc2V0cy9mcm9udGVuZC92dWUvY29tcG9uZW50cy9sYXp5TG9hZENvbXBvbmVudElmVmlzaWJsZS52dWUiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Zyb250ZW5kL3Z1ZS9sYXlvdXRzL0RlZmF1bHRMYXlvdXQudnVlIiwid2VicGFjazovLy8uL2Fzc2V0cy9mcm9udGVuZC92dWUvcGFnZXMvVGVhbS9UZWFtTWFzb25yeS52dWUiLCJ3ZWJwYWNrOi8vLzxubyBzb3VyY2U+Iiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy90YWlsd2luZGNzcy9pbmRleC5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Zyb250ZW5kL3N0eWxlcy9hcHAuY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy90YWlsd2luZGNzcy1wcmltZXVpL3Y0L3V0aWxzL2FuaW1hdGlvbi5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3RhaWx3aW5kY3NzLXByaW1ldWkvdjQvdXRpbHMvcHJlc2V0LmNzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdGFpbHdpbmRjc3MtcHJpbWV1aS92NC91dGlscy9lbnRlcmxlYXZlLmNzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdGFpbHdpbmRjc3MtcHJpbWV1aS92NC91dGlscy9kZWxheS5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3RhaWx3aW5kY3NzLXByaW1ldWkvdjQvdXRpbHMvZHVyYXRpb24uY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy90YWlsd2luZGNzcy1wcmltZXVpL3Y0L3V0aWxzL2ZpbGxNb2RlLmNzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvdGFpbHdpbmRjc3MtcHJpbWV1aS92NC91dGlscy9pdGVyYXRpb25Db3VudC5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3RhaWx3aW5kY3NzLXByaW1ldWkvdjQvdXRpbHMva2V5ZnJhbWVzLmNzcyJdLCJzb3VyY2VzQ29udGVudCI6WyI8dGVtcGxhdGU+XG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC13cmFwXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3aGl0ZXNwYWNlLW5vd3JhcFwiPlxuICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZm9udC1zZW1pYm9sZCB0ZXh0LWxnXCI+e3sgdGl0bGUgfX0gPHNwYW4gY2xhc3M9XCJwbC0yIHByLTVcIj4tPC9zcGFuPjwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3aGl0ZXNwYWNlLW5vd3JhcCBmbGV4IGl0ZW1zLWNlbnRlciBnYXAteC0yXCI+XG4gICAgICAgICAgICA8YSB2LWlmPVwibGlua3M/LmNvbnRlbnRcIiB2LWZvcj1cIihpdGVtLCBpbmRleCkgaW4gbGlua3MuY29udGVudFwiXG4gICAgICAgICAgICAgICAgOmhyZWY9XCJpdGVtLmxpbmtcIiA6dGFyZ2V0PVwibGlua3Mudmlld1tpbmRleF0/Lmxpbms/LnRhcmdldCA/IGxpbmtzLnZpZXdbaW5kZXhdLmxpbmsudGFyZ2V0IDogJ19zZWxmJ1wiXG4gICAgICAgICAgICAgICA6YXJpYS1sYWJlbD1cImBTb2NpYWwgbG9nbyAtICR7aXRlbS5pbWFnZS50aXRsZX1gXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwiYGNvbG91cmZ1bC1zdmcgdy03IGgtNyBiZy0ke2ljb25Db2xvcn0gaG92ZXI6Ymctc3VyZmFjZS05NTAhIHRyYW5zaXRpb24tY29sb3JzIGR1cmF0aW9uLTIwMGBcIiBcbiAgICAgICAgICAgICAgICAgICAgOnN0eWxlPVwieyBcbiAgICAgICAgICAgICAgICAgICAgICAgICdtYXNrLWltYWdlJzogaXRlbS5pbWFnZSA/IGB1cmwoJyR7c3RyUmVwbGFjZShpdGVtLmltYWdlLmZvcm1hdFVyaSwgeyd7Zm9ybWF0fSc6ICdzb2NpYWxfaWNvbnMnLCAne2V4dGVuc2lvbn0nOiBpdGVtLmltYWdlLmZvcm1hdFByZWZlcnJlZEV4dGVuc2lvbn0pfScpYCA6IG51bGxcbiAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICA8L2Rpdj5cblxuICAgIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHN0eWxlPlxuLmNvbG91cmZ1bC1zdmcge1xuICAgIG1hc2stc2l6ZTogY29udGFpbjtcbiAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbjwvc3R5bGU+XG5cbjxzY3JpcHQgc2V0dXA+XG5pbXBvcnQgeyByZWYgfSBmcm9tICd2dWUnO1xuaW1wb3J0IHsganNvbkdldCB9IGZyb20gJy4uL2hlbHBlcnMvdXRpbGl0aWVzJztcbmltcG9ydCB7IHN0clJlcGxhY2UgfSBmcm9tICcuLi9oZWxwZXJzL3N0cmluZy5qcyc7XG5cbmRlZmluZVByb3BzKHtcbiAgICBpY29uQ29sb3I6IHsgdHlwZTogU3RyaW5nLCBkZWZhdWx0OiAncHJpbWFyeScgfSxcbn0pO1xuXG5jb25zdCB0aXRsZSA9IHJlZignJyk7XG5jb25zdCBsaW5rcyA9IHJlZih7Y29udGVudDogW10sIHZpZXc6IFtdfSk7XG5cbmNvbnN0IGdldFNvY2lhbExpbmtzID0gYXN5bmMgKCkgPT4ge1xuICBsZXQgcmV0dXJuRGF0YSA9IGF3YWl0IGpzb25HZXQoJy9hcGkvc25pcHBldC1hcmVhcy9zb2NpYWwnKTtcbiAgdGl0bGUudmFsdWUgPSByZXR1cm5EYXRhLmNvbnRlbnQudGl0bGU7XG4gIGxpbmtzLnZhbHVlLmNvbnRlbnQgPSByZXR1cm5EYXRhLmNvbnRlbnQuc29jaWFsX2xpbmtzO1xuICBsaW5rcy52YWx1ZS52aWV3ID0gcmV0dXJuRGF0YS52aWV3LnNvY2lhbF9saW5rcztcbn07XG5cbmdldFNvY2lhbExpbmtzKCk7XG5cbjwvc2NyaXB0PiIsIjx0ZW1wbGF0ZT5cbiAgPERyYXdlclxuICAgIHYtbW9kZWw6dmlzaWJsZT1cIm1lbnVWaXNpYmxlXCJcbiAgICBwb3NpdGlvbj1cImZ1bGxcIlxuICAgIGNsYXNzPVwiYmctcHJpbWFyeSB0ZXh0LXN1cmZhY2UtNTAgYm9yZGVyLTAgcmVsYXRpdmUgei0yMiBvdmVyZmxvdy1oaWRkZW5cIlxuICA+XG4gICAgPHRlbXBsYXRlICNjb250YWluZXI9XCJ7IGNsb3NlQ2FsbGJhY2sgfVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImFic29sdXRlIHRvcC0wIGxlZnQtW2NhbGMoNTAlLTM3cHgpXSB3LVsxcHhdIGJvdHRvbS0wIHotMjAgYmctW2xpbmVhci1ncmFkaWVudCh0b19ib3R0b20sdmFyKC0tcC1wcmltYXJ5LTYwMClfNjAlLHRyYW5zcGFyZW50XzQwJSldIGJnLWxlZnQgYmctW3NpemU6MXB4XzE1cHhdIGJnLXJlcGVhdC15IG9wYWNpdHktODBcIiAvPlxuICAgICAgPGRpdiBjbGFzcz1cImFic29sdXRlIHRvcC0wIHJpZ2h0LVtjYWxjKDUwJS0zN3B4KV0gdy1bMXB4XSBib3R0b20tMCB6LTIwIGJnLVtsaW5lYXItZ3JhZGllbnQodG9fYm90dG9tLHZhcigtLXAtcHJpbWFyeS02MDApXzYwJSx0cmFuc3BhcmVudF80MCUpXSBiZy1yaWdodCBiZy1bc2l6ZToxcHhfMTVweF0gYmctcmVwZWF0LXkgb3BhY2l0eS04MFwiIC8+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJ3LWZ1bGwgcmVsYXRpdmVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggaC1bMTIwcHhdIDJ4bDpoLVsxODBweF0gbWQ6cHgtMCBtZDpncmlkLXJvd3MtMVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtMSBqdXN0aWZ5LXN0YXJ0IGl0ZW1zLWNlbnRlciBweC0xMFwiPlxuICAgICAgICAgICAgPGlcbiAgICAgICAgICAgICAgY2xhc3M9XCJwaSBwaS10aW1lcyBjdXJzb3ItcG9pbnRlciBwLTEgei0yMiBob3Zlcjpyb3RhdGUtOTAgZHVyYXRpb24tMzAwIHRleHQtMnhsXCJcbiAgICAgICAgICAgICAgQGNsaWNrPVwiY2xlYXJEcmF3ZXJEYXRhKCk7IGNsb3NlQ2FsbGJhY2soKTtcIlxuICAgICAgICAgICAgICBAbW91c2VlbnRlcj1cIm1lbnVCdXR0b25TdHlsZXMgPSBtZW51QnV0dG9uSG92ZXJcIlxuICAgICAgICAgICAgICBAbW91c2VsZWF2ZT1cIm1lbnVCdXR0b25TdHlsZXMgPSBtZW51QnV0dG9uRGVmYXVsdFwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHNwYW4gOmNsYXNzPVwiYHBsLTMgdHJhbnNpdGlvbiBkdXJhdGlvbi0yNTAgJHttZW51QnV0dG9uU3R5bGVzfSB6LTIxYFwiPkNMT1NFPC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtZW5kIHBiLTcgMnhsOnBiLTEwIHctWzc0cHhdIDJ4bDp3LVsxMTBweF0gei0xOSBvdmVyZmxvdy1oaWRkZW5cIj5cbiAgICAgICAgICAgIDxhIFxuICAgICAgICAgICAgICB2LWlmPVwic3RvcmUudXJsXCJcbiAgICAgICAgICAgICAgaHJlZj1cIi9cIlxuICAgICAgICAgICAgICBjbGFzcz1cIlwiXG4gICAgICAgICAgICAgIGRhdGEtdHVyYm8tZnJhbWU9XCJ2aWV3XCJcbiAgICAgICAgICAgICAgPjxTbWFsbExvZ28gY2xhc3M9XCJoLVs0M3B4XSAyeGw6aC1bNTBweF1cIiAvPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgIDxTbWFsbExvZ28gdi1lbHNlIGNsYXNzPVwiaC1bNDNweF0gMnhsOmgtWzUwcHhdXCIgLz5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtMSBqdXN0aWZ5LWVuZCBpdGVtcy1jZW50ZXIgcHgtMTBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJcIj5cbiAgICAgICAgICAgICAgPGkgQGNsaWNrPVwic2VhcmNoVmlzaWJsZSA9IHRydWVcIiBjbGFzcz1cInBpIHBpLXNlYXJjaCBjdXJzb3ItcG9pbnRlciBwLTEgei0yMiB0ZXh0LTJ4bFwiIC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWJzb2x1dGUgaC1bMXB4XSBib3R0b20tMCBsZWZ0LTAgcmlnaHQtMCB6LTIwIGJnLVtsaW5lYXItZ3JhZGllbnQodG9fcmlnaHQsdmFyKC0tcC1wcmltYXJ5LTYwMClfNjAlLHRyYW5zcGFyZW50XzQwJSldIGJnLWJvdHRvbSBiZy1bc2l6ZToxNXB4XzFweF0gYmctcmVwZWF0LXggb3BhY2l0eS04MFwiIC8+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cIm92ZXJmbG93LXktc2Nyb2xsIHBiLTggei0yMlwiPlxuICAgICAgICA8dWwgY2xhc3M9XCJmbGV4IGZsZXgtY29sIHRleHQtY2VudGVyIHB0LTEyXCI+XG4gICAgICAgICAgPGxpIHYtZm9yPVwiaXRlbSBpbiBpdGVtc1wiPlxuICAgICAgICAgICAgPGEgOmhyZWY9XCJpdGVtLnVybFwiIFxuICAgICAgICAgICAgICBjbGFzcz1cInRleHQtWzIuOHJlbV0gZm9udC1hY2NlbnQgaXRhbGljIGxlYWRpbmctMTggaG92ZXI6dW5kZXJsaW5lIGRlY29yYXRpb24tMiBob3Zlcjp0ZXh0LXN1cmZhY2UtMCFcIlxuICAgICAgICAgICAgICBkYXRhLXR1cmJvLWZyYW1lPVwidmlld1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHt7IGl0ZW0udGl0bGUgfX1cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDx1bCB2LWlmPVwiaXRlbS5jaGlsZHJlblwiIGNsYXNzPVwiZmxleCBmbGV4LWNvbCB0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgICAgICA8bGkgdi1mb3I9XCJjaGlsZCBpbiBpdGVtLmNoaWxkcmVuXCIgY2xhc3M9XCJ1cHBlcmNhc2VcIj5cbiAgICAgICAgICAgICAgICA8YSA6aHJlZj1cImNoaWxkLnVybFwiIFxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJob3Zlcjp1bmRlcmxpbmUgaG92ZXI6dGV4dC1zdXJmYWNlLTAhIGxlYWRpbmctOFwiXG4gICAgICAgICAgICAgICAgICBkYXRhLXR1cmJvLWZyYW1lPVwidmlld1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGNoaWxkLnRpdGxlIH19XG4gICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICA8L2xpPlxuICAgICAgICA8L3VsPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktY2VudGVyXCI+XG4gICAgICAgICAgPFNvY2lhbCBjbGFzcz1cInB0LThcIiA6dGl0bGU9XCJgRm9sbG93IFVzYFwiIGljb25Db2xvcj1cInN1cmZhY2UtMFwiLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L3RlbXBsYXRlPlxuICA8L0RyYXdlcj5cblxuICA8RHJhd2VyXG4gICAgdi1tb2RlbDp2aXNpYmxlPVwic2VhcmNoVmlzaWJsZVwiXG4gICAgcG9zaXRpb249XCJmdWxsXCJcbiAgICBjbGFzcz1cImJnLXByaW1hcnkgdGV4dC1zdXJmYWNlLTUwIGJvcmRlci0wIHJlbGF0aXZlIHotMjJcIlxuICA+XG4gICAgPHRlbXBsYXRlICNjb250YWluZXI9XCJ7IGNsb3NlQ2FsbGJhY2sgfVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImFic29sdXRlIHRvcC0wIGxlZnQtW2NhbGMoNTAlLTM3cHgpXSB3LVsxcHhdIGJvdHRvbS0wIHotMjAgYmctW2xpbmVhci1ncmFkaWVudCh0b19ib3R0b20sdmFyKC0tcC1wcmltYXJ5LTYwMClfNjAlLHRyYW5zcGFyZW50XzQwJSldIGJnLWxlZnQgYmctW3NpemU6MXB4XzE1cHhdIGJnLXJlcGVhdC15IG9wYWNpdHktODBcIiAvPlxuICAgICAgPGRpdiBjbGFzcz1cImFic29sdXRlIHRvcC0wIHJpZ2h0LVtjYWxjKDUwJS0zN3B4KV0gdy1bMXB4XSBib3R0b20tMCB6LTIwIGJnLVtsaW5lYXItZ3JhZGllbnQodG9fYm90dG9tLHZhcigtLXAtcHJpbWFyeS02MDApXzYwJSx0cmFuc3BhcmVudF80MCUpXSBiZy1yaWdodCBiZy1bc2l6ZToxcHhfMTVweF0gYmctcmVwZWF0LXkgb3BhY2l0eS04MFwiIC8+XG4gICAgICBcbiAgICAgIDxkaXYgY2xhc3M9XCJ3LWZ1bGwgcmVsYXRpdmVcIj5cbiAgICAgIFxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBoLVsxMjBweF0gMnhsOmgtWzE4MHB4XSBtZDpweC0wIG1kOmdyaWQtcm93cy0xXCI+XG5cbiAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJmbGV4IGNvbC1zcGFuLTMgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHB0LVsxM3B4XSB6LTIyIG1kOmhpZGRlbiBcIj5cbiAgICAgICAgICAgIDxzcGFuIHYtaWY9XCJzZWFyY2hUZXJtXCIgQGNsaWNrPVwiY2xlYXJTZWFyY2hcIiBpZD1cImNsZWFyRWxtXCIgY2xhc3M9XCJtbC0yIGN1cnNvci1wb2ludGVyIGFuaW1hdGUtZHVyYXRpb24tMTUwIGFuaW1hdGUtZmlsbC1ib3RoXCIgOmNsYXNzPVwiW3snYW5pbWF0ZS1mYWRlaW4nOiBzZWFyY2hUZXJtfV1cIj5DTEVBUjwvc3Bhbj5cbiAgICAgICAgICAgIDxJbnB1dFRleHQgQGtleXVwLmVudGVyPVwic2VhcmNoXCIgdHlwZT1cInRleHRcIiB2LW1vZGVsPVwic2VhcmNoVGVybVwiIDpkdD1cInNlYXJjaElucHV0RFRcIiA6cHQ9XCJzZWFyY2hJbnB1dFBUXCIgYXV0b2ZvY3VzIC8+XG4gICAgICAgICAgICA8aSBAY2xpY2s9XCJzZWFyY2hcIlxuICAgICAgICAgICAgICBjbGFzcz1cInBpIHBpLXNlYXJjaCBjdXJzb3ItcG9pbnRlciBwLTEgdGV4dC0yeGxcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L2Rpdj4gLS0+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LTEganVzdGlmeS1zdGFydCBpdGVtcy1jZW50ZXIgcHgtMTBcIj5cbiAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgIGNsYXNzPVwicGkgcGktdGltZXMgY3Vyc29yLXBvaW50ZXIgcC0xIHotMjIgaG92ZXI6cm90YXRlLTkwIGR1cmF0aW9uLTMwMCB0ZXh0LTJ4bFwiXG4gICAgICAgICAgICAgIEBjbGljaz1cImNsZWFyRHJhd2VyRGF0YSgpOyBjbG9zZUNhbGxiYWNrKCk7XCJcbiAgICAgICAgICAgICAgQG1vdXNlZW50ZXI9XCJtZW51QnV0dG9uU3R5bGVzID0gbWVudUJ1dHRvbkhvdmVyXCJcbiAgICAgICAgICAgICAgQG1vdXNlbGVhdmU9XCJtZW51QnV0dG9uU3R5bGVzID0gbWVudUJ1dHRvbkRlZmF1bHRcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxzcGFuIDpjbGFzcz1cImBwbC0zIHRyYW5zaXRpb24gZHVyYXRpb24tMjUwICR7bWVudUJ1dHRvblN0eWxlc30gei0yMWBcIj5DTE9TRTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoaWRkZW4gbWQ6ZmxleCBqdXN0aWZ5LWNlbnRlciBwYi03IDJ4bDpwYi0xMCB3LVs3NHB4XSAyeGw6dy1bMTEwcHhdIGl0ZW1zLWVuZCB6LTE5IG92ZXJmbG93LWhpZGRlblwiPlxuICAgICAgICAgICAgPGEgXG4gICAgICAgICAgICAgIHYtaWY9XCJzdG9yZS51cmxcIlxuICAgICAgICAgICAgICBocmVmPVwiL1wiXG4gICAgICAgICAgICAgIGNsYXNzPVwiXCJcbiAgICAgICAgICAgICAgZGF0YS10dXJiby1mcmFtZT1cInZpZXdcIlxuICAgICAgICAgICAgICA+IDxTbWFsbExvZ28gY2xhc3M9XCJoLVs0M3B4XSAyeGw6aC1bNTBweF1cIiAvPlxuICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgIDxTbWFsbExvZ28gdi1lbHNlIGNsYXNzPVwiaC1bNDNweF0gMnhsOmgtWzUwcHhdXCIgLz5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtMyBtZDpmbGV4LTEganVzdGlmeS1lbmQgaXRlbXMtY2VudGVyIHB4LTEwXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiXCI+XG4gICAgICAgICAgICAgIDxzcGFuIHYtaWY9XCJzZWFyY2hUZXJtXCIgQGNsaWNrPVwiY2xlYXJTZWFyY2hcIiBpZD1cImNsZWFyRWxtXCIgY2xhc3M9XCJtbC0yIGN1cnNvci1wb2ludGVyIGFuaW1hdGUtZHVyYXRpb24tMTUwIGFuaW1hdGUtZmlsbC1ib3RoXCIgOmNsYXNzPVwiW3snYW5pbWF0ZS1mYWRlaW4nOiBzZWFyY2hUZXJtfV1cIj5DTEVBUjwvc3Bhbj5cbiAgICAgICAgICAgICAgPElucHV0VGV4dCBAa2V5dXAuZW50ZXI9XCJzZWFyY2hcIiB0eXBlPVwidGV4dFwiIHYtbW9kZWw9XCJzZWFyY2hUZXJtXCIgOmR0PVwic2VhcmNoSW5wdXREVFwiIDpwdD1cInNlYXJjaElucHV0UFRcIiBhdXRvZm9jdXMgLz5cbiAgICAgICAgICAgICAgPGkgQGNsaWNrPVwic2VhcmNoXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInBpIHBpLXNlYXJjaCBjdXJzb3ItcG9pbnRlciBwLTEgei0yMiB0ZXh0LTJ4bFwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWJzb2x1dGUgaC1bMXB4XSBib3R0b20tMCBsZWZ0LTAgcmlnaHQtMCB6LTIwIGJnLVtsaW5lYXItZ3JhZGllbnQodG9fcmlnaHQsdmFyKC0tcC1wcmltYXJ5LTYwMClfNjAlLHRyYW5zcGFyZW50XzQwJSldIGJnLWJvdHRvbSBiZy1bc2l6ZToxNXB4XzFweF0gYmctcmVwZWF0LXggb3BhY2l0eS04MFwiIC8+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgcHktMTQgei0yMiBncm93IG92ZXJmbG93LXktYXV0b1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbiBmbGV4LW5vbmVcIj5cbiAgICAgICAgICA8ZGl2IHYtaWY9XCJzZWFyY2hSZXN1bHRzXCIgY2xhc3M9XCJ0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb250LWFjY2VudCBpdGFsaWMgdHJhY2tpbmctdGlnaHQgdGV4dC01eGwgbWQ6dGV4dC03eGxcIj5SZXN1bHRzPC9zcGFuPjxzcGFuIGNsYXNzPVwidGV4dC0zeGxcIj4gZm9yLi4uPC9zcGFuPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyIHB0LTMgdGV4dC1sZ1wiPlwie3sgc2VhcmNoVGVybSB9fVwiPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiB2LWVsc2UgY2xhc3M9XCJ0ZXh0LWNlbnRlciBmbGV4LW5vbmVcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC0zeGxcIj5XaGF0J3MgaXQgeW91J3JlPC9zcGFuPjxzcGFuIGNsYXNzPVwiZm9udC1hY2NlbnQgaXRhbGljIHRyYWNraW5nLXRpZ2h0IHRleHQtNXhsIG1kOnRleHQtN3hsXCI+IExvb2tpbmcgZm9yPzwvc3Bhbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwdC0zXCI+U2ltcGx5IHR5cGUgd2hhdCB5b3VyIGxvb2tpbmcgZm9yIGFuZCBoaXQgZW50ZXIgYW5kIHRoZSByZXN1bHRzIHdpbGwgc2hvdyBiZWxvdy48L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPFByb2dyZXNzU3Bpbm5lciB2LWlmPVwic2VhcmNoaW5nXCJcbiAgICAgICAgICAgIHN0eWxlPVwid2lkdGg6IDUwcHg7IGhlaWdodDogNTBweFwiIHN0cm9rZVdpZHRoPVwiNFwiIGZpbGw9XCJ0cmFuc3BhcmVudFwiIGFuaW1hdGlvbkR1cmF0aW9uPVwiaW5maW5pdGVcIiBhcmlhLWxhYmVsPVwiU2VhcmNoIExvYWRlclwiXG4gICAgICAgICAgICA6Y2xhc3M9XCJgZmxleC1ub25lIG10LTIwIGFuaW1hdGUtZHVyYXRpb24tMzAwIGFuaW1hdGUtZmlsbC1ib3RoIG9wYWNpdHktMCBhbmltYXRlLSR7bG9hZGVyQW5pbWF0ZUNsYXNzfSBgIFwiXG4gICAgICAgICAgICA6ZHQ9XCJ7Y29sb3JPbmU6ICd7c3VyZmFjZS41MDB9JywgY29sb3JUd286ICd7c3VyZmFjZS41MDB9JywgY29sb3JUaHJlZTogJ3tzdXJmYWNlLjUwMH0nLCBjb2xvckZvdXI6ICd7c3VyZmFjZS41MDB9J31cIlxuICAgICAgICAgIC8+XG5cbiAgICAgICAgPGRpdiB2LWlmPVwic2VhcmNoUmVzdWx0cyAmJiAhc2VhcmNoaW5nXCIgY2xhc3M9XCJwdC00IGFuaW1hdGUtZHVyYXRpb24tMzAwIGFuaW1hdGUtZmlsbC1ib3RoIGFuaW1hdGUtZGVsYXktNTAwIGFuaW1hdGUtZmFkZWluXCI+XG5cbiAgICAgICAgICA8ZGl2IHYtaWY9XCJzZWFyY2hSZXN1bHRzLmxlbmd0aCA9PSAwXCIgY2xhc3M9XCJ0ZXh0LWxnIHRleHQtY2VudGVyXCI+Tm90IHJlc3VsdHMgZm91bmQuPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2IHYtZm9yPVwicmVzdWx0IGluIHNlYXJjaFJlc3VsdHNcIiBjbGFzcz1cInNoYWRvdy1sZyBwLTggZmxleFwiPiBcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGNvbnRhaW5cIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImdyb3dcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1sZyBmb250LXNlbWlib2xkXCI+XG4gICAgICAgICAgICAgICAgICB7eyByZXN1bHQuZG9jdW1lbnQudGl0bGUgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAge3sgcmVzdWx0LmRvY3VtZW50LmRlc2NyaXB0aW9uIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hyaW5rXCI+XG4gICAgICAgICAgICAgICAgPExpbmsgdGl0bGU9XCJTZWUgbW9yZVwiIDp1cmw9XCJyZXN1bHQuZG9jdW1lbnQudXJsXCIgc2V2ZXJpdHk9XCJzZWNvbmRhcnlcIi8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIFxuICAgIDwvdGVtcGxhdGU+XG4gIDwvRHJhd2VyPlxuXG4gIDwhLS0gQm90dG9tIGxheWVyIC0tPlxuICA8ZGl2IGNsYXNzPVwiaGlkZGVuIGZpeGVkIHJpZ2h0LTAgdG9wLTAgbGVmdC0wIHotMTAgbWQ6YmxvY2tcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBiZy1wcmltYXJ5XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZ3JvdyBcIj48L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImdyaWQgZ3JpZC1jb2xzLTMgbWluLWgtWzEyMHB4XSB3LWZ1bGwgMnhsOm1pbi1oLVsxODBweF1cIj5cbiAgICAgICAgXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktc3RhcnQgaXRlbXMtY2VudGVyIHRleHQtc3VyZmFjZS01MDAgcHgtMTBcIj5cbiAgICAgICAgICA8aVxuICAgICAgICAgICAgY2xhc3M9XCJwaSBwaS1iYXJzIGN1cnNvci1wb2ludGVyIHAtMSB6LTIgdGV4dC0yeGxcIlxuICAgICAgICAgICAgQGNsaWNrPVwibWVudVZpc2libGUgPSB0cnVlXCJcbiAgICAgICAgICAgIEBtb3VzZWVudGVyPVwibWVudUJ1dHRvblN0eWxlcyA9IG1lbnVCdXR0b25Ib3ZlclwiXG4gICAgICAgICAgICBAbW91c2VsZWF2ZT1cIm1lbnVCdXR0b25TdHlsZXMgPSBtZW51QnV0dG9uRGVmYXVsdFwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8c3BhbiA6Y2xhc3M9XCJgcGwtMyB0cmFuc2l0aW9uIGR1cmF0aW9uLTI1MCAke21lbnVCdXR0b25TdHlsZXN9IHotMWBcIj5NRU5VPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyIGJnLXByaW1hcnkgaC1mdWxsIGJnLVt1cmwoJy9hc3NldHMvZnJvbnRlbmQvdnVlL2ltZy9tYWluLWxvZ28uc3ZnJyldIGJnLWNlbnRlciBiZy1uby1yZXBlYXRcIj4gLS0+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyIGgtZnVsbCBvdmVyZmxvdy1oaWRkZW5cIj5cbiAgICAgICAgICAgIDxhIHYtaWY9XCJzdG9yZS51cmxcIiBocmVmPVwiL1wiIGRhdGEtdHVyYm8tZnJhbWU9XCJ2aWV3XCI+PGltZyA6c3JjPVwibG9nb1NyY1wiIGFsdD1cIkxvZ29cIiBjbGFzcz1cImgtMjMgMnhsOmgtMzBcIiAvPjwvYT5cbiAgICAgICAgICAgIDxpbWcgdi1lbHNlIDpzcmM9XCJsb2dvU3JjXCIgY2xhc3M9XCJoLTIzIDJ4bDpoLTMwXCIgYWx0PVwiTG9nb1wiIC8+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1jZW50ZXIgbG9nTWFza2VkIGJnLXByaW1hcnkgaC1mdWxsXCI+PC9kaXY+IC0tPlxuICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImFic29sdXRlIGluc2V0LTAgLXotMSBiZy13aGl0ZS8zMCBiYWNrZHJvcC1ibHVyLW1kXCI+PC9kaXY+IC0tPlxuICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImFic29sdXRlIGluc2V0LTAgLXotMSBiZy1zdXJmYWNlLTBcIj48L2Rpdj4gLS0+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktZW5kIGl0ZW1zLWNlbnRlciBweC0xMFwiPlxuICAgICAgICAgIDxpIEBjbGljaz1cInNlYXJjaFZpc2libGUgPSB0cnVlXCIgY2xhc3M9XCJwaSBwaS1zZWFyY2ggY3Vyc29yLXBvaW50ZXIgdGV4dC0yeGwgdGV4dC1zdXJmYWNlLTAgbWQ6cHgtMTBcIiAvPlxuXG4gICAgICAgICAgPEJ1dHRvbiBcbiAgICAgICAgICAgIHYtaWY9XCJjb250ZW50Py5jb250ZW50Py5saW5rXCIgXG4gICAgICAgICAgICBhcz1cImFcIlxuICAgICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICAgIHNldmVyaXR5PVwic2Vjb25kYXJ5XCIgXG4gICAgICAgICAgICA6bGFiZWw9XCJjb250ZW50Py52aWV3Py5saW5rLnRpdGxlXCJcbiAgICAgICAgICAgIDpocmVmPVwiY29udGVudD8uY29udGVudD8ubGlua1wiXG4gICAgICAgICAgICByZWw9XCJub29wZW5lclwiXG4gICAgICAgICAgICA6ZHQ9XCJ7IGxhYmVsRm9udFdlaWdodDogJzYwMCcgfVwiXG4gICAgICAgICAgICBjbGFzcz1cImhpZGRlbiBtZDpmbGV4IHVwcGVyY2FzZVwiXG4gICAgICAgICAgICBkYXRhLXR1cmJvLXByZWZldGNoPVwidHJ1ZVwiXG4gICAgICAgICAgLz5cblxuICAgICAgICA8L2Rpdj5cblxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJncm93XCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDwhLS0gVG9wIGxheWVyIC0tPlxuICA8ZGl2IGNsYXNzPVwiYWJzb2x1dGUgdy1mdWxsIHotMTEgYmctc3VyZmFjZS01MDBcIj5cblxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGgtWzEyMHB4XSAyeGw6aC1bMTgwcHhdIG1kOnB4LTAgbWQ6Z3JpZC1yb3dzLTFcIj5cblxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC0xIGp1c3RpZnktc3RhcnQgaXRlbXMtY2VudGVyIHB4LTEwXCI+XG4gICAgICAgIDxpXG4gICAgICAgICAgY2xhc3M9XCJwaSBwaS1iYXJzIGN1cnNvci1wb2ludGVyIHAtMSB6LTIgdGV4dC0yeGxcIlxuICAgICAgICAgIEBjbGljaz1cIm1lbnVWaXNpYmxlID0gdHJ1ZVwiXG4gICAgICAgICAgQG1vdXNlZW50ZXI9XCJtZW51QnV0dG9uU3R5bGVzID0gbWVudUJ1dHRvbkhvdmVyXCJcbiAgICAgICAgICBAbW91c2VsZWF2ZT1cIm1lbnVCdXR0b25TdHlsZXMgPSBtZW51QnV0dG9uRGVmYXVsdFwiXG4gICAgICAgIC8+XG4gICAgICAgIDxzcGFuIDpjbGFzcz1cImBwbC0zIHRyYW5zaXRpb24gZHVyYXRpb24tMjUwICR7bWVudUJ1dHRvblN0eWxlc30gei0xYFwiXG4gICAgICAgICAgY2xhc3M9XCJ0ZXh0LXByaW1hcnlcIlxuICAgICAgICA+TUVOVTwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1lbmQgcGItNyAyeGw6cGItMTAgdy1bNzRweF0gMnhsOnctWzExMHB4XSBvdmVyZmxvdy1oaWRkZW4gYmctcHJpbWFyeS01MDAgXCI+XG4gICAgICAgIDxhIFxuICAgICAgICAgIHYtaWY9XCJzdG9yZS51cmxcIlxuICAgICAgICAgIGhyZWY9XCIvXCJcbiAgICAgICAgICBjbGFzcz1cIlwiXG4gICAgICAgICAgZGF0YS10dXJiby1mcmFtZT1cInZpZXdcIlxuICAgICAgICAgID5cbiAgICAgICAgICA8U21hbGxMb2dvIGNsYXNzPVwiaC1bNDNweF0gMnhsOmgtWzUwcHhdXCIgLz5cbiAgICAgICAgPC9hPlxuICAgICAgICA8U21hbGxMb2dvIHYtZWxzZSBjbGFzcz1cImgtWzQzcHhdIDJ4bDpoLVs1MHB4XVwiIC8+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC0xIGp1c3RpZnktZW5kIGl0ZW1zLWNlbnRlciBweC0xMFwiPlxuICAgICAgICA8aSBcbiAgICAgICAgICBAY2xpY2s9XCJzZWFyY2hWaXNpYmxlID0gdHJ1ZVwiIFxuICAgICAgICAgIGNsYXNzPVwicGkgcGktc2VhcmNoIGN1cnNvci1wb2ludGVyIHRleHQtMnhsIG1kOnB4LTEwXCJcbiAgICAgICAgLz5cbiAgICAgICAgPEJ1dHRvbiBcbiAgICAgICAgICB2LWlmPVwiY29udGVudD8uY29udGVudD8ubGlua1wiIFxuICAgICAgICAgIGFzPVwiYVwiXG4gICAgICAgICAgc2l6ZT1cImxhcmdlXCJcbiAgICAgICAgICA6bGFiZWw9XCJjb250ZW50Py52aWV3Py5saW5rLnRpdGxlXCJcbiAgICAgICAgICA6aHJlZj1cImNvbnRlbnQ/LmNvbnRlbnQ/LmxpbmtcIlxuICAgICAgICAgIHJlbD1cIm5vb3BlbmVyXCJcbiAgICAgICAgICA6ZHQ9XCJ7IGxhYmVsRm9udFdlaWdodDogJzYwMCcgfVwiXG4gICAgICAgICAgY2xhc3M9XCJoaWRkZW4gbWQ6ZmxleCB1cHBlcmNhc2VcIlxuICAgICAgICAgIGRhdGEtdHVyYm8tcHJlZmV0Y2g9XCJ0cnVlXCJcbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiYWJzb2x1dGUgaC1bMXB4XSBib3R0b20tMCBsZWZ0LTAgcmlnaHQtMCAtei0wIGJnLVtsaW5lYXItZ3JhZGllbnQodG9fcmlnaHQsdmFyKC0tcC1zdXJmYWNlLTYwMClfNjUlLHRyYW5zcGFyZW50XzM1JSldIGJnLWJvdHRvbSBiZy1bc2l6ZToxNXB4XzFweF0gYmctcmVwZWF0LXhcIiAvPlxuICAgIDwvZGl2PlxuXG4gIDwvZGl2PlxuXG48L3RlbXBsYXRlPlxuXG48c2NyaXB0IHNldHVwPlxuaW1wb3J0IHsgcmVmLCB3YXRjaCwgY29tcHV0ZWQgfSBmcm9tIFwidnVlXCI7XG5pbXBvcnQgeyBqc29uR2V0IH0gZnJvbSAnLi4vaGVscGVycy91dGlsaXRpZXMnO1xuaW1wb3J0IFNtYWxsTG9nbyBmcm9tIFwiLi9pbWcvU21hbGxMb2dvXCI7XG5pbXBvcnQgU29jaWFsIGZyb20gXCIuLi9jb21wb25lbnRzL1NvY2lhbFwiO1xuaW1wb3J0IExpbmsgZnJvbSAnLi4vY29tcG9uZW50cy9ibG9ja3MvTGluayc7XG5pbXBvcnQgbG9nb1NyYyBmcm9tICcvYXNzZXRzL2Zyb250ZW5kL3Z1ZS9pbWcvbG9nby5zdmcnO1xuaW1wb3J0IHsgc3RvcmUgfSBmcm9tICcuLi9zdG9yZS5qcyc7XG5cbmNvbnN0IG1lbnVCdXR0b25Ib3ZlciA9ICdvcGFjaXR5LTEwMCc7XG5jb25zdCBtZW51QnV0dG9uRGVmYXVsdCA9ICdvcGFjaXR5LTAgLXRyYW5zbGF0ZS14LTcnO1xuXG5jb25zdCBtZW51QnV0dG9uU3R5bGVzID0gcmVmKG1lbnVCdXR0b25EZWZhdWx0KTtcbmNvbnN0IG1lbnVWaXNpYmxlID0gcmVmKGZhbHNlKTtcbmNvbnN0IHNlYXJjaFZpc2libGUgPSByZWYoZmFsc2UpO1xuY29uc3Qgc2VhcmNoVGVybSA9IHJlZignJyk7XG5jb25zdCBzZWFyY2hSZXN1bHRzID0gcmVmKG51bGwpO1xuY29uc3Qgc2VhcmNoaW5nID0gcmVmKGZhbHNlKTtcbmNvbnN0IGxvYWRlckFuaW1hdGVDbGFzcyA9IHJlZihmYWxzZSk7XG5cbmRlZmluZVByb3BzKHtcbiAgaXRlbXM6IEFycmF5LFxuICBjb250ZW50OiB7IHR5cGU6IE9iamVjdCwgZGVmYXVsdDogbnVsbCB9XG59KTtcblxuY29uc3QgZHJhd2VyT3BlbiA9IGNvbXB1dGVkKCgpID0+IG1lbnVWaXNpYmxlLnZhbHVlIHx8IHNlYXJjaFZpc2libGUudmFsdWUpO1xuXG5jb25zdCBjbGVhckRyYXdlckRhdGEgPSAoKSA9PiB7XG4gIG1lbnVWaXNpYmxlLnZhbHVlID0gZmFsc2U7XG4gIHNlYXJjaFZpc2libGUudmFsdWUgPSBmYWxzZTtcbn07XG5cbndhdGNoKGRyYXdlck9wZW4sIChuZXdWYWwpID0+IHtcbiAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9IG5ld1ZhbCA/ICdoaWRkZW4nIDogJyc7XG59KTtcblxuZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcInR1cmJvOnZpc2l0XCIsICgpID0+IHtcbiAgY2xlYXJEcmF3ZXJEYXRhKCk7XG59KTtcblxuY29uc3Qgc2VhcmNoID0gYXN5bmMgKGV2ZW50KSA9PiB7XG4gIHRyeSB7XG5cbiAgICBldmVudC50YXJnZXQuYmx1cigpO1xuICAgIHNlYXJjaGluZy52YWx1ZSA9IHRydWU7XG4gICAgbG9hZGVyQW5pbWF0ZUNsYXNzLnZhbHVlID0gJ2ZhZGVpbic7XG5cbiAgICBsZXQgcmV0dXJuRGF0YSA9IGF3YWl0IGpzb25HZXQoJy9hcGkvc2VhcmNoJywge1xuICAgICAgcTogc2VhcmNoVGVybS52YWx1ZSxcbiAgICAgIGluZGljZXM6ICdwYWdlX3dlYnNpdGVfcHVibGlzaGVkLGFydGljbGVfcHVibGlzaGVkJ1xuICAgIH0pO1xuXG4gICAgc2VhcmNoUmVzdWx0cy52YWx1ZSA9IHJldHVybkRhdGEuX2VtYmVkZGVkLmhpdHM7XG4gIH0gY2F0Y2ggKGV4VmFyKSB7XG4gICAgY29uc29sZS5lcnJvcignU29tZXRoaW5nIHdlbnQgd3JvbmcuJyk7XG4gICAgXG4gIH0gZmluYWxseSB7XG4gICAgc2VhcmNoaW5nLnZhbHVlID0gZmFsc2U7XG4gICAgbG9hZGVyQW5pbWF0ZUNsYXNzLnZhbHVlID0gJ2ZhZGVvdXQnO1xuICB9XG59O1xuXG5jb25zdCBjbGVhclNlYXJjaCA9ICgpID0+IHtcbiAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI2NsZWFyRWxtJykuY2xhc3NMaXN0LmFkZCgnYW5pbWF0ZS1mYWRlb3V0Jyk7XG4gIHNldFRpbWVvdXQoKCk9PiB7XG4gICAgc2VhcmNoaW5nLnZhbHVlID0gZmFsc2U7XG4gICAgc2VhcmNoVGVybS52YWx1ZSA9ICcnO1xuICAgIHNlYXJjaFJlc3VsdHMudmFsdWUgPSBudWxsO1xuICAgIGxvYWRlckFuaW1hdGVDbGFzcy52YWx1ZSA9IGZhbHNlO1xuICB9LCAwKTtcbn07XG5cbmNvbnN0IHNlYXJjaElucHV0RFQgPSB7XG4gIGJhY2tncm91bmQ6ICd0cmFuc3BhcmVudCcsXG4gIGJvcmRlckNvbG9yOiAne3N1cmZhY2UuMH0nLFxuICBzaGFkb3c6ICdub25lJyxcbiAgaG92ZXJCb3JkZXJDb2xvcjogJ3tzdXJmYWNlLjB9JyxcbiAgZm9jdXNCb3JkZXJDb2xvcjogJ3tzdXJmYWNlLjB9JyxcbiAgY29sb3I6ICd7c3VyZmFjZS4wfScsXG59XG5jb25zdCBzZWFyY2hJbnB1dFBUID0ge1xuICByb290OiAnYm9yZGVyLTAgYm9yZGVyLWItMSdcbn07XG48L3NjcmlwdD5cblxuPHN0eWxlIHNjb3BlZD5cbi5sb2dNYXNrZWQge1xuICBtYXNrLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIGJsYWNrLGJsYWNrICksIHVybCgnL2Fzc2V0cy9mcm9udGVuZC92dWUvaW1nL21haW4tbG9nby5zdmcnKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDsgXG4gIG1hc2stcG9zaXRpb246IGNlbnRlciwgY2VudGVyO1xuICBtYXNrLWNvbXBvc2l0ZTogc3VidHJhY3Q7XG59XG5cbmE6dmlzaXRlZHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbn1cbjwvc3R5bGU+IiwiPHRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJtYXgtdy1mdWxsXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJyZWxhdGl2ZSBvdmVyZmxvdy1oaWRkZW4gdy1mdWxsIGgtZnVsbFwiPlxuICAgICAgICAgICAgPGltZyBcbiAgICAgICAgICAgICAgICBjbGFzcz1cImFic29sdXRlIHRvcC0wIGxlZnQtMCB3LWZ1bGwgaC1mdWxsIG9iamVjdC1jb3ZlciBibHVyLXhsIHRyYW5zaXRpb24tb3BhY2l0eSBkdXJhdGlvbi01MDBcIlxuICAgICAgICAgICAgICAgIDpzcmM9XCJwcmVsb2FkU3JjXCJcbiAgICAgICAgICAgICAgICA6d2lkdGg9XCJ3aWR0aFwiIFxuICAgICAgICAgICAgICAgIDpoZWlnaHQ9XCJoZWlnaHRcIlxuICAgICAgICAgICAgICAgIDphbHQ9XCJhbHRUZXh0XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8aW1nIFxuICAgICAgICAgICAgICAgIGNsYXNzPVwicmVsYXRpdmUgdy1mdWxsIGgtZnVsbCBvYmplY3QtY292ZXIgdHJhbnNpdGlvbi1vcGFjaXR5IGR1cmF0aW9uLTUwMFwiXG4gICAgICAgICAgICAgICAgOmNsYXNzPVwieyAnb3BhY2l0eS0wJzogIWlzSGlnaFJlc0xvYWRlZCwgJ29wYWNpdHktMTAwJzogaXNIaWdoUmVzTG9hZGVkIH1cIlxuICAgICAgICAgICAgICAgIDpzcmNzZXQ9XCJtYWluU3Jjc2V0XCJcbiAgICAgICAgICAgICAgICA6YWx0PVwiYWx0VGV4dFwiXG4gICAgICAgICAgICAgICAgc2l6ZXM9XCIxMDB2d1wiXG4gICAgICAgICAgICAgICAgQGxvYWQ9XCJvbkhpZ2hSZXNMb2FkXCJcbiAgICAgICAgICAgICAgICA6d2lkdGg9XCJ3aWR0aFwiIFxuICAgICAgICAgICAgICAgIDpoZWlnaHQ9XCJoZWlnaHRcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c3R5bGUgc2NvcGVkPlxuICAgIGltZyB7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO1xuICAgIH1cbjwvc3R5bGU+XG5cbjxzY3JpcHQgc2V0dXA+XG5cbmltcG9ydCB7IHJlZiB9IGZyb20gJ3Z1ZSc7XG5cbmRlZmluZVByb3BzKHtcbiAgICBtYWluU3Jjc2V0OiB7IHR5cGU6IFN0cmluZywgZGVmYXVsdDogbnVsbCB9LFxuICAgIGhlaWdodDogeyB0eXBlOiBOdW1iZXIsIGRlZmF1bHQ6IDAgfSxcbiAgICB3aWR0aDogeyB0eXBlOiBOdW1iZXIsIGRlZmF1bHQ6IDAgfSxcbiAgICBhbHRUZXh0OiB7IHR5cGU6IFN0cmluZywgZGVmYXVsdDogbnVsbCB9LFxuICAgIHByZWxvYWRTcmM6IHsgdHlwZTogU3RyaW5nLCBkZWZhdWx0OiBudWxsIH0sXG59KTtcblxuY29uc3QgaXNIaWdoUmVzTG9hZGVkID0gcmVmKGZhbHNlKTtcblxuY29uc3Qgb25IaWdoUmVzTG9hZCA9ICgpID0+IHtcbiAgICBpc0hpZ2hSZXNMb2FkZWQudmFsdWUgPSB0cnVlO1xufTtcblxuPC9zY3JpcHQ+IiwiPHRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJcIj5cbiAgICAgICAgPFRhYnNcbiAgICAgICAgICAgIHYtbW9kZWw6dmFsdWU9XCJhY3RpdmVUYWJcIiBcbiAgICAgICAgICAgIDpkdD1cInN0eWxlc1wiXG4gICAgICAgICAgICBzY3JvbGxhYmxlXG4gICAgICAgICAgICBzZWxlY3RPbkZvY3VzXG4gICAgICAgICAgICBjbGFzcz1cImJvcmRlci10LTEgYm9yZGVyLXN1cmZhY2UtOTAwXCJcbiAgICAgICAgICAgIHYtYW5pbWF0ZW9uc2Nyb2xsLm9uY2U9XCJ7IGVudGVyQ2xhc3M6ICdhbmltYXRlLWVudGVyIGZhZGUtaW4tMCBzbGlkZS1pbi1mcm9tLWItMTggYW5pbWF0ZS1kdXJhdGlvbi02MDAgYW5pbWF0ZS1maWxsLWJvdGgnIH1cIlxuICAgICAgICA+XG4gICAgICAgICAgICA8VGFiTGlzdCBjbGFzcz1cImZvbnQtYWNjZW50IGl0YWxpYyB0ZXh0LTR4bCBwYi0yIHB0LTJcIiA6cHQ9XCJ7YWN0aXZlQmFyOiAnYm9yZGVyLTEgYm9yZGVyLXByaW1hcnktNTAwJ31cIj5cbiAgICAgICAgICAgICAgICA8VGFiIHYtZm9yPVwidGFiIGluIHRhYnNcIiBcbiAgICAgICAgICAgICAgICAgICAgOmtleT1cInRhYi50aXRsZVwiXG4gICAgICAgICAgICAgICAgICAgIDp2YWx1ZT1cInRhYi52YWx1ZVwiIFxuICAgICAgICAgICAgICAgICAgICA6cHQ9XCJ7XG4gICAgICAgICAgICAgICAgICAgICAgICByb290OiAnd2hpdGVzcGFjZS1wcmUtbGluZSB0ZXh0LWxlZnQnXG4gICAgICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgdGFiLnRpdGxlIH19IFxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFic29sdXRlIHRvcC0wIHJpZ2h0LTAgdGV4dC1bMS4xcmVtXSB0ZXh0LXN1cmZhY2UtOTUwXCI+KHt7IChwYXJzZUludCh0YWIudmFsdWUpICsgMSkgfX0pPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvVGFiPlxuICAgICAgICAgICAgPC9UYWJMaXN0PlxuICAgICAgICAgICAgXG4gICAgICAgICAgICA8VGFiUGFuZWxzPlxuICAgICAgICAgICAgICAgIDx0ZW1wbGF0ZSB2LWZvcj1cInRhYiBpbiB0YWJzXCIgOmtleT1cInRhYi52YWx1ZVwiPlxuICAgICAgICAgICAgICAgICAgICA8VGFiUGFuZWwgOnZhbHVlPVwidGFiLnZhbHVlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8VHJhbnNpdGlvbiBtb2RlPVwib3V0LWluXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiB2LWlmPVwiYWN0aXZlVGFiID09PSB0YWIudmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJsb2NrcyA6YmxvY2tzPVwidGFiLmNvbnRlbnRcIiA6Y29udGFpbmVkPVwidHJ1ZVwiIGdhcD1cInNtYWxsXCIvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9UcmFuc2l0aW9uPlxuICAgICAgICAgICAgICAgICAgICA8L1RhYlBhbmVsPlxuICAgICAgICAgICAgICAgIDwvdGVtcGxhdGU+XG4gICAgICAgICAgICA8L1RhYlBhbmVscz5cbiAgICAgICAgPC9UYWJzPlxuICAgIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHN0eWxlPlxuLnYtZW50ZXItYWN0aXZlLFxuLnYtbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzIGVhc2U7XG59XG5cbi52LWVudGVyLWZyb20sXG4udi1sZWF2ZS10byB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbjwvc3R5bGU+XG5cbjxzY3JpcHQgc2V0dXA+XG5pbXBvcnQgeyByZWYgfSBmcm9tICd2dWUnO1xuaW1wb3J0IEJsb2NrcyBmcm9tICcuLi9CbG9ja3MnO1xuXG5kZWZpbmVQcm9wcyh7XG4gICAgdGFiczogeyB0eXBlOiBBcnJheSwgZGVmYXVsdDogbnVsbCB9LFxufSk7XG5cbmNvbnN0IHN0eWxlcyA9IHtcbiAgICB0YWJsaXN0QmFja2dyb3VuZDogJ3RyYW5zcGFyZW50JyxcbiAgICB0YWJwYW5lbEJhY2tncm91bmQ6ICd0cmFuc3BhcmVudCcsXG4gICAgdGFiQmFja2dyb3VuZDogJ3RyYW5zcGFyZW50JyxcbiAgICB0YWJDb2xvcjogJ3RleHQtY29sb3InLFxuICAgIHRhYkZvbnRXZWlnaHQ6ICcxMDAnLFxuICAgIG5hdkJ1dHRvbkJhY2tncm91bmQ6ICd7c3VyZmFjZS41MDB9JyxcbiAgICBuYXZCdXR0b25Db2xvcjogJ3tzdXJmYWNlLjk1MH0nLFxuICAgIG5hdkJ1dHRvbkhvdmVyQ29sb3I6ICd7cHJpbWFyeS41MDB9JyxcbiAgICBuYXZCdXR0b25TaGFkb3c6ICcwcHggMHB4IDEwcHggMzBweCByZ2JhKDI1NSwgMjUzLCAyNDgsIDAuOTUpJyxcbiAgICB0YWJQYWRkaW5nOiAnMXJlbSAycmVtJ1xufTtcblxuY29uc3QgYWN0aXZlVGFiID0gcmVmKCcwJyk7XG48L3NjcmlwdD4iLCI8dGVtcGxhdGU+XG5cbiAgPGRpdiBjbGFzcz1cImdyaWQgZ3JpZC1jb2xzLTEgbWQ6Z3JpZC1jb2xzLTJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBwYi0yIGZsZXgtY29sIGdhcC15LTQgZ2FwLXgtMiBcbiAgICAgIG1kOml0ZW1zLWNlbnRlciBtZDpjb2wtc3Bhbi0yIG1kOmZsZXgtcm93IG1kOnBiLTNcIlxuICAgID5cbiAgICAgIDxoMSBjbGFzcz1cImdyb3dcIiA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LTN4bCBoZWFkaW5nIG1kOnRleHQtNHhsXCI+XG4gICAgICAgICAgPHA+e3sgZGF0YS5sZWFkaW5nX3RleHQgfX08L3A+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIlwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtNXhsIGlubGluZSB0ZXh0LXByaW1hcnkgaXRhbGljIGZvbnQtWydhYnJpbC10aXRsaW5nJ10gdHJhY2tpbmctWy0wLjAzNWVtXSBjdXJzb3ItcG9pbnRlclwiIFxuICAgICAgICAgICAgICB2LXRleHQ9XCJtb2RlbC50aXRsZVwiXG4gICAgICAgICAgICAgIEBjbGljaz1cInRvZ2dsZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8aSBjbGFzcz1cInBpIHBpLWNoZXZyb24tZG93biB0ZXh0LXByaW1hcnkgZHVyYXRpb24tMzAwIG1sLTMgY3Vyc29yLXBvaW50ZXJcIiBzdHlsZT1cImZvbnQtc2l6ZTogMS4zcmVtXCJcbiAgICAgICAgICAgICAgICA6Y2xhc3M9XCJ7ICdyb3RhdGUtMTgwICc6IHRvZ2dsZVZpc2libGUgfVwiXG4gICAgICAgICAgICAgICAgQGNsaWNrPVwidG9nZ2xlXCJcbiAgICAgICAgICAgICAgPjwvaT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2gxPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiaXRlbXMtc3RhcnQgZmxleCBmbGV4LXJvd1wiPlxuICAgICAgICA8TGluayB2LWlmPVwiZGF0YS5saW5rXCIgOnVybD1cImRhdGEubGluay51cmxcIiA6dGl0bGU9XCJkYXRhLmxpbmsudGl0bGVcIiBjbGFzcz1cInB0LTEgbWQ6cHQtMCBzaHJpbmtcIi8+XG4gICAgICA8L2Rpdj5cblxuICAgIDwvZGl2PlxuICAgIDxUcmFuc2l0aW9uIG5hbWU9XCJzbGlkZS1kb3duXCJcbiAgICAgIEBiZWZvcmUtZW50ZXI9XCJiZWZvcmVFbnRlclwiXG4gICAgICBAZW50ZXI9XCJlbnRlclwiXG4gICAgICBAbGVhdmU9XCJsZWF2ZVwiXG4gICAgPlxuICAgICAgPGRpdiB2LWlmPVwidG9nZ2xlVmlzaWJsZVwiIGNsYXNzPVwib3ZlcmZsb3ctaGlkZGVuIFwiPlxuXG4gICAgICAgIDxMaXN0SXRlbXNcbiAgICAgICAgICB2LWlmPVwiZGF0YS5pdGVtc1swXT8uY2F0ZWdvcmllc1wiXG4gICAgICAgICAgOmRhdGE9XCJkYXRhLml0ZW1zWzBdLmNhdGVnb3JpZXNcIlxuICAgICAgICAgIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBtZDp3LVs0MCVdIHB0LTQgbWQ6cHQtMFwiXG4gICAgICAgICAgQGxpbmUtY2xpY2tlZD1cInVwZGF0ZU1vZGVsXCJcbiAgICAgICAgLz5cblxuICAgICAgPC9kaXY+XG4gICAgPC9UcmFuc2l0aW9uPlxuICA8L2Rpdj5cblxuXG4gIFxuPC90ZW1wbGF0ZT5cblxuPHN0eWxlPlxuLyogLmhlYWRlciB7XG5cbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzNWVtO1xuXG4gIGkge1xuICAgIGZvbnQtZmFtaWx5OiBcImFicmlsLXRpdGxpbmdcIjtcbiAgfVxuICBzdHJvbmcsIGIsIGVtIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtZmFtaWx5OiBcImFicmlsLXRpdGxpbmdcIjtcbiAgICBmb250LXNpemU6IHZhcigtLXRleHQtNnhsKTtcbiAgICBjb2xvcjogdmFyKC0tcC1wcmltYXJ5LWNvbG9yKTtcbiAgfVxufSAqL1xuXG48L3N0eWxlPlxuXG48c2NyaXB0IHNldHVwPlxuXG5pbXBvcnQgeyByZWYgfSBmcm9tICd2dWUnO1xuXG5pbXBvcnQgTGlzdEl0ZW1zIGZyb20gJy4vTGlzdEl0ZW1zJztcbmltcG9ydCBMaW5rIGZyb20gJy4vTGluayc7XG5cbmRlZmluZVByb3BzKHtcbiAgZGF0YTogeyB0eXBlOiBPYmplY3QsIGRlZmF1bHQ6IG51bGwgfSxcbn0pO1xuXG5jb25zdCBtb2RlbCA9IGRlZmluZU1vZGVsKCk7XG5jb25zdCB1cGRhdGVNb2RlbCA9IChwYXlsb2FkKSA9PiB7XG4gIG1vZGVsLnZhbHVlID0gcGF5bG9hZDtcbn07XG5cbmNvbnN0IHRvZ2dsZVZpc2libGUgPSByZWYoZmFsc2UpO1xuXG5jb25zdCB0b2dnbGUgPSAoKSA9PiB7XG4gIGlmICh0b2dnbGVWaXNpYmxlLnZhbHVlKSB7XG4gICAgdG9nZ2xlVmlzaWJsZS52YWx1ZSA9IGZhbHNlO1xuICB9IGVsc2Uge1xuICAgIHRvZ2dsZVZpc2libGUudmFsdWUgPSB0cnVlO1xuICB9XG59O1xuXG5jb25zdCBiZWZvcmVFbnRlciA9IChlbCkgPT4ge1xuICBlbC5zdHlsZS5tYXhIZWlnaHQgPSAnMCc7XG4gIGVsLnN0eWxlLm9wYWNpdHkgPSAnMCc7XG59O1xuY29uc3QgZW50ZXIgPSAoZWwsIGRvbmUpID0+IHtcbiAgY29uc3QgaGVpZ2h0ID0gZWwuc2Nyb2xsSGVpZ2h0O1xuICBlbC5zdHlsZS50cmFuc2l0aW9uID0gJ2FsbCAwLjNzIGVhc2UnO1xuICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgIGVsLnN0eWxlLm1heEhlaWdodCA9IGhlaWdodCArICdweCc7XG4gICAgZWwuc3R5bGUub3BhY2l0eSA9ICcxJztcbiAgfSk7XG5cbiAgc2V0VGltZW91dChkb25lLCAzMDApO1xufTtcblxuY29uc3QgbGVhdmUgPSAoZWwsIGRvbmUpID0+IHtcbiAgZWwuc3R5bGUudHJhbnNpdGlvbiA9ICdhbGwgMC4zcyBlYXNlJztcbiAgZWwuc3R5bGUubWF4SGVpZ2h0ID0gZWwuc2Nyb2xsSGVpZ2h0ICsgJ3B4JzsgLy8gc2V0IHRvIGN1cnJlbnQgaGVpZ2h0XG4gIGVsLnN0eWxlLm9wYWNpdHkgPSAnMSc7XG5cbiAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICBlbC5zdHlsZS5tYXhIZWlnaHQgPSAnMCc7XG4gICAgZWwuc3R5bGUub3BhY2l0eSA9ICcwJztcbiAgfSk7XG5cbiAgc2V0VGltZW91dChkb25lLCAzMDApO1xufTtcblxuZGVmaW5lRXhwb3NlKHtcbiAgdG9nZ2xlXG59KTtcblxuPC9zY3JpcHQ+IiwiPHRlbXBsYXRlPlxuICA8ZGl2IDpjbGFzcz1cInsgJ3RleHQtY2VudGVyJzogZGlzcGxheSA9PSAnY2VudGVyJyB9XCIgPlxuXG4gICAgPGRpdiB2LWlmPVwibGVhZGluZ1wiIGNsYXNzPVwiZm9udC1ib2xkXCIgPnt7IGxlYWRpbmcgfX08L2Rpdj5cbiAgICA8ZGl2IFxuICAgICAgY2xhc3M9XCJoZWFkZXJcIlxuICAgICAgOmNsYXNzPVwiW1xuICAgICAgICB7J2p1c3RpZnktc2VsZi1jZW50ZXIgdy1mdWxsIG1kOnctWzgwJV0gJzogZGlzcGxheSA9PSAnY2VudGVyJ30sXG4gICAgICAgIHsnanVzdGlmeS1zZWxmLXN0YXJ0JzogZGlzcGxheSA9PSAnbGVmdCd9XG4gICAgICBdXCI+XG4gICAgICA8ZGl2IHYtaHRtbD1cInRleHRcIiBjbGFzcz1cInRleHQtMnhsIG1kOnRleHQtNHhsIGhlYWRpbmdcIiBcbiAgICAgICAgdi1hbmltYXRlb25zY3JvbGwub25jZT1cInsgZW50ZXJDbGFzczogJ2FuaW1hdGUtZW50ZXIgZmFkZS1pbi0wIHNsaWRlLWluLWZyb20tYi0xOCBhbmltYXRlLWR1cmF0aW9uLTYwMCBhbmltYXRlLWZpbGwtYmFja3dhcmRzJyB9XCJcbiAgICAgIC8+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IHYtaWY9XCJzdWJ0aXRsZVwiIGNsYXNzPVwidGV4dC14bCBmb250LWJvbGQgcHQtMTBcIiB2LXRleHQ9XCJzdWJ0aXRsZVwiXG4gICAgICB2LWFuaW1hdGVvbnNjcm9sbC5vbmNlPVwieyBlbnRlckNsYXNzOiAnYW5pbWF0ZS1lbnRlciBmYWRlLWluLTAgc2xpZGUtaW4tZnJvbS1iLTI0IGFuaW1hdGUtZHVyYXRpb24tNjAwIGFuaW1hdGUtZmlsbC1iYWNrd2FyZHMnIH1cIlxuICAgIC8+XG5cbiAgICA8ZGl2IHYtaWY9XCJzdWJ0aXRsZV9tdXRlZFwiIGNsYXNzPVwidGV4dC1sZyB0ZXh0LXN1cmZhY2UtODAwXCIgdi10ZXh0PVwic3VidGl0bGVfbXV0ZWRcIlxuICAgICAgdi1hbmltYXRlb25zY3JvbGwub25jZT1cInsgZW50ZXJDbGFzczogJ2FuaW1hdGUtZW50ZXIgZmFkZS1pbi0wIHNsaWRlLWluLWZyb20tYi0yNiBhbmltYXRlLWR1cmF0aW9uLTYwMCBhbmltYXRlLWZpbGwtYmFja3dhcmRzJyB9XCJcbiAgICAvPlxuXG4gIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHN0eWxlPlxuLmhlYWRlciB7XG5cbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzNWVtO1xuXG4gIGkge1xuICAgIGZvbnQtZmFtaWx5OiBcImFicmlsLXRpdGxpbmdcIjtcbiAgfVxuICBzdHJvbmcsIGIsIGVtIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtZmFtaWx5OiBcImFicmlsLXRpdGxpbmdcIjtcbiAgICBmb250LXNpemU6IHZhcigtLXRleHQtNHhsKTtcbiAgICBjb2xvcjogdmFyKC0tcC1wcmltYXJ5LWNvbG9yKTtcbiAgfVxufVxuXG5AbWVkaWEgKHdpZHRoID49IDQ4cmVtKSB7XG4gIC5oZWFkZXIge1xuICAgIHN0cm9uZywgYiwgZW0geyAgICAgIFxuICAgICAgZm9udC1zaXplOiB2YXIoLS10ZXh0LTZ4bCk7XG4gICAgfVxuICB9XG59XG48L3N0eWxlPlxuXG48c2NyaXB0IHNldHVwPlxuXG5kZWZpbmVQcm9wcyh7XG4gIGxlYWRpbmc6IHsgdHlwZTogU3RyaW5nLCBkZWZhdWx0OiBudWxsIH0sXG4gIHRleHQ6IHsgdHlwZTogU3RyaW5nLCBkZWZhdWx0OiBudWxsIH0sXG4gIGRpc3BsYXk6IHsgdHlwZTogU3RyaW5nLCBkZWZhdWx0OiAnbGVmdCcgfSxcbiAgc3VidGl0bGU6IHsgdHlwZTogU3RyaW5nLCBkZWZhdWx0OiBudWxsIH0sXG4gIHN1YnRpdGxlX211dGVkOiB7IHR5cGU6IFN0cmluZywgZGVmYXVsdDogbnVsbCB9XG59KTtcblxuPC9zY3JpcHQ+IiwiPHRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJyZWxhdGl2ZSBpbmxpbmUtYmxvY2sgY3Vyc29yLXBvaW50ZXIgYW5pbWF0ZS1kdXJhdGlvbi01MDAgYW5pbWF0ZS1maWxsLWJvdGhcIlxuICAgICAgICB2LWFuaW1hdGVvbnNjcm9sbC5vbmNlPVwieyBlbnRlckNsYXNzOiAnYW5pbWF0ZS1lbnRlciBmYWRlLWluLTAgc2xpZGUtaW4tZnJvbS1iLTE4JyB9XCJcbiAgICA+XG4gICAgICAgIDxkaXYgXG4gICAgICAgICAgICBjbGFzcz1cImdyb3VwXCJcbiAgICAgICAgICAgIEBjbGljaz1cInZpc2libGUgPSB0cnVlXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFic29sdXRlIGluc2V0LTAgZmxleCBmbGV4LWNvbCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgY3Vyc29yLXBvaW50ZXIgei0xIGJnLXN1cmZhY2UtOTUwLzQwXCI+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1wbGF5LWNpcmNsZSB0ZXh0LXdoaXRlXCIgc3R5bGU9XCJmb250LXNpemU6IDRyZW1cIiAvPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8aW1nIDpzcmM9XCJ0aHVtYm5haWxVcmlcIiBhbHQ9XCJWaWRlbyB0aHVtYm5haWxcIiBjbGFzcz1cInctZnVsbCBoLWF1dG9cIiAgLz5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPERpYWxvZyB2LW1vZGVsOnZpc2libGU9XCJ2aXNpYmxlXCIgbW9kYWwgOmRyYWdnYWJsZT1cImZhbHNlXCIgOmRpc21pc3NhYmxlTWFzaz1cInRydWVcIiA6cHQ9XCJkaWFsb2dQVFwiIDpkdD1cImRpYWxvZ0RUXCIgPlxuICAgICAgICAgICAgPHZpZGVvIGNvbnRyb2xzIGF1dG9wbGF5IDpzcmM9XCJzcmNcIiBjbGFzcz1cInctNDAwIGgtYXV0byBcIj48L3ZpZGVvPlxuICAgICAgICA8L0RpYWxvZz5cbiAgICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzdHlsZT5cbi5wLWRpYWxvZy1jbG9zZS1idXR0b24ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXAtc3VyZmFjZS05NTApO1xuICAgIGJvcmRlcjogc29saWQgMXB4IHZhcigtLXAtc3VyZmFjZS0wKTtcbn1cbi5wLWRpYWxvZy1jbG9zZS1idXR0b246Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cbjwvc3R5bGU+XG5cbjxzY3JpcHQgc2V0dXA+XG5pbXBvcnQgeyByZWYgfSBmcm9tICd2dWUnO1xuXG5kZWZpbmVQcm9wcyh7XG4gICAgc3JjOiB7IHR5cGU6IFN0cmluZywgcmVxdWlyZWQ6IHRydWUgfSxcbiAgICB0aHVtYm5haWxVcmk6IHsgdHlwZTogU3RyaW5nLCByZXF1aXJlZDogdHJ1ZSB9LFxufSk7XG5cbmNvbnN0IHZpc2libGUgPSByZWYoZmFsc2UpO1xuY29uc3QgZGlhbG9nUFQgPSB7XG4gICAgaGVhZGVyQ2xhc3M6ICdqdXN0aWZ5LWVuZCcsXG4gICAgcGNDbG9zZUJ1dHRvbjoge1xuICAgICAgICByb290OiAnei0zIGZvY3VzLXZpc2libGU6b3V0bGluZS0wIHJvdW5kZWQtbm9uZSBob3ZlcjpiZy1wcmltYXJ5LTUwMCdcbiAgICB9LFxuICAgIHJvb3Q6ICdteC00JyxcbiAgICBoZWFkZXI6ICdhYnNvbHV0ZSByaWdodC0wJyxcbiAgICBoZWFkZXJBY3Rpb25zOiAnc2VsZi1zdGFydCdcbn07XG5jb25zdCBkaWFsb2dEVCA9IHtcbiAgICBib3JkZXJSYWRpdXM6ICdub25lJyxcbiAgICBjb250ZW50UGFkZGluZzogJzAnLFxuICAgIGJvcmRlckNvbG9yOiAne3N1cmZhY2UuNTAwfScsXG4gICAgYmFja2dyb3VuZDogJ3twcmltYXJ5LjUwMH0nLFxuICAgIGhlYWRlclBhZGRpbmc6ICcwLjVyZW0gMC41cmVtJ1xufTtcbjwvc2NyaXB0PiIsIjx0ZW1wbGF0ZT5cbiAgICA8ZGl2PlxuICAgICAgICA8SGVhZGluZyA6dGV4dD1cImhlYWRpbmdcIiBjbGFzcz1cInBiLThcIi8+XG4gICAgICAgIDxDYXJvdXNlbCBcbiAgICAgICAgICAgIDpkdD1cImR0XCIgXG4gICAgICAgICAgICA6cHQ9XCJ7XG4gICAgICAgICAgICAgICAgcGNQcmV2QnV0dG9uOiB7cm9vdDogJ21haW4tYnV0dG9uIHAtYnV0dG9uLXNtIG1sLTEgdy0xMyBoLTggJ30sXG4gICAgICAgICAgICAgICAgcGNOZXh0QnV0dG9uOiB7cm9vdDogJ21haW4tYnV0dG9uIHAtYnV0dG9uLXNtIG1yLTEgdy0xMyBoLTggJ31cbiAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgOnZhbHVlPVwiaW1hZ2VzXCIgOm51bVZpc2libGU9XCIzXCIgOm51bVNjcm9sbD1cIjNcIiA6cmVzcG9uc2l2ZU9wdGlvbnM9XCJyZXNwb25zaXZlT3B0aW9uc1wiXG4gICAgICAgICAgICB2LWFuaW1hdGVvbnNjcm9sbC5vbmNlPVwieyBlbnRlckNsYXNzOiAnYW5pbWF0ZS1lbnRlciBmYWRlLWluLTAgc2xpZGUtaW4tZnJvbS1iLTE4IGFuaW1hdGUtZHVyYXRpb24tNjAwIGFuaW1hdGUtZmlsbC1iYWNrd2FyZHMnfVwiXG4gICAgICAgICAgICA+XG5cbiAgICAgICAgICAgIDx0ZW1wbGF0ZSAjcHJldmljb24+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1hcnJvdy1sZWZ0XCIgLz5cbiAgICAgICAgICAgIDwvdGVtcGxhdGU+XG4gICAgICAgICAgICA8dGVtcGxhdGUgI2l0ZW09XCJzbG90UHJvcHNcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibS0yIHAtMlwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJlbGF0aXZlIG14LWF1dG9cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW1hZ2Ugdi1pZj1cInNsb3RQcm9wcy5kYXRhLmlzSW1hZ2VcIiA6c3JjPVwic3RyUmVwbGFjZShzbG90UHJvcHMuZGF0YS5mb3JtYXRVcmksIHsne2Zvcm1hdH0nOiAnZ2FsbGVyeScsICd7ZXh0ZW5zaW9ufSc6IHNsb3RQcm9wcy5kYXRhLmZvcm1hdFByZWZlcnJlZEV4dGVuc2lvbn0pXCIgYWx0PVwiSW1hZ2VcIiBwcmV2aWV3IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFZpZGVvIHYtaWY9XCJzbG90UHJvcHMuZGF0YS5pc1ZpZGVvXCIgOnNyYz1cInNsb3RQcm9wcy5kYXRhLnVybFwiIDp0aHVtYm5haWxVcmk9XCJzdHJSZXBsYWNlKHNsb3RQcm9wcy5kYXRhLmZvcm1hdFVyaSwgeyd7Zm9ybWF0fSc6ICdnYWxsZXJ5JywgJ3tleHRlbnNpb259Jzogc2xvdFByb3BzLmRhdGEuZm9ybWF0UHJlZmVycmVkRXh0ZW5zaW9ufSlcIiAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC90ZW1wbGF0ZT5cbiAgICAgICAgICAgIDx0ZW1wbGF0ZSAjbmV4dGljb24+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1hcnJvdy1yaWdodCB3LWZ1bGwgdGV4dC1yaWdodFwiIC8+XG4gICAgICAgICAgICA8L3RlbXBsYXRlPlxuICAgICAgICA8L0Nhcm91c2VsPlxuICAgIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHN0eWxlIHNjb3BlZD5cbjpkZWVwKC5wLWJ1dHRvbi1zZWNvbmRhcnkgLnBpKSB7XG4gICAgY29sb3I6IHZhcigtLXAtc3VyZmFjZS05NTApO1xufVxuOmRlZXAoLnAtYnV0dG9uLXNlY29uZGFyeTpob3ZlciAucGkpIHtcbiAgICBjb2xvcjogdmFyKC0tcC1zdXJmYWNlLTApO1xufVxuOmRlZXAoLnAtYnV0dG9uLXNlY29uZGFyeTo6YmVmb3JlKSwgOmRlZXAoLnAtYnV0dG9uLXNlY29uZGFyeTo6YWZ0ZXIpIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXAtc3VyZmFjZS05NTApO1xufVxuOmRlZXAoLnAtYnV0dG9uLXNlY29uZGFyeTpob3Zlcjo6YmVmb3JlKSwgOmRlZXAoLnAtYnV0dG9uLXNlY29uZGFyeTpob3Zlcjo6YWZ0ZXIpIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuOmRlZXAoLnAtYnV0dG9uLm1haW4tYnV0dG9uLnAtYnV0dG9uLXNlY29uZGFyeTpob3Zlcikge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXAtcHJpbWFyeS01MDApO1xufVxuPC9zdHlsZT5cblxuPHNjcmlwdCBzZXR1cD5cblxuaW1wb3J0IHsgcmVmIH0gZnJvbSAndnVlJztcbmltcG9ydCB7IHN0clJlcGxhY2UgfSBmcm9tICcuLi8uLi9oZWxwZXJzL3N0cmluZy5qcyc7XG5pbXBvcnQgSGVhZGluZyBmcm9tICcuL0hlYWRpbmcnO1xuaW1wb3J0IFZpZGVvIGZyb20gJy4vVmlkZW8udnVlJztcblxuZGVmaW5lUHJvcHMoe1xuICAgIGhlYWRpbmc6IHsgdHlwZTogU3RyaW5nLCBkZWZhdWx0OiBudWxsIH0sXG4gICAgaW1hZ2VzOiB7IHR5cGU6IEFycmF5LCBkZWZhdWx0OiBudWxsIH0sXG59KTtcblxuY29uc3QgZHQgPSB7XG4gICAgaW5kaWNhdG9yQm9yZGVyUmFkaXVzOiAnbm9uZScsXG4gICAgaW5kaWNhdG9yQmFja2dyb3VuZDogJ3tzdXJmYWNlLjkwMH0nLFxuICAgIGluZGljYXRvckhvdmVyQmFja2dyb3VuZDogJ3twcmltYXJ5LjMwMH0nLFxuICAgIGNvbnRlbnRHYXA6ICczJ1xufTtcblxuY29uc3QgcmVzcG9uc2l2ZU9wdGlvbnMgPSByZWYoW1xuICAgIHtcbiAgICAgICAgYnJlYWtwb2ludDogJzE0MDBweCcsXG4gICAgICAgIG51bVZpc2libGU6IDIsXG4gICAgICAgIG51bVNjcm9sbDogMVxuICAgIH0sXG4gICAge1xuICAgICAgICBicmVha3BvaW50OiAnMTE5OXB4JyxcbiAgICAgICAgbnVtVmlzaWJsZTogMyxcbiAgICAgICAgbnVtU2Nyb2xsOiAxXG4gICAgfSxcbiAgICB7XG4gICAgICAgIGJyZWFrcG9pbnQ6ICc3NjdweCcsXG4gICAgICAgIG51bVZpc2libGU6IDIsXG4gICAgICAgIG51bVNjcm9sbDogMVxuICAgIH0sXG4gICAge1xuICAgICAgICBicmVha3BvaW50OiAnNTc1cHgnLFxuICAgICAgICBudW1WaXNpYmxlOiAxLFxuICAgICAgICBudW1TY3JvbGw6IDFcbiAgICB9XG5dKTtcblxuPC9zY3JpcHQ+IiwiPHRlbXBsYXRlPlxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXN1cmZhY2UtNzAwXCI+XG4gICAgICAgIDxoMiB2LWlmPVwidGl0bGVcIiBjbGFzcz1cInRleHQtNHhsIGZvbnQtc2VtaWJvbGQgdGV4dC1zdXJmYWNlLTgwMCB0ZXh0LWNlbnRlclwiPnt7IHRpdGxlIH19PC9oMj5cbiAgICAgICAgPGgzIHYtaWY9XCJzdWJ0aXRsZVwiIGNsYXNzPVwidGV4dC0yeGwgZm9udC1zZW1pYm9sZCB0ZXh0LWNlbnRlciBtdC00IGxlYWRpbmctMTBcIj57eyBzdWJ0aXRsZSB9fTwvaDM+XG5cbiAgICAgICAgPHRlbXBsYXRlIHYtaWY9XCJpbWFnZVwiPlxuICAgICAgICAgICAgPHRlbXBsYXRlIHYtaWY9XCJkaXNwbGF5T3B0aW9uICE9ICdib3R0b20nXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZ2FwLTggcHktOFwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IHYtaWY9XCJkZXNjcmlwdGlvblwiIHYtaHRtbD1cImRlc2NyaXB0aW9uXCIgY2xhc3M9XCJmbGV4LTEgdGV4dC1iYXNlIHRleHQtY29udGVudFwiPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IHYtaWY9XCJpbWFnZVwiIGNsYXNzPVwiZmxleC0xIFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyA6c3JjPVwiaW1hZ2UgPyBzdHJSZXBsYWNlKGltYWdlLmZvcm1hdFVyaSwgeyd7Zm9ybWF0fSc6ICdjb250ZW50LTUwJywgJ3tleHRlbnNpb259JzogaW1hZ2UuZm9ybWF0UHJlZmVycmVkRXh0ZW5zaW9ufSkgOiBudWxsXCIgYWx0PVwiSW1hZ2VcIiB3aWR0aD1cIlwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInJvdW5kZWQtbGdcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC90ZW1wbGF0ZT5cbiAgICAgICAgICAgIDx0ZW1wbGF0ZSB2LWVsc2U+XG4gICAgICAgICAgICAgICAgPGRpdiB2LWlmPVwiZGVzY3JpcHRpb25cIiB2LWh0bWw9XCJkZXNjcmlwdGlvblwiIGNsYXNzPVwidGV4dC1iYXNlIG10LTQgdGV4dC1jb250ZW50XCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1jZW50ZXIgcHQtOFwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIDpzcmM9XCJpbWFnZSA/IHN0clJlcGxhY2UoaW1hZ2UuZm9ybWF0VXJpLCB7J3tmb3JtYXR9JzogJ2NvbnRlbnQtZnVsbC13aWR0aCcsICd7ZXh0ZW5zaW9ufSc6IGltYWdlLmZvcm1hdFByZWZlcnJlZEV4dGVuc2lvbn0pIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBhbHQ9XCJJbWFnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIlwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInJvdW5kZWQtbGdcIiBcbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvdGVtcGxhdGU+XG4gICAgICAgIDwvdGVtcGxhdGU+ICAgICAgIFxuICAgIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHN0eWxlPlxuICAgIHAge1xuICAgICAgICBwYWRkaW5nOiAwLjRyZW0gMDtcbiAgICB9XG48L3N0eWxlPlxuXG48c2NyaXB0IHNldHVwPlxuaW1wb3J0IHsgc3RyUmVwbGFjZSB9IGZyb20gJy4uLy4uL2hlbHBlcnMvc3RyaW5nLmpzJztcblxuZGVmaW5lUHJvcHMoe1xuICAgIHRpdGxlOiB7IHR5cGU6IFN0cmluZywgZGVmYXVsdDogbnVsbCB9LFxuICAgIHN1YnRpdGxlOiB7IHR5cGU6IFN0cmluZywgZGVmYXVsdDogbnVsbCB9LFxuICAgIGRlc2NyaXB0aW9uOiB7IHR5cGU6IFN0cmluZywgZGVmYXVsdDogbnVsbCB9LFxuICAgIGltYWdlOiB7IHR5cGU6IE9iamVjdCwgZGVmYXVsdDogbnVsbH0sXG4gICAgZGlzcGxheU9wdGlvbjogeyB0eXBlOiBTdHJpbmcsIGRlZmF1bHQ6IG51bGx9LFxufSk7XG48L3NjcmlwdD4iLCI8dGVtcGxhdGU+XG4gICAgPGJ1dHRvbiBAY2xpY2s9XCJzaHVmZmxlSXRlbXNcIj5TaHVmZmxlPC9idXR0b24+XG4gICAgPHRyYW5zaXRpb24tZ3JvdXAgbmFtZT1cInNodWZmbGVcIiB0YWc9XCJ1bFwiIGNsYXNzPVwidy0yMDAgcC0yMCBiZy1ncmVlbi0yMDAgZ3JpZCBncmlkLWNvbHMtM1wiPlxuICAgIDxsaSB2LWZvcj1cIml0ZW0gaW4gaXRlbXNcIiA6a2V5PVwiaXRlbS5pZFwiIGNsYXNzPVwiYmctYmx1ZS0yMDAgcC01IHRleHQtY2VudGVyIGJvcmRlci0xXCI+XG4gICAgICAgIHt7IGl0ZW0udGV4dCB9fVxuICAgIDwvbGk+XG4gICAgPC90cmFuc2l0aW9uLWdyb3VwPlxuPC90ZW1wbGF0ZT5cblxuPHN0eWxlPlxuICAuc2h1ZmZsZS1tb3ZlIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICB9XG4gIC5zaHVmZmxlLWVudGVyLWFjdGl2ZSxcbiAgLnNodWZmbGUtbGVhdmUtYWN0aXZlIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICB9XG4gIC5zaHVmZmxlLWVudGVyLWZyb20sXG4gIC5zaHVmZmxlLWxlYXZlLXRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cbiAgLnNodWZmbGUtZW50ZXItdG8sXG4gIC5zaHVmZmxlLWxlYXZlLWZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG48L3N0eWxlPlxuXG48c2NyaXB0IHNldHVwPlxuaW1wb3J0IHsgcmVmIH0gZnJvbSAndnVlJztcbmNvbnN0IGl0ZW1zID0gcmVmKFtcbiAgICB7IGlkOiAxLCB0ZXh0OiAnSXRlbSAxJyB9LFxuICAgIHsgaWQ6IDIsIHRleHQ6ICdJdGVtIDInIH0sXG4gICAgeyBpZDogMywgdGV4dDogJ0l0ZW0gMycgfSxcbiAgICB7IGlkOiA0LCB0ZXh0OiAnSXRlbSA0JyB9LFxuICAgIHsgaWQ6IDUsIHRleHQ6ICdJdGVtIDUnIH0sXG4gICAgeyBpZDogNiwgdGV4dDogJ0l0ZW0gNicgfSxcbiAgICB7IGlkOiA3LCB0ZXh0OiAnSXRlbSA3JyB9LFxuICAgIHsgaWQ6IDgsIHRleHQ6ICdJdGVtIDgnIH0sXG4gICAgeyBpZDogOSwgdGV4dDogJ0l0ZW0gOScgfSxcbl0pO1xuZnVuY3Rpb24gc2h1ZmZsZUl0ZW1zKCkge1xuICBmb3IgKGxldCBpID0gaXRlbXMudmFsdWUubGVuZ3RoIC0gMTsgaSA+IDA7IGktLSkge1xuICAgIGNvbnN0IGogPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAoaSArIDEpKTtcbiAgICBbaXRlbXMudmFsdWVbaV0sIGl0ZW1zLnZhbHVlW2pdXSA9IFtpdGVtcy52YWx1ZVtqXSwgaXRlbXMudmFsdWVbaV1dO1xuICB9XG59XG48L3NjcmlwdD5cblxuIiwiPHRlbXBsYXRlPlxuICA8ZGl2IHJlZj1cImVsUmVmXCIgY2xhc3M9XCJsYXp5LWxvYWQtd3JhcHBlclwiPlxuXG4gICAgPFN1c3BlbnNlIHYtaWY9XCJzaG91bGRMb2FkXCI+XG4gICAgICA8dGVtcGxhdGUgI2RlZmF1bHQ+XG4gICAgICAgIDxjb21wb25lbnQgOmlzPVwiYXN5bmNDb21wb25lbnRcIiAvPlxuICAgICAgPC90ZW1wbGF0ZT5cbiAgICAgIDx0ZW1wbGF0ZSAjZmFsbGJhY2s+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJsb2FkaW5nLXN0YXRlXCI+TG9hZGluZyBjb21wb25lbnQuLi48L2Rpdj5cbiAgICAgIDwvdGVtcGxhdGU+XG4gICAgPC9TdXNwZW5zZT5cbiAgICA8ZGl2IHYtZWxzZSBjbGFzcz1cInBsYWNlaG9sZGVyXCIgOnN0eWxlPVwieyBtaW5IZWlnaHQ6IHBsYWNlaG9sZGVySGVpZ2h0IH1cIj5cbiAgICAgIFNjcm9sbCBkb3duIHRvIGxvYWQgY29udGVudC5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c2NyaXB0IHNldHVwPlxuaW1wb3J0IHsgcmVmLCBvbk1vdW50ZWQsIG9uVW5tb3VudGVkLCBkZWZpbmVBc3luY0NvbXBvbmVudCB9IGZyb20gJ3Z1ZSc7XG5cbmNvbnN0IHByb3BzID0gZGVmaW5lUHJvcHMoe1xuICBjb21wb25lbnRQYXRoOiB7XG4gICAgdHlwZTogU3RyaW5nLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxuICBwbGFjZWhvbGRlckhlaWdodDoge1xuICAgIHR5cGU6IFN0cmluZyxcbiAgICBkZWZhdWx0OiAnMjAwcHgnLCAvLyBEZWZhdWx0IGhlaWdodCBmb3IgdGhlIHBsYWNlaG9sZGVyXG4gIH0sXG59KTtcblxuY29uc3QgZWxSZWYgPSByZWYobnVsbCk7XG4vLyBjb25zdCBzaG91bGRMb2FkID0gcmVmKGZhbHNlKTtcbi8vIGxldCBvYnNlcnZlciA9IG51bGw7XG5cbi8vIER5bmFtaWNhbGx5IGltcG9ydCB0aGUgY29tcG9uZW50IGJhc2VkIG9uIHRoZSBwcm9wXG5jb25zdCBhc3luY0NvbXBvbmVudCA9IGRlZmluZUFzeW5jQ29tcG9uZW50KCgpID0+IGltcG9ydCgnLi9pbWcvU21hbGxMb2dvLnZ1ZScpKTtcblxub25Nb3VudGVkKCgpID0+IHtcbiAgLy8gICBvYnNlcnZlciA9IG5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcigoZW50cmllcykgPT4ge1xuICAvLyAgICAgICBlbnRyaWVzLmZvckVhY2goKGVudHJ5KSA9PiB7XG4gIC8vICAgICAgICAgICBpZiAoZW50cnkuaXNJbnRlcnNlY3RpbmcpIHtcbiAgLy8gICAgICAgICAgICAgICBzaG91bGRMb2FkLnZhbHVlID0gdHJ1ZTtcbiAgLy8gICAgICAgICAgICAgICBpZiAob2JzZXJ2ZXIpIHtcbiAgLy8gICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuICAvLyAgICAgICAgICAgICAgIH1cbiAgLy8gICAgICAgICAgIH1cbiAgLy8gICAgICAgfSk7XG4gIC8vICAgfSk7XG5cbiAgLy8gaWYgKGVsUmVmLnZhbHVlKSB7XG4gIC8vICAgY29uc29sZS5sb2coZWxSZWYudmFsdWUpXG4gIC8vICAgLy8gb2JzZXJ2ZXIub2JzZXJ2ZShlbFJlZi52YWx1ZSk7XG4gIC8vIH1cbn0pO1xuXG5cbi8vICAgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoXG4vLyAgICAgKGVudHJpZXMpID0+IHtcbi8vICAgICAgIGVudHJpZXMuZm9yRWFjaCgoZW50cnkpID0+IHtcbi8vICAgICAgICAgaWYgKGVudHJ5LmlzSW50ZXJzZWN0aW5nKSB7XG4vLyAgICAgICAgICAgc2hvdWxkTG9hZC52YWx1ZSA9IHRydWU7XG4vLyAgICAgICAgICAgaWYgKG9ic2VydmVyKSB7XG4vLyAgICAgICAgICAgICBvYnNlcnZlci5kaXNjb25uZWN0KCk7IC8vIFN0b3Agb2JzZXJ2aW5nIG9uY2UgbG9hZGVkXG4vLyAgICAgICAgICAgfVxuLy8gICAgICAgICB9XG4vLyAgICAgICB9KTtcbi8vICAgICB9LFxuLy8gICAgIHtcbi8vICAgICAgIHJvb3RNYXJnaW46ICcwcHgnLCAvLyBTdGFydCBsb2FkaW5nIHdoZW4gMHB4IG9mIHRoZSBjb21wb25lbnQgaXMgdmlzaWJsZVxuLy8gICAgICAgdGhyZXNob2xkOiAwLjEsIC8vIExvYWQgd2hlbiAxMCUgb2YgdGhlIGNvbXBvbmVudCBpcyB2aXNpYmxlXG4vLyAgICAgfVxuLy8gICApO1xuXG4vLyAgIGlmIChyb290LnZhbHVlKSB7XG4vLyAgICAgb2JzZXJ2ZXIub2JzZXJ2ZShyb290LnZhbHVlKTtcbi8vICAgfVxuLy8gfSk7XG5cbm9uVW5tb3VudGVkKCgpID0+IHtcbi8vICAgaWYgKG9ic2VydmVyKSB7XG4vLyAgICAgb2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xuLy8gICB9XG59KTtcbjwvc2NyaXB0PlxuXG48c3R5bGUgc2NvcGVkPlxuXG4ucGxhY2Vob2xkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwZTBlMDtcbiAgY29sb3I6ICM2NjY7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCAjOTk5O1xufVxuXG4ubG9hZGluZy1zdGF0ZSB7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbjwvc3R5bGU+IiwiPHRlbXBsYXRlPlxuICA8ZGl2IGNsYXNzPVwicHQtWzEyMHB4XSAyeGw6cHQtWzE4MHB4XSB6LTEgcmVsYXRpdmVcIj5cbiAgICA8ZGl2IGNsYXNzPVwicmVsYXRpdmUgcHktMTQgcHgtNCBtZDpweS0yNiBtZDpweC0xMFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImhpZGRlbiBtZDpibG9jayBhYnNvbHV0ZSB0b3AtMCBsZWZ0LVtjYWxjKDUwJS0zN3B4KV0gMnhsOmxlZnQtW2NhbGMoNTAlLTU1cHgpXSB3LVsxcHhdIGJvdHRvbS0wIC16LTEgYmctW2xpbmVhci1ncmFkaWVudCh0b19ib3R0b20sdmFyKC0tcC1zdXJmYWNlLTYwMClfNjUlLHRyYW5zcGFyZW50XzM1JSldIGJnLWxlZnQgYmctW3NpemU6MXB4XzE1cHhdIGJnLXJlcGVhdC15XCIgLz5cbiAgICAgIDxkaXYgY2xhc3M9XCJoaWRkZW4gbWQ6YmxvY2sgYWJzb2x1dGUgdG9wLTAgcmlnaHQtW2NhbGMoNTAlLTM3cHgpXSAyeGw6cmlnaHQtW2NhbGMoNTAlLTU1cHgpXSB3LVsxcHhdIGJvdHRvbS0wIC16LTEgYmctW2xpbmVhci1ncmFkaWVudCh0b19ib3R0b20sdmFyKC0tcC1zdXJmYWNlLTYwMClfNjUlLHRyYW5zcGFyZW50XzM1JSldIGJnLXJpZ2h0IGJnLVtzaXplOjFweF8xNXB4XSBiZy1yZXBlYXQteVwiIC8+XG5cbiAgICAgIDxoZWFkZXI+XG4gICAgICAgIDxzbG90IG5hbWU9XCJoZWFkZXJcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXIgZmxleCBmbGV4LWNvbCBpdGVtcy1jZW50ZXIgcGItMTAgbWQ6cGItMjJcIj5cblxuICAgICAgICAgICAgPEJyZWFkY3J1bWIgOm1vZGVsPVwiYnJlYWRjcnVtYkl0ZW1zXCIgOnB0PVwieyBcbiAgICAgICAgICAgICAgICBpdGVtOiAndGV4dC1wcmltYXJ5IGRlY29yYXRpb24tcHJpbWFyeS01MDAgdW5kZXJsaW5lLW9mZnNldC0zIGZvbnQtc2VtaWJvbGQgdW5kZXJsaW5lIHVwcGVyY2FzZSBsYXN0OnRleHQtc3VyZmFjZS05NTAhIGxhc3Q6bm8tdW5kZXJsaW5lIScsXG4gICAgICAgICAgICAgICAgcm9vdDogJ2JnLXRyYW5zcGFyZW50J1xuICAgICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICAgdi1hbmltYXRlb25zY3JvbGwub25jZT1cInsgZW50ZXJDbGFzczogJ2FuaW1hdGUtZW50ZXIgZmFkZS1pbi0wIHNsaWRlLWluLWZyb20tYi0xOCBhbmltYXRlLWR1cmF0aW9uLTYwMCBhbmltYXRlLWZpbGwtYmFja3dhcmRzJyB9XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHRlbXBsYXRlICNpdGVtPVwieyBpdGVtLCBwcm9wcyB9XCI+XG4gICAgICAgICAgICAgICAgICA8YSA6aHJlZj1cIml0ZW0udXJsXCIgdi1iaW5kPVwicHJvcHMudXJsXCI+e3sgaXRlbS5sYWJlbCB9fTwvYT5cbiAgICAgICAgICAgICAgPC90ZW1wbGF0ZT5cbiAgICAgICAgICAgIDwvQnJlYWRjcnVtYj5cbiAgICAgICAgICAgIDxoMSB2LWh0bWw9XCJzdWJ0aXRsZVwiIGNsYXNzPVwidGV4dC02eGxcIiBcbiAgICAgICAgICAgICAgdi1hbmltYXRlb25zY3JvbGwub25jZT1cInsgZW50ZXJDbGFzczogJ2FuaW1hdGUtZW50ZXIgZmFkZS1pbi0wIHNsaWRlLWluLWZyb20tYi0yOCBhbmltYXRlLWR1cmF0aW9uLTYwMCBhbmltYXRlLWZpbGwtYmFja3dhcmRzJyB9XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8ZGl2IHYtaWY9XCJpbnRyb1wiIGNsYXNzPVwicHQtNlwiIFxuICAgICAgICAgICAgICB2LWFuaW1hdGVvbnNjcm9sbC5vbmNlPVwieyBlbnRlckNsYXNzOiAnYW5pbWF0ZS1lbnRlciBmYWRlLWluLTAgc2xpZGUtaW4tZnJvbS1iLTI4IGFuaW1hdGUtZHVyYXRpb24tNjAwIGFuaW1hdGUtZmlsbC1iYWNrd2FyZHMnIH1cIlxuICAgICAgICAgICAgPnt7IGludHJvIH19PC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvc2xvdD5cbiAgICAgIDwvaGVhZGVyPlxuXG4gICAgICA8c2xvdCAvPlxuXG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdCBzZXR1cD5cblxuaW1wb3J0IHsgcmVmIH0gZnJvbSAndnVlJztcblxuY29uc3QgcHJvcHMgPSBkZWZpbmVQcm9wcyh7XG4gIHJpY2hUaXRsZTogeyB0eXBlOiBTdHJpbmcsIGRlZmF1bHQ6IG51bGwgfSxcbiAgc3VidGl0bGU6IHsgdHlwZTogU3RyaW5nLCBkZWZhdWx0OiBudWxsIH0sXG4gIGludHJvOiB7IHR5cGU6IFN0cmluZywgZGVmYXVsdDogbnVsbCB9LFxuICBicmVhZGNydW1iOiB7dHlwZTogQXJyYXksIGRlZmF1bHQ6IG51bGwgfVxufSk7XG5cbmNvbnN0IGJyZWFkY3J1bWJJdGVtcyA9IHJlZihwcm9wcy5icmVhZGNydW1iKTtcblxuPC9zY3JpcHQ+XG5cbjxzdHlsZT5cbmhlYWRlciB7XG4gIGgxIHtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDVlbTtcbiAgfVxuICBpIHtcbiAgICBmb250LWZhbWlseTogXCJhYnJpbC10aXRsaW5nXCI7XG4gIH1cbiAgc3Ryb25nLCBiLCBlbSB7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LWZhbWlseTogXCJhYnJpbC10aXRsaW5nXCI7XG4gICAgZm9udC1zaXplOiB2YXIoLS10ZXh0LTZ4bCk7XG4gICAgY29sb3I6IHZhcigtLXAtcHJpbWFyeS1jb2xvcik7XG4gIH1cbn1cblxuQG1lZGlhICh3aWR0aCA+PSA0OHJlbSkge1xuICBoZWFkZXIge1xuICAgIHN0cm9uZywgYiwgZW0geyAgICAgIFxuICAgICAgZm9udC1zaXplOiB2YXIoLS10ZXh0LTh4bCk7XG4gICAgfVxuICB9XG59XG48L3N0eWxlPlxuIiwiPHRlbXBsYXRlPlxuICAgIFxuICA8ZGl2IGNsYXNzPVwibWFzb25yeSBwdC0xMlwiPlxuICAgIDx0cmFuc2l0aW9uLWdyb3VwIG5hbWU9XCJzaHVmZmxlXCI+XG4gICAgPGRpdiB2LWZvcj1cIihtZW1iZXIsIGluZGV4KSBpbiB0ZWFtXCIgXG4gICAgICBjbGFzcz1cImltYWdlLWhvbGRlciBncm91cFwiXG4gICAgICA6Y2xhc3M9XCJbXG4gICAgICAgIHsgJ3BvcnRyYWl0JzogZ2V0UmFuZG9tQm9vbCgpIH0sXG4gICAgICAgIHsgJ3VucG9ydHJhaXQnOiBpbmRleCA8IHNlbGVjdGVkTWVtYmVyIH0sXG4gICAgICAgIHsgJ29wZW4nIDogKGluZGV4KSA9PSBzZWxlY3RlZE1lbWJlciB9LFxuICAgICAgXVwiXG4gICAgICA6c3R5bGU9XCJ7IGdyaWRSb3dTdGFydDogKGluZGV4KSA9PSBzZWxlY3RlZE1lbWJlciA/IChNYXRoLmNlaWwoKGluZGV4KzEpLzMpKjIpLTEgOiAnJyB9XCJcbiAgICAgIDprZXk9XCJtZW1iZXIuaWRcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IHJlbGF0aXZlIGdyb3VwLVsub3Blbl06Z3JpZCBncm91cC1bLm9wZW5dOmdyaWQtY29scy0xIGdyb3VwLVsub3Blbl06Z2FwLXgtWzIwcHhdIG1kOmdyb3VwLVsub3Blbl06Z3JpZC1jb2xzLTIgbWQ6Z3JvdXAtWy5vcGVuXTpnYXAteC1bNzRweF0gMnhsOmdyb3VwLVsub3Blbl06Z2FwLXgtWzExMHB4XVwiPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhYnNvbHV0ZSB6LTEgaW5zZXQtMCBncm91cC1bLm9wZW5dOmhpZGRlblwiIEBjbGljaz1cIm9wZW5JbWFnZShpbmRleCwgJGV2ZW50KVwiPjwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoaWRkZW4gYWJzb2x1dGUgei0xIGluc2V0LTAgZmxleC1jb2wgaXRlbXMtY2VudGVyIGN1cnNvci1wb2ludGVyIGR1cmF0aW9uLTMwMCBiZy1ibGFjay80MCBvcGFjaXR5LTAgaG92ZXI6b3BhY2l0eS0xMDAgdGV4dC1zdXJmYWNlLTAgZ3JvdXAtWy5vcGVuXTpoaWRkZW4gbWQ6ZmxleFwiXG4gICAgICAgICAgQGNsaWNrPVwib3BlbkltYWdlKGluZGV4LCAkZXZlbnQpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtMVwiPjwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtMSBjb250ZW50LWNlbnRlciB0ZXh0LWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpdGFsaWMgdGV4dC00eGwgZm9udC1hY2NlbnRcIj57eyBtZW1iZXIuZnVsbE5hbWUgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1zdXJmYWNlLTBcIj57eyBtZW1iZXIucG9zaXRpb24gfX08L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC0xIGNvbnRlbnQtZW5kIHBiLTEwXCI+XG4gICAgICAgICAgICAgICAgPExpbmsgXG4gICAgICAgICAgICAgICAgICA6dGl0bGU9XCJgTW9yZSBhYm91dCAke21lbWJlci5maXJzdE5hbWV9YFwiXG4gICAgICAgICAgICAgICAgICA6aG92ZXJDaGFuZ2U9XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICBzZXZlcml0eT1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwib3ZlcmZsb3ctaGlkZGVuXCI+XG4gICAgICAgICAgPExhenlJbWFnZSBcbiAgICAgICAgICAgIGNsYXNzPVwibWQ6ZHVyYXRpb24tMjAwIG1kOmdyb3VwLWhvdmVyOm5vdC1ncm91cC1bLm9wZW5dOnNjYWxlLTExMFwiIFxuICAgICAgICAgICAgOnByZWxvYWRTcmM9XCJtZW1iZXI/LmF2YXRhciA/IHN0clJlcGxhY2UobWVtYmVyPy5hdmF0YXI/LmZvcm1hdFVyaSwgeyd7Zm9ybWF0fSc6ICd0ZWFtX21hc29uYXJ5X2Z1bGwtbG93JywgJ3tleHRlbnNpb259JzogJ3dlYnAnfSkgOiBudWxsXCJcbiAgICAgICAgICAgIDptYWluU3Jjc2V0PVwibWVtYmVyPy5hdmF0YXIgPyBzdHJSZXBsYWNlKG1lbWJlcj8uYXZhdGFyPy5mb3JtYXRVcmksIHsne2Zvcm1hdH0nOiAndGVhbV9tYXNvbmFyeV9mdWxsJywgJ3tleHRlbnNpb259JzogJ3dlYnAnfSkgOiBudWxsXCJcbiAgICAgICAgICAgIHdpZHRoPVwiYXV0b1wiXG4gICAgICAgICAgICBoZWlnaHQ9XCJhdXRvXCJcbiAgICAgICAgICAgIHYtYW5pbWF0ZW9uc2Nyb2xsLm9uY2U9XCJ7IGVudGVyQ2xhc3M6ICdhbmltYXRlLWVudGVyIGZhZGUtaW4tMCBzbGlkZS1pbi1mcm9tLWItMTggYW5pbWF0ZS1kdXJhdGlvbi02MDAgYW5pbWF0ZS1maWxsLWJvdGgnLCAgdGhyZXNob2xkOiAwLjI1fVwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImhpZGRlbiBncm91cC1bLm9wZW5dOmJsb2NrIHB5LTZcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LXN0YXJ0IGl0ZW1zLWNlbnRlciBhYnNvbHV0ZSByaWdodC02IHRleHQtc3VyZmFjZS05NTAgY3Vyc29yLXBvaW50ZXIgZ3JvdXAvY2xvc2VyXCJcbiAgICAgICAgICAgIEBjbGljaz1cImNsb3NlXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8aSBjbGFzcz1cInBpIHBpLXRpbWVzIHAtMSBncm91cC1ob3Zlci9jbG9zZXI6cm90YXRlLTkwIGdyb3VwLWhvdmVyL2Nsb3Nlcjp0ZXh0LXByaW1hcnkgZHVyYXRpb24tMzAwIHRleHQtbWQgbWQ6dGV4dC0yeGxcIiAvPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwbC0xIGdyb3VwLWhvdmVyL2Nsb3Nlcjp0ZXh0LXByaW1hcnlcIj5DTE9TRTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb250LWFjY2VudCBpdGFsaWMgdGV4dC0zeGwgdGV4dC1wcmltYXJ5IHBiLTMgbWQ6dGV4dC02eGxcIj57eyBtZW1iZXIuZnVsbE5hbWUgfX08L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9udC1zZW1pYm9sZCB1cHBlcmNhc2UgbWQ6dGV4dC0yeGxcIj57eyBtZW1iZXIucG9zaXRpb24gfX08L2Rpdj5cbiAgICAgICAgICA8ZGl2IHYtaHRtbD1cIm1lbWJlci5ub3RlXCIgY2xhc3M9XCJja2VkaXRvci1jb250ZW50XCIvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L3RyYW5zaXRpb24tZ3JvdXA+XG4gIDwvZGl2PlxuXG48L3RlbXBsYXRlPlxuXG48c3R5bGU+XG4gIC5tYXNvbnJ5IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ2FwOiAwLjVyZW07XG5cbiAgICA+IGRpdiB7XG4gICAgICBncmlkLXJvdzogc3BhbiAyO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAvKiBoZWlnaHQ6IDEwMCU7ICovXG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gICAgfVxuXG4gICAgZGl2LnBvcnRyYWl0IHtcbiAgICAgIGdyaWQtcm93OiBzcGFuIDM7XG4gICAgICBpbWcge1xuICAgICAgICBhc3BlY3QtcmF0aW86IDIgLyAzO1xuICAgICAgfVxuICAgIH1cblxuICAgIGRpdi51bnBvcnRyYWl0IHtcbiAgICAgIGdyaWQtcm93OiBzcGFuIDI7XG4gICAgICBpbWcge1xuICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgICAgfVxuICAgIH1cblxuICAgIGRpdi5vcGVuIHtcbiAgICAgIC8qIGdyaWQtcm93OiAxIC8gLTE7ICovXG4gICAgICBncmlkLWNvbHVtbjogc3BhbiAzO1xuICAgICAgZ3JpZC1yb3c6IHNwYW4gMztcbiAgICAgIGltZyB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogdW5zZXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuPC9zdHlsZT5cblxuPHNjcmlwdCBzZXR1cD5cbmltcG9ydCB7IHJlZiB9IGZyb20gJ3Z1ZSc7XG5pbXBvcnQgeyBzdHJSZXBsYWNlIH0gZnJvbSAnLi4vLi4vaGVscGVycy9zdHJpbmcuanMnO1xuaW1wb3J0IExpbmsgZnJvbSAnLi4vLi4vY29tcG9uZW50cy9ibG9ja3MvTGluay52dWUnO1xuaW1wb3J0IExhenlJbWFnZSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2Jsb2Nrcy9MYXp5SW1hZ2UudnVlJztcblxuZGVmaW5lUHJvcHMoe1xuICB0ZWFtOiB7IHR5cGU6IEFycmF5LCBkZWZhdWx0OiBudWxsIH0sXG59KTtcblxuY29uc3Qgc2VsZWN0ZWRNZW1iZXIgPSByZWYobnVsbCk7XG5cbmNvbnN0IGNsb3NlID0gKGUpID0+IHtcbiAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICBzZWxlY3RlZE1lbWJlci52YWx1ZSA9IG51bGw7XG59O1xuXG5jb25zdCBnZXRBY3RpdmVCcmVha3BvaW50ID0gKCkgPT4ge1xuICBpZiAod2luZG93Lm1hdGNoTWVkaWEoJyhtaW4td2lkdGg6IDEyODBweCknKS5tYXRjaGVzKSB7XG4gICAgcmV0dXJuICd4bCc7XG4gIH0gZWxzZSBpZiAod2luZG93Lm1hdGNoTWVkaWEoJyhtaW4td2lkdGg6IDEwMjRweCknKS5tYXRjaGVzKSB7XG4gICAgcmV0dXJuICdsZyc7XG4gIH0gZWxzZSBpZiAod2luZG93Lm1hdGNoTWVkaWEoJyhtaW4td2lkdGg6IDc2OHB4KScpLm1hdGNoZXMpIHtcbiAgICByZXR1cm4gJ21kJztcbiAgfSBlbHNlIGlmICh3aW5kb3cubWF0Y2hNZWRpYSgnKG1pbi13aWR0aDogNjQwcHgpJykubWF0Y2hlcykge1xuICAgIHJldHVybiAnc20nO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiAnZGVmYXVsdCc7XG4gIH1cbn07XG5cbmNvbnN0IG9wZW5JbWFnZSA9IChpbWFnZU51bSwgZXZlbnQpID0+IHtcblxuICBsZXQgaG9sZGVyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgLm1hc29ucnlgKTtcbiAgbGV0IHJlY3QgPSBob2xkZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gIGxldCBzY3JvbGxUb3AgPSB3aW5kb3cucGFnZVlPZmZzZXQ7XG4gIGxldCBhYnNvbHV0ZVRvcCA9IHJlY3QudG9wICsgc2Nyb2xsVG9wIC0gMjAwO1xuICBsZXQgcm93TnVtID0gKE1hdGguY2VpbCgoaW1hZ2VOdW0rMSkvMykqMiktMjtcbiAgbGV0IGJsb2NrU2l6ZSA9IDQ2Mi8yO1xuICBcbiAgc2VsZWN0ZWRNZW1iZXIudmFsdWUgPSBpbWFnZU51bTtcblxuICBsZXQgYnJlYWtwb2ludCA9IGdldEFjdGl2ZUJyZWFrcG9pbnQoKTtcbiAgaWYgKGJyZWFrcG9pbnQgPT0gJ21kJyB8fCBicmVha3BvaW50ID09ICdsZycgfHwgYnJlYWtwb2ludCA9PSAneGwnKSB7XG4gICAgd2luZG93LnNjcm9sbFRvKHsgdG9wOiBhYnNvbHV0ZVRvcCArIChibG9ja1NpemUqcm93TnVtKSwgYmVoYXZpb3I6IFwic21vb3RoXCIgfSk7XG4gIH1cbn07XG5cbmNvbnN0IGdldFJhbmRvbUJvb2wgPSAoKSA9PiB7XG4gIHJldHVybiBNYXRoLnJhbmRvbSgpIDwgMC41O1xufVxuXG48L3NjcmlwdD4iLG51bGwsIkBsYXllciB0aGVtZSwgYmFzZSwgY29tcG9uZW50cywgdXRpbGl0aWVzO1xuXG5AbGF5ZXIgdGhlbWUge1xuICBAdGhlbWUgZGVmYXVsdCB7XG4gICAgLS1mb250LXNhbnM6XG4gICAgICB1aS1zYW5zLXNlcmlmLCBzeXN0ZW0tdWksIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIixcbiAgICAgIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCI7XG4gICAgLS1mb250LXNlcmlmOiB1aS1zZXJpZiwgR2VvcmdpYSwgQ2FtYnJpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmO1xuICAgIC0tZm9udC1tb25vOlxuICAgICAgdWktbW9ub3NwYWNlLCBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsXG4gICAgICBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZTtcblxuICAgIC0tY29sb3ItcmVkLTUwOiBva2xjaCg5Ny4xJSAwLjAxMyAxNy4zOCk7XG4gICAgLS1jb2xvci1yZWQtMTAwOiBva2xjaCg5My42JSAwLjAzMiAxNy43MTcpO1xuICAgIC0tY29sb3ItcmVkLTIwMDogb2tsY2goODguNSUgMC4wNjIgMTguMzM0KTtcbiAgICAtLWNvbG9yLXJlZC0zMDA6IG9rbGNoKDgwLjglIDAuMTE0IDE5LjU3MSk7XG4gICAgLS1jb2xvci1yZWQtNDAwOiBva2xjaCg3MC40JSAwLjE5MSAyMi4yMTYpO1xuICAgIC0tY29sb3ItcmVkLTUwMDogb2tsY2goNjMuNyUgMC4yMzcgMjUuMzMxKTtcbiAgICAtLWNvbG9yLXJlZC02MDA6IG9rbGNoKDU3LjclIDAuMjQ1IDI3LjMyNSk7XG4gICAgLS1jb2xvci1yZWQtNzAwOiBva2xjaCg1MC41JSAwLjIxMyAyNy41MTgpO1xuICAgIC0tY29sb3ItcmVkLTgwMDogb2tsY2goNDQuNCUgMC4xNzcgMjYuODk5KTtcbiAgICAtLWNvbG9yLXJlZC05MDA6IG9rbGNoKDM5LjYlIDAuMTQxIDI1LjcyMyk7XG4gICAgLS1jb2xvci1yZWQtOTUwOiBva2xjaCgyNS44JSAwLjA5MiAyNi4wNDIpO1xuXG4gICAgLS1jb2xvci1vcmFuZ2UtNTA6IG9rbGNoKDk4JSAwLjAxNiA3My42ODQpO1xuICAgIC0tY29sb3Itb3JhbmdlLTEwMDogb2tsY2goOTUuNCUgMC4wMzggNzUuMTY0KTtcbiAgICAtLWNvbG9yLW9yYW5nZS0yMDA6IG9rbGNoKDkwLjElIDAuMDc2IDcwLjY5Nyk7XG4gICAgLS1jb2xvci1vcmFuZ2UtMzAwOiBva2xjaCg4My43JSAwLjEyOCA2Ni4yOSk7XG4gICAgLS1jb2xvci1vcmFuZ2UtNDAwOiBva2xjaCg3NSUgMC4xODMgNTUuOTM0KTtcbiAgICAtLWNvbG9yLW9yYW5nZS01MDA6IG9rbGNoKDcwLjUlIDAuMjEzIDQ3LjYwNCk7XG4gICAgLS1jb2xvci1vcmFuZ2UtNjAwOiBva2xjaCg2NC42JSAwLjIyMiA0MS4xMTYpO1xuICAgIC0tY29sb3Itb3JhbmdlLTcwMDogb2tsY2goNTUuMyUgMC4xOTUgMzguNDAyKTtcbiAgICAtLWNvbG9yLW9yYW5nZS04MDA6IG9rbGNoKDQ3JSAwLjE1NyAzNy4zMDQpO1xuICAgIC0tY29sb3Itb3JhbmdlLTkwMDogb2tsY2goNDAuOCUgMC4xMjMgMzguMTcyKTtcbiAgICAtLWNvbG9yLW9yYW5nZS05NTA6IG9rbGNoKDI2LjYlIDAuMDc5IDM2LjI1OSk7XG5cbiAgICAtLWNvbG9yLWFtYmVyLTUwOiBva2xjaCg5OC43JSAwLjAyMiA5NS4yNzcpO1xuICAgIC0tY29sb3ItYW1iZXItMTAwOiBva2xjaCg5Ni4yJSAwLjA1OSA5NS42MTcpO1xuICAgIC0tY29sb3ItYW1iZXItMjAwOiBva2xjaCg5Mi40JSAwLjEyIDk1Ljc0Nik7XG4gICAgLS1jb2xvci1hbWJlci0zMDA6IG9rbGNoKDg3LjklIDAuMTY5IDkxLjYwNSk7XG4gICAgLS1jb2xvci1hbWJlci00MDA6IG9rbGNoKDgyLjglIDAuMTg5IDg0LjQyOSk7XG4gICAgLS1jb2xvci1hbWJlci01MDA6IG9rbGNoKDc2LjklIDAuMTg4IDcwLjA4KTtcbiAgICAtLWNvbG9yLWFtYmVyLTYwMDogb2tsY2goNjYuNiUgMC4xNzkgNTguMzE4KTtcbiAgICAtLWNvbG9yLWFtYmVyLTcwMDogb2tsY2goNTUuNSUgMC4xNjMgNDguOTk4KTtcbiAgICAtLWNvbG9yLWFtYmVyLTgwMDogb2tsY2goNDcuMyUgMC4xMzcgNDYuMjAxKTtcbiAgICAtLWNvbG9yLWFtYmVyLTkwMDogb2tsY2goNDEuNCUgMC4xMTIgNDUuOTA0KTtcbiAgICAtLWNvbG9yLWFtYmVyLTk1MDogb2tsY2goMjcuOSUgMC4wNzcgNDUuNjM1KTtcblxuICAgIC0tY29sb3IteWVsbG93LTUwOiBva2xjaCg5OC43JSAwLjAyNiAxMDIuMjEyKTtcbiAgICAtLWNvbG9yLXllbGxvdy0xMDA6IG9rbGNoKDk3LjMlIDAuMDcxIDEwMy4xOTMpO1xuICAgIC0tY29sb3IteWVsbG93LTIwMDogb2tsY2goOTQuNSUgMC4xMjkgMTAxLjU0KTtcbiAgICAtLWNvbG9yLXllbGxvdy0zMDA6IG9rbGNoKDkwLjUlIDAuMTgyIDk4LjExMSk7XG4gICAgLS1jb2xvci15ZWxsb3ctNDAwOiBva2xjaCg4NS4yJSAwLjE5OSA5MS45MzYpO1xuICAgIC0tY29sb3IteWVsbG93LTUwMDogb2tsY2goNzkuNSUgMC4xODQgODYuMDQ3KTtcbiAgICAtLWNvbG9yLXllbGxvdy02MDA6IG9rbGNoKDY4LjElIDAuMTYyIDc1LjgzNCk7XG4gICAgLS1jb2xvci15ZWxsb3ctNzAwOiBva2xjaCg1NS40JSAwLjEzNSA2Ni40NDIpO1xuICAgIC0tY29sb3IteWVsbG93LTgwMDogb2tsY2goNDcuNiUgMC4xMTQgNjEuOTA3KTtcbiAgICAtLWNvbG9yLXllbGxvdy05MDA6IG9rbGNoKDQyLjElIDAuMDk1IDU3LjcwOCk7XG4gICAgLS1jb2xvci15ZWxsb3ctOTUwOiBva2xjaCgyOC42JSAwLjA2NiA1My44MTMpO1xuXG4gICAgLS1jb2xvci1saW1lLTUwOiBva2xjaCg5OC42JSAwLjAzMSAxMjAuNzU3KTtcbiAgICAtLWNvbG9yLWxpbWUtMTAwOiBva2xjaCg5Ni43JSAwLjA2NyAxMjIuMzI4KTtcbiAgICAtLWNvbG9yLWxpbWUtMjAwOiBva2xjaCg5My44JSAwLjEyNyAxMjQuMzIxKTtcbiAgICAtLWNvbG9yLWxpbWUtMzAwOiBva2xjaCg4OS43JSAwLjE5NiAxMjYuNjY1KTtcbiAgICAtLWNvbG9yLWxpbWUtNDAwOiBva2xjaCg4NC4xJSAwLjIzOCAxMjguODUpO1xuICAgIC0tY29sb3ItbGltZS01MDA6IG9rbGNoKDc2LjglIDAuMjMzIDEzMC44NSk7XG4gICAgLS1jb2xvci1saW1lLTYwMDogb2tsY2goNjQuOCUgMC4yIDEzMS42ODQpO1xuICAgIC0tY29sb3ItbGltZS03MDA6IG9rbGNoKDUzLjIlIDAuMTU3IDEzMS41ODkpO1xuICAgIC0tY29sb3ItbGltZS04MDA6IG9rbGNoKDQ1LjMlIDAuMTI0IDEzMC45MzMpO1xuICAgIC0tY29sb3ItbGltZS05MDA6IG9rbGNoKDQwLjUlIDAuMTAxIDEzMS4wNjMpO1xuICAgIC0tY29sb3ItbGltZS05NTA6IG9rbGNoKDI3LjQlIDAuMDcyIDEzMi4xMDkpO1xuXG4gICAgLS1jb2xvci1ncmVlbi01MDogb2tsY2goOTguMiUgMC4wMTggMTU1LjgyNik7XG4gICAgLS1jb2xvci1ncmVlbi0xMDA6IG9rbGNoKDk2LjIlIDAuMDQ0IDE1Ni43NDMpO1xuICAgIC0tY29sb3ItZ3JlZW4tMjAwOiBva2xjaCg5Mi41JSAwLjA4NCAxNTUuOTk1KTtcbiAgICAtLWNvbG9yLWdyZWVuLTMwMDogb2tsY2goODcuMSUgMC4xNSAxNTQuNDQ5KTtcbiAgICAtLWNvbG9yLWdyZWVuLTQwMDogb2tsY2goNzkuMiUgMC4yMDkgMTUxLjcxMSk7XG4gICAgLS1jb2xvci1ncmVlbi01MDA6IG9rbGNoKDcyLjMlIDAuMjE5IDE0OS41NzkpO1xuICAgIC0tY29sb3ItZ3JlZW4tNjAwOiBva2xjaCg2Mi43JSAwLjE5NCAxNDkuMjE0KTtcbiAgICAtLWNvbG9yLWdyZWVuLTcwMDogb2tsY2goNTIuNyUgMC4xNTQgMTUwLjA2OSk7XG4gICAgLS1jb2xvci1ncmVlbi04MDA6IG9rbGNoKDQ0LjglIDAuMTE5IDE1MS4zMjgpO1xuICAgIC0tY29sb3ItZ3JlZW4tOTAwOiBva2xjaCgzOS4zJSAwLjA5NSAxNTIuNTM1KTtcbiAgICAtLWNvbG9yLWdyZWVuLTk1MDogb2tsY2goMjYuNiUgMC4wNjUgMTUyLjkzNCk7XG5cbiAgICAtLWNvbG9yLWVtZXJhbGQtNTA6IG9rbGNoKDk3LjklIDAuMDIxIDE2Ni4xMTMpO1xuICAgIC0tY29sb3ItZW1lcmFsZC0xMDA6IG9rbGNoKDk1JSAwLjA1MiAxNjMuMDUxKTtcbiAgICAtLWNvbG9yLWVtZXJhbGQtMjAwOiBva2xjaCg5MC41JSAwLjA5MyAxNjQuMTUpO1xuICAgIC0tY29sb3ItZW1lcmFsZC0zMDA6IG9rbGNoKDg0LjUlIDAuMTQzIDE2NC45NzgpO1xuICAgIC0tY29sb3ItZW1lcmFsZC00MDA6IG9rbGNoKDc2LjUlIDAuMTc3IDE2My4yMjMpO1xuICAgIC0tY29sb3ItZW1lcmFsZC01MDA6IG9rbGNoKDY5LjYlIDAuMTcgMTYyLjQ4KTtcbiAgICAtLWNvbG9yLWVtZXJhbGQtNjAwOiBva2xjaCg1OS42JSAwLjE0NSAxNjMuMjI1KTtcbiAgICAtLWNvbG9yLWVtZXJhbGQtNzAwOiBva2xjaCg1MC44JSAwLjExOCAxNjUuNjEyKTtcbiAgICAtLWNvbG9yLWVtZXJhbGQtODAwOiBva2xjaCg0My4yJSAwLjA5NSAxNjYuOTEzKTtcbiAgICAtLWNvbG9yLWVtZXJhbGQtOTAwOiBva2xjaCgzNy44JSAwLjA3NyAxNjguOTQpO1xuICAgIC0tY29sb3ItZW1lcmFsZC05NTA6IG9rbGNoKDI2LjIlIDAuMDUxIDE3Mi41NTIpO1xuXG4gICAgLS1jb2xvci10ZWFsLTUwOiBva2xjaCg5OC40JSAwLjAxNCAxODAuNzIpO1xuICAgIC0tY29sb3ItdGVhbC0xMDA6IG9rbGNoKDk1LjMlIDAuMDUxIDE4MC44MDEpO1xuICAgIC0tY29sb3ItdGVhbC0yMDA6IG9rbGNoKDkxJSAwLjA5NiAxODAuNDI2KTtcbiAgICAtLWNvbG9yLXRlYWwtMzAwOiBva2xjaCg4NS41JSAwLjEzOCAxODEuMDcxKTtcbiAgICAtLWNvbG9yLXRlYWwtNDAwOiBva2xjaCg3Ny43JSAwLjE1MiAxODEuOTEyKTtcbiAgICAtLWNvbG9yLXRlYWwtNTAwOiBva2xjaCg3MC40JSAwLjE0IDE4Mi41MDMpO1xuICAgIC0tY29sb3ItdGVhbC02MDA6IG9rbGNoKDYwJSAwLjExOCAxODQuNzA0KTtcbiAgICAtLWNvbG9yLXRlYWwtNzAwOiBva2xjaCg1MS4xJSAwLjA5NiAxODYuMzkxKTtcbiAgICAtLWNvbG9yLXRlYWwtODAwOiBva2xjaCg0My43JSAwLjA3OCAxODguMjE2KTtcbiAgICAtLWNvbG9yLXRlYWwtOTAwOiBva2xjaCgzOC42JSAwLjA2MyAxODguNDE2KTtcbiAgICAtLWNvbG9yLXRlYWwtOTUwOiBva2xjaCgyNy43JSAwLjA0NiAxOTIuNTI0KTtcblxuICAgIC0tY29sb3ItY3lhbi01MDogb2tsY2goOTguNCUgMC4wMTkgMjAwLjg3Myk7XG4gICAgLS1jb2xvci1jeWFuLTEwMDogb2tsY2goOTUuNiUgMC4wNDUgMjAzLjM4OCk7XG4gICAgLS1jb2xvci1jeWFuLTIwMDogb2tsY2goOTEuNyUgMC4wOCAyMDUuMDQxKTtcbiAgICAtLWNvbG9yLWN5YW4tMzAwOiBva2xjaCg4Ni41JSAwLjEyNyAyMDcuMDc4KTtcbiAgICAtLWNvbG9yLWN5YW4tNDAwOiBva2xjaCg3OC45JSAwLjE1NCAyMTEuNTMpO1xuICAgIC0tY29sb3ItY3lhbi01MDA6IG9rbGNoKDcxLjUlIDAuMTQzIDIxNS4yMjEpO1xuICAgIC0tY29sb3ItY3lhbi02MDA6IG9rbGNoKDYwLjklIDAuMTI2IDIyMS43MjMpO1xuICAgIC0tY29sb3ItY3lhbi03MDA6IG9rbGNoKDUyJSAwLjEwNSAyMjMuMTI4KTtcbiAgICAtLWNvbG9yLWN5YW4tODAwOiBva2xjaCg0NSUgMC4wODUgMjI0LjI4Myk7XG4gICAgLS1jb2xvci1jeWFuLTkwMDogb2tsY2goMzkuOCUgMC4wNyAyMjcuMzkyKTtcbiAgICAtLWNvbG9yLWN5YW4tOTUwOiBva2xjaCgzMC4yJSAwLjA1NiAyMjkuNjk1KTtcblxuICAgIC0tY29sb3Itc2t5LTUwOiBva2xjaCg5Ny43JSAwLjAxMyAyMzYuNjIpO1xuICAgIC0tY29sb3Itc2t5LTEwMDogb2tsY2goOTUuMSUgMC4wMjYgMjM2LjgyNCk7XG4gICAgLS1jb2xvci1za3ktMjAwOiBva2xjaCg5MC4xJSAwLjA1OCAyMzAuOTAyKTtcbiAgICAtLWNvbG9yLXNreS0zMDA6IG9rbGNoKDgyLjglIDAuMTExIDIzMC4zMTgpO1xuICAgIC0tY29sb3Itc2t5LTQwMDogb2tsY2goNzQuNiUgMC4xNiAyMzIuNjYxKTtcbiAgICAtLWNvbG9yLXNreS01MDA6IG9rbGNoKDY4LjUlIDAuMTY5IDIzNy4zMjMpO1xuICAgIC0tY29sb3Itc2t5LTYwMDogb2tsY2goNTguOCUgMC4xNTggMjQxLjk2Nik7XG4gICAgLS1jb2xvci1za3ktNzAwOiBva2xjaCg1MCUgMC4xMzQgMjQyLjc0OSk7XG4gICAgLS1jb2xvci1za3ktODAwOiBva2xjaCg0NC4zJSAwLjExIDI0MC43OSk7XG4gICAgLS1jb2xvci1za3ktOTAwOiBva2xjaCgzOS4xJSAwLjA5IDI0MC44NzYpO1xuICAgIC0tY29sb3Itc2t5LTk1MDogb2tsY2goMjkuMyUgMC4wNjYgMjQzLjE1Nyk7XG5cbiAgICAtLWNvbG9yLWJsdWUtNTA6IG9rbGNoKDk3JSAwLjAxNCAyNTQuNjA0KTtcbiAgICAtLWNvbG9yLWJsdWUtMTAwOiBva2xjaCg5My4yJSAwLjAzMiAyNTUuNTg1KTtcbiAgICAtLWNvbG9yLWJsdWUtMjAwOiBva2xjaCg4OC4yJSAwLjA1OSAyNTQuMTI4KTtcbiAgICAtLWNvbG9yLWJsdWUtMzAwOiBva2xjaCg4MC45JSAwLjEwNSAyNTEuODEzKTtcbiAgICAtLWNvbG9yLWJsdWUtNDAwOiBva2xjaCg3MC43JSAwLjE2NSAyNTQuNjI0KTtcbiAgICAtLWNvbG9yLWJsdWUtNTAwOiBva2xjaCg2Mi4zJSAwLjIxNCAyNTkuODE1KTtcbiAgICAtLWNvbG9yLWJsdWUtNjAwOiBva2xjaCg1NC42JSAwLjI0NSAyNjIuODgxKTtcbiAgICAtLWNvbG9yLWJsdWUtNzAwOiBva2xjaCg0OC44JSAwLjI0MyAyNjQuMzc2KTtcbiAgICAtLWNvbG9yLWJsdWUtODAwOiBva2xjaCg0Mi40JSAwLjE5OSAyNjUuNjM4KTtcbiAgICAtLWNvbG9yLWJsdWUtOTAwOiBva2xjaCgzNy45JSAwLjE0NiAyNjUuNTIyKTtcbiAgICAtLWNvbG9yLWJsdWUtOTUwOiBva2xjaCgyOC4yJSAwLjA5MSAyNjcuOTM1KTtcblxuICAgIC0tY29sb3ItaW5kaWdvLTUwOiBva2xjaCg5Ni4yJSAwLjAxOCAyNzIuMzE0KTtcbiAgICAtLWNvbG9yLWluZGlnby0xMDA6IG9rbGNoKDkzJSAwLjAzNCAyNzIuNzg4KTtcbiAgICAtLWNvbG9yLWluZGlnby0yMDA6IG9rbGNoKDg3JSAwLjA2NSAyNzQuMDM5KTtcbiAgICAtLWNvbG9yLWluZGlnby0zMDA6IG9rbGNoKDc4LjUlIDAuMTE1IDI3NC43MTMpO1xuICAgIC0tY29sb3ItaW5kaWdvLTQwMDogb2tsY2goNjcuMyUgMC4xODIgMjc2LjkzNSk7XG4gICAgLS1jb2xvci1pbmRpZ28tNTAwOiBva2xjaCg1OC41JSAwLjIzMyAyNzcuMTE3KTtcbiAgICAtLWNvbG9yLWluZGlnby02MDA6IG9rbGNoKDUxLjElIDAuMjYyIDI3Ni45NjYpO1xuICAgIC0tY29sb3ItaW5kaWdvLTcwMDogb2tsY2goNDUuNyUgMC4yNCAyNzcuMDIzKTtcbiAgICAtLWNvbG9yLWluZGlnby04MDA6IG9rbGNoKDM5LjglIDAuMTk1IDI3Ny4zNjYpO1xuICAgIC0tY29sb3ItaW5kaWdvLTkwMDogb2tsY2goMzUuOSUgMC4xNDQgMjc4LjY5Nyk7XG4gICAgLS1jb2xvci1pbmRpZ28tOTUwOiBva2xjaCgyNS43JSAwLjA5IDI4MS4yODgpO1xuXG4gICAgLS1jb2xvci12aW9sZXQtNTA6IG9rbGNoKDk2LjklIDAuMDE2IDI5My43NTYpO1xuICAgIC0tY29sb3ItdmlvbGV0LTEwMDogb2tsY2goOTQuMyUgMC4wMjkgMjk0LjU4OCk7XG4gICAgLS1jb2xvci12aW9sZXQtMjAwOiBva2xjaCg4OS40JSAwLjA1NyAyOTMuMjgzKTtcbiAgICAtLWNvbG9yLXZpb2xldC0zMDA6IG9rbGNoKDgxLjElIDAuMTExIDI5My41NzEpO1xuICAgIC0tY29sb3ItdmlvbGV0LTQwMDogb2tsY2goNzAuMiUgMC4xODMgMjkzLjU0MSk7XG4gICAgLS1jb2xvci12aW9sZXQtNTAwOiBva2xjaCg2MC42JSAwLjI1IDI5Mi43MTcpO1xuICAgIC0tY29sb3ItdmlvbGV0LTYwMDogb2tsY2goNTQuMSUgMC4yODEgMjkzLjAwOSk7XG4gICAgLS1jb2xvci12aW9sZXQtNzAwOiBva2xjaCg0OS4xJSAwLjI3IDI5Mi41ODEpO1xuICAgIC0tY29sb3ItdmlvbGV0LTgwMDogb2tsY2goNDMuMiUgMC4yMzIgMjkyLjc1OSk7XG4gICAgLS1jb2xvci12aW9sZXQtOTAwOiBva2xjaCgzOCUgMC4xODkgMjkzLjc0NSk7XG4gICAgLS1jb2xvci12aW9sZXQtOTUwOiBva2xjaCgyOC4zJSAwLjE0MSAyOTEuMDg5KTtcblxuICAgIC0tY29sb3ItcHVycGxlLTUwOiBva2xjaCg5Ny43JSAwLjAxNCAzMDguMjk5KTtcbiAgICAtLWNvbG9yLXB1cnBsZS0xMDA6IG9rbGNoKDk0LjYlIDAuMDMzIDMwNy4xNzQpO1xuICAgIC0tY29sb3ItcHVycGxlLTIwMDogb2tsY2goOTAuMiUgMC4wNjMgMzA2LjcwMyk7XG4gICAgLS1jb2xvci1wdXJwbGUtMzAwOiBva2xjaCg4Mi43JSAwLjExOSAzMDYuMzgzKTtcbiAgICAtLWNvbG9yLXB1cnBsZS00MDA6IG9rbGNoKDcxLjQlIDAuMjAzIDMwNS41MDQpO1xuICAgIC0tY29sb3ItcHVycGxlLTUwMDogb2tsY2goNjIuNyUgMC4yNjUgMzAzLjkpO1xuICAgIC0tY29sb3ItcHVycGxlLTYwMDogb2tsY2goNTUuOCUgMC4yODggMzAyLjMyMSk7XG4gICAgLS1jb2xvci1wdXJwbGUtNzAwOiBva2xjaCg0OS42JSAwLjI2NSAzMDEuOTI0KTtcbiAgICAtLWNvbG9yLXB1cnBsZS04MDA6IG9rbGNoKDQzLjglIDAuMjE4IDMwMy43MjQpO1xuICAgIC0tY29sb3ItcHVycGxlLTkwMDogb2tsY2goMzguMSUgMC4xNzYgMzA0Ljk4Nyk7XG4gICAgLS1jb2xvci1wdXJwbGUtOTUwOiBva2xjaCgyOS4xJSAwLjE0OSAzMDIuNzE3KTtcblxuICAgIC0tY29sb3ItZnVjaHNpYS01MDogb2tsY2goOTcuNyUgMC4wMTcgMzIwLjA1OCk7XG4gICAgLS1jb2xvci1mdWNoc2lhLTEwMDogb2tsY2goOTUuMiUgMC4wMzcgMzE4Ljg1Mik7XG4gICAgLS1jb2xvci1mdWNoc2lhLTIwMDogb2tsY2goOTAuMyUgMC4wNzYgMzE5LjYyKTtcbiAgICAtLWNvbG9yLWZ1Y2hzaWEtMzAwOiBva2xjaCg4My4zJSAwLjE0NSAzMjEuNDM0KTtcbiAgICAtLWNvbG9yLWZ1Y2hzaWEtNDAwOiBva2xjaCg3NCUgMC4yMzggMzIyLjE2KTtcbiAgICAtLWNvbG9yLWZ1Y2hzaWEtNTAwOiBva2xjaCg2Ni43JSAwLjI5NSAzMjIuMTUpO1xuICAgIC0tY29sb3ItZnVjaHNpYS02MDA6IG9rbGNoKDU5LjElIDAuMjkzIDMyMi44OTYpO1xuICAgIC0tY29sb3ItZnVjaHNpYS03MDA6IG9rbGNoKDUxLjglIDAuMjUzIDMyMy45NDkpO1xuICAgIC0tY29sb3ItZnVjaHNpYS04MDA6IG9rbGNoKDQ1LjIlIDAuMjExIDMyNC41OTEpO1xuICAgIC0tY29sb3ItZnVjaHNpYS05MDA6IG9rbGNoKDQwLjElIDAuMTcgMzI1LjYxMik7XG4gICAgLS1jb2xvci1mdWNoc2lhLTk1MDogb2tsY2goMjkuMyUgMC4xMzYgMzI1LjY2MSk7XG5cbiAgICAtLWNvbG9yLXBpbmstNTA6IG9rbGNoKDk3LjElIDAuMDE0IDM0My4xOTgpO1xuICAgIC0tY29sb3ItcGluay0xMDA6IG9rbGNoKDk0LjglIDAuMDI4IDM0Mi4yNTgpO1xuICAgIC0tY29sb3ItcGluay0yMDA6IG9rbGNoKDg5LjklIDAuMDYxIDM0My4yMzEpO1xuICAgIC0tY29sb3ItcGluay0zMDA6IG9rbGNoKDgyLjMlIDAuMTIgMzQ2LjAxOCk7XG4gICAgLS1jb2xvci1waW5rLTQwMDogb2tsY2goNzEuOCUgMC4yMDIgMzQ5Ljc2MSk7XG4gICAgLS1jb2xvci1waW5rLTUwMDogb2tsY2goNjUuNiUgMC4yNDEgMzU0LjMwOCk7XG4gICAgLS1jb2xvci1waW5rLTYwMDogb2tsY2goNTkuMiUgMC4yNDkgMC41ODQpO1xuICAgIC0tY29sb3ItcGluay03MDA6IG9rbGNoKDUyLjUlIDAuMjIzIDMuOTU4KTtcbiAgICAtLWNvbG9yLXBpbmstODAwOiBva2xjaCg0NS45JSAwLjE4NyAzLjgxNSk7XG4gICAgLS1jb2xvci1waW5rLTkwMDogb2tsY2goNDAuOCUgMC4xNTMgMi40MzIpO1xuICAgIC0tY29sb3ItcGluay05NTA6IG9rbGNoKDI4LjQlIDAuMTA5IDMuOTA3KTtcblxuICAgIC0tY29sb3Itcm9zZS01MDogb2tsY2goOTYuOSUgMC4wMTUgMTIuNDIyKTtcbiAgICAtLWNvbG9yLXJvc2UtMTAwOiBva2xjaCg5NC4xJSAwLjAzIDEyLjU4KTtcbiAgICAtLWNvbG9yLXJvc2UtMjAwOiBva2xjaCg4OS4yJSAwLjA1OCAxMC4wMDEpO1xuICAgIC0tY29sb3Itcm9zZS0zMDA6IG9rbGNoKDgxJSAwLjExNyAxMS42MzgpO1xuICAgIC0tY29sb3Itcm9zZS00MDA6IG9rbGNoKDcxLjIlIDAuMTk0IDEzLjQyOCk7XG4gICAgLS1jb2xvci1yb3NlLTUwMDogb2tsY2goNjQuNSUgMC4yNDYgMTYuNDM5KTtcbiAgICAtLWNvbG9yLXJvc2UtNjAwOiBva2xjaCg1OC42JSAwLjI1MyAxNy41ODUpO1xuICAgIC0tY29sb3Itcm9zZS03MDA6IG9rbGNoKDUxLjQlIDAuMjIyIDE2LjkzNSk7XG4gICAgLS1jb2xvci1yb3NlLTgwMDogb2tsY2goNDUuNSUgMC4xODggMTMuNjk3KTtcbiAgICAtLWNvbG9yLXJvc2UtOTAwOiBva2xjaCg0MSUgMC4xNTkgMTAuMjcyKTtcbiAgICAtLWNvbG9yLXJvc2UtOTUwOiBva2xjaCgyNy4xJSAwLjEwNSAxMi4wOTQpO1xuXG4gICAgLS1jb2xvci1zbGF0ZS01MDogb2tsY2goOTguNCUgMC4wMDMgMjQ3Ljg1OCk7XG4gICAgLS1jb2xvci1zbGF0ZS0xMDA6IG9rbGNoKDk2LjglIDAuMDA3IDI0Ny44OTYpO1xuICAgIC0tY29sb3Itc2xhdGUtMjAwOiBva2xjaCg5Mi45JSAwLjAxMyAyNTUuNTA4KTtcbiAgICAtLWNvbG9yLXNsYXRlLTMwMDogb2tsY2goODYuOSUgMC4wMjIgMjUyLjg5NCk7XG4gICAgLS1jb2xvci1zbGF0ZS00MDA6IG9rbGNoKDcwLjQlIDAuMDQgMjU2Ljc4OCk7XG4gICAgLS1jb2xvci1zbGF0ZS01MDA6IG9rbGNoKDU1LjQlIDAuMDQ2IDI1Ny40MTcpO1xuICAgIC0tY29sb3Itc2xhdGUtNjAwOiBva2xjaCg0NC42JSAwLjA0MyAyNTcuMjgxKTtcbiAgICAtLWNvbG9yLXNsYXRlLTcwMDogb2tsY2goMzcuMiUgMC4wNDQgMjU3LjI4Nyk7XG4gICAgLS1jb2xvci1zbGF0ZS04MDA6IG9rbGNoKDI3LjklIDAuMDQxIDI2MC4wMzEpO1xuICAgIC0tY29sb3Itc2xhdGUtOTAwOiBva2xjaCgyMC44JSAwLjA0MiAyNjUuNzU1KTtcbiAgICAtLWNvbG9yLXNsYXRlLTk1MDogb2tsY2goMTIuOSUgMC4wNDIgMjY0LjY5NSk7XG5cbiAgICAtLWNvbG9yLWdyYXktNTA6IG9rbGNoKDk4LjUlIDAuMDAyIDI0Ny44MzkpO1xuICAgIC0tY29sb3ItZ3JheS0xMDA6IG9rbGNoKDk2LjclIDAuMDAzIDI2NC41NDIpO1xuICAgIC0tY29sb3ItZ3JheS0yMDA6IG9rbGNoKDkyLjglIDAuMDA2IDI2NC41MzEpO1xuICAgIC0tY29sb3ItZ3JheS0zMDA6IG9rbGNoKDg3LjIlIDAuMDEgMjU4LjMzOCk7XG4gICAgLS1jb2xvci1ncmF5LTQwMDogb2tsY2goNzAuNyUgMC4wMjIgMjYxLjMyNSk7XG4gICAgLS1jb2xvci1ncmF5LTUwMDogb2tsY2goNTUuMSUgMC4wMjcgMjY0LjM2NCk7XG4gICAgLS1jb2xvci1ncmF5LTYwMDogb2tsY2goNDQuNiUgMC4wMyAyNTYuODAyKTtcbiAgICAtLWNvbG9yLWdyYXktNzAwOiBva2xjaCgzNy4zJSAwLjAzNCAyNTkuNzMzKTtcbiAgICAtLWNvbG9yLWdyYXktODAwOiBva2xjaCgyNy44JSAwLjAzMyAyNTYuODQ4KTtcbiAgICAtLWNvbG9yLWdyYXktOTAwOiBva2xjaCgyMSUgMC4wMzQgMjY0LjY2NSk7XG4gICAgLS1jb2xvci1ncmF5LTk1MDogb2tsY2goMTMlIDAuMDI4IDI2MS42OTIpO1xuXG4gICAgLS1jb2xvci16aW5jLTUwOiBva2xjaCg5OC41JSAwIDApO1xuICAgIC0tY29sb3ItemluYy0xMDA6IG9rbGNoKDk2LjclIDAuMDAxIDI4Ni4zNzUpO1xuICAgIC0tY29sb3ItemluYy0yMDA6IG9rbGNoKDkyJSAwLjAwNCAyODYuMzIpO1xuICAgIC0tY29sb3ItemluYy0zMDA6IG9rbGNoKDg3LjElIDAuMDA2IDI4Ni4yODYpO1xuICAgIC0tY29sb3ItemluYy00MDA6IG9rbGNoKDcwLjUlIDAuMDE1IDI4Ni4wNjcpO1xuICAgIC0tY29sb3ItemluYy01MDA6IG9rbGNoKDU1LjIlIDAuMDE2IDI4NS45MzgpO1xuICAgIC0tY29sb3ItemluYy02MDA6IG9rbGNoKDQ0LjIlIDAuMDE3IDI4NS43ODYpO1xuICAgIC0tY29sb3ItemluYy03MDA6IG9rbGNoKDM3JSAwLjAxMyAyODUuODA1KTtcbiAgICAtLWNvbG9yLXppbmMtODAwOiBva2xjaCgyNy40JSAwLjAwNiAyODYuMDMzKTtcbiAgICAtLWNvbG9yLXppbmMtOTAwOiBva2xjaCgyMSUgMC4wMDYgMjg1Ljg4NSk7XG4gICAgLS1jb2xvci16aW5jLTk1MDogb2tsY2goMTQuMSUgMC4wMDUgMjg1LjgyMyk7XG5cbiAgICAtLWNvbG9yLW5ldXRyYWwtNTA6IG9rbGNoKDk4LjUlIDAgMCk7XG4gICAgLS1jb2xvci1uZXV0cmFsLTEwMDogb2tsY2goOTclIDAgMCk7XG4gICAgLS1jb2xvci1uZXV0cmFsLTIwMDogb2tsY2goOTIuMiUgMCAwKTtcbiAgICAtLWNvbG9yLW5ldXRyYWwtMzAwOiBva2xjaCg4NyUgMCAwKTtcbiAgICAtLWNvbG9yLW5ldXRyYWwtNDAwOiBva2xjaCg3MC44JSAwIDApO1xuICAgIC0tY29sb3ItbmV1dHJhbC01MDA6IG9rbGNoKDU1LjYlIDAgMCk7XG4gICAgLS1jb2xvci1uZXV0cmFsLTYwMDogb2tsY2goNDMuOSUgMCAwKTtcbiAgICAtLWNvbG9yLW5ldXRyYWwtNzAwOiBva2xjaCgzNy4xJSAwIDApO1xuICAgIC0tY29sb3ItbmV1dHJhbC04MDA6IG9rbGNoKDI2LjklIDAgMCk7XG4gICAgLS1jb2xvci1uZXV0cmFsLTkwMDogb2tsY2goMjAuNSUgMCAwKTtcbiAgICAtLWNvbG9yLW5ldXRyYWwtOTUwOiBva2xjaCgxNC41JSAwIDApO1xuXG4gICAgLS1jb2xvci1zdG9uZS01MDogb2tsY2goOTguNSUgMC4wMDEgMTA2LjQyMyk7XG4gICAgLS1jb2xvci1zdG9uZS0xMDA6IG9rbGNoKDk3JSAwLjAwMSAxMDYuNDI0KTtcbiAgICAtLWNvbG9yLXN0b25lLTIwMDogb2tsY2goOTIuMyUgMC4wMDMgNDguNzE3KTtcbiAgICAtLWNvbG9yLXN0b25lLTMwMDogb2tsY2goODYuOSUgMC4wMDUgNTYuMzY2KTtcbiAgICAtLWNvbG9yLXN0b25lLTQwMDogb2tsY2goNzAuOSUgMC4wMSA1Ni4yNTkpO1xuICAgIC0tY29sb3Itc3RvbmUtNTAwOiBva2xjaCg1NS4zJSAwLjAxMyA1OC4wNzEpO1xuICAgIC0tY29sb3Itc3RvbmUtNjAwOiBva2xjaCg0NC40JSAwLjAxMSA3My42MzkpO1xuICAgIC0tY29sb3Itc3RvbmUtNzAwOiBva2xjaCgzNy40JSAwLjAxIDY3LjU1OCk7XG4gICAgLS1jb2xvci1zdG9uZS04MDA6IG9rbGNoKDI2LjglIDAuMDA3IDM0LjI5OCk7XG4gICAgLS1jb2xvci1zdG9uZS05MDA6IG9rbGNoKDIxLjYlIDAuMDA2IDU2LjA0Myk7XG4gICAgLS1jb2xvci1zdG9uZS05NTA6IG9rbGNoKDE0LjclIDAuMDA0IDQ5LjI1KTtcblxuICAgIC0tY29sb3ItYmxhY2s6ICMwMDA7XG4gICAgLS1jb2xvci13aGl0ZTogI2ZmZjtcblxuICAgIC0tc3BhY2luZzogMC4yNXJlbTtcblxuICAgIC0tYnJlYWtwb2ludC1zbTogNDByZW07XG4gICAgLS1icmVha3BvaW50LW1kOiA0OHJlbTtcbiAgICAtLWJyZWFrcG9pbnQtbGc6IDY0cmVtO1xuICAgIC0tYnJlYWtwb2ludC14bDogODByZW07XG4gICAgLS1icmVha3BvaW50LTJ4bDogOTZyZW07XG5cbiAgICAtLWNvbnRhaW5lci0zeHM6IDE2cmVtO1xuICAgIC0tY29udGFpbmVyLTJ4czogMThyZW07XG4gICAgLS1jb250YWluZXIteHM6IDIwcmVtO1xuICAgIC0tY29udGFpbmVyLXNtOiAyNHJlbTtcbiAgICAtLWNvbnRhaW5lci1tZDogMjhyZW07XG4gICAgLS1jb250YWluZXItbGc6IDMycmVtO1xuICAgIC0tY29udGFpbmVyLXhsOiAzNnJlbTtcbiAgICAtLWNvbnRhaW5lci0yeGw6IDQycmVtO1xuICAgIC0tY29udGFpbmVyLTN4bDogNDhyZW07XG4gICAgLS1jb250YWluZXItNHhsOiA1NnJlbTtcbiAgICAtLWNvbnRhaW5lci01eGw6IDY0cmVtO1xuICAgIC0tY29udGFpbmVyLTZ4bDogNzJyZW07XG4gICAgLS1jb250YWluZXItN3hsOiA4MHJlbTtcblxuICAgIC0tdGV4dC14czogMC43NXJlbTtcbiAgICAtLXRleHQteHMtLWxpbmUtaGVpZ2h0OiBjYWxjKDEgLyAwLjc1KTtcbiAgICAtLXRleHQtc206IDAuODc1cmVtO1xuICAgIC0tdGV4dC1zbS0tbGluZS1oZWlnaHQ6IGNhbGMoMS4yNSAvIDAuODc1KTtcbiAgICAtLXRleHQtYmFzZTogMXJlbTtcbiAgICAtLXRleHQtYmFzZS0tbGluZS1oZWlnaHQ6IGNhbGMoMS41IC8gMSk7XG4gICAgLS10ZXh0LWxnOiAxLjEyNXJlbTtcbiAgICAtLXRleHQtbGctLWxpbmUtaGVpZ2h0OiBjYWxjKDEuNzUgLyAxLjEyNSk7XG4gICAgLS10ZXh0LXhsOiAxLjI1cmVtO1xuICAgIC0tdGV4dC14bC0tbGluZS1oZWlnaHQ6IGNhbGMoMS43NSAvIDEuMjUpO1xuICAgIC0tdGV4dC0yeGw6IDEuNXJlbTtcbiAgICAtLXRleHQtMnhsLS1saW5lLWhlaWdodDogY2FsYygyIC8gMS41KTtcbiAgICAtLXRleHQtM3hsOiAxLjg3NXJlbTtcbiAgICAtLXRleHQtM3hsLS1saW5lLWhlaWdodDogY2FsYygyLjI1IC8gMS44NzUpO1xuICAgIC0tdGV4dC00eGw6IDIuMjVyZW07XG4gICAgLS10ZXh0LTR4bC0tbGluZS1oZWlnaHQ6IGNhbGMoMi41IC8gMi4yNSk7XG4gICAgLS10ZXh0LTV4bDogM3JlbTtcbiAgICAtLXRleHQtNXhsLS1saW5lLWhlaWdodDogMTtcbiAgICAtLXRleHQtNnhsOiAzLjc1cmVtO1xuICAgIC0tdGV4dC02eGwtLWxpbmUtaGVpZ2h0OiAxO1xuICAgIC0tdGV4dC03eGw6IDQuNXJlbTtcbiAgICAtLXRleHQtN3hsLS1saW5lLWhlaWdodDogMTtcbiAgICAtLXRleHQtOHhsOiA2cmVtO1xuICAgIC0tdGV4dC04eGwtLWxpbmUtaGVpZ2h0OiAxO1xuICAgIC0tdGV4dC05eGw6IDhyZW07XG4gICAgLS10ZXh0LTl4bC0tbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAtLWZvbnQtd2VpZ2h0LXRoaW46IDEwMDtcbiAgICAtLWZvbnQtd2VpZ2h0LWV4dHJhbGlnaHQ6IDIwMDtcbiAgICAtLWZvbnQtd2VpZ2h0LWxpZ2h0OiAzMDA7XG4gICAgLS1mb250LXdlaWdodC1ub3JtYWw6IDQwMDtcbiAgICAtLWZvbnQtd2VpZ2h0LW1lZGl1bTogNTAwO1xuICAgIC0tZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDYwMDtcbiAgICAtLWZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcbiAgICAtLWZvbnQtd2VpZ2h0LWV4dHJhYm9sZDogODAwO1xuICAgIC0tZm9udC13ZWlnaHQtYmxhY2s6IDkwMDtcblxuICAgIC0tdHJhY2tpbmctdGlnaHRlcjogLTAuMDVlbTtcbiAgICAtLXRyYWNraW5nLXRpZ2h0OiAtMC4wMjVlbTtcbiAgICAtLXRyYWNraW5nLW5vcm1hbDogMGVtO1xuICAgIC0tdHJhY2tpbmctd2lkZTogMC4wMjVlbTtcbiAgICAtLXRyYWNraW5nLXdpZGVyOiAwLjA1ZW07XG4gICAgLS10cmFja2luZy13aWRlc3Q6IDAuMWVtO1xuXG4gICAgLS1sZWFkaW5nLXRpZ2h0OiAxLjI1O1xuICAgIC0tbGVhZGluZy1zbnVnOiAxLjM3NTtcbiAgICAtLWxlYWRpbmctbm9ybWFsOiAxLjU7XG4gICAgLS1sZWFkaW5nLXJlbGF4ZWQ6IDEuNjI1O1xuICAgIC0tbGVhZGluZy1sb29zZTogMjtcblxuICAgIC0tcmFkaXVzLXhzOiAwLjEyNXJlbTtcbiAgICAtLXJhZGl1cy1zbTogMC4yNXJlbTtcbiAgICAtLXJhZGl1cy1tZDogMC4zNzVyZW07XG4gICAgLS1yYWRpdXMtbGc6IDAuNXJlbTtcbiAgICAtLXJhZGl1cy14bDogMC43NXJlbTtcbiAgICAtLXJhZGl1cy0yeGw6IDFyZW07XG4gICAgLS1yYWRpdXMtM3hsOiAxLjVyZW07XG4gICAgLS1yYWRpdXMtNHhsOiAycmVtO1xuXG4gICAgLS1zaGFkb3ctMnhzOiAwIDFweCByZ2IoMCAwIDAgLyAwLjA1KTtcbiAgICAtLXNoYWRvdy14czogMCAxcHggMnB4IDAgcmdiKDAgMCAwIC8gMC4wNSk7XG4gICAgLS1zaGFkb3ctc206IDAgMXB4IDNweCAwIHJnYigwIDAgMCAvIDAuMSksIDAgMXB4IDJweCAtMXB4IHJnYigwIDAgMCAvIDAuMSk7XG4gICAgLS1zaGFkb3ctbWQ6XG4gICAgICAwIDRweCA2cHggLTFweCByZ2IoMCAwIDAgLyAwLjEpLCAwIDJweCA0cHggLTJweCByZ2IoMCAwIDAgLyAwLjEpO1xuICAgIC0tc2hhZG93LWxnOlxuICAgICAgMCAxMHB4IDE1cHggLTNweCByZ2IoMCAwIDAgLyAwLjEpLCAwIDRweCA2cHggLTRweCByZ2IoMCAwIDAgLyAwLjEpO1xuICAgIC0tc2hhZG93LXhsOlxuICAgICAgMCAyMHB4IDI1cHggLTVweCByZ2IoMCAwIDAgLyAwLjEpLCAwIDhweCAxMHB4IC02cHggcmdiKDAgMCAwIC8gMC4xKTtcbiAgICAtLXNoYWRvdy0yeGw6IDAgMjVweCA1MHB4IC0xMnB4IHJnYigwIDAgMCAvIDAuMjUpO1xuXG4gICAgLS1pbnNldC1zaGFkb3ctMnhzOiBpbnNldCAwIDFweCByZ2IoMCAwIDAgLyAwLjA1KTtcbiAgICAtLWluc2V0LXNoYWRvdy14czogaW5zZXQgMCAxcHggMXB4IHJnYigwIDAgMCAvIDAuMDUpO1xuICAgIC0taW5zZXQtc2hhZG93LXNtOiBpbnNldCAwIDJweCA0cHggcmdiKDAgMCAwIC8gMC4wNSk7XG5cbiAgICAtLWRyb3Atc2hhZG93LXhzOiAwIDFweCAxcHggcmdiKDAgMCAwIC8gMC4wNSk7XG4gICAgLS1kcm9wLXNoYWRvdy1zbTogMCAxcHggMnB4IHJnYigwIDAgMCAvIDAuMTUpO1xuICAgIC0tZHJvcC1zaGFkb3ctbWQ6IDAgM3B4IDNweCByZ2IoMCAwIDAgLyAwLjEyKTtcbiAgICAtLWRyb3Atc2hhZG93LWxnOiAwIDRweCA0cHggcmdiKDAgMCAwIC8gMC4xNSk7XG4gICAgLS1kcm9wLXNoYWRvdy14bDogMCA5cHggN3B4IHJnYigwIDAgMCAvIDAuMSk7XG4gICAgLS1kcm9wLXNoYWRvdy0yeGw6IDAgMjVweCAyNXB4IHJnYigwIDAgMCAvIDAuMTUpO1xuXG4gICAgLS10ZXh0LXNoYWRvdy0yeHM6IDBweCAxcHggMHB4IHJnYigwIDAgMCAvIDAuMTUpO1xuICAgIC0tdGV4dC1zaGFkb3cteHM6IDBweCAxcHggMXB4IHJnYigwIDAgMCAvIDAuMik7XG4gICAgLS10ZXh0LXNoYWRvdy1zbTpcbiAgICAgIDBweCAxcHggMHB4IHJnYigwIDAgMCAvIDAuMDc1KSwgMHB4IDFweCAxcHggcmdiKDAgMCAwIC8gMC4wNzUpLFxuICAgICAgMHB4IDJweCAycHggcmdiKDAgMCAwIC8gMC4wNzUpO1xuICAgIC0tdGV4dC1zaGFkb3ctbWQ6XG4gICAgICAwcHggMXB4IDFweCByZ2IoMCAwIDAgLyAwLjEpLCAwcHggMXB4IDJweCByZ2IoMCAwIDAgLyAwLjEpLFxuICAgICAgMHB4IDJweCA0cHggcmdiKDAgMCAwIC8gMC4xKTtcbiAgICAtLXRleHQtc2hhZG93LWxnOlxuICAgICAgMHB4IDFweCAycHggcmdiKDAgMCAwIC8gMC4xKSwgMHB4IDNweCAycHggcmdiKDAgMCAwIC8gMC4xKSxcbiAgICAgIDBweCA0cHggOHB4IHJnYigwIDAgMCAvIDAuMSk7XG5cbiAgICAtLWVhc2UtaW46IGN1YmljLWJlemllcigwLjQsIDAsIDEsIDEpO1xuICAgIC0tZWFzZS1vdXQ6IGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xuICAgIC0tZWFzZS1pbi1vdXQ6IGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG5cbiAgICAtLWFuaW1hdGUtc3Bpbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgLS1hbmltYXRlLXBpbmc6IHBpbmcgMXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSkgaW5maW5pdGU7XG4gICAgLS1hbmltYXRlLXB1bHNlOiBwdWxzZSAycyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjYsIDEpIGluZmluaXRlO1xuICAgIC0tYW5pbWF0ZS1ib3VuY2U6IGJvdW5jZSAxcyBpbmZpbml0ZTtcblxuICAgIEBrZXlmcmFtZXMgc3BpbiB7XG4gICAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBwaW5nIHtcbiAgICAgIDc1JSxcbiAgICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDIpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgcHVsc2Uge1xuICAgICAgNTAlIHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgYm91bmNlIHtcbiAgICAgIDAlLFxuICAgICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUlKTtcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuOCwgMCwgMSwgMSk7XG4gICAgICB9XG5cbiAgICAgIDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLS1ibHVyLXhzOiA0cHg7XG4gICAgLS1ibHVyLXNtOiA4cHg7XG4gICAgLS1ibHVyLW1kOiAxMnB4O1xuICAgIC0tYmx1ci1sZzogMTZweDtcbiAgICAtLWJsdXIteGw6IDI0cHg7XG4gICAgLS1ibHVyLTJ4bDogNDBweDtcbiAgICAtLWJsdXItM3hsOiA2NHB4O1xuXG4gICAgLS1wZXJzcGVjdGl2ZS1kcmFtYXRpYzogMTAwcHg7XG4gICAgLS1wZXJzcGVjdGl2ZS1uZWFyOiAzMDBweDtcbiAgICAtLXBlcnNwZWN0aXZlLW5vcm1hbDogNTAwcHg7XG4gICAgLS1wZXJzcGVjdGl2ZS1taWRyYW5nZTogODAwcHg7XG4gICAgLS1wZXJzcGVjdGl2ZS1kaXN0YW50OiAxMjAwcHg7XG5cbiAgICAtLWFzcGVjdC12aWRlbzogMTYgLyA5O1xuXG4gICAgLS1kZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb246IDE1MG1zO1xuICAgIC0tZGVmYXVsdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAtLWRlZmF1bHQtZm9udC1mYW1pbHk6IC0tdGhlbWUoLS1mb250LXNhbnMsIGluaXRpYWwpO1xuICAgIC0tZGVmYXVsdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6IC0tdGhlbWUoXG4gICAgICAtLWZvbnQtc2Fucy0tZm9udC1mZWF0dXJlLXNldHRpbmdzLFxuICAgICAgaW5pdGlhbFxuICAgICk7XG4gICAgLS1kZWZhdWx0LWZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAtLXRoZW1lKFxuICAgICAgLS1mb250LXNhbnMtLWZvbnQtdmFyaWF0aW9uLXNldHRpbmdzLFxuICAgICAgaW5pdGlhbFxuICAgICk7XG4gICAgLS1kZWZhdWx0LW1vbm8tZm9udC1mYW1pbHk6IC0tdGhlbWUoLS1mb250LW1vbm8sIGluaXRpYWwpO1xuICAgIC0tZGVmYXVsdC1tb25vLWZvbnQtZmVhdHVyZS1zZXR0aW5nczogLS10aGVtZShcbiAgICAgIC0tZm9udC1tb25vLS1mb250LWZlYXR1cmUtc2V0dGluZ3MsXG4gICAgICBpbml0aWFsXG4gICAgKTtcbiAgICAtLWRlZmF1bHQtbW9uby1mb250LXZhcmlhdGlvbi1zZXR0aW5nczogLS10aGVtZShcbiAgICAgIC0tZm9udC1tb25vLS1mb250LXZhcmlhdGlvbi1zZXR0aW5ncyxcbiAgICAgIGluaXRpYWxcbiAgICApO1xuICB9XG5cbiAgLyogRGVwcmVjYXRlZCAqL1xuICBAdGhlbWUgZGVmYXVsdCBpbmxpbmUgcmVmZXJlbmNlIHtcbiAgICAtLWJsdXI6IDhweDtcbiAgICAtLXNoYWRvdzogMCAxcHggM3B4IDAgcmdiKDAgMCAwIC8gMC4xKSwgMCAxcHggMnB4IC0xcHggcmdiKDAgMCAwIC8gMC4xKTtcbiAgICAtLXNoYWRvdy1pbm5lcjogaW5zZXQgMCAycHggNHB4IDAgcmdiKDAgMCAwIC8gMC4wNSk7XG4gICAgLS1kcm9wLXNoYWRvdzogMCAxcHggMnB4IHJnYigwIDAgMCAvIDAuMSksIDAgMXB4IDFweCByZ2IoMCAwIDAgLyAwLjA2KTtcbiAgICAtLXJhZGl1czogMC4yNXJlbTtcbiAgICAtLW1heC13aWR0aC1wcm9zZTogNjVjaDtcbiAgfVxufVxuXG5AbGF5ZXIgYmFzZSB7XG4gIC8qXG4gIDEuIFByZXZlbnQgcGFkZGluZyBhbmQgYm9yZGVyIGZyb20gYWZmZWN0aW5nIGVsZW1lbnQgd2lkdGguIChodHRwczovL2dpdGh1Yi5jb20vbW96ZGV2cy9jc3NyZW1lZHkvaXNzdWVzLzQpXG4gIDIuIFJlbW92ZSBkZWZhdWx0IG1hcmdpbnMgYW5kIHBhZGRpbmdcbiAgMy4gUmVzZXQgYWxsIGJvcmRlcnMuXG4qL1xuXG4gICosXG4gIDo6YWZ0ZXIsXG4gIDo6YmVmb3JlLFxuICA6OmJhY2tkcm9wLFxuICA6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgbWFyZ2luOiAwOyAvKiAyICovXG4gICAgcGFkZGluZzogMDsgLyogMiAqL1xuICAgIGJvcmRlcjogMCBzb2xpZDsgLyogMyAqL1xuICB9XG5cbiAgLypcbiAgMS4gVXNlIGEgY29uc2lzdGVudCBzZW5zaWJsZSBsaW5lLWhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICAzLiBVc2UgYSBtb3JlIHJlYWRhYmxlIHRhYiBzaXplLlxuICA0LiBVc2UgdGhlIHVzZXIncyBjb25maWd1cmVkIGBzYW5zYCBmb250LWZhbWlseSBieSBkZWZhdWx0LlxuICA1LiBVc2UgdGhlIHVzZXIncyBjb25maWd1cmVkIGBzYW5zYCBmb250LWZlYXR1cmUtc2V0dGluZ3MgYnkgZGVmYXVsdC5cbiAgNi4gVXNlIHRoZSB1c2VyJ3MgY29uZmlndXJlZCBgc2Fuc2AgZm9udC12YXJpYXRpb24tc2V0dGluZ3MgYnkgZGVmYXVsdC5cbiAgNy4gRGlzYWJsZSB0YXAgaGlnaGxpZ2h0cyBvbiBpT1MuXG4qL1xuXG4gIGh0bWwsXG4gIDpob3N0IHtcbiAgICBsaW5lLWhlaWdodDogMS41OyAvKiAxICovXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gICAgdGFiLXNpemU6IDQ7IC8qIDMgKi9cbiAgICBmb250LWZhbWlseTogLS10aGVtZShcbiAgICAgIC0tZGVmYXVsdC1mb250LWZhbWlseSxcbiAgICAgIHVpLXNhbnMtc2VyaWYsXG4gICAgICBzeXN0ZW0tdWksXG4gICAgICBzYW5zLXNlcmlmLFxuICAgICAgXCJBcHBsZSBDb2xvciBFbW9qaVwiLFxuICAgICAgXCJTZWdvZSBVSSBFbW9qaVwiLFxuICAgICAgXCJTZWdvZSBVSSBTeW1ib2xcIixcbiAgICAgIFwiTm90byBDb2xvciBFbW9qaVwiXG4gICAgKTsgLyogNCAqL1xuICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogLS10aGVtZShcbiAgICAgIC0tZGVmYXVsdC1mb250LWZlYXR1cmUtc2V0dGluZ3MsXG4gICAgICBub3JtYWxcbiAgICApOyAvKiA1ICovXG4gICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6IC0tdGhlbWUoXG4gICAgICAtLWRlZmF1bHQtZm9udC12YXJpYXRpb24tc2V0dGluZ3MsXG4gICAgICBub3JtYWxcbiAgICApOyAvKiA2ICovXG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgLyogNyAqL1xuICB9XG5cbiAgLypcbiAgMS4gQWRkIHRoZSBjb3JyZWN0IGhlaWdodCBpbiBGaXJlZm94LlxuICAyLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBvZiBib3JkZXIgY29sb3IgaW4gRmlyZWZveC4gKGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTE5MDY1NSlcbiAgMy4gUmVzZXQgdGhlIGRlZmF1bHQgYm9yZGVyIHN0eWxlIHRvIGEgMXB4IHNvbGlkIGJvcmRlci5cbiovXG5cbiAgaHIge1xuICAgIGhlaWdodDogMDsgLyogMSAqL1xuICAgIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4OyAvKiAzICovXG4gIH1cblxuICAvKlxuICBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiovXG5cbiAgYWJicjp3aGVyZShbdGl0bGVdKSB7XG4gICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICB9XG5cbiAgLypcbiAgUmVtb3ZlIHRoZSBkZWZhdWx0IGZvbnQgc2l6ZSBhbmQgd2VpZ2h0IGZvciBoZWFkaW5ncy5cbiovXG5cbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLypcbiAgUmVzZXQgbGlua3MgdG8gb3B0aW1pemUgZm9yIG9wdC1pbiBzdHlsaW5nIGluc3RlYWQgb2Ygb3B0LW91dC5cbiovXG5cbiAgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB9XG5cbiAgLypcbiAgQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIEVkZ2UgYW5kIFNhZmFyaS5cbiovXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgLypcbiAgMS4gVXNlIHRoZSB1c2VyJ3MgY29uZmlndXJlZCBgbW9ub2AgZm9udC1mYW1pbHkgYnkgZGVmYXVsdC5cbiAgMi4gVXNlIHRoZSB1c2VyJ3MgY29uZmlndXJlZCBgbW9ub2AgZm9udC1mZWF0dXJlLXNldHRpbmdzIGJ5IGRlZmF1bHQuXG4gIDMuIFVzZSB0aGUgdXNlcidzIGNvbmZpZ3VyZWQgYG1vbm9gIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzIGJ5IGRlZmF1bHQuXG4gIDQuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiovXG5cbiAgY29kZSxcbiAga2JkLFxuICBzYW1wLFxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiAtLXRoZW1lKFxuICAgICAgLS1kZWZhdWx0LW1vbm8tZm9udC1mYW1pbHksXG4gICAgICB1aS1tb25vc3BhY2UsXG4gICAgICBTRk1vbm8tUmVndWxhcixcbiAgICAgIE1lbmxvLFxuICAgICAgTW9uYWNvLFxuICAgICAgQ29uc29sYXMsXG4gICAgICBcIkxpYmVyYXRpb24gTW9ub1wiLFxuICAgICAgXCJDb3VyaWVyIE5ld1wiLFxuICAgICAgbW9ub3NwYWNlXG4gICAgKTsgLyogMSAqL1xuICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogLS10aGVtZShcbiAgICAgIC0tZGVmYXVsdC1tb25vLWZvbnQtZmVhdHVyZS1zZXR0aW5ncyxcbiAgICAgIG5vcm1hbFxuICAgICk7IC8qIDIgKi9cbiAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogLS10aGVtZShcbiAgICAgIC0tZGVmYXVsdC1tb25vLWZvbnQtdmFyaWF0aW9uLXNldHRpbmdzLFxuICAgICAgbm9ybWFsXG4gICAgKTsgLyogMyAqL1xuICAgIGZvbnQtc2l6ZTogMWVtOyAvKiA0ICovXG4gIH1cblxuICAvKlxuICBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiovXG5cbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG5cbiAgLypcbiAgUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiovXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICAvKlxuICAxLiBSZW1vdmUgdGV4dCBpbmRlbnRhdGlvbiBmcm9tIHRhYmxlIGNvbnRlbnRzIGluIENocm9tZSBhbmQgU2FmYXJpLiAoaHR0cHM6Ly9idWdzLmNocm9taXVtLm9yZy9wL2Nocm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9OTk5MDg4LCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjAxMjk3KVxuICAyLiBDb3JyZWN0IHRhYmxlIGJvcmRlciBjb2xvciBpbmhlcml0YW5jZSBpbiBhbGwgQ2hyb21lIGFuZCBTYWZhcmkuIChodHRwczovL2J1Z3MuY2hyb21pdW0ub3JnL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD05MzU3MjksIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUwMTYpXG4gIDMuIFJlbW92ZSBnYXBzIGJldHdlZW4gdGFibGUgYm9yZGVycyBieSBkZWZhdWx0LlxuKi9cblxuICB0YWJsZSB7XG4gICAgdGV4dC1pbmRlbnQ6IDA7IC8qIDEgKi9cbiAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvKiAzICovXG4gIH1cblxuICAvKlxuICBVc2UgdGhlIG1vZGVybiBGaXJlZm94IGZvY3VzIHN0eWxlIGZvciBhbGwgZm9jdXNhYmxlIGVsZW1lbnRzLlxuKi9cblxuICA6LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IGF1dG87XG4gIH1cblxuICAvKlxuICBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSBhbmQgRmlyZWZveC5cbiovXG5cbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC8qXG4gIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIENocm9tZSBhbmQgU2FmYXJpLlxuKi9cblxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIH1cblxuICAvKlxuICBNYWtlIGxpc3RzIHVuc3R5bGVkIGJ5IGRlZmF1bHQuXG4qL1xuXG4gIG9sLFxuICB1bCxcbiAgbWVudSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8qXG4gIDEuIE1ha2UgcmVwbGFjZWQgZWxlbWVudHMgYGRpc3BsYXk6IGJsb2NrYCBieSBkZWZhdWx0LiAoaHR0cHM6Ly9naXRodWIuY29tL21vemRldnMvY3NzcmVtZWR5L2lzc3Vlcy8xNClcbiAgMi4gQWRkIGB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlYCB0byBhbGlnbiByZXBsYWNlZCBlbGVtZW50cyBtb3JlIHNlbnNpYmx5IGJ5IGRlZmF1bHQuIChodHRwczovL2dpdGh1Yi5jb20vamVuc2ltbW9ucy9jc3NyZW1lZHkvaXNzdWVzLzE0I2lzc3VlY29tbWVudC02MzQ5MzQyMTApXG4gICAgICBUaGlzIGNhbiB0cmlnZ2VyIGEgcG9vcmx5IGNvbnNpZGVyZWQgbGludCBlcnJvciBpbiBzb21lIHRvb2xzIGJ1dCBpcyBpbmNsdWRlZCBieSBkZXNpZ24uXG4qL1xuXG4gIGltZyxcbiAgc3ZnLFxuICB2aWRlbyxcbiAgY2FudmFzLFxuICBhdWRpbyxcbiAgaWZyYW1lLFxuICBlbWJlZCxcbiAgb2JqZWN0IHtcbiAgICBkaXNwbGF5OiBibG9jazsgLyogMSAqL1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8qIDIgKi9cbiAgfVxuXG4gIC8qXG4gIENvbnN0cmFpbiBpbWFnZXMgYW5kIHZpZGVvcyB0byB0aGUgcGFyZW50IHdpZHRoIGFuZCBwcmVzZXJ2ZSB0aGVpciBpbnRyaW5zaWMgYXNwZWN0IHJhdGlvLiAoaHR0cHM6Ly9naXRodWIuY29tL21vemRldnMvY3NzcmVtZWR5L2lzc3Vlcy8xNClcbiovXG5cbiAgaW1nLFxuICB2aWRlbyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8qXG4gIDEuIEluaGVyaXQgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAyLiBSZW1vdmUgYm9yZGVyIHJhZGl1cyBpbiBhbGwgYnJvd3NlcnMuXG4gIDMuIFJlbW92ZSBiYWNrZ3JvdW5kIGNvbG9yIGluIGFsbCBicm93c2Vycy5cbiAgNC4gRW5zdXJlIGNvbnNpc3RlbnQgb3BhY2l0eSBmb3IgZGlzYWJsZWQgc3RhdGVzIGluIGFsbCBicm93c2Vycy5cbiovXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgc2VsZWN0LFxuICBvcHRncm91cCxcbiAgdGV4dGFyZWEsXG4gIDo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIGZvbnQ6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogaW5oZXJpdDsgLyogMSAqL1xuICAgIGxldHRlci1zcGFjaW5nOiBpbmhlcml0OyAvKiAxICovXG4gICAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBib3JkZXItcmFkaXVzOiAwOyAvKiAyICovXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDMgKi9cbiAgICBvcGFjaXR5OiAxOyAvKiA0ICovXG4gIH1cblxuICAvKlxuICBSZXN0b3JlIGRlZmF1bHQgZm9udCB3ZWlnaHQuXG4qL1xuXG4gIDp3aGVyZShzZWxlY3Q6aXMoW211bHRpcGxlXSwgW3NpemVdKSkgb3B0Z3JvdXAge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvKlxuICBSZXN0b3JlIGluZGVudGF0aW9uLlxuKi9cblxuICA6d2hlcmUoc2VsZWN0OmlzKFttdWx0aXBsZV0sIFtzaXplXSkpIG9wdGdyb3VwIG9wdGlvbiB7XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDIwcHg7XG4gIH1cblxuICAvKlxuICBSZXN0b3JlIHNwYWNlIGFmdGVyIGJ1dHRvbi5cbiovXG5cbiAgOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6IDRweDtcbiAgfVxuXG4gIC8qXG4gIFJlc2V0IHRoZSBkZWZhdWx0IHBsYWNlaG9sZGVyIG9wYWNpdHkgaW4gRmlyZWZveC4gKGh0dHBzOi8vZ2l0aHViLmNvbS90YWlsd2luZGxhYnMvdGFpbHdpbmRjc3MvaXNzdWVzLzMzMDApXG4qL1xuXG4gIDo6cGxhY2Vob2xkZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvKlxuICBTZXQgdGhlIGRlZmF1bHQgcGxhY2Vob2xkZXIgY29sb3IgdG8gYSBzZW1pLXRyYW5zcGFyZW50IHZlcnNpb24gb2YgdGhlIGN1cnJlbnQgdGV4dCBjb2xvciBpbiBicm93c2VycyB0aGF0IGRvIG5vdFxuICBjcmFzaCB3aGVuIHVzaW5nIGBjb2xvci1taXgo4oCmKWAgd2l0aCBgY3VycmVudGNvbG9yYC4gKGh0dHBzOi8vZ2l0aHViLmNvbS90YWlsd2luZGxhYnMvdGFpbHdpbmRjc3MvaXNzdWVzLzE3MTk0KVxuKi9cblxuICBAc3VwcG9ydHMgKG5vdCAoLXdlYmtpdC1hcHBlYXJhbmNlOiAtYXBwbGUtcGF5LWJ1dHRvbikpIC8qIE5vdCBTYWZhcmkgKi8gb3JcbiAgICAoY29udGFpbi1pbnRyaW5zaWMtc2l6ZTogMXB4KSAvKiBTYWZhcmkgMTcrICovIHtcbiAgICA6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiBjb2xvci1taXgoaW4gb2tsYWIsIGN1cnJlbnRjb2xvciA1MCUsIHRyYW5zcGFyZW50KTtcbiAgICB9XG4gIH1cblxuICAvKlxuICBQcmV2ZW50IHJlc2l6aW5nIHRleHRhcmVhcyBob3Jpem9udGFsbHkgYnkgZGVmYXVsdC5cbiovXG5cbiAgdGV4dGFyZWEge1xuICAgIHJlc2l6ZTogdmVydGljYWw7XG4gIH1cblxuICAvKlxuICBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4qL1xuXG4gIDo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLypcbiAgMS4gRW5zdXJlIGRhdGUvdGltZSBpbnB1dHMgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgd2hlbiBlbXB0eSBpbiBpT1MgU2FmYXJpLlxuICAyLiBFbnN1cmUgdGV4dCBhbGlnbm1lbnQgY2FuIGJlIGNoYW5nZWQgb24gZGF0ZS90aW1lIGlucHV0cyBpbiBpT1MgU2FmYXJpLlxuKi9cblxuICA6Oi13ZWJraXQtZGF0ZS1hbmQtdGltZS12YWx1ZSB7XG4gICAgbWluLWhlaWdodDogMWxoOyAvKiAxICovXG4gICAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLyogMiAqL1xuICB9XG5cbiAgLypcbiAgUHJldmVudCBoZWlnaHQgZnJvbSBjaGFuZ2luZyBvbiBkYXRlL3RpbWUgaW5wdXRzIGluIG1hY09TIFNhZmFyaSB3aGVuIHRoZSBpbnB1dCBpcyBzZXQgdG8gYGRpc3BsYXk6IGJsb2NrYC5cbiovXG5cbiAgOjotd2Via2l0LWRhdGV0aW1lLWVkaXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB9XG5cbiAgLypcbiAgUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGZyb20gcHNldWRvLWVsZW1lbnRzIGluIGRhdGUvdGltZSBpbnB1dHMgdG8gZW5zdXJlIGNvbnNpc3RlbnQgaGVpZ2h0IGFjcm9zcyBicm93c2Vycy5cbiovXG5cbiAgOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZmllbGRzLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCxcbiAgOjotd2Via2l0LWRhdGV0aW1lLWVkaXQteWVhci1maWVsZCxcbiAgOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbW9udGgtZmllbGQsXG4gIDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWRheS1maWVsZCxcbiAgOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtaG91ci1maWVsZCxcbiAgOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWludXRlLWZpZWxkLFxuICA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1zZWNvbmQtZmllbGQsXG4gIDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbGxpc2Vjb25kLWZpZWxkLFxuICA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tZXJpZGllbS1maWVsZCB7XG4gICAgcGFkZGluZy1ibG9jazogMDtcbiAgfVxuXG4gIC8qXG4gIFJlbW92ZSB0aGUgYWRkaXRpb25hbCBgOmludmFsaWRgIHN0eWxlcyBpbiBGaXJlZm94LiAoaHR0cHM6Ly9naXRodWIuY29tL21vemlsbGEvZ2Vja28tZGV2L2Jsb2IvMmY5ZWFjZDlkM2Q5OTVjOTM3YjQyNTFhNTU1N2Q5NWQ0OTRjOWJlMS9sYXlvdXQvc3R5bGUvcmVzL2Zvcm1zLmNzcyNMNzI4LUw3MzcpXG4qL1xuXG4gIDotbW96LXVpLWludmFsaWQge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAvKlxuICBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgdGhlIGJvcmRlciByYWRpdXMgaW4gaU9TIFNhZmFyaS5cbiovXG5cbiAgYnV0dG9uLFxuICBpbnB1dDp3aGVyZShbdHlwZT1cImJ1dHRvblwiXSwgW3R5cGU9XCJyZXNldFwiXSwgW3R5cGU9XCJzdWJtaXRcIl0pLFxuICA6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBhcHBlYXJhbmNlOiBidXR0b247XG4gIH1cblxuICAvKlxuICBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBTYWZhcmkuXG4qL1xuXG4gIDo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvKlxuICBNYWtlIGVsZW1lbnRzIHdpdGggdGhlIEhUTUwgaGlkZGVuIGF0dHJpYnV0ZSBzdGF5IGhpZGRlbiBieSBkZWZhdWx0LlxuKi9cblxuICBbaGlkZGVuXTp3aGVyZSg6bm90KFtoaWRkZW49XCJ1bnRpbC1mb3VuZFwiXSkpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQGxheWVyIHV0aWxpdGllcyB7XG4gIEB0YWlsd2luZCB1dGlsaXRpZXM7XG59XG4iLCIvKiBAaW1wb3J0IFwidGFpbHdpbmRjc3NcIiBzb3VyY2UoXCIuLi8uLi9mcm9udGVuZFwiKTtcbkBzb3VyY2UgXCIuLi8uLi90ZW1wbGF0ZXNcIjsgKi9cbkBpbXBvcnQgXCJ0YWlsd2luZGNzc1wiO1xuLyogQHNvdXJjZSBcIi4uLy4uL2Zyb250ZW5kXCI7ICovXG4vKiBAc291cmNlIFwiLi4vLi4vLi4vdGVtcGxhdGVzKi50d2lnXCI7ICovXG5Ac291cmNlIG5vdCBcIi4uLy4uLy4uL3B1YmxpYy8qXCI7XG5cbkB1dGlsaXR5IGNvbnRhaW4ge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gICAgfVxufVxuXG5AdXRpbGl0eSBhbmltYXRlLWRlbGF5LSoge1xuICAgIGFuaW1hdGlvbi1kZWxheTogLS12YWx1ZShpbnRlZ2VyKW1zO1xufVxuXG5AdGhlbWUge1xuICAtLWFuaW1hdGUtbG9hZGVyaW1nOiBsb2FkZXJpbWcgMXMgZWFzZS1pbi1vdXQgMTtcblxuICBAa2V5ZnJhbWVzIGxvYWRlcmltZyB7XG4gICAgMCUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIGZpbHRlcjogYmx1cig1MHB4KTtcbiAgICB9XG4gICAgMjUlIHtcbiAgICAgIG9wYWNpdHk6ICAxO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgIGZpbHRlcjogYmx1cigwKTtcbiAgICB9XG4gIH1cbn1cblxuQGltcG9ydCBcInRhaWx3aW5kY3NzLXByaW1ldWlcIjtcblxuaHRtbCB7XG4gICAgLyogQWRvbmlzICovXG4gICAgZm9udC1mYW1pbHk6IFwibGF0b1wiLCBcImFicmlsLXRpdGxpbmdcIiwgSW50ZXIgdmFyO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuYm9keSB7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICBjb2xvcjogdmFyKC0tcC1zdXJmYWNlLTk1MCk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLmZvbnQtYWNjZW50IHtcbiAgICBmb250LWZhbWlseTogXCJhYnJpbC10aXRsaW5nXCI7XG59XG5cbmE6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tcC1wcmltYXJ5LWNvbG9yKTtcbn1cblxuLnNodWZmbGUtbW92ZSB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbn1cbi5zaHVmZmxlLWVudGVyLWFjdGl2ZSxcbi5zaHVmZmxlLWxlYXZlLWFjdGl2ZSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cbi5zaHVmZmxlLWVudGVyLWZyb20sXG4uc2h1ZmZsZS1sZWF2ZS10byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xufVxuLnNodWZmbGUtZW50ZXItdG8sXG4uc2h1ZmZsZS1sZWF2ZS1mcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLmZhZGUtc2Nyb2xsIHtcbiAgLS1mYWRlLWFtb3VudDogMTAlO1xuICBtYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB0cmFuc3BhcmVudCwgYmxhY2sgdmFyKC0tZmFkZS1hbW91bnQpLCBibGFjayBjYWxjKDEwMCUgLSB2YXIoLS1mYWRlLWFtb3VudCkpLCB0cmFuc3BhcmVudCk7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLmNrZWRpdG9yLWNvbnRlbnQgaDIge1xuICBAYXBwbHkgdGV4dC01eGwgZm9udC1ib2xkIG10LTggbWItNDtcbn1cbi5ja2VkaXRvci1jb250ZW50IGgzIHtcbiAgQGFwcGx5IHRleHQtNHhsIGZvbnQtYm9sZCBtdC02IG1iLTM7XG59XG4uY2tlZGl0b3ItY29udGVudCBoNCB7XG4gIEBhcHBseSB0ZXh0LTN4bCBmb250LWJvbGQgbXQtNCBtYi0yO1xufVxuLmNrZWRpdG9yLWNvbnRlbnQgaDUge1xuICBAYXBwbHkgdGV4dC0yeGwgZm9udC1ib2xkIG10LTIgbWItMTtcbn1cbi5ja2VkaXRvci1jb250ZW50IGg2IHtcbiAgQGFwcGx5IGZvbnQtYm9sZCBtdC0xIG1iLTA7XG59XG5cbi5ja2VkaXRvci1jb250ZW50IHVsIHtcbiAgQGFwcGx5IGxpc3QtZGlzYyBwbC02IG1iLTQ7XG59XG4uY2tlZGl0b3ItY29udGVudCBvbCB7XG4gIEBhcHBseSBsaXN0LWRlY2ltYWwgcGwtNiBtYi00O1xufSIsIkB1dGlsaXR5IGFuaW1hdGUtZmFkZWluIHtcbiAgICBhbmltYXRpb246IGZhZGVpbiAwLjE1cyBsaW5lYXI7XG59XG5AdXRpbGl0eSBhbmltYXRlLWZhZGVvdXQge1xuICAgIGFuaW1hdGlvbjogZmFkZW91dCAwLjE1cyBsaW5lYXI7XG59XG5AdXRpbGl0eSBhbmltYXRlLXNsaWRlZG93biB7XG4gICAgYW5pbWF0aW9uOiBzbGlkZWRvd24gMC40NXMgZWFzZS1pbi1vdXQ7XG59XG5AdXRpbGl0eSBhbmltYXRlLXNsaWRldXAge1xuICAgIGFuaW1hdGlvbjogc2xpZGV1cCAwLjQ1cyBjdWJpYy1iZXppZXIoMCwgMSwgMCwgMSk7XG59XG5AdXRpbGl0eSBhbmltYXRlLXNjYWxlaW4ge1xuICAgIGFuaW1hdGlvbjogc2NhbGVpbiAwLjE1cyBsaW5lYXI7XG59XG5AdXRpbGl0eSBhbmltYXRlLWZhZGVpbmxlZnQge1xuICAgIGFuaW1hdGlvbjogZmFkZWlubGVmdCAwLjE1cyBsaW5lYXI7XG59XG5AdXRpbGl0eSBhbmltYXRlLWZhZGVvdXRsZWZ0IHtcbiAgICBhbmltYXRpb246IGZhZGVvdXRsZWZ0IDAuMTVzIGxpbmVhcjtcbn1cbkB1dGlsaXR5IGFuaW1hdGUtZmFkZWlucmlnaHQge1xuICAgIGFuaW1hdGlvbjogZmFkZWlucmlnaHQgMC4xNXMgbGluZWFyO1xufVxuQHV0aWxpdHkgYW5pbWF0ZS1mYWRlb3V0cmlnaHQge1xuICAgIGFuaW1hdGlvbjogZmFkZW91dHJpZ2h0IDAuMTVzIGxpbmVhcjtcbn1cbkB1dGlsaXR5IGFuaW1hdGUtZmFkZWludXAge1xuICAgIGFuaW1hdGlvbjogZmFkZWludXAgMC4xNXMgbGluZWFyO1xufVxuQHV0aWxpdHkgYW5pbWF0ZS1mYWRlb3V0dXAge1xuICAgIGFuaW1hdGlvbjogZmFkZW91dHVwIDAuMTVzIGxpbmVhcjtcbn1cbkB1dGlsaXR5IGFuaW1hdGUtZmFkZWluZG93biB7XG4gICAgYW5pbWF0aW9uOiBmYWRlaW5kb3duIDAuMTVzIGxpbmVhcjtcbn1cbkB1dGlsaXR5IGFuaW1hdGUtZmFkZW91dGRvd24ge1xuICAgIGFuaW1hdGlvbjogZmFkZW91dGRvd24gMC4xNXMgbGluZWFyO1xufVxuQHV0aWxpdHkgYW5pbWF0ZS13aWR0aCB7XG4gICAgYW5pbWF0aW9uOiB3aWR0aCAwLjQ1cyBsaW5lYXI7XG59XG5AdXRpbGl0eSBhbmltYXRlLWZsaXAge1xuICAgIGFuaW1hdGlvbjogZmxpcCAwLjE1cyBsaW5lYXI7XG59XG5AdXRpbGl0eSBhbmltYXRlLWZsaXB1cCB7XG4gICAgYW5pbWF0aW9uOiBmbGlwdXAgMC4xNXMgbGluZWFyO1xufVxuQHV0aWxpdHkgYW5pbWF0ZS1mbGlwbGVmdCB7XG4gICAgYW5pbWF0aW9uOiBmbGlwbGVmdCAwLjE1cyBsaW5lYXI7XG59XG5AdXRpbGl0eSBhbmltYXRlLWZsaXByaWdodCB7XG4gICAgYW5pbWF0aW9uOiBmbGlwcmlnaHQgMC4xNXMgbGluZWFyO1xufVxuQHV0aWxpdHkgYW5pbWF0ZS16b29taW4ge1xuICAgIGFuaW1hdGlvbjogem9vbWluIDAuMTVzIGxpbmVhcjtcbn1cbkB1dGlsaXR5IGFuaW1hdGUtem9vbWluZG93biB7XG4gICAgYW5pbWF0aW9uOiB6b29taW5kb3duIDAuMTVzIGxpbmVhcjtcbn1cbkB1dGlsaXR5IGFuaW1hdGUtem9vbWlubGVmdCB7XG4gICAgYW5pbWF0aW9uOiB6b29taW5sZWZ0IDAuMTVzIGxpbmVhcjtcbn1cbkB1dGlsaXR5IGFuaW1hdGUtem9vbWlucmlnaHQge1xuICAgIGFuaW1hdGlvbjogem9vbWlucmlnaHQgMC4xNXMgbGluZWFyO1xufVxuQHV0aWxpdHkgYW5pbWF0ZS16b29taW51cCB7XG4gICAgYW5pbWF0aW9uOiB6b29taW51cCAwLjE1cyBsaW5lYXI7XG59XG4iLCJAdXRpbGl0eSBib3JkZXItc3VyZmFjZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcC1jb250ZW50LWJvcmRlci1jb2xvcik7XG59XG5cbkB1dGlsaXR5IGJnLWVtcGhhc2lzIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcC1jb250ZW50LWhvdmVyLWJhY2tncm91bmQpO1xuICBjb2xvcjogdmFyKC0tcC1jb250ZW50LWhvdmVyLWNvbG9yKTtcbn1cblxuQHV0aWxpdHkgYmctaGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcC1oaWdobGlnaHQtYmFja2dyb3VuZCk7XG4gIGNvbG9yOiB2YXIoLS1wLWhpZ2hsaWdodC1jb2xvcik7XG59XG5cbkB1dGlsaXR5IGJnLWhpZ2hsaWdodC1lbXBoYXNpcyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXAtaGlnaGxpZ2h0LWZvY3VzLWJhY2tncm91bmQpO1xuICBjb2xvcjogdmFyKC0tcC1oaWdobGlnaHQtZm9jdXMtY29sb3IpO1xufVxuXG5AdXRpbGl0eSByb3VuZGVkLWJvcmRlciB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXAtY29udGVudC1ib3JkZXItcmFkaXVzKTtcbn1cblxuQHV0aWxpdHkgdGV4dC1jb2xvciB7XG4gIGNvbG9yOiB2YXIoLS1wLXRleHQtY29sb3IpO1xufVxuXG5AdXRpbGl0eSB0ZXh0LWNvbG9yLWVtcGhhc2lzIHtcbiAgY29sb3I6IHZhcigtLXAtdGV4dC1ob3Zlci1jb2xvcik7XG59XG5cbkB1dGlsaXR5IHRleHQtbXV0ZWQtY29sb3Ige1xuICBjb2xvcjogdmFyKC0tcC10ZXh0LW11dGVkLWNvbG9yKTtcbn1cblxuQHV0aWxpdHkgdGV4dC1tdXRlZC1jb2xvci1lbXBoYXNpcyB7XG4gIGNvbG9yOiB2YXIoLS1wLXRleHQtaG92ZXItbXV0ZWQtY29sb3IpO1xufVxuIiwiQHV0aWxpdHkgYW5pbWF0ZS1lbnRlciB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGVudGVyO1xuICAgIC0tcC1lbnRlci1vcGFjaXR5OiBpbml0aWFsO1xuICAgIC0tcC1lbnRlci1zY2FsZTogaW5pdGlhbDtcbiAgICAtLXAtZW50ZXItcm90YXRlOiBpbml0aWFsO1xuICAgIC0tcC1lbnRlci10cmFuc2xhdGUteDogaW5pdGlhbDtcbiAgICAtLXAtZW50ZXItdHJhbnNsYXRlLXk6IGluaXRpYWw7XG59XG5cbkB1dGlsaXR5IGFuaW1hdGUtbGVhdmUge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBsZWF2ZTtcbiAgICAtLXAtbGVhdmUtb3BhY2l0eTogaW5pdGlhbDtcbiAgICAtLXAtbGVhdmUtc2NhbGU6IGluaXRpYWw7XG4gICAgLS1wLWxlYXZlLXJvdGF0ZTogaW5pdGlhbDtcbiAgICAtLXAtbGVhdmUtdHJhbnNsYXRlLXg6IGluaXRpYWw7XG4gICAgLS1wLWxlYXZlLXRyYW5zbGF0ZS15OiBpbml0aWFsO1xufVxuXG5AdXRpbGl0eSBmYWRlLWluLSoge1xuICAgIC0tcC1lbnRlci1vcGFjaXR5OiBjYWxjKC0tdmFsdWUoaW50ZWdlcikgKiAwLjAxKTtcbn1cblxuQHV0aWxpdHkgZmFkZS1vdXQtKiB7XG4gICAgLS1wLWxlYXZlLW9wYWNpdHk6IGNhbGMoLS12YWx1ZShpbnRlZ2VyKSAqIDAuMDEpO1xufVxuXG5AdXRpbGl0eSB6b29tLWluLSoge1xuICAgIC0tcC1lbnRlci1zY2FsZTogY2FsYygtLXZhbHVlKGludGVnZXIpICogMC4wMSk7XG59XG5cbkB1dGlsaXR5IHpvb20tb3V0LSoge1xuICAgIC0tcC1sZWF2ZS1zY2FsZTogY2FsYygtLXZhbHVlKGludGVnZXIpICogMC4wMSk7XG59XG5cbkB1dGlsaXR5IHNwaW4taW4tKiB7XG4gICAgLS1wLWVudGVyLXJvdGF0ZTogLS12YWx1ZShpbnRlZ2VyKWRlZztcbn1cblxuQHV0aWxpdHkgc3Bpbi1vdXQtKiB7XG4gICAgLS1wLWxlYXZlLXJvdGF0ZTogLS12YWx1ZShpbnRlZ2VyKWRlZztcbn1cblxuQHV0aWxpdHkgc2xpZGUtaW4tZnJvbS10LSoge1xuICAgIC0tcC1lbnRlci10cmFuc2xhdGUteTogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIC0tdmFsdWUoaW50ZWdlcikgKiAtMSk7XG59XG5cbkB1dGlsaXR5IHNsaWRlLWluLWZyb20tYi0qIHtcbiAgICAtLXAtZW50ZXItdHJhbnNsYXRlLXk6IGNhbGModmFyKC0tc3BhY2luZykgKiAtLXZhbHVlKGludGVnZXIpKTtcbn1cblxuQHV0aWxpdHkgc2xpZGUtaW4tZnJvbS1sLSoge1xuICAgIC0tcC1lbnRlci10cmFuc2xhdGUteDogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIC0tdmFsdWUoaW50ZWdlcikgKiAtMSk7XG59XG5cbkB1dGlsaXR5IHNsaWRlLWluLWZyb20tci0qIHtcbiAgICAtLXAtZW50ZXItdHJhbnNsYXRlLXg6IGNhbGModmFyKC0tc3BhY2luZykgKiAtLXZhbHVlKGludGVnZXIpKTtcbn1cblxuQHV0aWxpdHkgc2xpZGUtb3V0LWZyb20tdC0qIHtcbiAgICAtLXAtbGVhdmUtdHJhbnNsYXRlLXk6IGNhbGModmFyKC0tc3BhY2luZykgKiAtLXZhbHVlKGludGVnZXIpICogLTEpO1xufVxuXG5AdXRpbGl0eSBzbGlkZS1vdXQtZnJvbS1iLSoge1xuICAgIC0tcC1sZWF2ZS10cmFuc2xhdGUteTogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIC0tdmFsdWUoaW50ZWdlcikpO1xufVxuXG5AdXRpbGl0eSBzbGlkZS1vdXQtZnJvbS1sLSoge1xuICAgIC0tcC1sZWF2ZS10cmFuc2xhdGUteDogY2FsYyh2YXIoLS1zcGFjaW5nKSAqIC0tdmFsdWUoaW50ZWdlcikgKiAtMSk7XG59XG5cbkB1dGlsaXR5IHNsaWRlLW91dC1mcm9tLXItKiB7XG4gICAgLS1wLWxlYXZlLXRyYW5zbGF0ZS14OiBjYWxjKHZhcigtLXNwYWNpbmcpICogLS12YWx1ZShpbnRlZ2VyKSk7XG59XG4iLCJAdXRpbGl0eSBhbmltYXRlLWRlbGF5LW5vbmUge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMG1zO1xufVxuXG5AdXRpbGl0eSBhbmltYXRlLWRlbGF5LSoge1xuICAgIGFuaW1hdGlvbi1kZWxheTogLS12YWx1ZShpbnRlZ2VyKSBtcztcbn1cbiIsIkB1dGlsaXR5IGFuaW1hdGUtZHVyYXRpb24tKiB7IFxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogLS12YWx1ZShpbnRlZ2VyKW1zOyBcbn0gIiwiQHV0aWxpdHkgYW5pbWF0ZS1maWxsLW5vbmUge1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IG5vbmU7XG59XG5cbkB1dGlsaXR5IGFuaW1hdGUtZmlsbC1mb3J3YXJkcyB7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG59XG5cbkB1dGlsaXR5IGFuaW1hdGUtZmlsbC1iYWNrd2FyZHMge1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJhY2t3YXJkcztcbn1cblxuQHV0aWxpdHkgYW5pbWF0ZS1maWxsLWJvdGgge1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59ICIsIkB1dGlsaXR5IGFuaW1hdGUtaW5maW5pdGUge1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xufVxuXG5AdXRpbGl0eSBhbmltYXRlLW9uY2Uge1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG59XG5cbkB1dGlsaXR5IGFuaW1hdGUtdHdpY2Uge1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDI7XG59ICIsIkBsYXllciBrZXlmcmFtZXMge1xuICAgIEBrZXlmcmFtZXMgZW50ZXIge1xuICAgICAgICBmcm9tIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IHZhcigtLXAtZW50ZXItb3BhY2l0eSwgMSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKHZhcigtLXAtZW50ZXItdHJhbnNsYXRlLXgsIDApLCB2YXIoLS1wLWVudGVyLXRyYW5zbGF0ZS15LCAwKSwgMCkgc2NhbGUzZCh2YXIoLS1wLWVudGVyLXNjYWxlLCAxKSwgdmFyKC0tcC1lbnRlci1zY2FsZSwgMSksIHZhcigtLXAtZW50ZXItc2NhbGUsIDEpKSByb3RhdGUodmFyKC0tcC1lbnRlci1yb3RhdGUsIDApKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgbGVhdmUge1xuICAgICAgICB0byB7XG4gICAgICAgICAgICBvcGFjaXR5OiB2YXIoLS1wLWxlYXZlLW9wYWNpdHksIDEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCh2YXIoLS1wLWxlYXZlLXRyYW5zbGF0ZS14LCAwKSwgdmFyKC0tcC1sZWF2ZS10cmFuc2xhdGUteSwgMCksIDApIHNjYWxlM2QodmFyKC0tcC1sZWF2ZS1zY2FsZSwgMSksIHZhcigtLXAtbGVhdmUtc2NhbGUsIDEpLCB2YXIoLS1wLWxlYXZlLXNjYWxlLCAxKSkgcm90YXRlKHZhcigtLXAtbGVhdmUtcm90YXRlLCAwKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIGZhZGVpbiB7XG4gICAgICAgIDAlIHsgb3BhY2l0eTogMDsgfVxuICAgICAgICAxMDAlIHsgb3BhY2l0eTogMTsgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgZmFkZW91dCB7XG4gICAgICAgIDAlIHsgb3BhY2l0eTogMTsgfVxuICAgICAgICAxMDAlIHsgb3BhY2l0eTogMDsgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgaW5maW5pdGUtc2Nyb2xsIHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIH1cbiAgICAgICAgdG8ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgc2NhbGVpbiB7XG4gICAgICAgIDAlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgwLjgpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTJzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCBvcGFjaXR5IDAuMTJzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xuICAgICAgICB9XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKDEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBzbGlkZWRvd24ge1xuICAgICAgICAwJSB7IG1heC1oZWlnaHQ6IDA7IH1cbiAgICAgICAgMTAwJSB7IG1heC1oZWlnaHQ6IGF1dG87IH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIHNsaWRldXAge1xuICAgICAgICAwJSB7IG1heC1oZWlnaHQ6IDEwMDBweDsgfVxuICAgICAgICAxMDAlIHsgbWF4LWhlaWdodDogMDsgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgZmFkZWlubGVmdCB7XG4gICAgICAgIDAlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTJzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCBvcGFjaXR5IDAuMTJzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xuICAgICAgICB9XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIGZhZGVvdXRsZWZ0IHtcbiAgICAgICAgMCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMnMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSksIG9wYWNpdHkgMC4xMnMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG4gICAgICAgIH1cbiAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgZmFkZWlucmlnaHQge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTJzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCBvcGFjaXR5IDAuMTJzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xuICAgICAgICB9XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIGZhZGVvdXRyaWdodCB7XG4gICAgICAgIDAlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTJzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCBvcGFjaXR5IDAuMTJzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xuICAgICAgICB9XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgZmFkZWludXAge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEycyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSwgb3BhY2l0eSAwLjEycyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgICAgICAgfVxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBmYWRlb3V0dXAge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEycyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSwgb3BhY2l0eSAwLjEycyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgICAgICAgfVxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBmYWRlaW5kb3duIHtcbiAgICAgICAgMCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEycyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSwgb3BhY2l0eSAwLjEycyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgICAgICAgfVxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBmYWRlb3V0ZG93biB7XG4gICAgICAgIDAlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTJzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpLCBvcGFjaXR5IDAuMTJzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpO1xuICAgICAgICB9XG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgd2lkdGgge1xuICAgICAgICAwJSB7IHdpZHRoOiAwOyB9XG4gICAgICAgIDEwMCUgeyB3aWR0aDogMTAwJTsgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgZmxpcCB7XG4gICAgICAgIGZyb20geyB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtMTAwZGVnKTsgfVxuICAgICAgICB0byB7IHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDApOyB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBmbGlwbGVmdCB7XG4gICAgICAgIGZyb20ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTEwMGRlZyk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgICAgIHRvIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDApO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgZmxpcHJpZ2h0IHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgxMDBkZWcpO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgICAgICB0byB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgwKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIGZsaXB1cCB7XG4gICAgICAgIGZyb20ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTEwMGRlZyk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgICAgIHRvIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDApO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgem9vbWluIHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgICAgIDUwJSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyB6b29taW5kb3duIHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgICAgIDYwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyB6b29taW5sZWZ0IHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgICAgIDYwJSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufSAiXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/