/*!****************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/css/design-system.css ***!
  \****************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700;800&family=Geist+Mono:wght@400;500;600&display=swap);
/*!********************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[2]!./assets/css/design-system.css (1) ***!
  \********************************************************************************************************************************************************************************************************/
/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: "Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    --font-mono: "Geist Mono", ui-monospace, "SFMono-Regular", "Menlo", "Monaco", "Consolas", monospace;
    --color-red-50: oklch(97.1% 0.013 17.38);
    --color-red-100: oklch(93.6% 0.032 17.717);
    --color-red-200: oklch(88.5% 0.062 18.334);
    --color-red-400: oklch(70.4% 0.191 22.216);
    --color-red-600: oklch(57.7% 0.245 27.325);
    --color-red-700: oklch(50.5% 0.213 27.518);
    --color-red-800: oklch(44.4% 0.177 26.899);
    --color-orange-700: oklch(55.3% 0.195 38.402);
    --color-amber-50: oklch(98.7% 0.022 95.277);
    --color-amber-100: oklch(96.2% 0.059 95.617);
    --color-amber-200: oklch(92.4% 0.12 95.746);
    --color-amber-300: oklch(87.9% 0.169 91.605);
    --color-amber-400: oklch(82.8% 0.189 84.429);
    --color-amber-500: oklch(76.9% 0.188 70.08);
    --color-amber-600: oklch(66.6% 0.179 58.318);
    --color-amber-700: oklch(55.5% 0.163 48.998);
    --color-amber-800: oklch(47.3% 0.137 46.201);
    --color-amber-900: oklch(41.4% 0.112 45.904);
    --color-emerald-50: oklch(97.9% 0.021 166.113);
    --color-emerald-100: oklch(95% 0.052 163.051);
    --color-emerald-200: oklch(90.5% 0.093 164.15);
    --color-emerald-300: oklch(84.5% 0.143 164.978);
    --color-emerald-600: oklch(59.6% 0.145 163.225);
    --color-emerald-700: oklch(50.8% 0.118 165.612);
    --color-emerald-800: oklch(43.2% 0.095 166.913);
    --color-blue-50: #EFF5FF;
    --color-blue-100: #E0EDFF;
    --color-blue-200: #BCD6FF;
    --color-blue-300: #85B8FF;
    --color-blue-400: #5C9EFF;
    --color-blue-500: #3385FF;
    --color-blue-600: #0066FF;
    --color-blue-700: #0052CC;
    --color-blue-800: #003FA3;
    --color-blue-900: #002C73;
    --color-slate-50: #F9FAFB;
    --color-slate-100: #F3F4F6;
    --color-slate-200: #E5E7EB;
    --color-slate-300: #D1D5DB;
    --color-slate-400: #9CA3AF;
    --color-slate-500: #6B7280;
    --color-slate-600: #4B5563;
    --color-slate-700: #374151;
    --color-slate-800: #1F2937;
    --color-slate-900: #111827;
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-lg: 32rem;
    --container-xl: 36rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-5xl: 64rem;
    --container-6xl: 72rem;
    --container-7xl: 80rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --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-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --text-7xl: 4.5rem;
    --text-7xl--line-height: 1;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --tracking-tight: -0.025em;
    --tracking-normal: 0em;
    --tracking-wide: 0.025em;
    --tracking-wider: 0.05em;
    --tracking-widest: 0.1em;
    --leading-tight: 1.25;
    --leading-snug: 1.375;
    --leading-relaxed: 1.625;
    --radius-sm: 6px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-xl: 16px;
    --radius-2xl: 24px;
    --radius-3xl: 1.5rem;
    --animate-spin: spin 1s linear infinite;
    --blur-sm: 8px;
    --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);
    --color-navy-50: #E8EDF5;
    --color-navy-100: #C5CFE0;
    --color-navy-200: #8FA0BD;
    --color-navy-300: #5C7196;
    --color-navy-400: #354A75;
    --color-navy-500: #1F3261;
    --color-navy-600: #1B3A68;
    --color-navy-700: #152E54;
    --color-navy-800: #102953;
    --color-navy-900: #0B1F4D;
    --color-gold-50: #FBF6E4;
    --color-gold-100: #F5EDD6;
    --color-gold-200: #ECDCA4;
    --color-gold-300: #DFC06B;
    --color-gold-400: #D4A72C;
    --color-gold-500: #C9951A;
    --color-gold-600: #B8860B;
    --color-gold-700: #8F6809;
    --color-gold-800: #6B4E07;
    --color-gold-900: #4A3505;
    --color-coral-50: #FFF1EE;
    --color-coral-100: #FFD9D2;
    --color-coral-200: #FFB3A8;
    --color-coral-300: #FFB3A8;
    --color-coral-400: #FF8A7A;
    --color-coral-500: #FF6B5A;
    --color-coral-600: #E84F3D;
    --color-coral-700: #B83A2B;
    --color-coral-800: #8C2A1F;
    --color-coral-900: #5C1B14;
    --color-mint-50: #ECFDF5;
    --color-mint-100: #D1FAE5;
    --color-mint-200: #A7F3D0;
    --color-mint-300: #6EE7B7;
    --color-mint-400: #6EE7B7;
    --color-mint-500: #34D399;
    --color-mint-600: #10B981;
    --color-mint-700: #059669;
    --color-mint-800: #047857;
    --color-mint-900: #065F46;
    --color-brand: var(--color-blue-600);
    --color-brand-dark: var(--color-blue-800);
  }
}
@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;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-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;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .inset-x-2\.5 {
    inset-inline: calc(var(--spacing) * 2.5);
  }
  .inset-y-0 {
    inset-block: calc(var(--spacing) * 0);
  }
  .-top-1 {
    top: calc(var(--spacing) * -1);
  }
  .-top-32 {
    top: calc(var(--spacing) * -32);
  }
  .-top-40 {
    top: calc(var(--spacing) * -40);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-0\.5 {
    top: calc(var(--spacing) * 0.5);
  }
  .top-1\/2 {
    top: calc(1 / 2 * 100%);
  }
  .top-1\/3 {
    top: calc(1 / 3 * 100%);
  }
  .top-3 {
    top: calc(var(--spacing) * 3);
  }
  .top-full {
    top: 100%;
  }
  .-right-0\.5 {
    right: calc(var(--spacing) * -0.5);
  }
  .-right-1 {
    right: calc(var(--spacing) * -1);
  }
  .-right-32 {
    right: calc(var(--spacing) * -32);
  }
  .-right-40 {
    right: calc(var(--spacing) * -40);
  }
  .right-0 {
    right: calc(var(--spacing) * 0);
  }
  .right-1 {
    right: calc(var(--spacing) * 1);
  }
  .right-1\/4 {
    right: calc(1 / 4 * 100%);
  }
  .right-2 {
    right: calc(var(--spacing) * 2);
  }
  .right-3 {
    right: calc(var(--spacing) * 3);
  }
  .right-full {
    right: 100%;
  }
  .-bottom-0\.5 {
    bottom: calc(var(--spacing) * -0.5);
  }
  .-bottom-40 {
    bottom: calc(var(--spacing) * -40);
  }
  .-bottom-48 {
    bottom: calc(var(--spacing) * -48);
  }
  .-bottom-px {
    bottom: -1px;
  }
  .bottom-0 {
    bottom: calc(var(--spacing) * 0);
  }
  .bottom-4 {
    bottom: calc(var(--spacing) * 4);
  }
  .bottom-6 {
    bottom: calc(var(--spacing) * 6);
  }
  .-left-32 {
    left: calc(var(--spacing) * -32);
  }
  .-left-40 {
    left: calc(var(--spacing) * -40);
  }
  .left-0 {
    left: calc(var(--spacing) * 0);
  }
  .left-0\.5 {
    left: calc(var(--spacing) * 0.5);
  }
  .left-1\/2 {
    left: calc(1 / 2 * 100%);
  }
  .left-3 {
    left: calc(var(--spacing) * 3);
  }
  .left-4 {
    left: calc(var(--spacing) * 4);
  }
  .-z-10 {
    z-index: calc(10 * -1);
  }
  .z-10 {
    z-index: 10;
  }
  .z-20 {
    z-index: 20;
  }
  .z-30 {
    z-index: 30;
  }
  .z-40 {
    z-index: 40;
  }
  .z-50 {
    z-index: 50;
  }
  .z-\[1200\] {
    z-index: 1200;
  }
  .col-auto {
    grid-column: auto;
  }
  .col-span-1 {
    grid-column: span 1 / span 1;
  }
  .col-span-2 {
    grid-column: span 2 / span 2;
  }
  .col-span-3 {
    grid-column: span 3 / span 3;
  }
  .col-span-4 {
    grid-column: span 4 / span 4;
  }
  .col-span-12 {
    grid-column: span 12 / span 12;
  }
  .col-span-full {
    grid-column: 1 / -1;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .-m-1 {
    margin: calc(var(--spacing) * -1);
  }
  .-m-2 {
    margin: calc(var(--spacing) * -2);
  }
  .m-0 {
    margin: calc(var(--spacing) * 0);
  }
  .m-3 {
    margin: calc(var(--spacing) * 3);
  }
  .m-6 {
    margin: calc(var(--spacing) * 6);
  }
  .m-auto {
    margin: auto;
  }
  .-mx-1 {
    margin-inline: calc(var(--spacing) * -1);
  }
  .-mx-2 {
    margin-inline: calc(var(--spacing) * -2);
  }
  .-mx-4 {
    margin-inline: calc(var(--spacing) * -4);
  }
  .-mx-6 {
    margin-inline: calc(var(--spacing) * -6);
  }
  .mx-0\.5 {
    margin-inline: calc(var(--spacing) * 0.5);
  }
  .mx-1 {
    margin-inline: calc(var(--spacing) * 1);
  }
  .mx-1\.5 {
    margin-inline: calc(var(--spacing) * 1.5);
  }
  .mx-\[3px\] {
    margin-inline: 3px;
  }
  .mx-auto {
    margin-inline: auto;
  }
  .my-1 {
    margin-block: calc(var(--spacing) * 1);
  }
  .my-6 {
    margin-block: calc(var(--spacing) * 6);
  }
  .-mt-1 {
    margin-top: calc(var(--spacing) * -1);
  }
  .-mt-1\.5 {
    margin-top: calc(var(--spacing) * -1.5);
  }
  .-mt-2 {
    margin-top: calc(var(--spacing) * -2);
  }
  .-mt-3 {
    margin-top: calc(var(--spacing) * -3);
  }
  .-mt-4 {
    margin-top: calc(var(--spacing) * -4);
  }
  .-mt-6 {
    margin-top: calc(var(--spacing) * -6);
  }
  .mt-0\.5 {
    margin-top: calc(var(--spacing) * 0.5);
  }
  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }
  .mt-1\.5 {
    margin-top: calc(var(--spacing) * 1.5);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-2\.5 {
    margin-top: calc(var(--spacing) * 2.5);
  }
  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-5 {
    margin-top: calc(var(--spacing) * 5);
  }
  .mt-6 {
    margin-top: calc(var(--spacing) * 6);
  }
  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }
  .mt-10 {
    margin-top: calc(var(--spacing) * 10);
  }
  .mt-14 {
    margin-top: calc(var(--spacing) * 14);
  }
  .mt-20 {
    margin-top: calc(var(--spacing) * 20);
  }
  .mt-px {
    margin-top: 1px;
  }
  .mr-0\.5 {
    margin-right: calc(var(--spacing) * 0.5);
  }
  .mr-1 {
    margin-right: calc(var(--spacing) * 1);
  }
  .mr-1\.5 {
    margin-right: calc(var(--spacing) * 1.5);
  }
  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }
  .mr-auto {
    margin-right: auto;
  }
  .\!mb-0 {
    margin-bottom: calc(var(--spacing) * 0) !important;
  }
  .-mb-px {
    margin-bottom: -1px;
  }
  .mb-0 {
    margin-bottom: calc(var(--spacing) * 0);
  }
  .mb-0\.5 {
    margin-bottom: calc(var(--spacing) * 0.5);
  }
  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }
  .mb-1\.5 {
    margin-bottom: calc(var(--spacing) * 1.5);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .mb-7 {
    margin-bottom: calc(var(--spacing) * 7);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .mb-12 {
    margin-bottom: calc(var(--spacing) * 12);
  }
  .-ml-3 {
    margin-left: calc(var(--spacing) * -3);
  }
  .ml-0\.5 {
    margin-left: calc(var(--spacing) * 0.5);
  }
  .ml-1 {
    margin-left: calc(var(--spacing) * 1);
  }
  .ml-1\.5 {
    margin-left: calc(var(--spacing) * 1.5);
  }
  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }
  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }
  .ml-5 {
    margin-left: calc(var(--spacing) * 5);
  }
  .ml-auto {
    margin-left: auto;
  }
  .line-clamp-1 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }
  .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .list-item {
    display: list-item;
  }
  .table {
    display: table;
  }
  .aspect-\[4\/3\] {
    aspect-ratio: 4/3;
  }
  .aspect-square {
    aspect-ratio: 1 / 1;
  }
  .\!h-7 {
    height: calc(var(--spacing) * 7) !important;
  }
  .h-0\.5 {
    height: calc(var(--spacing) * 0.5);
  }
  .h-1 {
    height: calc(var(--spacing) * 1);
  }
  .h-1\.5 {
    height: calc(var(--spacing) * 1.5);
  }
  .h-2 {
    height: calc(var(--spacing) * 2);
  }
  .h-2\.5 {
    height: calc(var(--spacing) * 2.5);
  }
  .h-3 {
    height: calc(var(--spacing) * 3);
  }
  .h-3\.5 {
    height: calc(var(--spacing) * 3.5);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-4\.5 {
    height: calc(var(--spacing) * 4.5);
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-7 {
    height: calc(var(--spacing) * 7);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-9 {
    height: calc(var(--spacing) * 9);
  }
  .h-10 {
    height: calc(var(--spacing) * 10);
  }
  .h-11 {
    height: calc(var(--spacing) * 11);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-16 {
    height: calc(var(--spacing) * 16);
  }
  .h-20 {
    height: calc(var(--spacing) * 20);
  }
  .h-24 {
    height: calc(var(--spacing) * 24);
  }
  .h-28 {
    height: calc(var(--spacing) * 28);
  }
  .h-36 {
    height: calc(var(--spacing) * 36);
  }
  .h-72 {
    height: calc(var(--spacing) * 72);
  }
  .h-96 {
    height: calc(var(--spacing) * 96);
  }
  .h-\[28rem\] {
    height: 28rem;
  }
  .h-\[92vh\] {
    height: 92vh;
  }
  .h-\[900px\] {
    height: 900px;
  }
  .h-full {
    height: 100%;
  }
  .h-px {
    height: 1px;
  }
  .max-h-40 {
    max-height: calc(var(--spacing) * 40);
  }
  .max-h-44 {
    max-height: calc(var(--spacing) * 44);
  }
  .max-h-48 {
    max-height: calc(var(--spacing) * 48);
  }
  .max-h-56 {
    max-height: calc(var(--spacing) * 56);
  }
  .max-h-60 {
    max-height: calc(var(--spacing) * 60);
  }
  .max-h-64 {
    max-height: calc(var(--spacing) * 64);
  }
  .max-h-72 {
    max-height: calc(var(--spacing) * 72);
  }
  .max-h-80 {
    max-height: calc(var(--spacing) * 80);
  }
  .max-h-96 {
    max-height: calc(var(--spacing) * 96);
  }
  .max-h-\[22rem\] {
    max-height: 22rem;
  }
  .max-h-\[26rem\] {
    max-height: 26rem;
  }
  .max-h-\[28rem\] {
    max-height: 28rem;
  }
  .max-h-\[32rem\] {
    max-height: 32rem;
  }
  .max-h-\[50vh\] {
    max-height: 50vh;
  }
  .max-h-\[85vh\] {
    max-height: 85vh;
  }
  .max-h-\[90vh\] {
    max-height: 90vh;
  }
  .max-h-\[92vh\] {
    max-height: 92vh;
  }
  .max-h-\[112px\] {
    max-height: 112px;
  }
  .max-h-\[160px\] {
    max-height: 160px;
  }
  .max-h-\[480px\] {
    max-height: 480px;
  }
  .max-h-\[calc\(100vh-4rem\)\] {
    max-height: calc(100vh - 4rem);
  }
  .min-h-0 {
    min-height: calc(var(--spacing) * 0);
  }
  .min-h-\[2\.5rem\] {
    min-height: 2.5rem;
  }
  .min-h-\[42px\] {
    min-height: 42px;
  }
  .min-h-screen {
    min-height: 100vh;
  }
  .w-1\.5 {
    width: calc(var(--spacing) * 1.5);
  }
  .w-2 {
    width: calc(var(--spacing) * 2);
  }
  .w-2\.5 {
    width: calc(var(--spacing) * 2.5);
  }
  .w-3 {
    width: calc(var(--spacing) * 3);
  }
  .w-3\.5 {
    width: calc(var(--spacing) * 3.5);
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-4\.5 {
    width: calc(var(--spacing) * 4.5);
  }
  .w-5 {
    width: calc(var(--spacing) * 5);
  }
  .w-6 {
    width: calc(var(--spacing) * 6);
  }
  .w-7 {
    width: calc(var(--spacing) * 7);
  }
  .w-8 {
    width: calc(var(--spacing) * 8);
  }
  .w-9 {
    width: calc(var(--spacing) * 9);
  }
  .w-10 {
    width: calc(var(--spacing) * 10);
  }
  .w-11 {
    width: calc(var(--spacing) * 11);
  }
  .w-12 {
    width: calc(var(--spacing) * 12);
  }
  .w-14 {
    width: calc(var(--spacing) * 14);
  }
  .w-16 {
    width: calc(var(--spacing) * 16);
  }
  .w-20 {
    width: calc(var(--spacing) * 20);
  }
  .w-24 {
    width: calc(var(--spacing) * 24);
  }
  .w-28 {
    width: calc(var(--spacing) * 28);
  }
  .w-32 {
    width: calc(var(--spacing) * 32);
  }
  .w-36 {
    width: calc(var(--spacing) * 36);
  }
  .w-40 {
    width: calc(var(--spacing) * 40);
  }
  .w-44 {
    width: calc(var(--spacing) * 44);
  }
  .w-48 {
    width: calc(var(--spacing) * 48);
  }
  .w-52 {
    width: calc(var(--spacing) * 52);
  }
  .w-56 {
    width: calc(var(--spacing) * 56);
  }
  .w-60 {
    width: calc(var(--spacing) * 60);
  }
  .w-64 {
    width: calc(var(--spacing) * 64);
  }
  .w-72 {
    width: calc(var(--spacing) * 72);
  }
  .w-80 {
    width: calc(var(--spacing) * 80);
  }
  .w-96 {
    width: calc(var(--spacing) * 96);
  }
  .w-\[\.\.\.\] {
    width: ...;
  }
  .w-\[22rem\] {
    width: 22rem;
  }
  .w-\[24rem\] {
    width: 24rem;
  }
  .w-\[25rem\] {
    width: 25rem;
  }
  .w-\[26rem\] {
    width: 26rem;
  }
  .w-\[28rem\] {
    width: 28rem;
  }
  .w-\[30rem\] {
    width: 30rem;
  }
  .w-\[34\%\] {
    width: 34%;
  }
  .w-\[34rem\] {
    width: 34rem;
  }
  .w-\[36px\] {
    width: 36px;
  }
  .w-\[44px\] {
    width: 44px;
  }
  .w-\[48rem\] {
    width: 48rem;
  }
  .w-\[60px\] {
    width: 60px;
  }
  .w-\[76px\] {
    width: 76px;
  }
  .w-\[80px\] {
    width: 80px;
  }
  .w-\[84px\] {
    width: 84px;
  }
  .w-\[90px\] {
    width: 90px;
  }
  .w-\[92px\] {
    width: 92px;
  }
  .w-\[96px\] {
    width: 96px;
  }
  .w-\[96vw\] {
    width: 96vw;
  }
  .w-\[100px\] {
    width: 100px;
  }
  .w-\[104px\] {
    width: 104px;
  }
  .w-\[110px\] {
    width: 110px;
  }
  .w-\[112px\] {
    width: 112px;
  }
  .w-\[120px\] {
    width: 120px;
  }
  .w-\[128px\] {
    width: 128px;
  }
  .w-\[130px\] {
    width: 130px;
  }
  .w-\[132px\] {
    width: 132px;
  }
  .w-\[140px\] {
    width: 140px;
  }
  .w-\[150px\] {
    width: 150px;
  }
  .w-\[160px\] {
    width: 160px;
  }
  .w-\[170px\] {
    width: 170px;
  }
  .w-\[180px\] {
    width: 180px;
  }
  .w-\[190px\] {
    width: 190px;
  }
  .w-\[200px\] {
    width: 200px;
  }
  .w-\[210px\] {
    width: 210px;
  }
  .w-\[220px\] {
    width: 220px;
  }
  .w-\[260px\] {
    width: 260px;
  }
  .w-\[280px\] {
    width: 280px;
  }
  .w-\[300px\] {
    width: 300px;
  }
  .w-\[Npx\] {
    width: Npx;
  }
  .w-\[min\(28rem\,92vw\)\] {
    width: min(28rem, 92vw);
  }
  .w-\[min\(30rem\,92vw\)\] {
    width: min(30rem, 92vw);
  }
  .w-\[min\(32rem\,92vw\)\] {
    width: min(32rem, 92vw);
  }
  .w-\[min\(32rem\,94vw\)\] {
    width: min(32rem, 94vw);
  }
  .w-\[min\(34rem\,92vw\)\] {
    width: min(34rem, 92vw);
  }
  .w-\[min\(36rem\,92vw\)\] {
    width: min(36rem, 92vw);
  }
  .w-\[min\(38rem\,94vw\)\] {
    width: min(38rem, 94vw);
  }
  .w-\[min\(44rem\,92vw\)\] {
    width: min(44rem, 92vw);
  }
  .w-\[min\(46rem\,94vw\)\] {
    width: min(46rem, 94vw);
  }
  .w-\[min\(52rem\,94vw\)\] {
    width: min(52rem, 94vw);
  }
  .w-\[min\(58rem\,95vw\)\] {
    width: min(58rem, 95vw);
  }
  .w-\[min\(64rem\,95vw\)\] {
    width: min(64rem, 95vw);
  }
  .w-\[min\(64rem\,calc\(100vw-2rem\)\)\] {
    width: min(64rem, calc(100vw - 2rem));
  }
  .w-\[min\(72rem\,96vw\)\] {
    width: min(72rem, 96vw);
  }
  .w-\[min\(76rem\,96vw\)\] {
    width: min(76rem, 96vw);
  }
  .w-\[…\] {
    width: …;
  }
  .w-auto {
    width: auto;
  }
  .w-fit {
    width: fit-content;
  }
  .w-full {
    width: 100%;
  }
  .w-px {
    width: 1px;
  }
  .max-w-2xl {
    max-width: var(--container-2xl);
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-4xl {
    max-width: var(--container-4xl);
  }
  .max-w-5xl {
    max-width: var(--container-5xl);
  }
  .max-w-6xl {
    max-width: var(--container-6xl);
  }
  .max-w-7xl {
    max-width: var(--container-7xl);
  }
  .max-w-\[9rem\] {
    max-width: 9rem;
  }
  .max-w-\[14rem\] {
    max-width: 14rem;
  }
  .max-w-\[16rem\] {
    max-width: 16rem;
  }
  .max-w-\[22rem\] {
    max-width: 22rem;
  }
  .max-w-\[28rem\] {
    max-width: 28rem;
  }
  .max-w-\[85\%\] {
    max-width: 85%;
  }
  .max-w-\[90vw\] {
    max-width: 90vw;
  }
  .max-w-\[92vw\] {
    max-width: 92vw;
  }
  .max-w-\[96rem\] {
    max-width: 96rem;
  }
  .max-w-\[180px\] {
    max-width: 180px;
  }
  .max-w-\[280px\] {
    max-width: 280px;
  }
  .max-w-full {
    max-width: 100%;
  }
  .max-w-lg {
    max-width: var(--container-lg);
  }
  .max-w-md {
    max-width: var(--container-md);
  }
  .max-w-none {
    max-width: none;
  }
  .max-w-prose {
    max-width: 65ch;
  }
  .max-w-sm {
    max-width: var(--container-sm);
  }
  .max-w-xl {
    max-width: var(--container-xl);
  }
  .max-w-xs {
    max-width: var(--container-xs);
  }
  .min-w-0 {
    min-width: calc(var(--spacing) * 0);
  }
  .min-w-72 {
    min-width: calc(var(--spacing) * 72);
  }
  .min-w-\[2rem\] {
    min-width: 2rem;
  }
  .min-w-\[3\.5rem\] {
    min-width: 3.5rem;
  }
  .min-w-\[9rem\] {
    min-width: 9rem;
  }
  .min-w-\[10rem\] {
    min-width: 10rem;
  }
  .min-w-\[11rem\] {
    min-width: 11rem;
  }
  .min-w-\[12rem\] {
    min-width: 12rem;
  }
  .min-w-\[13rem\] {
    min-width: 13rem;
  }
  .min-w-\[15rem\] {
    min-width: 15rem;
  }
  .min-w-\[16rem\] {
    min-width: 16rem;
  }
  .min-w-\[17rem\] {
    min-width: 17rem;
  }
  .min-w-\[19rem\] {
    min-width: 19rem;
  }
  .min-w-\[22rem\] {
    min-width: 22rem;
  }
  .min-w-\[150px\] {
    min-width: 150px;
  }
  .min-w-\[180px\] {
    min-width: 180px;
  }
  .min-w-\[200px\] {
    min-width: 200px;
  }
  .min-w-\[220px\] {
    min-width: 220px;
  }
  .min-w-\[260px\] {
    min-width: 260px;
  }
  .min-w-\[520px\] {
    min-width: 520px;
  }
  .min-w-\[560px\] {
    min-width: 560px;
  }
  .min-w-\[640px\] {
    min-width: 640px;
  }
  .min-w-\[680px\] {
    min-width: 680px;
  }
  .min-w-\[720px\] {
    min-width: 720px;
  }
  .min-w-\[760px\] {
    min-width: 760px;
  }
  .min-w-\[820px\] {
    min-width: 820px;
  }
  .min-w-\[860px\] {
    min-width: 860px;
  }
  .min-w-\[880px\] {
    min-width: 880px;
  }
  .min-w-\[900px\] {
    min-width: 900px;
  }
  .min-w-\[1040px\] {
    min-width: 1040px;
  }
  .min-w-full {
    min-width: 100%;
  }
  .flex-1 {
    flex: 1;
  }
  .flex-shrink-0 {
    flex-shrink: 0;
  }
  .shrink-0 {
    flex-shrink: 0;
  }
  .table-fixed {
    table-layout: fixed;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .-translate-x-1\/2 {
    --tw-translate-x: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-4 {
    --tw-translate-x: calc(var(--spacing) * 4);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-x-5 {
    --tw-translate-x: calc(var(--spacing) * 5);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .-translate-y-1\/2 {
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .rotate-90 {
    rotate: 90deg;
  }
  .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-spin {
    animation: var(--animate-spin);
  }
  .\!cursor-not-allowed {
    cursor: not-allowed !important;
  }
  .cursor-col-resize {
    cursor: col-resize;
  }
  .cursor-default {
    cursor: default;
  }
  .cursor-help {
    cursor: help;
  }
  .cursor-not-allowed {
    cursor: not-allowed;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .cursor-zoom-in {
    cursor: zoom-in;
  }
  .resize {
    resize: both;
  }
  .resize-none {
    resize: none;
  }
  .resize-y {
    resize: vertical;
  }
  .scroll-mt-24 {
    scroll-margin-top: calc(var(--spacing) * 24);
  }
  .list-inside {
    list-style-position: inside;
  }
  .list-decimal {
    list-style-type: decimal;
  }
  .list-disc {
    list-style-type: disc;
  }
  .list-none {
    list-style-type: none;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .grid-cols-\[\.\.\.\] {
    grid-template-columns: ...;
  }
  .grid-cols-\[1fr_1fr_auto\] {
    grid-template-columns: 1fr 1fr auto;
  }
  .grid-cols-\[3\.5rem_1fr\] {
    grid-template-columns: 3.5rem 1fr;
  }
  .grid-cols-\[160px_1fr\] {
    grid-template-columns: 160px 1fr;
  }
  .grid-cols-\[auto_auto_1fr\] {
    grid-template-columns: auto auto 1fr;
  }
  .grid-cols-\[minmax\(0\,1fr\)_6rem_9rem_7rem\] {
    grid-template-columns: minmax(0,1fr) 6rem 9rem 7rem;
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-col-reverse {
    flex-direction: column-reverse;
  }
  .flex-row-reverse {
    flex-direction: row-reverse;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .items-baseline {
    align-items: baseline;
  }
  .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-0\.5 {
    gap: calc(var(--spacing) * 0.5);
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-1\.5 {
    gap: calc(var(--spacing) * 1.5);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-2\.5 {
    gap: calc(var(--spacing) * 2.5);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-3\.5 {
    gap: calc(var(--spacing) * 3.5);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-7 {
    gap: calc(var(--spacing) * 7);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .gap-px {
    gap: 1px;
  }
  .space-y-0\.5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 0.5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 0.5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-1 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-1\.5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-2 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-2\.5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-3 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-4 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-5 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-6 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-8 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 8) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 8) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-9 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 9) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 9) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-10 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 10) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 10) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-12 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 12) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 12) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-20 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 20) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 20) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .gap-x-2 {
    column-gap: calc(var(--spacing) * 2);
  }
  .gap-x-2\.5 {
    column-gap: calc(var(--spacing) * 2.5);
  }
  .gap-x-3 {
    column-gap: calc(var(--spacing) * 3);
  }
  .gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }
  .gap-x-5 {
    column-gap: calc(var(--spacing) * 5);
  }
  .gap-x-6 {
    column-gap: calc(var(--spacing) * 6);
  }
  .gap-x-8 {
    column-gap: calc(var(--spacing) * 8);
  }
  .gap-x-10 {
    column-gap: calc(var(--spacing) * 10);
  }
  .gap-y-0\.5 {
    row-gap: calc(var(--spacing) * 0.5);
  }
  .gap-y-1 {
    row-gap: calc(var(--spacing) * 1);
  }
  .gap-y-1\.5 {
    row-gap: calc(var(--spacing) * 1.5);
  }
  .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-9 {
    row-gap: calc(var(--spacing) * 9);
  }
  .divide-x {
    :where(& > :not(:last-child)) {
      --tw-divide-x-reverse: 0;
      border-inline-style: var(--tw-border-style);
      border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
      border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
    }
  }
  .divide-y {
    :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-amber-100 {
    :where(& > :not(:last-child)) {
      border-color: var(--color-amber-100);
    }
  }
  .divide-emerald-100 {
    :where(& > :not(:last-child)) {
      border-color: var(--color-emerald-100);
    }
  }
  .divide-slate-50 {
    :where(& > :not(:last-child)) {
      border-color: var(--color-slate-50);
    }
  }
  .divide-slate-100 {
    :where(& > :not(:last-child)) {
      border-color: var(--color-slate-100);
    }
  }
  .divide-slate-100\/80 {
    :where(& > :not(:last-child)) {
      border-color: color-mix(in srgb, #F3F4F6 80%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        border-color: color-mix(in oklab, var(--color-slate-100) 80%, transparent);
      }
    }
  }
  .divide-slate-200 {
    :where(& > :not(:last-child)) {
      border-color: var(--color-slate-200);
    }
  }
  .self-center {
    align-self: center;
  }
  .self-start {
    align-self: flex-start;
  }
  .self-stretch {
    align-self: stretch;
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-auto {
    overflow: auto;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-2xl {
    border-radius: var(--radius-2xl);
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-lg {
    border-radius: var(--radius-lg);
  }
  .rounded-md {
    border-radius: var(--radius-md);
  }
  .rounded-sm {
    border-radius: var(--radius-sm);
  }
  .rounded-xl {
    border-radius: var(--radius-xl);
  }
  .rounded-l-none {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .rounded-r-none {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-0 {
    border-style: var(--tw-border-style);
    border-width: 0px;
  }
  .border-4 {
    border-style: var(--tw-border-style);
    border-width: 4px;
  }
  .border-y {
    border-block-style: var(--tw-border-style);
    border-block-width: 1px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-t-2 {
    border-top-style: var(--tw-border-style);
    border-top-width: 2px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-b-2 {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 2px;
  }
  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .border-l-0 {
    border-left-style: var(--tw-border-style);
    border-left-width: 0px;
  }
  .border-l-2 {
    border-left-style: var(--tw-border-style);
    border-left-width: 2px;
  }
  .border-l-4 {
    border-left-style: var(--tw-border-style);
    border-left-width: 4px;
  }
  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }
  .border-amber-200 {
    border-color: var(--color-amber-200);
  }
  .border-amber-300 {
    border-color: var(--color-amber-300);
  }
  .border-amber-400 {
    border-color: var(--color-amber-400);
  }
  .border-blue-50 {
    border-color: var(--color-blue-50);
  }
  .border-blue-100 {
    border-color: var(--color-blue-100);
  }
  .border-blue-200 {
    border-color: var(--color-blue-200);
  }
  .border-blue-300 {
    border-color: var(--color-blue-300);
  }
  .border-blue-400 {
    border-color: var(--color-blue-400);
  }
  .border-blue-500 {
    border-color: var(--color-blue-500);
  }
  .border-blue-600 {
    border-color: var(--color-blue-600);
  }
  .border-blue-700 {
    border-color: var(--color-blue-700);
  }
  .border-blue-800 {
    border-color: var(--color-blue-800);
  }
  .border-blue-900 {
    border-color: var(--color-blue-900);
  }
  .border-coral-50 {
    border-color: var(--color-coral-50);
  }
  .border-coral-100 {
    border-color: var(--color-coral-100);
  }
  .border-coral-200 {
    border-color: var(--color-coral-200);
  }
  .border-coral-300 {
    border-color: var(--color-coral-300);
  }
  .border-coral-400 {
    border-color: var(--color-coral-400);
  }
  .border-coral-500 {
    border-color: var(--color-coral-500);
  }
  .border-coral-600 {
    border-color: var(--color-coral-600);
  }
  .border-coral-700 {
    border-color: var(--color-coral-700);
  }
  .border-coral-800 {
    border-color: var(--color-coral-800);
  }
  .border-coral-900 {
    border-color: var(--color-coral-900);
  }
  .border-emerald-200 {
    border-color: var(--color-emerald-200);
  }
  .border-emerald-300 {
    border-color: var(--color-emerald-300);
  }
  .border-gold-50 {
    border-color: var(--color-gold-50);
  }
  .border-gold-100 {
    border-color: var(--color-gold-100);
  }
  .border-gold-200 {
    border-color: var(--color-gold-200);
  }
  .border-gold-300 {
    border-color: var(--color-gold-300);
  }
  .border-gold-400 {
    border-color: var(--color-gold-400);
  }
  .border-gold-500 {
    border-color: var(--color-gold-500);
  }
  .border-gold-600 {
    border-color: var(--color-gold-600);
  }
  .border-gold-700 {
    border-color: var(--color-gold-700);
  }
  .border-gold-800 {
    border-color: var(--color-gold-800);
  }
  .border-gold-900 {
    border-color: var(--color-gold-900);
  }
  .border-mint-50 {
    border-color: var(--color-mint-50);
  }
  .border-mint-100 {
    border-color: var(--color-mint-100);
  }
  .border-mint-200 {
    border-color: var(--color-mint-200);
  }
  .border-mint-300 {
    border-color: var(--color-mint-300);
  }
  .border-mint-400 {
    border-color: var(--color-mint-400);
  }
  .border-mint-500 {
    border-color: var(--color-mint-500);
  }
  .border-mint-600 {
    border-color: var(--color-mint-600);
  }
  .border-mint-700 {
    border-color: var(--color-mint-700);
  }
  .border-mint-800 {
    border-color: var(--color-mint-800);
  }
  .border-mint-900 {
    border-color: var(--color-mint-900);
  }
  .border-navy-50 {
    border-color: var(--color-navy-50);
  }
  .border-navy-100 {
    border-color: var(--color-navy-100);
  }
  .border-navy-200 {
    border-color: var(--color-navy-200);
  }
  .border-navy-300 {
    border-color: var(--color-navy-300);
  }
  .border-navy-400 {
    border-color: var(--color-navy-400);
  }
  .border-navy-500 {
    border-color: var(--color-navy-500);
  }
  .border-navy-600 {
    border-color: var(--color-navy-600);
  }
  .border-navy-700 {
    border-color: var(--color-navy-700);
  }
  .border-navy-800 {
    border-color: var(--color-navy-800);
  }
  .border-navy-900 {
    border-color: var(--color-navy-900);
  }
  .border-red-200 {
    border-color: var(--color-red-200);
  }
  .border-red-400 {
    border-color: var(--color-red-400);
  }
  .border-slate-50 {
    border-color: var(--color-slate-50);
  }
  .border-slate-100 {
    border-color: var(--color-slate-100);
  }
  .border-slate-200 {
    border-color: var(--color-slate-200);
  }
  .border-slate-200\/70 {
    border-color: color-mix(in srgb, #E5E7EB 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-slate-200) 70%, transparent);
    }
  }
  .border-slate-200\/80 {
    border-color: color-mix(in srgb, #E5E7EB 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-slate-200) 80%, transparent);
    }
  }
  .border-slate-300 {
    border-color: var(--color-slate-300);
  }
  .border-slate-400 {
    border-color: var(--color-slate-400);
  }
  .border-slate-500 {
    border-color: var(--color-slate-500);
  }
  .border-slate-600 {
    border-color: var(--color-slate-600);
  }
  .border-slate-700 {
    border-color: var(--color-slate-700);
  }
  .border-slate-800 {
    border-color: var(--color-slate-800);
  }
  .border-slate-900 {
    border-color: var(--color-slate-900);
  }
  .border-transparent {
    border-color: transparent;
  }
  .border-t-blue-600 {
    border-top-color: var(--color-blue-600);
  }
  .border-l-blue-500 {
    border-left-color: var(--color-blue-500);
  }
  .border-l-transparent {
    border-left-color: transparent;
  }
  .bg-amber-50 {
    background-color: var(--color-amber-50);
  }
  .bg-amber-50\/40 {
    background-color: color-mix(in srgb, oklch(98.7% 0.022 95.277) 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-amber-50) 40%, transparent);
    }
  }
  .bg-amber-50\/50 {
    background-color: color-mix(in srgb, oklch(98.7% 0.022 95.277) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-amber-50) 50%, transparent);
    }
  }
  .bg-amber-50\/60 {
    background-color: color-mix(in srgb, oklch(98.7% 0.022 95.277) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-amber-50) 60%, transparent);
    }
  }
  .bg-amber-50\/70 {
    background-color: color-mix(in srgb, oklch(98.7% 0.022 95.277) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-amber-50) 70%, transparent);
    }
  }
  .bg-amber-100 {
    background-color: var(--color-amber-100);
  }
  .bg-amber-400 {
    background-color: var(--color-amber-400);
  }
  .bg-amber-500 {
    background-color: var(--color-amber-500);
  }
  .bg-blue-50 {
    background-color: var(--color-blue-50);
  }
  .bg-blue-50\/20 {
    background-color: color-mix(in srgb, #EFF5FF 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-blue-50) 20%, transparent);
    }
  }
  .bg-blue-50\/30 {
    background-color: color-mix(in srgb, #EFF5FF 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-blue-50) 30%, transparent);
    }
  }
  .bg-blue-50\/60 {
    background-color: color-mix(in srgb, #EFF5FF 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-blue-50) 60%, transparent);
    }
  }
  .bg-blue-100 {
    background-color: var(--color-blue-100);
  }
  .bg-blue-200 {
    background-color: var(--color-blue-200);
  }
  .bg-blue-200\/40 {
    background-color: color-mix(in srgb, #BCD6FF 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-blue-200) 40%, transparent);
    }
  }
  .bg-blue-300 {
    background-color: var(--color-blue-300);
  }
  .bg-blue-400 {
    background-color: var(--color-blue-400);
  }
  .bg-blue-500 {
    background-color: var(--color-blue-500);
  }
  .bg-blue-600 {
    background-color: var(--color-blue-600);
  }
  .bg-blue-700 {
    background-color: var(--color-blue-700);
  }
  .bg-blue-800 {
    background-color: var(--color-blue-800);
  }
  .bg-blue-900 {
    background-color: var(--color-blue-900);
  }
  .bg-coral-50 {
    background-color: var(--color-coral-50);
  }
  .bg-coral-50\/50 {
    background-color: color-mix(in srgb, #FFF1EE 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-coral-50) 50%, transparent);
    }
  }
  .bg-coral-50\/60 {
    background-color: color-mix(in srgb, #FFF1EE 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-coral-50) 60%, transparent);
    }
  }
  .bg-coral-50\/70 {
    background-color: color-mix(in srgb, #FFF1EE 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-coral-50) 70%, transparent);
    }
  }
  .bg-coral-100 {
    background-color: var(--color-coral-100);
  }
  .bg-coral-200 {
    background-color: var(--color-coral-200);
  }
  .bg-coral-300 {
    background-color: var(--color-coral-300);
  }
  .bg-coral-400 {
    background-color: var(--color-coral-400);
  }
  .bg-coral-500 {
    background-color: var(--color-coral-500);
  }
  .bg-coral-600 {
    background-color: var(--color-coral-600);
  }
  .bg-coral-700 {
    background-color: var(--color-coral-700);
  }
  .bg-coral-800 {
    background-color: var(--color-coral-800);
  }
  .bg-coral-900 {
    background-color: var(--color-coral-900);
  }
  .bg-emerald-50 {
    background-color: var(--color-emerald-50);
  }
  .bg-emerald-50\/50 {
    background-color: color-mix(in srgb, oklch(97.9% 0.021 166.113) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-emerald-50) 50%, transparent);
    }
  }
  .bg-emerald-50\/70 {
    background-color: color-mix(in srgb, oklch(97.9% 0.021 166.113) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-emerald-50) 70%, transparent);
    }
  }
  .bg-emerald-100 {
    background-color: var(--color-emerald-100);
  }
  .bg-gold-50 {
    background-color: var(--color-gold-50);
  }
  .bg-gold-50\/60 {
    background-color: color-mix(in srgb, #FBF6E4 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-gold-50) 60%, transparent);
    }
  }
  .bg-gold-100 {
    background-color: var(--color-gold-100);
  }
  .bg-gold-200 {
    background-color: var(--color-gold-200);
  }
  .bg-gold-200\/30 {
    background-color: color-mix(in srgb, #ECDCA4 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-gold-200) 30%, transparent);
    }
  }
  .bg-gold-300 {
    background-color: var(--color-gold-300);
  }
  .bg-gold-400 {
    background-color: var(--color-gold-400);
  }
  .bg-gold-500 {
    background-color: var(--color-gold-500);
  }
  .bg-gold-600 {
    background-color: var(--color-gold-600);
  }
  .bg-gold-700 {
    background-color: var(--color-gold-700);
  }
  .bg-gold-800 {
    background-color: var(--color-gold-800);
  }
  .bg-gold-900 {
    background-color: var(--color-gold-900);
  }
  .bg-mint-50 {
    background-color: var(--color-mint-50);
  }
  .bg-mint-50\/60 {
    background-color: color-mix(in srgb, #ECFDF5 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-mint-50) 60%, transparent);
    }
  }
  .bg-mint-100 {
    background-color: var(--color-mint-100);
  }
  .bg-mint-200 {
    background-color: var(--color-mint-200);
  }
  .bg-mint-300 {
    background-color: var(--color-mint-300);
  }
  .bg-mint-400 {
    background-color: var(--color-mint-400);
  }
  .bg-mint-500 {
    background-color: var(--color-mint-500);
  }
  .bg-mint-600 {
    background-color: var(--color-mint-600);
  }
  .bg-mint-700 {
    background-color: var(--color-mint-700);
  }
  .bg-mint-800 {
    background-color: var(--color-mint-800);
  }
  .bg-mint-900 {
    background-color: var(--color-mint-900);
  }
  .bg-navy-50 {
    background-color: var(--color-navy-50);
  }
  .bg-navy-100 {
    background-color: var(--color-navy-100);
  }
  .bg-navy-200 {
    background-color: var(--color-navy-200);
  }
  .bg-navy-200\/20 {
    background-color: color-mix(in srgb, #8FA0BD 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-navy-200) 20%, transparent);
    }
  }
  .bg-navy-300 {
    background-color: var(--color-navy-300);
  }
  .bg-navy-400 {
    background-color: var(--color-navy-400);
  }
  .bg-navy-500 {
    background-color: var(--color-navy-500);
  }
  .bg-navy-600 {
    background-color: var(--color-navy-600);
  }
  .bg-navy-700 {
    background-color: var(--color-navy-700);
  }
  .bg-navy-800 {
    background-color: var(--color-navy-800);
  }
  .bg-navy-900 {
    background-color: var(--color-navy-900);
  }
  .bg-navy-900\/30 {
    background-color: color-mix(in srgb, #0B1F4D 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-navy-900) 30%, transparent);
    }
  }
  .bg-red-50 {
    background-color: var(--color-red-50);
  }
  .bg-red-50\/50 {
    background-color: color-mix(in srgb, oklch(97.1% 0.013 17.38) 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-red-50) 50%, transparent);
    }
  }
  .bg-red-100 {
    background-color: var(--color-red-100);
  }
  .bg-slate-50 {
    background-color: var(--color-slate-50);
  }
  .bg-slate-50\/40 {
    background-color: color-mix(in srgb, #F9FAFB 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 40%, transparent);
    }
  }
  .bg-slate-50\/50 {
    background-color: color-mix(in srgb, #F9FAFB 50%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 50%, transparent);
    }
  }
  .bg-slate-50\/60 {
    background-color: color-mix(in srgb, #F9FAFB 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 60%, transparent);
    }
  }
  .bg-slate-50\/95 {
    background-color: color-mix(in srgb, #F9FAFB 95%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 95%, transparent);
    }
  }
  .bg-slate-100 {
    background-color: var(--color-slate-100);
  }
  .bg-slate-100\/70 {
    background-color: color-mix(in srgb, #F3F4F6 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-100) 70%, transparent);
    }
  }
  .bg-slate-200 {
    background-color: var(--color-slate-200);
  }
  .bg-slate-300 {
    background-color: var(--color-slate-300);
  }
  .bg-slate-400 {
    background-color: var(--color-slate-400);
  }
  .bg-slate-500 {
    background-color: var(--color-slate-500);
  }
  .bg-slate-600 {
    background-color: var(--color-slate-600);
  }
  .bg-slate-700 {
    background-color: var(--color-slate-700);
  }
  .bg-slate-800 {
    background-color: var(--color-slate-800);
  }
  .bg-slate-900 {
    background-color: var(--color-slate-900);
  }
  .bg-slate-900\/40 {
    background-color: color-mix(in srgb, #111827 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-900) 40%, transparent);
    }
  }
  .bg-slate-900\/60 {
    background-color: color-mix(in srgb, #111827 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-900) 60%, transparent);
    }
  }
  .bg-transparent {
    background-color: transparent;
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-white\/20 {
    background-color: color-mix(in srgb, #fff 20%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 20%, transparent);
    }
  }
  .bg-white\/60 {
    background-color: color-mix(in srgb, #fff 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 60%, transparent);
    }
  }
  .bg-white\/70 {
    background-color: color-mix(in srgb, #fff 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
  }
  .bg-white\/80 {
    background-color: color-mix(in srgb, #fff 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 80%, transparent);
    }
  }
  .bg-white\/95 {
    background-color: color-mix(in srgb, #fff 95%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 95%, transparent);
    }
  }
  .bg-gradient-to-br {
    --tw-gradient-position: to bottom right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-gradient-to-r {
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .from-gold-500 {
    --tw-gradient-from: var(--color-gold-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-slate-50 {
    --tw-gradient-from: var(--color-slate-50);
    --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));
  }
  .via-white {
    --tw-gradient-via: var(--color-white);
    --tw-gradient-via-stops: var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);
    --tw-gradient-stops: var(--tw-gradient-via-stops);
  }
  .to-blue-50\/40 {
    --tw-gradient-to: color-mix(in srgb, #EFF5FF 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-blue-50) 40%, transparent);
    }
    --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));
  }
  .to-gold-300 {
    --tw-gradient-to: var(--color-gold-300);
    --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));
  }
  .object-contain {
    object-fit: contain;
  }
  .object-cover {
    object-fit: cover;
  }
  .p-0 {
    padding: calc(var(--spacing) * 0);
  }
  .p-0\.5 {
    padding: calc(var(--spacing) * 0.5);
  }
  .p-1 {
    padding: calc(var(--spacing) * 1);
  }
  .p-1\.5 {
    padding: calc(var(--spacing) * 1.5);
  }
  .p-2 {
    padding: calc(var(--spacing) * 2);
  }
  .p-2\.5 {
    padding: calc(var(--spacing) * 2.5);
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-3\.5 {
    padding: calc(var(--spacing) * 3.5);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-5 {
    padding: calc(var(--spacing) * 5);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .p-7 {
    padding: calc(var(--spacing) * 7);
  }
  .p-8 {
    padding: calc(var(--spacing) * 8);
  }
  .p-10 {
    padding: calc(var(--spacing) * 10);
  }
  .p-12 {
    padding: calc(var(--spacing) * 12);
  }
  .\!px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5) !important;
  }
  .\!px-2 {
    padding-inline: calc(var(--spacing) * 2) !important;
  }
  .px-0 {
    padding-inline: calc(var(--spacing) * 0);
  }
  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }
  .px-1\.5 {
    padding-inline: calc(var(--spacing) * 1.5);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-2\.5 {
    padding-inline: calc(var(--spacing) * 2.5);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-3\.5 {
    padding-inline: calc(var(--spacing) * 3.5);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-5 {
    padding-inline: calc(var(--spacing) * 5);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .\!py-0 {
    padding-block: calc(var(--spacing) * 0) !important;
  }
  .py-0 {
    padding-block: calc(var(--spacing) * 0);
  }
  .py-0\.5 {
    padding-block: calc(var(--spacing) * 0.5);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-1\.5 {
    padding-block: calc(var(--spacing) * 1.5);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-2\.5 {
    padding-block: calc(var(--spacing) * 2.5);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-3\.5 {
    padding-block: calc(var(--spacing) * 3.5);
  }
  .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-10 {
    padding-block: calc(var(--spacing) * 10);
  }
  .py-12 {
    padding-block: calc(var(--spacing) * 12);
  }
  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .py-px {
    padding-block: 1px;
  }
  .pt-0 {
    padding-top: calc(var(--spacing) * 0);
  }
  .pt-0\.5 {
    padding-top: calc(var(--spacing) * 0.5);
  }
  .pt-1 {
    padding-top: calc(var(--spacing) * 1);
  }
  .pt-1\.5 {
    padding-top: calc(var(--spacing) * 1.5);
  }
  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }
  .pt-2\.5 {
    padding-top: calc(var(--spacing) * 2.5);
  }
  .pt-3 {
    padding-top: calc(var(--spacing) * 3);
  }
  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }
  .pt-5 {
    padding-top: calc(var(--spacing) * 5);
  }
  .pt-6 {
    padding-top: calc(var(--spacing) * 6);
  }
  .pt-\[10vh\] {
    padding-top: 10vh;
  }
  .pr-0 {
    padding-right: calc(var(--spacing) * 0);
  }
  .pr-1 {
    padding-right: calc(var(--spacing) * 1);
  }
  .pr-2 {
    padding-right: calc(var(--spacing) * 2);
  }
  .pr-3 {
    padding-right: calc(var(--spacing) * 3);
  }
  .pr-4 {
    padding-right: calc(var(--spacing) * 4);
  }
  .pr-7 {
    padding-right: calc(var(--spacing) * 7);
  }
  .pr-9 {
    padding-right: calc(var(--spacing) * 9);
  }
  .pr-10 {
    padding-right: calc(var(--spacing) * 10);
  }
  .pr-11 {
    padding-right: calc(var(--spacing) * 11);
  }
  .pr-14 {
    padding-right: calc(var(--spacing) * 14);
  }
  .pb-1 {
    padding-bottom: calc(var(--spacing) * 1);
  }
  .pb-1\.5 {
    padding-bottom: calc(var(--spacing) * 1.5);
  }
  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }
  .pb-2\.5 {
    padding-bottom: calc(var(--spacing) * 2.5);
  }
  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }
  .pb-5 {
    padding-bottom: calc(var(--spacing) * 5);
  }
  .pb-6 {
    padding-bottom: calc(var(--spacing) * 6);
  }
  .pb-10 {
    padding-bottom: calc(var(--spacing) * 10);
  }
  .pb-12 {
    padding-bottom: calc(var(--spacing) * 12);
  }
  .pb-20 {
    padding-bottom: calc(var(--spacing) * 20);
  }
  .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);
  }
  .pl-3\.5 {
    padding-left: calc(var(--spacing) * 3.5);
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .pl-5 {
    padding-left: calc(var(--spacing) * 5);
  }
  .pl-7 {
    padding-left: calc(var(--spacing) * 7);
  }
  .pl-8 {
    padding-left: calc(var(--spacing) * 8);
  }
  .pl-9 {
    padding-left: calc(var(--spacing) * 9);
  }
  .pl-11 {
    padding-left: calc(var(--spacing) * 11);
  }
  .pl-12 {
    padding-left: calc(var(--spacing) * 12);
  }
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .align-\[-2px\] {
    vertical-align: -2px;
  }
  .align-middle {
    vertical-align: middle;
  }
  .align-text-bottom {
    vertical-align: text-bottom;
  }
  .align-top {
    vertical-align: top;
  }
  .font-mono {
    font-family: var(--font-mono);
  }
  .font-sans {
    font-family: var(--font-sans);
  }
  .\!text-xs {
    font-size: var(--text-xs) !important;
    line-height: var(--tw-leading, var(--text-xs--line-height)) !important;
  }
  .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-6xl {
    font-size: var(--text-6xl);
    line-height: var(--tw-leading, var(--text-6xl--line-height));
  }
  .text-7xl {
    font-size: var(--text-7xl);
    line-height: var(--tw-leading, var(--text-7xl--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-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-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .\!text-\[10px\] {
    font-size: 10px !important;
  }
  .text-\[0\.85em\] {
    font-size: 0.85em;
  }
  .text-\[10px\] {
    font-size: 10px;
  }
  .text-\[11px\] {
    font-size: 11px;
  }
  .text-\[12px\] {
    font-size: 12px;
  }
  .text-\[13px\] {
    font-size: 13px;
  }
  .text-\[15px\] {
    font-size: 15px;
  }
  .leading-5 {
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
  }
  .leading-none {
    --tw-leading: 1;
    line-height: 1;
  }
  .leading-relaxed {
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
  }
  .leading-snug {
    --tw-leading: var(--leading-snug);
    line-height: var(--leading-snug);
  }
  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-extrabold {
    --tw-font-weight: var(--font-weight-extrabold);
    font-weight: var(--font-weight-extrabold);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .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\.14em\] {
    --tw-tracking: 0.14em;
    letter-spacing: 0.14em;
  }
  .tracking-\[0\.18em\] {
    --tw-tracking: 0.18em;
    letter-spacing: 0.18em;
  }
  .tracking-normal {
    --tw-tracking: var(--tracking-normal);
    letter-spacing: var(--tracking-normal);
  }
  .tracking-tight {
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
  }
  .tracking-wide {
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
  }
  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }
  .tracking-widest {
    --tw-tracking: var(--tracking-widest);
    letter-spacing: var(--tracking-widest);
  }
  .break-words {
    overflow-wrap: break-word;
  }
  .break-all {
    word-break: break-all;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .whitespace-pre-line {
    white-space: pre-line;
  }
  .whitespace-pre-wrap {
    white-space: pre-wrap;
  }
  .text-amber-300 {
    color: var(--color-amber-300);
  }
  .text-amber-400 {
    color: var(--color-amber-400);
  }
  .text-amber-500 {
    color: var(--color-amber-500);
  }
  .text-amber-600 {
    color: var(--color-amber-600);
  }
  .text-amber-700 {
    color: var(--color-amber-700);
  }
  .text-amber-800 {
    color: var(--color-amber-800);
  }
  .text-amber-800\/80 {
    color: color-mix(in srgb, oklch(47.3% 0.137 46.201) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-amber-800) 80%, transparent);
    }
  }
  .text-amber-900 {
    color: var(--color-amber-900);
  }
  .text-blue-50 {
    color: var(--color-blue-50);
  }
  .text-blue-100 {
    color: var(--color-blue-100);
  }
  .text-blue-100\/85 {
    color: color-mix(in srgb, #E0EDFF 85%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-blue-100) 85%, transparent);
    }
  }
  .text-blue-100\/90 {
    color: color-mix(in srgb, #E0EDFF 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-blue-100) 90%, transparent);
    }
  }
  .text-blue-200 {
    color: var(--color-blue-200);
  }
  .text-blue-300 {
    color: var(--color-blue-300);
  }
  .text-blue-400 {
    color: var(--color-blue-400);
  }
  .text-blue-500 {
    color: var(--color-blue-500);
  }
  .text-blue-600 {
    color: var(--color-blue-600);
  }
  .text-blue-700 {
    color: var(--color-blue-700);
  }
  .text-blue-800 {
    color: var(--color-blue-800);
  }
  .text-blue-900 {
    color: var(--color-blue-900);
  }
  .text-coral-50 {
    color: var(--color-coral-50);
  }
  .text-coral-100 {
    color: var(--color-coral-100);
  }
  .text-coral-200 {
    color: var(--color-coral-200);
  }
  .text-coral-300 {
    color: var(--color-coral-300);
  }
  .text-coral-400 {
    color: var(--color-coral-400);
  }
  .text-coral-500 {
    color: var(--color-coral-500);
  }
  .text-coral-600 {
    color: var(--color-coral-600);
  }
  .text-coral-700 {
    color: var(--color-coral-700);
  }
  .text-coral-800 {
    color: var(--color-coral-800);
  }
  .text-coral-900 {
    color: var(--color-coral-900);
  }
  .text-emerald-600 {
    color: var(--color-emerald-600);
  }
  .text-emerald-700 {
    color: var(--color-emerald-700);
  }
  .text-emerald-800 {
    color: var(--color-emerald-800);
  }
  .text-gold-50 {
    color: var(--color-gold-50);
  }
  .text-gold-100 {
    color: var(--color-gold-100);
  }
  .text-gold-200 {
    color: var(--color-gold-200);
  }
  .text-gold-300 {
    color: var(--color-gold-300);
  }
  .text-gold-400 {
    color: var(--color-gold-400);
  }
  .text-gold-500 {
    color: var(--color-gold-500);
  }
  .text-gold-600 {
    color: var(--color-gold-600);
  }
  .text-gold-700 {
    color: var(--color-gold-700);
  }
  .text-gold-800 {
    color: var(--color-gold-800);
  }
  .text-gold-900 {
    color: var(--color-gold-900);
  }
  .text-mint-50 {
    color: var(--color-mint-50);
  }
  .text-mint-100 {
    color: var(--color-mint-100);
  }
  .text-mint-200 {
    color: var(--color-mint-200);
  }
  .text-mint-300 {
    color: var(--color-mint-300);
  }
  .text-mint-400 {
    color: var(--color-mint-400);
  }
  .text-mint-500 {
    color: var(--color-mint-500);
  }
  .text-mint-600 {
    color: var(--color-mint-600);
  }
  .text-mint-700 {
    color: var(--color-mint-700);
  }
  .text-mint-800 {
    color: var(--color-mint-800);
  }
  .text-mint-900 {
    color: var(--color-mint-900);
  }
  .text-navy-50 {
    color: var(--color-navy-50);
  }
  .text-navy-100 {
    color: var(--color-navy-100);
  }
  .text-navy-200 {
    color: var(--color-navy-200);
  }
  .text-navy-300 {
    color: var(--color-navy-300);
  }
  .text-navy-400 {
    color: var(--color-navy-400);
  }
  .text-navy-500 {
    color: var(--color-navy-500);
  }
  .text-navy-600 {
    color: var(--color-navy-600);
  }
  .text-navy-700 {
    color: var(--color-navy-700);
  }
  .text-navy-800 {
    color: var(--color-navy-800);
  }
  .text-navy-900 {
    color: var(--color-navy-900);
  }
  .text-orange-700 {
    color: var(--color-orange-700);
  }
  .text-red-600 {
    color: var(--color-red-600);
  }
  .text-red-700 {
    color: var(--color-red-700);
  }
  .text-red-800 {
    color: var(--color-red-800);
  }
  .text-slate-50 {
    color: var(--color-slate-50);
  }
  .text-slate-100 {
    color: var(--color-slate-100);
  }
  .text-slate-200 {
    color: var(--color-slate-200);
  }
  .text-slate-300 {
    color: var(--color-slate-300);
  }
  .text-slate-400 {
    color: var(--color-slate-400);
  }
  .text-slate-500 {
    color: var(--color-slate-500);
  }
  .text-slate-600 {
    color: var(--color-slate-600);
  }
  .text-slate-700 {
    color: var(--color-slate-700);
  }
  .text-slate-800 {
    color: var(--color-slate-800);
  }
  .text-slate-900 {
    color: var(--color-slate-900);
  }
  .text-white {
    color: var(--color-white);
  }
  .lowercase {
    text-transform: lowercase;
  }
  .normal-case {
    text-transform: none;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .ordinal {
    --tw-ordinal: ordinal;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .line-through {
    text-decoration-line: line-through;
  }
  .no-underline {
    text-decoration-line: none;
  }
  .underline {
    text-decoration-line: underline;
  }
  .decoration-gold-300 {
    text-decoration-color: var(--color-gold-300);
  }
  .decoration-dotted {
    text-decoration-style: dotted;
  }
  .underline-offset-2 {
    text-underline-offset: 2px;
  }
  .underline-offset-4 {
    text-underline-offset: 4px;
  }
  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .opacity-30 {
    opacity: 30%;
  }
  .opacity-40 {
    opacity: 40%;
  }
  .opacity-50 {
    opacity: 50%;
  }
  .opacity-55 {
    opacity: 55%;
  }
  .opacity-60 {
    opacity: 60%;
  }
  .opacity-70 {
    opacity: 70%;
  }
  .opacity-80 {
    opacity: 80%;
  }
  .opacity-90 {
    opacity: 90%;
  }
  .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-2xl {
    --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
    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-sm {
    --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-soft {
    --tw-shadow: 0 2px 4px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 4px 16px var(--tw-shadow-color, rgba(10, 22, 40, 0.10));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-soft-lg {
    --tw-shadow: 0 4px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 8px 32px var(--tw-shadow-color, rgba(10, 22, 40, 0.12));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-soft-md {
    --tw-shadow: 0 4px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 8px 24px var(--tw-shadow-color, rgba(10, 22, 40, 0.10));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-soft-sm {
    --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-soft-xl {
    --tw-shadow: 0 8px 16px var(--tw-shadow-color, rgba(10, 22, 40, 0.08)), 0 16px 48px var(--tw-shadow-color, rgba(10, 22, 40, 0.14));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-xl {
    --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px 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 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + 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-1 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + 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-2 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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-4 {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + 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-amber-400 {
    --tw-ring-color: var(--color-amber-400);
  }
  .ring-blue-200 {
    --tw-ring-color: var(--color-blue-200);
  }
  .ring-blue-300 {
    --tw-ring-color: var(--color-blue-300);
  }
  .ring-slate-200 {
    --tw-ring-color: var(--color-slate-200);
  }
  .ring-slate-200\/70 {
    --tw-ring-color: color-mix(in srgb, #E5E7EB 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-slate-200) 70%, transparent);
    }
  }
  .ring-white {
    --tw-ring-color: var(--color-white);
  }
  .blur {
    --tw-blur: blur(8px);
    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-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,);
  }
  .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 {
    --tw-backdrop-blur: blur(8px);
    -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,);
  }
  .backdrop-blur-sm {
    --tw-backdrop-blur: blur(var(--blur-sm));
    -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, 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));
  }
  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-150 {
    --tw-duration: 150ms;
    transition-duration: 150ms;
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .ring-inset {
    --tw-ring-inset: inset;
  }
  .group-open\:rotate-90 {
    &:is(:where(.group):is([open], :popover-open, :open) *) {
      rotate: 90deg;
    }
  }
  .group-hover\:border-blue-300 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        border-color: var(--color-blue-300);
      }
    }
  }
  .group-hover\:bg-blue-50 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        background-color: var(--color-blue-50);
      }
    }
  }
  .group-hover\:bg-slate-400 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        background-color: var(--color-slate-400);
      }
    }
  }
  .group-hover\:bg-white {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        background-color: var(--color-white);
      }
    }
  }
  .group-hover\:text-blue-500 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-blue-500);
      }
    }
  }
  .group-hover\:text-blue-600 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-blue-600);
      }
    }
  }
  .group-hover\:text-blue-700 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-blue-700);
      }
    }
  }
  .group-hover\:text-coral-700 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-coral-700);
      }
    }
  }
  .group-hover\:text-slate-700 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-slate-700);
      }
    }
  }
  .group-hover\:underline {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .group-hover\:opacity-100 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        opacity: 100%;
      }
    }
  }
  .group-hover\:shadow-soft-sm {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .group-hover\:ring-2 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
      }
    }
  }
  .group-hover\:ring-blue-200 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-ring-color: var(--color-blue-200);
      }
    }
  }
  .group-hover\:ring-offset-1 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        --tw-ring-offset-width: 1px;
        --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
      }
    }
  }
  .group-hover\/doc\:text-blue-700 {
    &:is(:where(.group\/doc):hover *) {
      @media (hover: hover) {
        color: var(--color-blue-700);
      }
    }
  }
  .group-hover\/plazos\:opacity-100 {
    &:is(:where(.group\/plazos):hover *) {
      @media (hover: hover) {
        opacity: 100%;
      }
    }
  }
  .group-hover\/sort\:opacity-100 {
    &:is(:where(.group\/sort):hover *) {
      @media (hover: hover) {
        opacity: 100%;
      }
    }
  }
  .group-hover\/tipo\:text-blue-700 {
    &:is(:where(.group\/tipo):hover *) {
      @media (hover: hover) {
        color: var(--color-blue-700);
      }
    }
  }
  .peer-checked\:bg-blue-50 {
    &:is(:where(.peer):checked ~ *) {
      background-color: var(--color-blue-50);
    }
  }
  .peer-checked\:bg-white {
    &:is(:where(.peer):checked ~ *) {
      background-color: var(--color-white);
    }
  }
  .peer-checked\:text-blue-700 {
    &:is(:where(.peer):checked ~ *) {
      color: var(--color-blue-700);
    }
  }
  .peer-checked\:text-navy-900 {
    &:is(:where(.peer):checked ~ *) {
      color: var(--color-navy-900);
    }
  }
  .peer-checked\:shadow-sm {
    &:is(:where(.peer):checked ~ *) {
      --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);
    }
  }
  .peer-focus-visible\:ring-2 {
    &:is(:where(.peer):focus-visible ~ *) {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
  }
  .peer-focus-visible\:ring-blue-200 {
    &:is(:where(.peer):focus-visible ~ *) {
      --tw-ring-color: var(--color-blue-200);
    }
  }
  .file\:mr-3 {
    &::file-selector-button {
      margin-right: calc(var(--spacing) * 3);
    }
  }
  .file\:rounded-md {
    &::file-selector-button {
      border-radius: var(--radius-md);
    }
  }
  .file\:border-0 {
    &::file-selector-button {
      border-style: var(--tw-border-style);
      border-width: 0px;
    }
  }
  .file\:bg-slate-100 {
    &::file-selector-button {
      background-color: var(--color-slate-100);
    }
  }
  .file\:px-3 {
    &::file-selector-button {
      padding-inline: calc(var(--spacing) * 3);
    }
  }
  .file\:py-1\.5 {
    &::file-selector-button {
      padding-block: calc(var(--spacing) * 1.5);
    }
  }
  .file\:text-sm {
    &::file-selector-button {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .file\:text-navy-900 {
    &::file-selector-button {
      color: var(--color-navy-900);
    }
  }
  .placeholder\:text-blue-200\/40 {
    &::placeholder {
      color: color-mix(in srgb, #BCD6FF 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, var(--color-blue-200) 40%, transparent);
      }
    }
  }
  .placeholder\:text-slate-400 {
    &::placeholder {
      color: var(--color-slate-400);
    }
  }
  .backdrop\:bg-black\/50 {
    &::backdrop {
      background-color: color-mix(in srgb, #000 50%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-black) 50%, transparent);
      }
    }
  }
  .backdrop\:bg-navy-900\/40 {
    &::backdrop {
      background-color: color-mix(in srgb, #0B1F4D 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-navy-900) 40%, transparent);
      }
    }
  }
  .backdrop\:bg-slate-900\/40 {
    &::backdrop {
      background-color: color-mix(in srgb, #111827 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-slate-900) 40%, transparent);
      }
    }
  }
  .backdrop\:bg-slate-900\/50 {
    &::backdrop {
      background-color: color-mix(in srgb, #111827 50%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-slate-900) 50%, transparent);
      }
    }
  }
  .last\:border-0 {
    &:last-child {
      border-style: var(--tw-border-style);
      border-width: 0px;
    }
  }
  .hover\:scale-\[1\.02\] {
    &:hover {
      @media (hover: hover) {
        scale: 1.02;
      }
    }
  }
  .hover\:border-blue-200 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-blue-200);
      }
    }
  }
  .hover\:border-blue-300 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-blue-300);
      }
    }
  }
  .hover\:border-blue-400 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-blue-400);
      }
    }
  }
  .hover\:border-coral-200 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-coral-200);
      }
    }
  }
  .hover\:border-slate-300 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-slate-300);
      }
    }
  }
  .hover\:bg-amber-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-amber-50);
      }
    }
  }
  .hover\:bg-amber-50\/40 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(98.7% 0.022 95.277) 40%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-amber-50) 40%, transparent);
        }
      }
    }
  }
  .hover\:bg-amber-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-amber-100);
      }
    }
  }
  .hover\:bg-blue-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-blue-50);
      }
    }
  }
  .hover\:bg-blue-50\/30 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #EFF5FF 30%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-blue-50) 30%, transparent);
        }
      }
    }
  }
  .hover\:bg-blue-50\/40 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #EFF5FF 40%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-blue-50) 40%, transparent);
        }
      }
    }
  }
  .hover\:bg-blue-50\/50 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #EFF5FF 50%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-blue-50) 50%, transparent);
        }
      }
    }
  }
  .hover\:bg-blue-50\/60 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #EFF5FF 60%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-blue-50) 60%, transparent);
        }
      }
    }
  }
  .hover\:bg-blue-50\/70 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #EFF5FF 70%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-blue-50) 70%, transparent);
        }
      }
    }
  }
  .hover\:bg-blue-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-blue-100);
      }
    }
  }
  .hover\:bg-blue-100\/70 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #E0EDFF 70%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-blue-100) 70%, transparent);
        }
      }
    }
  }
  .hover\:bg-blue-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-blue-700);
      }
    }
  }
  .hover\:bg-blue-800 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-blue-800);
      }
    }
  }
  .hover\:bg-coral-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-coral-50);
      }
    }
  }
  .hover\:bg-coral-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-coral-100);
      }
    }
  }
  .hover\:bg-emerald-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-emerald-50);
      }
    }
  }
  .hover\:bg-emerald-50\/40 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, oklch(97.9% 0.021 166.113) 40%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-emerald-50) 40%, transparent);
        }
      }
    }
  }
  .hover\:bg-gold-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gold-100);
      }
    }
  }
  .hover\:bg-mint-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-mint-100);
      }
    }
  }
  .hover\:bg-navy-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-navy-100);
      }
    }
  }
  .hover\:bg-navy-800 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-navy-800);
      }
    }
  }
  .hover\:bg-slate-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-slate-50);
      }
    }
  }
  .hover\:bg-slate-50\/50 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #F9FAFB 50%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-slate-50) 50%, transparent);
        }
      }
    }
  }
  .hover\:bg-slate-50\/60 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #F9FAFB 60%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-slate-50) 60%, transparent);
        }
      }
    }
  }
  .hover\:bg-slate-50\/70 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #F9FAFB 70%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-slate-50) 70%, transparent);
        }
      }
    }
  }
  .hover\:bg-slate-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-slate-100);
      }
    }
  }
  .hover\:bg-slate-200 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-slate-200);
      }
    }
  }
  .hover\:bg-white {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-white);
      }
    }
  }
  .hover\:bg-white\/10 {
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #fff 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-white) 10%, transparent);
        }
      }
    }
  }
  .hover\:text-amber-800 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-amber-800);
      }
    }
  }
  .hover\:text-blue-600 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-blue-600);
      }
    }
  }
  .hover\:text-blue-700 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-blue-700);
      }
    }
  }
  .hover\:text-blue-800 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-blue-800);
      }
    }
  }
  .hover\:text-blue-900 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-blue-900);
      }
    }
  }
  .hover\:text-coral-600 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-coral-600);
      }
    }
  }
  .hover\:text-coral-700 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-coral-700);
      }
    }
  }
  .hover\:text-mint-700 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-mint-700);
      }
    }
  }
  .hover\:text-mint-800 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-mint-800);
      }
    }
  }
  .hover\:text-navy-900 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-navy-900);
      }
    }
  }
  .hover\:text-slate-600 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-slate-600);
      }
    }
  }
  .hover\:text-slate-700 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-slate-700);
      }
    }
  }
  .hover\:text-slate-800 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-slate-800);
      }
    }
  }
  .hover\:underline {
    &:hover {
      @media (hover: hover) {
        text-decoration-line: underline;
      }
    }
  }
  .hover\:decoration-gold-500 {
    &:hover {
      @media (hover: hover) {
        text-decoration-color: var(--color-gold-500);
      }
    }
  }
  .hover\:opacity-100 {
    &:hover {
      @media (hover: hover) {
        opacity: 100%;
      }
    }
  }
  .hover\:shadow-soft {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 2px 4px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 4px 16px var(--tw-shadow-color, rgba(10, 22, 40, 0.10));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-soft-sm {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:ring-1 {
    &:hover {
      @media (hover: hover) {
        --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + 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);
      }
    }
  }
  .hover\:ring-black\/10 {
    &:hover {
      @media (hover: hover) {
        --tw-ring-color: color-mix(in srgb, #000 10%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-ring-color: color-mix(in oklab, var(--color-black) 10%, transparent);
        }
      }
    }
  }
  .hover\:outline {
    &:hover {
      @media (hover: hover) {
        outline-style: var(--tw-outline-style);
        outline-width: 1px;
      }
    }
  }
  .hover\:outline-2 {
    &:hover {
      @media (hover: hover) {
        outline-style: var(--tw-outline-style);
        outline-width: 2px;
      }
    }
  }
  .hover\:outline-blue-500 {
    &:hover {
      @media (hover: hover) {
        outline-color: var(--color-blue-500);
      }
    }
  }
  .hover\:file\:bg-slate-200 {
    &:hover {
      @media (hover: hover) {
        &::file-selector-button {
          background-color: var(--color-slate-200);
        }
      }
    }
  }
  .focus\:border-amber-400 {
    &:focus {
      border-color: var(--color-amber-400);
    }
  }
  .focus\:border-blue-300 {
    &:focus {
      border-color: var(--color-blue-300);
    }
  }
  .focus\:border-blue-400 {
    &:focus {
      border-color: var(--color-blue-400);
    }
  }
  .focus\:border-blue-500 {
    &:focus {
      border-color: var(--color-blue-500);
    }
  }
  .focus\:border-coral-400 {
    &:focus {
      border-color: var(--color-coral-400);
    }
  }
  .focus\:ring-0 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + 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);
    }
  }
  .focus\:ring-1 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + 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);
    }
  }
  .focus\:ring-2 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
  }
  .focus\:ring-amber-200 {
    &:focus {
      --tw-ring-color: var(--color-amber-200);
    }
  }
  .focus\:ring-blue-100 {
    &:focus {
      --tw-ring-color: var(--color-blue-100);
    }
  }
  .focus\:ring-blue-200 {
    &:focus {
      --tw-ring-color: var(--color-blue-200);
    }
  }
  .focus\:ring-blue-500 {
    &:focus {
      --tw-ring-color: var(--color-blue-500);
    }
  }
  .focus\:ring-blue-500\/40 {
    &:focus {
      --tw-ring-color: color-mix(in srgb, #3385FF 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-blue-500) 40%, transparent);
      }
    }
  }
  .focus\:ring-coral-200 {
    &:focus {
      --tw-ring-color: var(--color-coral-200);
    }
  }
  .focus\:outline-none {
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .focus-visible\:ring-2 {
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
  }
  .focus-visible\:ring-blue-500 {
    &:focus-visible {
      --tw-ring-color: var(--color-blue-500);
    }
  }
  .focus-visible\:ring-blue-500\/40 {
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #3385FF 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-blue-500) 40%, transparent);
      }
    }
  }
  .focus-visible\:ring-white\/40 {
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #fff 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-white) 40%, transparent);
      }
    }
  }
  .focus-visible\:ring-offset-2 {
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
  }
  .enabled\:hover\:border-blue-200 {
    &:enabled {
      &:hover {
        @media (hover: hover) {
          border-color: var(--color-blue-200);
        }
      }
    }
  }
  .enabled\:hover\:bg-blue-50 {
    &:enabled {
      &:hover {
        @media (hover: hover) {
          background-color: var(--color-blue-50);
        }
      }
    }
  }
  .enabled\:hover\:text-blue-700 {
    &:enabled {
      &:hover {
        @media (hover: hover) {
          color: var(--color-blue-700);
        }
      }
    }
  }
  .disabled\:cursor-default {
    &:disabled {
      cursor: default;
    }
  }
  .disabled\:cursor-not-allowed {
    &:disabled {
      cursor: not-allowed;
    }
  }
  .disabled\:opacity-30 {
    &:disabled {
      opacity: 30%;
    }
  }
  .disabled\:opacity-50 {
    &:disabled {
      opacity: 50%;
    }
  }
  .disabled\:opacity-60 {
    &:disabled {
      opacity: 60%;
    }
  }
  .disabled\:hover\:bg-transparent {
    &:disabled {
      &:hover {
        @media (hover: hover) {
          background-color: transparent;
        }
      }
    }
  }
  .disabled\:hover\:text-slate-400 {
    &:disabled {
      &:hover {
        @media (hover: hover) {
          color: var(--color-slate-400);
        }
      }
    }
  }
  .sm\:col-span-2 {
    @media (width >= 40rem) {
      grid-column: span 2 / span 2;
    }
  }
  .sm\:mt-8 {
    @media (width >= 40rem) {
      margin-top: calc(var(--spacing) * 8);
    }
  }
  .sm\:inline-flex {
    @media (width >= 40rem) {
      display: inline-flex;
    }
  }
  .sm\:h-24 {
    @media (width >= 40rem) {
      height: calc(var(--spacing) * 24);
    }
  }
  .sm\:w-24 {
    @media (width >= 40rem) {
      width: calc(var(--spacing) * 24);
    }
  }
  .sm\:w-60 {
    @media (width >= 40rem) {
      width: calc(var(--spacing) * 60);
    }
  }
  .sm\:w-auto {
    @media (width >= 40rem) {
      width: auto;
    }
  }
  .sm\:w-full {
    @media (width >= 40rem) {
      width: 100%;
    }
  }
  .sm\:flex-1 {
    @media (width >= 40rem) {
      flex: 1;
    }
  }
  .sm\:flex-none {
    @media (width >= 40rem) {
      flex: none;
    }
  }
  .sm\:grid-cols-1 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-2 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-3 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-4 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-5 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-8 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(8, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-10 {
    @media (width >= 40rem) {
      grid-template-columns: repeat(10, minmax(0, 1fr));
    }
  }
  .sm\:grid-cols-\[1fr_12rem\] {
    @media (width >= 40rem) {
      grid-template-columns: 1fr 12rem;
    }
  }
  .sm\:grid-cols-\[9rem_minmax\(0\,1fr\)\] {
    @media (width >= 40rem) {
      grid-template-columns: 9rem minmax(0,1fr);
    }
  }
  .sm\:flex-row {
    @media (width >= 40rem) {
      flex-direction: row;
    }
  }
  .sm\:items-center {
    @media (width >= 40rem) {
      align-items: center;
    }
  }
  .sm\:items-end {
    @media (width >= 40rem) {
      align-items: flex-end;
    }
  }
  .sm\:items-start {
    @media (width >= 40rem) {
      align-items: flex-start;
    }
  }
  .sm\:justify-between {
    @media (width >= 40rem) {
      justify-content: space-between;
    }
  }
  .sm\:gap-3 {
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 3);
    }
  }
  .sm\:gap-4 {
    @media (width >= 40rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .sm\:self-start {
    @media (width >= 40rem) {
      align-self: flex-start;
    }
  }
  .sm\:p-8 {
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .sm\:px-8 {
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 8);
    }
  }
  .sm\:py-28 {
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 28);
    }
  }
  .sm\:text-4xl {
    @media (width >= 40rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .md\:sticky {
    @media (width >= 48rem) {
      position: sticky;
    }
  }
  .md\:top-6 {
    @media (width >= 48rem) {
      top: calc(var(--spacing) * 6);
    }
  }
  .md\:col-span-1 {
    @media (width >= 48rem) {
      grid-column: span 1 / span 1;
    }
  }
  .md\:col-span-2 {
    @media (width >= 48rem) {
      grid-column: span 2 / span 2;
    }
  }
  .md\:col-span-3 {
    @media (width >= 48rem) {
      grid-column: span 3 / span 3;
    }
  }
  .md\:col-span-4 {
    @media (width >= 48rem) {
      grid-column: span 4 / span 4;
    }
  }
  .md\:col-span-5 {
    @media (width >= 48rem) {
      grid-column: span 5 / span 5;
    }
  }
  .md\:col-span-6 {
    @media (width >= 48rem) {
      grid-column: span 6 / span 6;
    }
  }
  .md\:col-span-7 {
    @media (width >= 48rem) {
      grid-column: span 7 / span 7;
    }
  }
  .md\:col-span-8 {
    @media (width >= 48rem) {
      grid-column: span 8 / span 8;
    }
  }
  .md\:col-span-9 {
    @media (width >= 48rem) {
      grid-column: span 9 / span 9;
    }
  }
  .md\:col-span-10 {
    @media (width >= 48rem) {
      grid-column: span 10 / span 10;
    }
  }
  .md\:col-span-11 {
    @media (width >= 48rem) {
      grid-column: span 11 / span 11;
    }
  }
  .md\:col-span-12 {
    @media (width >= 48rem) {
      grid-column: span 12 / span 12;
    }
  }
  .md\:block {
    @media (width >= 48rem) {
      display: block;
    }
  }
  .md\:flex {
    @media (width >= 48rem) {
      display: flex;
    }
  }
  .md\:hidden {
    @media (width >= 48rem) {
      display: none;
    }
  }
  .md\:w-32 {
    @media (width >= 48rem) {
      width: calc(var(--spacing) * 32);
    }
  }
  .md\:flex-1 {
    @media (width >= 48rem) {
      flex: 1;
    }
  }
  .md\:flex-none {
    @media (width >= 48rem) {
      flex: none;
    }
  }
  .md\:grid-cols-1 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  .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-cols-4 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-5 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-6 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(6, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-12 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-\[1fr_auto\] {
    @media (width >= 48rem) {
      grid-template-columns: 1fr auto;
    }
  }
  .md\:grid-cols-\[minmax\(0\,1fr\)_16rem\] {
    @media (width >= 48rem) {
      grid-template-columns: minmax(0,1fr) 16rem;
    }
  }
  .md\:flex-row {
    @media (width >= 48rem) {
      flex-direction: row;
    }
  }
  .md\:justify-end {
    @media (width >= 48rem) {
      justify-content: flex-end;
    }
  }
  .md\:gap-4 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 4);
    }
  }
  .md\:gap-6 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .md\:gap-8 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .md\:border-l {
    @media (width >= 48rem) {
      border-left-style: var(--tw-border-style);
      border-left-width: 1px;
    }
  }
  .md\:border-slate-200 {
    @media (width >= 48rem) {
      border-color: var(--color-slate-200);
    }
  }
  .md\:p-8 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .md\:pl-8 {
    @media (width >= 48rem) {
      padding-left: calc(var(--spacing) * 8);
    }
  }
  .md\:text-right {
    @media (width >= 48rem) {
      text-align: right;
    }
  }
  .lg\:sticky {
    @media (width >= 64rem) {
      position: sticky;
    }
  }
  .lg\:top-4 {
    @media (width >= 64rem) {
      top: calc(var(--spacing) * 4);
    }
  }
  .lg\:top-6 {
    @media (width >= 64rem) {
      top: calc(var(--spacing) * 6);
    }
  }
  .lg\:col-span-1 {
    @media (width >= 64rem) {
      grid-column: span 1 / span 1;
    }
  }
  .lg\:col-span-2 {
    @media (width >= 64rem) {
      grid-column: span 2 / span 2;
    }
  }
  .lg\:col-span-3 {
    @media (width >= 64rem) {
      grid-column: span 3 / span 3;
    }
  }
  .lg\:col-span-4 {
    @media (width >= 64rem) {
      grid-column: span 4 / span 4;
    }
  }
  .lg\:col-span-5 {
    @media (width >= 64rem) {
      grid-column: span 5 / span 5;
    }
  }
  .lg\:col-span-6 {
    @media (width >= 64rem) {
      grid-column: span 6 / span 6;
    }
  }
  .lg\:col-span-7 {
    @media (width >= 64rem) {
      grid-column: span 7 / span 7;
    }
  }
  .lg\:col-span-8 {
    @media (width >= 64rem) {
      grid-column: span 8 / span 8;
    }
  }
  .lg\:col-span-9 {
    @media (width >= 64rem) {
      grid-column: span 9 / span 9;
    }
  }
  .lg\:col-span-10 {
    @media (width >= 64rem) {
      grid-column: span 10 / span 10;
    }
  }
  .lg\:col-span-11 {
    @media (width >= 64rem) {
      grid-column: span 11 / span 11;
    }
  }
  .lg\:col-span-12 {
    @media (width >= 64rem) {
      grid-column: span 12 / span 12;
    }
  }
  .lg\:inline {
    @media (width >= 64rem) {
      display: inline;
    }
  }
  .lg\:h-\[42rem\] {
    @media (width >= 64rem) {
      height: 42rem;
    }
  }
  .lg\:h-\[calc\(100vh-11rem\)\] {
    @media (width >= 64rem) {
      height: calc(100vh - 11rem);
    }
  }
  .lg\:grid-cols-1 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-2 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-3 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-4 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-5 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-6 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(6, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-11 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(11, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-12 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-\[1\.15fr_1fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 1.15fr 1fr;
    }
  }
  .lg\:grid-cols-\[1\.25fr_1fr\] {
    @media (width >= 64rem) {
      grid-template-columns: 1.25fr 1fr;
    }
  }
  .lg\:grid-cols-\[1fr_18rem\] {
    @media (width >= 64rem) {
      grid-template-columns: 1fr 18rem;
    }
  }
  .lg\:grid-cols-\[16rem_minmax\(0\,1fr\)\] {
    @media (width >= 64rem) {
      grid-template-columns: 16rem minmax(0,1fr);
    }
  }
  .lg\:grid-cols-\[minmax\(0\,1fr\)_19rem\] {
    @media (width >= 64rem) {
      grid-template-columns: minmax(0,1fr) 19rem;
    }
  }
  .lg\:flex-row {
    @media (width >= 64rem) {
      flex-direction: row;
    }
  }
  .lg\:items-end {
    @media (width >= 64rem) {
      align-items: flex-end;
    }
  }
  .lg\:items-start {
    @media (width >= 64rem) {
      align-items: flex-start;
    }
  }
  .lg\:justify-between {
    @media (width >= 64rem) {
      justify-content: space-between;
    }
  }
  .lg\:gap-6 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .lg\:gap-8 {
    @media (width >= 64rem) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .lg\:self-start {
    @media (width >= 64rem) {
      align-self: flex-start;
    }
  }
  .lg\:border-t-0 {
    @media (width >= 64rem) {
      border-top-style: var(--tw-border-style);
      border-top-width: 0px;
    }
  }
  .lg\:border-r {
    @media (width >= 64rem) {
      border-right-style: var(--tw-border-style);
      border-right-width: 1px;
    }
  }
  .lg\:border-l {
    @media (width >= 64rem) {
      border-left-style: var(--tw-border-style);
      border-left-width: 1px;
    }
  }
  .lg\:border-slate-200 {
    @media (width >= 64rem) {
      border-color: var(--color-slate-200);
    }
  }
  .lg\:p-8 {
    @media (width >= 64rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .lg\:pr-4 {
    @media (width >= 64rem) {
      padding-right: calc(var(--spacing) * 4);
    }
  }
  .lg\:pl-2 {
    @media (width >= 64rem) {
      padding-left: calc(var(--spacing) * 2);
    }
  }
  .lg\:pl-7 {
    @media (width >= 64rem) {
      padding-left: calc(var(--spacing) * 7);
    }
  }
  .lg\:pl-8 {
    @media (width >= 64rem) {
      padding-left: calc(var(--spacing) * 8);
    }
  }
  .xl\:grid-cols-1 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  .xl\:grid-cols-2 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .xl\:grid-cols-3 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .xl\:grid-cols-4 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .xl\:grid-cols-12 {
    @media (width >= 80rem) {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
  }
  .\[\&\:\:-webkit-details-marker\]\:hidden {
    &::-webkit-details-marker {
      display: none;
    }
  }
}
@layer base {
  html {
    font-family: var(--font-sans);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  body {
    background-color: var(--color-slate-50);
    color: var(--color-slate-700);
  }
  h1, h2, h3, h4, h5, h6 {
    color: var(--color-navy-900);
    font-weight: 600;
    letter-spacing: -0.01em;
  }
  [data-lucide] {
    stroke-width: 1.75;
    width: 1em;
    height: 1em;
    flex-shrink: 0;
  }
}
@layer components {
  .btn {
    display: inline-flex;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 2);
    border-radius: var(--radius-md);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-offset-width: 2px;
      --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
    }
    &:disabled {
      cursor: not-allowed;
    }
    &:disabled {
      opacity: 50%;
    }
  }
  .btn-primary {
    background-color: var(--color-blue-600);
    color: var(--color-white);
    --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-blue-700);
      }
    }
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 2px 4px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 4px 16px var(--tw-shadow-color, rgba(10, 22, 40, 0.10));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
    &:focus-visible {
      --tw-ring-color: var(--color-blue-500);
    }
  }
  .btn-secondary {
    background-color: var(--color-navy-900);
    color: var(--color-white);
    --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-navy-800);
      }
    }
    &:focus-visible {
      --tw-ring-color: var(--color-navy-700);
    }
  }
  .btn-outline {
    background-color: color-mix(in srgb, #F3F4F6 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-100) 70%, transparent);
    }
    color: var(--color-slate-700);
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #E5E7EB 80%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-slate-200) 80%, transparent);
        }
      }
    }
    &:focus-visible {
      --tw-ring-color: var(--color-blue-500);
    }
  }
  .btn-estado-ambar {
    background-color: var(--color-amber-100);
    color: var(--color-amber-800);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-amber-200);
      }
    }
  }
  .btn-estado-mint {
    background-color: var(--color-mint-100);
    color: var(--color-mint-800);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-mint-200);
      }
    }
  }
  .btn-ghost {
    background-color: transparent;
    color: var(--color-slate-600);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-slate-100);
      }
    }
    &:focus-visible {
      --tw-ring-color: var(--color-slate-400);
    }
  }
  .btn-danger {
    background-color: var(--color-coral-500);
    color: var(--color-white);
    --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-coral-600);
      }
    }
    &:focus-visible {
      --tw-ring-color: var(--color-coral-400);
    }
  }
  .btn-ghost-danger {
    background-color: transparent;
    color: var(--color-coral-600);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-coral-50);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-coral-700);
      }
    }
    &:focus-visible {
      --tw-ring-color: var(--color-coral-400);
    }
  }
  .btn-accent {
    background-color: var(--color-gold-400);
    color: var(--color-navy-900);
    --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gold-500);
      }
    }
    &:focus-visible {
      --tw-ring-color: var(--color-gold-400);
    }
  }
  .btn-sm {
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .btn-lg {
    padding-inline: calc(var(--spacing) * 6);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .btn-loading {
    pointer-events: none;
    opacity: 70%;
  }
  .btn-loading::before {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 9999px;
    animation: spin 0.7s linear infinite;
  }
  .btn-icon {
    display: inline-flex;
    height: calc(var(--spacing) * 8);
    width: calc(var(--spacing) * 8);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-md);
    background-color: transparent;
    color: var(--color-slate-500);
    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));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-slate-100);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-slate-800);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: var(--color-slate-400);
    }
    &:disabled {
      cursor: not-allowed;
    }
    &:disabled {
      opacity: 50%;
    }
  }
  .btn-icon-danger {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-coral-50);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-coral-600);
      }
    }
    &:focus-visible {
      --tw-ring-color: var(--color-coral-400);
    }
  }
  .btn-icon-active {
    background-color: var(--color-slate-100);
    color: var(--color-slate-800);
  }
  .btn-icon-sep {
    margin-inline: calc(var(--spacing) * 1);
    height: calc(var(--spacing) * 5);
    width: 1px;
    flex-shrink: 0;
    background-color: var(--color-slate-200);
  }
  .card {
    border-radius: var(--radius-lg);
    background-color: var(--color-white);
    --tw-shadow: 0 4px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 8px 24px var(--tw-shadow-color, rgba(10, 22, 40, 0.10));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .card-padded {
    padding: calc(var(--spacing) * 6);
  }
  .card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: color-mix(in srgb, #F3F4F6 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-slate-100) 80%, transparent);
    }
    padding: calc(var(--spacing) * 5);
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 6);
    }
  }
  .card-body {
    padding: calc(var(--spacing) * 5);
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 6);
    }
  }
  .card-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: calc(var(--spacing) * 2);
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: color-mix(in srgb, #F3F4F6 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-slate-100) 80%, transparent);
    }
    padding: calc(var(--spacing) * 5);
    @media (width >= 40rem) {
      padding: calc(var(--spacing) * 6);
    }
  }
  .input {
    display: block;
    width: 100%;
    border-radius: var(--radius-md);
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: color-mix(in srgb, #F3F4F6 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-100) 70%, transparent);
    }
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 2.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-slate-900);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &::placeholder {
      color: var(--color-slate-400);
    }
    &:focus {
      background-color: var(--color-white);
    }
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus {
      --tw-ring-color: color-mix(in srgb, #3385FF 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-blue-500) 30%, transparent);
      }
    }
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:disabled {
      background-color: var(--color-slate-100);
    }
    &:disabled {
      color: var(--color-slate-500);
    }
  }
  .input-lg {
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .input-sm {
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1.5);
    font-size: 13px;
  }
  .input-error {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    --tw-ring-color: var(--color-coral-400);
    &:focus {
      --tw-ring-color: color-mix(in srgb, #FF6B5A 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-coral-500) 40%, transparent);
      }
    }
  }
  .input-search {
    position: relative;
  }
  .input-search > svg,
    .input-search > [data-lucide] {
    pointer-events: none;
    position: absolute;
    top: calc(1 / 2 * 100%);
    left: calc(var(--spacing) * 3);
    height: calc(var(--spacing) * 4);
    width: calc(var(--spacing) * 4);
    --tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    color: var(--color-slate-400);
  }
  .input-search > input {
    padding-left: calc(var(--spacing) * 9);
  }
  .label {
    margin-bottom: calc(var(--spacing) * 1.5);
    display: block;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-600);
  }
  .help-text {
    margin-top: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-slate-500);
  }
  .error-text {
    margin-top: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-coral-600);
  }
  .badge {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--spacing) * 1);
    border-radius: var(--radius-md);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 0.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .badge-blue {
    background-color: var(--color-blue-100);
    color: var(--color-blue-800);
  }
  .badge-navy {
    background-color: var(--color-navy-100);
    color: var(--color-navy-800);
  }
  .badge-gold {
    background-color: var(--color-gold-100);
    color: var(--color-gold-800);
  }
  .badge-mint {
    background-color: var(--color-mint-100);
    color: var(--color-mint-800);
  }
  .badge-coral {
    background-color: var(--color-coral-100);
    color: var(--color-coral-700);
  }
  .badge-slate {
    background-color: var(--color-slate-100);
    color: var(--color-slate-700);
  }
  .badge-coral-solid {
    background-color: var(--color-coral-700);
    color: var(--color-white);
  }
  .badge-sm {
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 0);
    font-size: 11px;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .u-azul {
    --u-fuerte: #0052CC;
    --u-suave: #E0EDFF;
    --u-borde: #BCD6FF;
    --u-texto: #003FA3;
  }
  .u-turquesa {
    --u-fuerte: #0F766E;
    --u-suave: #CCFBF1;
    --u-borde: #99F6E4;
    --u-texto: #115E59;
  }
  .u-verde {
    --u-fuerte: #047857;
    --u-suave: #D1FAE5;
    --u-borde: #A7F3D0;
    --u-texto: #065F46;
  }
  .u-oliva {
    --u-fuerte: #4D7C0F;
    --u-suave: #ECFCCB;
    --u-borde: #D9F99D;
    --u-texto: #3F6212;
  }
  .u-ambar {
    --u-fuerte: #8F6809;
    --u-suave: #F5EDD6;
    --u-borde: #ECDCA4;
    --u-texto: #6B4E07;
  }
  .u-naranja {
    --u-fuerte: #C2410C;
    --u-suave: #FFEDD5;
    --u-borde: #FED7AA;
    --u-texto: #9A3412;
  }
  .u-coral {
    --u-fuerte: #B83A2B;
    --u-suave: #FFD9D2;
    --u-borde: #FFB3A8;
    --u-texto: #8C2A1F;
  }
  .u-rosa {
    --u-fuerte: #BE185D;
    --u-suave: #FCE7F3;
    --u-borde: #FBCFE8;
    --u-texto: #9D174D;
  }
  .u-violeta {
    --u-fuerte: #6D28D9;
    --u-suave: #EDE9FE;
    --u-borde: #DDD6FE;
    --u-texto: #5B21B6;
  }
  .u-marino {
    --u-fuerte: #1B3A68;
    --u-suave: #E8EDF5;
    --u-borde: #C5CFE0;
    --u-texto: #0B1F4D;
  }
  .chip-usuario {
    display: inline-flex;
    max-width: 100%;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    border-radius: var(--radius-md);
    border-style: var(--tw-border-style);
    border-width: 1px;
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 0.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-leading: calc(var(--spacing) * 5);
    line-height: calc(var(--spacing) * 5);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    background: var(--u-suave, var(--color-slate-100));
    border-color: var(--u-borde, var(--color-slate-200));
    color: var(--u-texto, var(--color-slate-700));
  }
  .chip-usuario-nombre {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .chip-usuario-punto {
    height: calc(var(--spacing) * 1.5);
    width: calc(var(--spacing) * 1.5);
    flex-shrink: 0;
    border-radius: calc(infinity * 1px);
    background: var(--u-fuerte, var(--color-slate-400));
  }
  .avatar-usuario {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: calc(infinity * 1px);
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-white);
    text-transform: uppercase;
    background: var(--u-fuerte, var(--color-slate-400));
  }
  .avatar-usuario img {
    height: 100%;
    width: 100%;
    object-fit: cover;
  }
  .avatar-usuario-sm {
    height: calc(var(--spacing) * 6);
    width: calc(var(--spacing) * 6);
    font-size: 10px;
  }
  .avatar-usuario-md {
    height: calc(var(--spacing) * 8);
    width: calc(var(--spacing) * 8);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .avatar-usuario-lg {
    height: calc(var(--spacing) * 10);
    width: calc(var(--spacing) * 10);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .avatar-quitar {
    margin-top: calc(var(--spacing) * 3);
    display: inline-flex;
    align-items: center;
    gap: calc(var(--spacing) * 1);
    font-size: 11px;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-400);
    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));
  }
  .avatar-quitar:hover {
    color: var(--color-coral-600);
  }
  .perfil-cabecera {
    background-color: #fff;
    background-image: linear-gradient(100deg,
            var(--u-suave, var(--color-blue-50)) 0%,
            var(--u-suave, #EFF5FF) 38%,
            #fff 78%);
    @supports (color: color-mix(in lab, red, red)) {
      background-image: linear-gradient(100deg,
            var(--u-suave, var(--color-blue-50)) 0%,
            color-mix(in srgb, var(--u-suave, var(--color-blue-50)) 45%, #fff) 38%,
            #fff 78%);
    }
  }
  .swatch {
    display: inline-block;
    height: calc(var(--spacing) * 5);
    width: calc(var(--spacing) * 5);
    cursor: pointer;
    border-radius: calc(infinity * 1px);
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &: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);
      }
    }
    background: var(--u-fuerte);
  }
  .swatch-on {
    --tw-scale-x: 110%;
    --tw-scale-y: 110%;
    --tw-scale-z: 110%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--u-fuerte);
  }
  .swatch:focus-within {
    --tw-scale-x: 110%;
    --tw-scale-y: 110%;
    --tw-scale-z: 110%;
    scale: var(--tw-scale-x) var(--tw-scale-y);
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--color-navy-900);
  }
  .table {
    width: 100%;
    text-align: left;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-slate-700);
  }
  .table thead {
    background-color: var(--color-slate-50);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-slate-500);
    text-transform: uppercase;
  }
  .table th,
    .table td {
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
  }
  .table-compact th,
    .table-compact td {
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
  }
  .table tbody tr {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-slate-200);
  }
  .table tbody tr:hover {
    background-color: var(--color-slate-50);
  }
  .table-zebra tbody tr:nth-child(even) {
    background-color: color-mix(in srgb, #F9FAFB 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 40%, transparent);
    }
  }
  .table-plain {
    width: 100%;
    text-align: left;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-slate-700);
  }
  .table-plain thead {
    background-color: transparent;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-slate-400);
    text-transform: uppercase;
  }
  .table-plain thead th {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-slate-200);
    padding-inline: calc(var(--spacing) * 3);
    padding-bottom: calc(var(--spacing) * 1.5);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .table-plain tbody td {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-slate-100);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    vertical-align: top;
  }
  .table-plain tbody tr:first-child > td {
    border-top-style: var(--tw-border-style);
    border-top-width: 0px;
  }
  .table-plain tbody tr:nth-of-type(even):not([data-detalle-cuerpo]),
    .table-plain tbody tr[data-detalle-doc]:nth-of-type(4n+3) {
    background-color: var(--color-slate-100);
  }
  .table-plain tbody tr[data-detalle-doc]:nth-of-type(even) {
    background-color: transparent;
  }
  .section-heading {
    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);
    --tw-tracking: var(--tracking-tight);
    letter-spacing: var(--tracking-tight);
    color: var(--color-navy-900);
    @media (width >= 40rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .section-heading-rule {
    margin-top: calc(var(--spacing) * 3);
    display: inline-block;
    height: calc(var(--spacing) * 1);
    width: calc(var(--spacing) * 16);
    border-radius: 0.25rem;
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
    --tw-gradient-from: var(--color-gold-500);
    --tw-gradient-to: var(--color-gold-300);
    --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));
  }
  .section-subtitle {
    margin-top: calc(var(--spacing) * 3);
    max-width: var(--container-2xl);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    color: var(--color-slate-500);
  }
  .alert {
    display: flex;
    align-items: flex-start;
    gap: calc(var(--spacing) * 3);
    border-radius: var(--radius-lg);
    border-style: var(--tw-border-style);
    border-width: 1px;
    padding: calc(var(--spacing) * 4);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .alert-info {
    border-color: var(--color-blue-200);
    background-color: var(--color-blue-50);
    color: var(--color-blue-900);
  }
  .alert-success {
    border-color: var(--color-mint-200);
    background-color: var(--color-mint-50);
    color: var(--color-mint-800);
  }
  .alert-warning {
    border-color: var(--color-gold-200);
    background-color: var(--color-gold-50);
    color: var(--color-gold-800);
  }
  .alert-danger {
    border-color: var(--color-coral-200);
    background-color: var(--color-coral-50);
    color: var(--color-coral-700);
  }
  .section-flow {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 2);
  }
  .section-flow-title {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-slate-600);
    text-transform: uppercase;
  }
  .section-flow-title::after {
    content: "";
    flex: 1 1 auto;
    height: 1px;
    background: var(--color-slate-200);
    margin-left: 0.5rem;
  }
  .band {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    border-block-style: var(--tw-border-style);
    border-block-width: 1px;
    border-color: var(--color-slate-200);
  }
  .band-surface {
    background-color: var(--color-white);
    padding-inline: calc(var(--spacing) * 5);
  }
  .band-cell {
    min-width: calc(var(--spacing) * 0);
    flex: 1;
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
    border-color: var(--color-slate-200);
    padding-inline: calc(var(--spacing) * 5);
    padding-block: calc(var(--spacing) * 3.5);
  }
  .band-cell:first-child {
    border-left-style: var(--tw-border-style);
    border-left-width: 0px;
    padding-left: calc(var(--spacing) * 0);
  }
  .band-label {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    font-size: 11px;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
    color: var(--color-slate-500);
    text-transform: uppercase;
  }
  .band-value {
    margin-top: calc(var(--spacing) * 1);
    font-family: var(--font-mono);
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-navy-900);
  }
  .band-value-mute {
    color: var(--color-slate-300);
  }
  .band-value-texto {
    font-family: var(--font-sans);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .band-note {
    margin-top: calc(var(--spacing) * 0.5);
    font-size: 11px;
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
    color: var(--color-slate-500);
  }
  .band-cell-edit {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 1.5);
    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));
    &:focus-within {
      background-color: var(--color-slate-50);
    }
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-slate-50);
      }
    }
  }
  .band-falta {
    display: inline-block;
    height: calc(var(--spacing) * 1.5);
    width: calc(var(--spacing) * 1.5);
    flex-shrink: 0;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-gold-400);
  }
  .timeline {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 5);
    padding-left: calc(var(--spacing) * 7);
  }
  .timeline::before {
    content: "";
    position: absolute;
    top: calc(var(--spacing) * 2);
    bottom: calc(var(--spacing) * 2);
    left: 7px;
    width: 1px;
    background-color: var(--color-slate-200);
  }
  .timeline-item {
    position: relative;
  }
  .timeline-dot {
    position: absolute;
    top: calc(var(--spacing) * 1.5);
    left: calc(25px * -1);
    height: calc(var(--spacing) * 2);
    width: calc(var(--spacing) * 2);
    flex-shrink: 0;
    border-radius: calc(infinity * 1px);
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + 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);
    --tw-ring-color: var(--color-white);
    background: var(--u-fuerte, var(--color-slate-400));
  }
  .timeline-dot-lg {
    position: absolute;
    top: calc(var(--spacing) * 0);
    left: calc(1.9rem * -1);
    display: flex;
    height: calc(var(--spacing) * 5);
    width: calc(var(--spacing) * 5);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-slate-100);
    color: var(--color-slate-500);
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(4px + 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);
    --tw-ring-color: var(--color-white);
  }
  .timeline-head {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .timeline-who {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--u-fuerte, var(--color-slate-500));
  }
  .timeline-when {
    color: var(--color-slate-400);
  }
  .timeline-body {
    margin-top: calc(var(--spacing) * 1.5);
    width: fit-content;
    max-width: 65ch;
    border-radius: var(--radius-lg);
    border-top-left-radius: var(--radius-sm);
    border-style: var(--tw-border-style);
    border-width: 1px;
    background-color: var(--color-white);
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 2.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
    white-space: pre-line;
    color: var(--color-slate-700);
    --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    border-color: var(--u-borde, var(--color-slate-200));
  }
  .timeline-event {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
    color: var(--color-slate-500);
  }
  .timeline-body-interna {
    background-color: var(--color-gold-50);
    border-color: var(--color-gold-300);
  }
  .composer {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 2.5);
    border-radius: var(--radius-lg);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-slate-200);
    background-color: var(--color-white);
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 3);
    --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:focus-within {
      border-color: var(--color-blue-300);
    }
    &:focus-within {
      --tw-shadow: 0 4px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 8px 24px var(--tw-shadow-color, rgba(10, 22, 40, 0.10));
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .composer-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 3);
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-slate-100);
    padding-top: calc(var(--spacing) * 2.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-slate-500);
  }
  .filter-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 2.5);
  }
  .chip-flat {
    display: inline-flex;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    border-radius: var(--radius-md);
    background-color: color-mix(in srgb, #F3F4F6 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-100) 80%, transparent);
    }
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    white-space: nowrap;
    color: var(--color-slate-600);
    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));
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #E5E7EB 80%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-slate-200) 80%, transparent);
        }
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-navy-900);
      }
    }
  }
  .chip-flat-on {
    background-color: var(--color-blue-600);
    color: var(--color-white);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-blue-600);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-white);
      }
    }
  }
  .fold > summary {
    list-style: none;
    cursor: pointer;
  }
  .fold > summary::-webkit-details-marker {
    display: none;
  }
  .fold-chevron {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .fold[open] > summary .fold-chevron {
    transform: rotate(180deg);
  }
  .doc-chip {
    display: inline-flex;
    height: calc(var(--spacing) * 6);
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    border-radius: var(--radius-md);
    border-style: var(--tw-border-style);
    border-width: 1px;
    padding-inline: calc(var(--spacing) * 2);
    font-size: 10px;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
    white-space: nowrap;
    text-transform: uppercase;
    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));
  }
  .doc-chip-actual {
    border-style: var(--tw-border-style);
    border-width: 2px;
    border-color: var(--color-blue-400);
    background-color: var(--color-blue-50);
    color: var(--color-blue-900);
  }
  .distributor-calculator-rail {
    align-self: flex-start;
  }
  @media (min-width: 768px) {
    .distributor-calculator-rail {
      position: sticky;
      top: 5rem;
      z-index: 20;
    }
  }
  .subsection-title {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-slate-700);
  }
  .hero-pvp {
    border-radius: var(--radius-3xl);
    padding-inline: calc(var(--spacing) * 6);
    padding-top: calc(var(--spacing) * 5);
    padding-bottom: calc(var(--spacing) * 4);
    color: var(--color-white);
    @media (width >= 40rem) {
      padding-inline: calc(var(--spacing) * 7);
    }
    @media (width >= 40rem) {
      padding-top: calc(var(--spacing) * 6);
    }
    background: linear-gradient(135deg, var(--color-navy-800) 0%, var(--color-blue-700) 100%);
    box-shadow: 0 20px 40px -10px rgba(15, 34, 64, 0.35);
    container-type: inline-size;
  }
  .hero-pvp-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.875rem;
    align-items: stretch;
  }
  .hero-pvp-col {
    min-width: 0;
  }
  .hero-pvp-col--total {
    text-align: left;
  }
  .hero-pvp-sep {
    align-self: stretch;
    background: rgba(255, 255, 255, 0.18);
    margin: 0;
    width: 100%;
    height: 1px;
  }
  .hero-pvp-eyebrow {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    font-size: 11px;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-blue-200);
    text-transform: uppercase;
    @media (width >= 40rem) {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }
  }
  .hero-pvp-value,
    .hero-pvp-total {
    font-family: var(--font-sans);
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    --tw-tracking: var(--tracking-normal);
    letter-spacing: var(--tracking-normal);
    color: var(--color-white);
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
    font-size: clamp(1.5rem, 14cqi, 2.1rem);
    white-space: nowrap;
  }
  input.hero-pvp-value {
    font-size: clamp(1.5rem, 14cqi, 2.1rem) !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    margin-top: 0.5rem !important;
    appearance: none;
  }
  @container (min-width: 320px) {
    .hero-pvp-grid {
      grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
      gap: 1.25rem;
    }
    .hero-pvp-sep {
      width: 1px;
      height: auto;
    }
    .hero-pvp-col--total {
      text-align: right;
    }
    .hero-pvp-col--total .hero-pvp-eyebrow {
      justify-content: flex-end;
    }
    .hero-pvp-value,
        .hero-pvp-total {
      font-size: clamp(1.5rem, 8cqi, 2.1rem);
    }
    input.hero-pvp-value {
      font-size: clamp(1.5rem, 8cqi, 2.1rem) !important;
    }
  }
  .hero-pvp-meta {
    margin-top: calc(var(--spacing) * 1);
    font-size: 11px;
    color: color-mix(in srgb, #E0EDFF 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-blue-100) 90%, transparent);
    }
    @media (width >= 40rem) {
      font-size: var(--text-xs);
      line-height: var(--tw-leading, var(--text-xs--line-height));
    }
  }
  .hero-pvp-fineprint {
    font-size: 11px;
    color: color-mix(in srgb, #BCD6FF 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      color: color-mix(in oklab, var(--color-blue-200) 70%, transparent);
    }
    margin-top: 1.75rem;
  }
  .pvp-sticky-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 60;
    padding: 0.625rem 1rem;
    padding-bottom: calc(0.625rem + env(safe-area-inset-bottom));
    color: #fff;
    background: linear-gradient(135deg, var(--color-navy-800) 0%, var(--color-blue-700) 100%);
    box-shadow: 0 -10px 30px -12px rgba(15, 34, 64, 0.45);
    transform: translateY(110%);
    transition: transform 0.25s ease;
    pointer-events: none;
  }
  .pvp-sticky-bar--visible {
    transform: translateY(0);
    pointer-events: auto;
  }
  @media (min-width: 992px) {
    body.ea-sidebar-width-normal .pvp-sticky-bar {
      left: var(--ea-sidebar-current-width, var(--sidebar-max-width, 280px));
    }
    body.ea-sidebar-width-compact .pvp-sticky-bar {
      left: var(--ea-sidebar-current-width, var(--sidebar-compact-width, 64px));
    }
  }
  .pvp-sticky-bar-inner {
    margin-inline: auto;
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 6);
    max-width: 72rem;
    justify-content: space-between;
  }
  .pvp-sticky-bar-group {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex-direction: column;
    gap: 0.1rem;
  }
  .pvp-sticky-bar-eyebrow {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    font-size: 10px;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    white-space: nowrap;
    color: var(--color-blue-200);
    text-transform: uppercase;
  }
  .pvp-sticky-bar-value,
    .pvp-sticky-bar-total {
    font-family: var(--font-sans);
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    white-space: nowrap;
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
    font-size: clamp(1.1rem, 5vw, 1.5rem);
  }
  .pvp-sticky-bar-action {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    white-space: nowrap;
    color: #dbeafe;
    background: transparent;
    border: 0;
    transition: color 0.15s ease;
  }
  .pvp-sticky-bar-action:hover {
    color: #fff;
  }
  .bg-warm-card {
    background: linear-gradient(145deg, #FFFFFF 0%, #F9FAFB 60%, #F3F4F6 100%);
  }
  .metric-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .metric-row-label {
    color: var(--color-slate-500);
  }
  .metric-row-value {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-navy-900);
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .metric-row-subtotal {
    margin-inline: calc(var(--spacing) * -2);
    border-radius: 0.25rem;
    background-color: color-mix(in srgb, #F9FAFB 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 70%, transparent);
    }
    padding-inline: calc(var(--spacing) * 2);
  }
  .metric-row-subtotal .metric-row-label {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-700);
  }
  .step-title {
    margin-bottom: calc(var(--spacing) * 1);
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    padding-bottom: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-slate-700);
    text-transform: uppercase;
  }
  .step-title-num {
    display: inline-flex;
    height: calc(var(--spacing) * 5);
    width: calc(var(--spacing) * 5);
    align-items: center;
    justify-content: center;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-blue-100);
    font-size: 10px;
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
    color: var(--color-blue-700);
  }
  .breakdown-cols-header {
    display: grid;
    grid-template-columns: 1fr 6rem 6rem;
    gap: calc(var(--spacing) * 3);
    padding-bottom: calc(var(--spacing) * 1);
    font-size: 10px;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-slate-400);
    text-transform: uppercase;
  }
  .breakdown-row {
    display: grid;
    grid-template-columns: 1fr 6rem 6rem;
    align-items: center;
    gap: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .breakdown-row-label {
    color: var(--color-slate-500);
  }
  .breakdown-row-value {
    width: 100%;
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: transparent;
    padding: calc(var(--spacing) * 0);
    text-align: right;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-navy-900);
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .breakdown-row-subtotal {
    margin-inline: calc(var(--spacing) * -3);
    margin-block: calc(var(--spacing) * 0.5);
    border-radius: var(--radius-xl);
    background-color: color-mix(in srgb, #F3F4F6 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-100) 70%, transparent);
    }
    padding-inline: calc(var(--spacing) * 3);
  }
  .breakdown-row-subtotal .breakdown-row-label {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-700);
  }
  .breakdown-row-subtotal .breakdown-row-value {
    color: var(--color-blue-900);
  }
  .step-highlight {
    margin-inline: calc(var(--spacing) * -3);
    border-radius: var(--radius-2xl);
    background-color: color-mix(in srgb, #EFF5FF 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-blue-50) 60%, transparent);
    }
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 3);
  }
  .disclosure {
    border-radius: var(--radius-xl);
    background-color: color-mix(in srgb, #F9FAFB 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 70%, transparent);
    }
  }
  .disclosure > summary {
    display: flex;
    cursor: pointer;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-radius: var(--radius-xl);
    padding-inline: calc(var(--spacing) * 4);
    padding-block: calc(var(--spacing) * 3);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-700);
    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));
    -webkit-user-select: none;
    user-select: none;
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #F3F4F6 80%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-slate-100) 80%, transparent);
        }
      }
    }
    list-style: none;
  }
  .disclosure > summary::-webkit-details-marker {
    display: none;
  }
  .disclosure > summary::after {
    content: "";
    margin-left: auto;
    width: 0.65rem;
    height: 0.65rem;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    transition: transform 0.2s ease;
    opacity: 0.6;
  }
  .disclosure[open] > summary::after {
    transform: rotate(-135deg);
  }
  .disclosure-body {
    padding-inline: calc(var(--spacing) * 4);
    padding-top: calc(var(--spacing) * 2);
    padding-bottom: calc(var(--spacing) * 4);
  }
  .field-collapse {
    scroll-margin-block: 1.5rem;
  }
  .field-collapse > summary {
    display: flex;
    width: 100%;
    cursor: pointer;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    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));
    -webkit-user-select: none;
    user-select: none;
    list-style: none;
  }
  .field-collapse > summary::-webkit-details-marker {
    display: none;
  }
  .field-collapse > summary::before {
    content: "";
    flex: none;
    width: 0.5rem;
    height: 0.5rem;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(-45deg);
    transition: transform 0.2s ease;
    opacity: 0.8;
  }
  .field-collapse[open] > summary::before {
    transform: rotate(45deg);
  }
  .pdf-preview-stack {
    width: 100%;
    border-radius: var(--radius-lg);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-slate-200);
    background-color: var(--color-white);
    height: calc(100vh - 8rem);
    min-height: 32rem;
  }
  #ajustesCard > summary::-webkit-details-marker,
    #calculadoraTransporte > summary::-webkit-details-marker {
    display: none;
  }
  .ajustes-chevron {
    transition: transform 0.2s ease;
  }
  details[open] > summary .ajustes-chevron {
    transform: rotate(180deg);
  }
  .ajustes-primary {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    --tw-ring-color: var(--color-blue-300);
    --tw-ring-offset-width: 1px;
    --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  }
  .overrides-grid {
    display: grid;
    grid-template-columns: 1fr 7rem 7rem;
    gap: calc(var(--spacing) * 3);
  }
  .input-compact {
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .chips-container {
    display: grid;
    gap: calc(var(--spacing) * 1.5);
    grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
  }
  .chips-container:has(.chip-group) {
    display: grid;
    column-gap: calc(var(--spacing) * 4);
    row-gap: calc(var(--spacing) * 2);
    grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
    align-items: start;
  }
  .chips-container:has(.chip-group) > .chip-group {
    grid-column: 1 / -1;
  }
  .chip {
    display: inline-flex;
    width: 100%;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    gap: calc(var(--spacing) * 1);
    border-radius: calc(infinity * 1px);
    background-color: var(--color-slate-100);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 1.5);
    text-align: center;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-600);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    -webkit-user-select: none;
    user-select: none;
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #E5E7EB 80%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-slate-200) 80%, transparent);
        }
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-slate-700);
      }
    }
  }
  .chip-active {
    background-color: var(--color-blue-600);
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-white);
    --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-blue-700);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-white);
      }
    }
  }
  .chip:focus-visible {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    --tw-ring-color: color-mix(in srgb, #3385FF 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-blue-500) 30%, transparent);
    }
    --tw-outline-style: none;
    outline-style: none;
  }
  .chip-empty {
    padding-inline: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-slate-400);
    font-style: italic;
  }
  .chip-group {
    padding: calc(var(--spacing) * 0);
  }
  .chip-group-label {
    margin-bottom: calc(var(--spacing) * 1.5);
    font-size: 0.7rem;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-slate-500);
    text-transform: uppercase;
  }
  .chip-group-body {
    display: grid;
    gap: calc(var(--spacing) * 1.5);
    grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
    position: relative;
  }
  .chip-group-body[data-count="4"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .chip-group-body[data-count="5"] {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .chip-group-body[data-count="5"] > :nth-child(-n+2) {
    grid-column: span 3;
  }
  .chip-group-body[data-count="5"] > :nth-child(n+3) {
    grid-column: span 2;
  }
  .chip-group-body-exclusive::before {
    content: "";
    position: absolute;
    left: 0.75rem;
    right: 0.75rem;
    top: 50%;
    height: 1px;
    background: var(--color-slate-300);
    transform: translateY(-50%);
    z-index: 0;
  }
  .chip-group-body-exclusive .chip {
    position: relative;
    z-index: 1;
    box-shadow: 0 0 0 3px rgb(248 250 252);
  }
  .chip-exclusive-set {
    grid-column: 1 / -1;
    display: grid;
    gap: calc(var(--spacing) * 1.5);
    grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
    position: relative;
  }
  .chip-exclusive-set[data-count="4"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .chip-exclusive-set::before {
    content: "";
    position: absolute;
    left: 0.75rem;
    right: 0.75rem;
    top: 50%;
    height: 1px;
    background: var(--color-slate-300);
    transform: translateY(-50%);
    z-index: 0;
  }
  .chip-exclusive-set .chip {
    position: relative;
    z-index: 1;
    box-shadow: 0 0 0 3px rgb(248 250 252);
  }
  .chips-container .chip-row-fill,
    .chip-group-body .chip-row-fill {
    grid-column: 1 / -1;
    display: grid;
    gap: calc(var(--spacing) * 1.5);
  }
  .chips-container .chip-row-full,
    .chip-group-body .chip-row-full {
    grid-column: 1 / -1;
  }
  .chip-row-full.chip-with-design {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .chip-row-full.chip-with-design > .chip {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
  }
  .chip-with-design {
    display: inline-flex;
    align-items: center;
    gap: 6px;
  }
  .chip-with-design .chip-disenos-label {
    display: none;
    font-size: 12px;
    color: var(--color-slate-500, #6B7280);
    white-space: nowrap;
  }
  .chip-with-design .chip-disenos {
    display: none;
    width: 56px;
    padding: 4px 6px;
    border: 1px solid var(--color-slate-300, #CBD5E1);
    border-radius: 8px;
    font-size: 13px;
    font-variant-numeric: tabular-nums;
  }
  .chip-with-design:has(.chip.chip-active) .chip-disenos-label,
    .chip-with-design:has(.chip.chip-active) .chip-disenos {
    display: inline-block;
  }
  .chip-exclusive-set:has(.chip-with-design)::before {
    display: none;
  }
  .chip-with-design .chip-aviso {
    display: none;
    flex-basis: 100%;
    align-items: flex-start;
    gap: 0.375rem;
    margin-top: 4px;
    padding: 0.25rem 0.5rem;
    border: 1px solid #FCD34D;
    border-radius: 8px;
    background: #FFFBEB;
    font-size: 12px;
    line-height: 1.4;
    color: #92400E;
  }
  .chip-with-design:has(.chip.chip-active) .chip-aviso[data-visible="1"] {
    display: flex;
  }
  .chip-aviso-externo {
    grid-column: 1 / -1;
    display: none;
    align-items: flex-start;
    gap: 0.375rem;
    margin-top: 4px;
    padding: 0.25rem 0.5rem;
    border: 1px solid #FCD34D;
    border-radius: 8px;
    background: #FFFBEB;
    font-size: 12px;
    line-height: 1.4;
    color: #92400E;
  }
  .chip-aviso-externo[data-activo="1"][data-visible="1"] {
    display: flex;
  }
  .chip-aviso-icon {
    flex: none;
  }
  .chip[data-price-tooltip] {
    position: relative;
  }
  .chip[data-price-tooltip]::after {
    content: attr(data-price-tooltip);
    position: absolute;
    left: 50%;
    bottom: calc(100% + 0.55rem);
    z-index: 80;
    width: max-content;
    max-width: min(15rem, 85vw);
    padding: 0.45rem 0.65rem;
    border-radius: 0.5rem;
    background: linear-gradient(135deg, var(--color-navy-900) 0%, var(--color-slate-900) 100%);
    color: #fff;
    box-shadow: 0 10px 24px rgba(10, 22, 40, 0.22), 0 2px 6px rgba(10, 22, 40, 0.18);
    font-family: var(--font-sans);
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.15;
    text-align: center;
    white-space: normal;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 4px) scale(0.98);
    transform-origin: bottom center;
    transition: opacity 0.14s ease, transform 0.14s ease;
  }
  .chip[data-price-tooltip]::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: calc(100% + 0.25rem);
    z-index: 81;
    width: 0.55rem;
    height: 0.55rem;
    background: var(--color-slate-900);
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 4px) rotate(45deg) scale(0.98);
    transition: opacity 0.14s ease, transform 0.14s ease;
  }
  .chip[data-price-tooltip]:hover::before,
    .chip[data-price-tooltip]:hover::after,
    .chip[data-price-tooltip]:focus-visible::before,
    .chip[data-price-tooltip]:focus-visible::after {
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
  }
  .chip[data-price-tooltip]:hover::before,
    .chip[data-price-tooltip]:focus-visible::before {
    transform: translate(-50%, 0) rotate(45deg) scale(1);
  }
  .tip {
    position: relative;
  }
  .tip::after {
    content: attr(data-tip);
    position: absolute;
    left: 50%;
    bottom: calc(100% + 0.5rem);
    z-index: 80;
    width: max-content;
    max-width: min(14rem, 80vw);
    padding: 0.35rem 0.6rem;
    border-radius: 0.5rem;
    background: var(--color-navy-900);
    color: #fff;
    font-family: var(--font-sans);
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
    white-space: normal;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 4px);
    transition: opacity 0.14s ease, transform 0.14s ease;
  }
  .tip::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: calc(100% + 0.2rem);
    z-index: 81;
    width: 0.5rem;
    height: 0.5rem;
    background: var(--color-navy-900);
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 4px) rotate(45deg);
    transition: opacity 0.14s ease, transform 0.14s ease;
  }
  .tip:hover::after,
    .tip:focus-visible::after,
    .tip:hover::before,
    .tip:focus-visible::before {
    opacity: 1;
  }
  .tip:hover::after,
    .tip:focus-visible::after {
    transform: translate(-50%, 0);
  }
  .tip:hover::before,
    .tip:focus-visible::before {
    transform: translate(-50%, 0) rotate(45deg);
  }
  .tip.tip-wide::after {
    max-width: min(24rem, 88vw);
    font-weight: 500;
    line-height: 1.35;
    text-align: left;
  }
  .tip.tip-start::after {
    left: -0.5rem;
    transform: translate(0, 4px);
  }
  .tip.tip-start:hover::after,
    .tip.tip-start:focus-visible::after {
    transform: translate(0, 0);
  }
  .tip.tip-lines::after {
    white-space: pre-line;
  }
  .info-tip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.125rem;
    height: 1.125rem;
    padding: 0;
    border: 0;
    border-radius: 9999px;
    background: transparent;
    color: var(--color-slate-400);
    cursor: help;
    transition: color 0.2s, background-color 0.2s;
  }
  .info-tip:hover,
    .info-tip:focus-visible {
    background: var(--color-slate-100);
    color: var(--color-blue-600);
  }
  .catalogo-opciones-subgrid {
    display: contents;
  }
  .closure-selector-panel {
    border-radius: var(--radius-xl);
    background-color: color-mix(in srgb, #F9FAFB 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 70%, transparent);
    }
    padding: calc(var(--spacing) * 3);
    grid-column: 1 / -1;
  }
  .closure-selector-panel > .label {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-slate-700);
  }
  .stock-warehouse-panel,
    .stock-recargos-panel {
    grid-column: 1 / -1;
  }
  .stock-aviso {
    margin-top: calc(var(--spacing) * 2);
    display: flex;
    align-items: flex-start;
    gap: calc(var(--spacing) * 1.5);
    border-radius: var(--radius-lg);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-amber-200);
    background-color: var(--color-amber-50);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-amber-700);
  }
  .stock-aviso.stock-aviso-leve {
    border-color: var(--color-blue-200);
    background-color: var(--color-blue-50);
    color: var(--color-blue-700);
  }
  .stock-aviso .stock-aviso-icon {
    --tw-leading: 1;
    line-height: 1;
  }
  .stock-reglas {
    margin-top: calc(var(--spacing) * 2);
  }
  .stock-reglas-summary {
    align-items: center;
    gap: 0.375rem;
    cursor: pointer;
    list-style: none;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-500);
    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));
    &:hover {
      @media (hover: hover) {
        color: var(--color-blue-700);
      }
    }
  }
  .stock-reglas-summary > svg {
    flex: none;
  }
  .stock-reglas-summary::-webkit-details-marker {
    display: none;
  }
  .stock-reglas[open] .stock-reglas-summary {
    margin-bottom: calc(var(--spacing) * 1.5);
    color: var(--color-slate-700);
  }
  .stock-reglas-lista {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
    }
    border-radius: var(--radius-lg);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-slate-200);
    background-color: var(--color-slate-50);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-leading: var(--leading-relaxed);
    line-height: var(--leading-relaxed);
    color: var(--color-slate-600);
    list-style: disc;
    padding-left: 2rem;
  }
  .stock-reglas-lista strong {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-slate-800);
  }
  .stock-recargos-panel {
    display: block;
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .input-celda {
    width: calc(var(--spacing) * 28);
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .segmented-control {
    display: grid;
    gap: calc(var(--spacing) * 1);
    border-radius: var(--radius-xl);
    background-color: var(--color-slate-100);
    padding: calc(var(--spacing) * 1);
    grid-template-columns: repeat(var(--segmented-count, 4), minmax(0, 1fr));
    width: 100%;
  }
  .segmented-control:empty {
    display: none;
  }
  .segmented-option {
    display: inline-flex;
    min-height: calc(var(--spacing) * 10);
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-lg);
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-600);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-white);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-slate-900);
      }
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #3385FF 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-blue-500) 30%, transparent);
      }
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    min-width: 0;
    white-space: normal;
    text-align: center;
  }
  .segmented-option-active {
    background-color: var(--color-white);
    color: var(--color-blue-800);
    --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .segmented-control-inline {
    width: auto;
    grid-template-columns: repeat(var(--segmented-count, 2), auto);
  }
  .catalogo-readonly-value {
    min-height: calc(var(--spacing) * 10);
    border-radius: var(--radius-xl);
    background-color: color-mix(in srgb, #F3F4F6 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-100) 70%, transparent);
    }
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 2.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-700);
  }
  .picker-field {
    grid-column: 1 / -1;
  }
  .picker-trigger-wrap {
    margin-top: calc(var(--spacing) * 1.5);
    margin-left: calc(var(--spacing) * 2);
  }
  .picker-empty {
    padding-inline: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-slate-400);
    font-style: italic;
  }
  .picker-trigger {
    display: flex;
    width: 100%;
    align-items: center;
    gap: calc(var(--spacing) * 3);
    border-radius: var(--radius-lg);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-color: var(--color-slate-200);
    background-color: var(--color-white);
    padding: calc(var(--spacing) * 2);
    padding-right: calc(var(--spacing) * 2.5);
    text-align: left;
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-blue-300);
      }
    }
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #3385FF 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-blue-500) 30%, transparent);
      }
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .picker-trigger-empty {
    --tw-border-style: dashed;
    border-style: dashed;
  }
  .picker-trigger-img {
    height: calc(var(--spacing) * 12);
    width: calc(var(--spacing) * 12);
    flex-shrink: 0;
    border-radius: var(--radius-md);
    background-color: var(--color-slate-50);
    object-fit: contain;
  }
  .picker-trigger-img-empty {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .picker-trigger-body {
    display: flex;
    min-width: calc(var(--spacing) * 0);
    flex: 1;
    flex-direction: column;
    gap: calc(var(--spacing) * 0.5);
  }
  .picker-trigger-name {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-navy-900);
    overflow-wrap: break-word;
  }
  .picker-trigger-empty .picker-trigger-name {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-400);
  }
  .picker-trigger-meta {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-500);
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .picker-trigger-cta {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    border-radius: var(--radius-md);
    background-color: var(--color-slate-100);
    padding-inline: calc(var(--spacing) * 2.5);
    padding-block: calc(var(--spacing) * 1.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-600);
    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));
  }
  .picker-trigger:hover .picker-trigger-cta {
    background-color: var(--color-blue-50);
    color: var(--color-blue-700);
  }
  [data-catalogo-broche-field] {
    border-radius: var(--radius-xl);
    background-color: color-mix(in srgb, #F9FAFB 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 70%, transparent);
    }
    padding: calc(var(--spacing) * 3);
  }
  .closure-broche-panel {
    margin-top: calc(var(--spacing) * 3);
    background-color: color-mix(in srgb, #fff 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-white) 70%, transparent);
    }
    padding: calc(var(--spacing) * 3);
  }
  .closure-broche-panel > .label {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-slate-500);
    text-transform: uppercase;
  }
  .broche-standalone-panel {
    grid-column: 1 / -1;
  }
  .broche-standalone-panel > .broche-standalone-label {
    margin-bottom: calc(var(--spacing) * 1);
    display: block;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-slate-500);
    text-transform: uppercase;
  }
  .product-tabs-bar {
    display: flex;
    min-height: 42px;
    flex-wrap: wrap;
    align-items: center;
    row-gap: calc(var(--spacing) * 1);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: color-mix(in srgb, #E5E7EB 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-slate-200) 70%, transparent);
    }
  }
  .product-tab {
    position: relative;
    display: inline-flex;
    cursor: pointer;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
    border-color: color-mix(in srgb, #E5E7EB 40%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-slate-200) 40%, transparent);
    }
    padding-inline: calc(var(--spacing) * 3);
    font-size: 13px;
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    white-space: nowrap;
    color: var(--color-slate-500);
    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));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    -webkit-user-select: none;
    user-select: none;
    &:hover {
      @media (hover: hover) {
        color: var(--color-navy-900);
      }
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #3385FF 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-blue-500) 30%, transparent);
      }
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    &:focus-visible {
      --tw-ring-inset: inset;
    }
    height: 42px;
  }
  .product-tab-active {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-navy-900);
  }
  .product-tab::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    background: var(--color-blue-600);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.2s ease;
  }
  .product-tab-active::after {
    transform: scaleX(1);
  }
  .product-tab-icon {
    color: var(--color-slate-400);
    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));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
  }
  .product-tab-active .product-tab-icon {
    color: var(--color-blue-600);
  }
  .product-tab-label {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 11rem;
  }
  .product-tab-actions {
    margin-left: calc(var(--spacing) * 1);
    display: inline-flex;
    align-items: center;
    gap: calc(var(--spacing) * 0);
    opacity: 0%;
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 150ms;
    transition-duration: 150ms;
  }
  .product-tab:hover .product-tab-actions,
    .product-tab-active .product-tab-actions {
    opacity: 1;
  }
  .product-tab-action {
    display: inline-flex;
    height: calc(var(--spacing) * 5);
    width: calc(var(--spacing) * 5);
    align-items: center;
    justify-content: center;
    border-radius: 0.25rem;
    color: var(--color-slate-400);
    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));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    &:hover {
      @media (hover: hover) {
        background-color: color-mix(in srgb, #D1D5DB 40%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          background-color: color-mix(in oklab, var(--color-slate-300) 40%, transparent);
        }
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-navy-900);
      }
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #3385FF 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-blue-500) 30%, transparent);
      }
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
  }
  .product-tab-action[data-action="close"]:hover,
    .product-tab-action[data-action="delete"]:hover {
    background-color: var(--color-coral-50);
    color: var(--color-coral-600);
  }
  .product-tab-add {
    margin-right: calc(var(--spacing) * 1);
    margin-left: calc(var(--spacing) * 2);
    display: inline-flex;
    height: 28px;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-md);
    padding-inline: calc(var(--spacing) * 2);
    color: var(--color-slate-500);
    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));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    &:hover {
      @media (hover: hover) {
        color: var(--color-blue-600);
      }
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #3385FF 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-blue-500) 30%, transparent);
      }
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    background: transparent;
    border: 0;
    cursor: pointer;
  }
  .product-tab-summary {
    display: inline-flex;
    height: 42px;
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    padding-inline: calc(var(--spacing) * 3);
    font-size: 13px;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-gold-700);
    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));
    --tw-duration: 150ms;
    transition-duration: 150ms;
    &:hover {
      @media (hover: hover) {
        color: var(--color-gold-800);
      }
    }
    &:focus-visible {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    }
    &:focus-visible {
      --tw-ring-color: color-mix(in srgb, #D4A72C 30%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        --tw-ring-color: color-mix(in oklab, var(--color-gold-400) 30%, transparent);
      }
    }
    &:focus-visible {
      --tw-outline-style: none;
      outline-style: none;
    }
    background: transparent;
    border: 0;
    cursor: pointer;
  }
  .product-tab-summary-active {
    color: var(--color-gold-800);
    position: relative;
  }
  .product-tab-summary-active::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    background: var(--color-gold-500);
  }
  .global-config-bar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: calc(var(--spacing) * 3);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: color-mix(in srgb, #E5E7EB 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      border-color: color-mix(in oklab, var(--color-slate-200) 70%, transparent);
    }
    padding-block: calc(var(--spacing) * 2);
    position: relative;
  }
  .global-config-label {
    display: inline-flex;
    height: calc(var(--spacing) * 10);
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    padding-right: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-slate-500);
    text-transform: uppercase;
  }
  .global-config-field {
    display: inline-flex;
    height: calc(var(--spacing) * 10);
    align-items: center;
    gap: calc(var(--spacing) * 2);
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
    border-color: var(--color-slate-300);
    padding-inline: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    color: var(--color-slate-500);
    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));
    &:focus-within {
      border-color: var(--color-blue-600);
    }
    &:focus-within {
      background-color: color-mix(in srgb, #EFF5FF 40%, transparent);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--color-blue-50) 40%, transparent);
      }
    }
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-blue-400);
      }
    }
    padding-top: 0.1875rem;
  }
  .global-config-field span {
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    white-space: nowrap;
  }
  .global-config-input {
    height: calc(var(--spacing) * 8);
    width: calc(var(--spacing) * 24);
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: transparent;
    padding: calc(var(--spacing) * 0);
    text-align: right;
    font-family: var(--font-mono);
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-navy-900);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-outline-style: none;
    outline-style: none;
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + 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);
    }
  }
  .global-config-field-select {
    min-width: calc(var(--spacing) * 80);
  }
  .global-config-select {
    height: calc(var(--spacing) * 8);
    min-width: calc(var(--spacing) * 60);
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: transparent;
    padding: calc(var(--spacing) * 0);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-navy-900);
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    --tw-outline-style: none;
    outline-style: none;
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(0px + 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);
    }
  }
  .global-config-market {
    display: inline-flex;
    height: calc(var(--spacing) * 10);
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    padding-inline: calc(var(--spacing) * 2);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    color: var(--color-slate-500);
    padding-top: 0.1875rem;
  }
  .global-config-button {
    display: inline-flex;
    height: calc(var(--spacing) * 10);
    align-items: center;
    gap: calc(var(--spacing) * 1.5);
    border-radius: var(--radius-md);
    padding-inline: calc(var(--spacing) * 2.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-leading: 1;
    line-height: 1;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-500);
    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));
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-slate-100);
      }
    }
    &:hover {
      @media (hover: hover) {
        color: var(--color-blue-700);
      }
    }
    &:disabled {
      cursor: not-allowed;
    }
    &:disabled {
      opacity: 45%;
    }
    &:disabled {
      &:hover {
        @media (hover: hover) {
          background-color: transparent;
        }
      }
    }
    &:disabled {
      &:hover {
        @media (hover: hover) {
          color: var(--color-slate-500);
        }
      }
    }
    border: 0;
    background: transparent;
    cursor: pointer;
    padding-top: 0.1875rem;
  }
  .global-config-status {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-slate-400);
    position: absolute;
    right: 0;
    bottom: -1.1rem;
    pointer-events: none;
    white-space: nowrap;
  }
  .calc-action-row .ts-wrapper .ts-control {
    border-radius: var(--radius-xl);
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: color-mix(in srgb, #F3F4F6 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-100) 70%, transparent);
    }
    padding-inline: calc(var(--spacing) * 3.5);
    padding-block: calc(var(--spacing) * 2.5);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-shadow: 0 0 #0000;
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    height: auto;
    min-height: 0;
  }
  .calc-action-row .ts-wrapper.focus .ts-control {
    background-color: var(--color-white);
    box-shadow: 0 0 0 2px rgba(51, 133, 255, 0.30);
  }
  .calc-action-row .ts-wrapper .ts-control > input {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .calc-action-row .input,
    .calc-action-row .ts-wrapper .ts-control,
    .calc-action-row .btn {
    min-height: 2.25rem;
  }
  .calc-action-row .btn {
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
    font-size: 0.875rem;
  }
  .calc-action-row .input {
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
  }
  .table-compact-wrap {
    overflow-x: auto;
    scrollbar-width: thin;
  }
  .table-compact {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    border-collapse: separate;
    border-spacing: 0;
  }
  .table-compact thead th {
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1.5);
    font-size: 10px;
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    --tw-tracking: var(--tracking-wide);
    letter-spacing: var(--tracking-wide);
    color: var(--color-slate-500);
    text-transform: uppercase;
    background: transparent;
    border-bottom: 1px solid var(--color-slate-200);
    white-space: nowrap;
  }
  .table-compact tbody td {
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
    vertical-align: middle;
    white-space: nowrap;
  }
  .table-compact tbody tr {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
    border-color: var(--color-slate-100);
  }
  .table-compact tbody tr:hover {
    background-color: color-mix(in srgb, #F9FAFB 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 70%, transparent);
    }
  }
  .table-compact .form-widget input,
    .table-compact .form-widget select,
    .table-compact .form-widget textarea {
    width: 100%;
    border-radius: var(--radius-md);
    border-style: var(--tw-border-style);
    border-width: 0px;
    background-color: color-mix(in srgb, #F9FAFB 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 70%, transparent);
    }
    padding-inline: calc(var(--spacing) * 2);
    padding-block: calc(var(--spacing) * 1);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
  .table-compact .form-widget input:focus,
    .table-compact .form-widget select:focus,
    .table-compact .form-widget textarea:focus {
    background-color: var(--color-white);
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + 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);
    --tw-ring-color: color-mix(in srgb, #3385FF 30%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-ring-color: color-mix(in oklab, var(--color-blue-500) 30%, transparent);
    }
    --tw-outline-style: none;
    outline-style: none;
  }
  .table-compact .form-widget input[readonly],
    .table-compact .form-widget input:disabled {
    background-color: transparent;
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-slate-700);
  }
  .list-row {
    display: flex;
    align-items: flex-start;
    gap: calc(var(--spacing) * 2);
    border-radius: var(--radius-xl);
    background-color: color-mix(in srgb, #F9FAFB 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-50) 60%, transparent);
    }
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2.5);
    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));
  }
  .list-row:hover {
    background-color: color-mix(in srgb, #F3F4F6 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-slate-100) 80%, transparent);
    }
  }
  .list-row-main {
    min-width: calc(var(--spacing) * 0);
    flex: 1;
  }
  .list-row-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
    color: var(--color-navy-900);
  }
  .list-row-meta {
    margin-top: calc(var(--spacing) * 0.5);
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-slate-500);
  }
  .list-row-value {
    font-family: var(--font-mono);
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    white-space: nowrap;
    color: var(--color-navy-900);
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .list-row-actions {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    gap: calc(var(--spacing) * 1);
  }
  .tile-acceso {
    position: relative;
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 3.5);
    border-radius: var(--radius-lg);
    background-color: var(--color-white);
    padding: calc(var(--spacing) * 4);
    --tw-shadow: 0 1px 2px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 2px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.08));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
    &:hover {
      @media (hover: hover) {
        --tw-translate-y: calc(var(--spacing) * -0.5);
        translate: var(--tw-translate-x) var(--tw-translate-y);
      }
    }
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 4px 8px var(--tw-shadow-color, rgba(10, 22, 40, 0.06)), 0 8px 24px var(--tw-shadow-color, rgba(10, 22, 40, 0.10));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .tile-acceso-icon {
    display: inline-flex;
    height: calc(var(--spacing) * 10);
    width: calc(var(--spacing) * 10);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-lg);
  }
  .tile-acceso-body {
    min-width: calc(var(--spacing) * 0);
    flex: 1;
  }
  .tile-acceso-title {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
    color: var(--color-navy-900);
  }
  .tile-acceso-desc {
    margin-top: calc(var(--spacing) * 0.5);
    display: block;
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
    color: var(--color-slate-500);
  }
  .tile-acceso-arrow {
    flex-shrink: 0;
    --tw-translate-x: calc(var(--spacing) * -1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    color: var(--color-slate-300);
    opacity: 0%;
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .tile-acceso:hover .tile-acceso-arrow {
    --tw-translate-x: calc(var(--spacing) * 0);
    translate: var(--tw-translate-x) var(--tw-translate-y);
    color: var(--color-blue-500);
    opacity: 100%;
  }
}
dialog.image-dialog {
  border: 0;
  padding: 0;
  margin: auto;
  position: fixed;
  inset: 0;
  background: transparent;
  max-width: 90vw;
  max-height: 90vh;
  overflow: visible;
}
dialog#sliderImageDialog.image-dialog {
  width: min(90vw, 56rem);
  height: min(85vh, 40rem);
  display: flex;
  align-items: center;
  justify-content: center;
}
dialog#sliderImageDialog.image-dialog:not([open]) {
  display: none;
}
dialog.image-dialog::backdrop {
  background: rgba(11, 31, 77, 0.7);
  backdrop-filter: blur(4px);
}
dialog.image-dialog img {
  display: block;
  max-width: 90vw;
  max-height: 85vh;
  width: auto;
  height: auto;
  border-radius: 12px;
  background: white;
  box-shadow: 0 20px 60px -10px rgba(11, 31, 77, 0.5);
  object-fit: contain;
}
dialog#sliderImageDialog.image-dialog img {
  max-width: calc(100% - 8rem);
  max-height: 100%;
}
.image-dialog-close {
  position: absolute;
  top: -2.5rem;
  right: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 9999px;
  background: rgba(255,255,255,0.15);
  color: white;
  font-size: 1.5rem;
  line-height: 1;
  border: 0;
  cursor: pointer;
  transition: background 0.15s;
}
.image-dialog-close:hover {
  background: rgba(255,255,255,0.3);
}
.image-dialog-prev,
.image-dialog-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 9999px;
  background: rgba(11, 31, 77, 0.55);
  color: white;
  font-size: 1.75rem;
  line-height: 1;
  border: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s, transform 0.15s;
  z-index: 1;
}
.image-dialog-prev {
  left: 0.5rem;
}
.image-dialog-next {
  right: 0.5rem;
}
.image-dialog-prev:hover,
.image-dialog-next:hover {
  background: rgba(11, 31, 77, 0.85);
}
.image-dialog-prev[hidden],
.image-dialog-next[hidden] {
  display: none;
}
.image-dialog-label {
  position: absolute;
  bottom: -2.5rem;
  left: 0;
  right: 0;
  text-align: center;
  color: white;
  font-size: 0.875rem;
  font-weight: 500;
  text-shadow: 0 1px 4px rgba(0,0,0,0.4);
  pointer-events: none;
}
dialog.picker-dialog {
  border: 0;
  padding: 0;
  margin: auto;
  position: fixed;
  inset: 0;
  width: min(92vw, 64rem);
  max-height: 88vh;
  background: white;
  border-radius: 12px;
  box-shadow: 0 24px 70px -12px rgba(11, 31, 77, 0.45);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
dialog.picker-dialog:not([open]) {
  display: none;
}
dialog.picker-dialog::backdrop {
  background: rgba(11, 31, 77, 0.55);
  backdrop-filter: blur(4px);
}
.picker-dialog-head {
  position: relative;
  z-index: 3;
  flex: 0 0 auto;
  background: white;
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.25rem 1.5rem 1rem;
  border-bottom: 1px solid #E2E8F0;
}
.picker-dialog-heading {
  flex: 1 1 auto;
  min-width: 0;
}
.picker-dialog-title {
  margin: 0;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #0B1F4D;
}
.picker-dialog-sub {
  margin: 0.125rem 0 0;
  font-size: 0.8125rem;
  color: #64748B;
}
.picker-dialog-tools {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex: 0 0 auto;
}
.picker-dialog-search {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.4375rem 0.75rem;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: #F8FAFC;
  transition: border-color 0.2s, background 0.2s;
}
.picker-dialog-search:focus-within {
  border-color: #85B8FF;
  background: white;
}
.picker-dialog-search[hidden] {
  display: none;
}
.picker-dialog-search-input {
  border: 0;
  outline: 0;
  background: transparent;
  font-size: 0.8125rem;
  color: #334155;
  flex: 1 1 11rem;
  min-width: 0;
}
.picker-dialog-search-input::-webkit-search-cancel-button {
  cursor: pointer;
}
.picker-dialog-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border: 0;
  border-radius: 8px;
  background: #F1F5F9;
  color: #475569;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.picker-dialog-close:hover {
  background: #E2E8F0;
  color: #0B1F4D;
}
.picker-dialog-body {
  padding: 1.25rem 1.5rem 1.5rem;
  overflow-y: auto;
  scrollbar-width: thin;
}
.picker-dialog-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr));
  gap: 0.75rem;
}
.picker-section + .picker-section {
  margin-top: 1.5rem;
}
.picker-section[hidden] {
  display: none;
}
.picker-section-title {
  position: sticky;
  top: -1.25rem;
  z-index: 2;
  margin: 0 0 0.625rem;
  padding: 0.75rem 0 0.5rem;
  background: white;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.6875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #64748B;
}
.picker-section-title::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  height: 0.625rem;
  background: linear-gradient(to bottom, white, rgba(255, 255, 255, 0));
  pointer-events: none;
}
.picker-section-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.25rem;
  padding: 0 0.375rem;
  border-radius: 6px;
  background: #F1F5F9;
  color: #94A3B8;
  font-size: 0.625rem;
  letter-spacing: 0;
}
.picker-dialog-empty {
  margin: 0;
  padding: 0.5rem 0 1rem;
  font-size: 0.8125rem;
  color: #94A3B8;
  font-style: italic;
}
.picker-dialog-empty[hidden] {
  display: none;
}
.picker-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 0.5rem 0.75rem;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  background: white;
  cursor: pointer;
  text-align: center;
  transition: border-color 0.18s, box-shadow 0.18s, transform 0.18s;
}
.picker-item[hidden] {
  display: none;
}
.picker-item:hover {
  border-color: #85B8FF;
  box-shadow: 0 8px 20px -10px rgba(11, 31, 77, 0.4);
  transform: translateY(-1px);
}
.picker-item:focus-visible {
  outline: 0;
  border-color: #3385FF;
  box-shadow: 0 0 0 3px rgba(51, 133, 255, 0.25);
}
.picker-item-active {
  border-color: #0066FF;
  background: #F6FAFF;
  box-shadow: inset 0 0 0 1px #0066FF;
}
.picker-laminas-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
  gap: 0.75rem;
}
.picker-lamina {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  border: 1px solid #E2E8F0;
  border-radius: 10px;
  background: #F8FAFC;
  cursor: zoom-in;
  overflow: hidden;
  transition: border-color 0.18s, box-shadow 0.18s;
}
.picker-lamina:hover,
.picker-lamina:focus-visible {
  outline: 0;
  border-color: #85B8FF;
  box-shadow: 0 8px 20px -10px rgba(11, 31, 77, 0.4);
}
.picker-lamina-img {
  display: block;
  width: 100%;
  height: auto;
}
.picker-lamina-zoom {
  position: absolute;
  top: 0.375rem;
  right: 0.375rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 9999px;
  background: rgba(255, 255, 255, 0.92);
  color: #334155;
  box-shadow: 0 1px 3px rgba(11, 31, 77, 0.25);
}
.picker-dialog-grid-compacta {
  grid-template-columns: repeat(auto-fill, minmax(6rem, 1fr));
  gap: 0.5rem;
}
.picker-item-compacto {
  display: block;
  padding: 0.5rem 0.375rem;
  font-size: 0.8125rem;
  font-weight: 500;
  color: #1E293B;
}
.picker-item-media {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 8px;
  background: #F8FAFC;
  overflow: hidden;
}
.picker-item-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.picker-item-img-empty {
  display: flex;
  align-items: center;
  justify-content: center;
}
.picker-item-zoom {
  position: absolute;
  top: 0.25rem;
  right: 0.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 9999px;
  background: rgba(255, 255, 255, 0.9);
  color: #475569;
  opacity: 0;
  transition: opacity 0.15s, color 0.15s;
  backdrop-filter: blur(2px);
}
.picker-item:hover .picker-item-zoom,
.picker-item:focus-visible .picker-item-zoom {
  opacity: 1;
}
.picker-item-zoom:hover {
  color: #0052CC;
}
.picker-item-check {
  position: absolute;
  top: 0.25rem;
  left: 0.25rem;
  display: none;
  align-items: center;
  justify-content: center;
  width: 1.375rem;
  height: 1.375rem;
  border-radius: 9999px;
  background: #0066FF;
  color: white;
}
.picker-item-active .picker-item-check {
  display: inline-flex;
}
.picker-item-name {
  flex: 1 1 auto;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.25;
  color: #334155;
  overflow-wrap: break-word;
  max-width: 100%;
}
.picker-item-active .picker-item-name {
  color: #002C73;
  font-weight: 600;
}
.picker-item-price {
  font-size: 0.6875rem;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  color: #64748B;
}
.picker-item-sin-precio {
  border-color: #FCA5A5;
  background: #FFFBFB;
}
.picker-item-sin-precio:hover {
  border-color: #EF4444;
}
.picker-item-sin-precio.picker-item-active {
  border-color: #DC2626;
  box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.15);
}
.picker-item-sin-precio .picker-item-name {
  color: #7F1D1D;
}
.picker-item-deshabilitado {
  cursor: not-allowed;
  border-color: #E2E8F0;
  background: #F8FAFC;
}
.picker-item-deshabilitado:hover {
  border-color: #E2E8F0;
  box-shadow: none;
}
.picker-item-deshabilitado .picker-item-img,
.picker-item-deshabilitado .picker-item-name {
  opacity: 0.45;
  filter: grayscale(0.6);
}
.picker-item-deshabilitado .picker-item-zoom {
  cursor: zoom-in;
}
.picker-item-deshabilitado .picker-item-check {
  display: none;
}
.picker-item-aviso,
.picker-meta-aviso {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.0625rem 0.375rem;
  border: 1px solid #FCA5A5;
  border-radius: 999px;
  background: #FEF2F2;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.4;
  color: #B91C1C;
  white-space: nowrap;
}
.picker-item-active .picker-item-aviso {
  border-color: #EF4444;
}
.picker-meta-aviso {
  align-self: flex-start;
}
.picker-swatch {
  position: relative;
  display: block;
  overflow: hidden;
  background: #F8FAFC;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.16);
}
.picker-swatch-tono {
  position: absolute;
  inset: 0;
  display: block;
}
.picker-swatch-translucido {
  background-color: white;
  background-image: linear-gradient(45deg, #E2E8F0 25%, transparent 25%, transparent 75%, #E2E8F0 75%),
        linear-gradient(45deg, #E2E8F0 25%, transparent 25%, transparent 75%, #E2E8F0 75%);
  background-size: 12px 12px;
  background-position: 0 0, 6px 6px;
}
.picker-swatch-translucido .picker-swatch-tono {
  opacity: 0.55;
}
.picker-swatch-desconocido {
  background-image: repeating-linear-gradient(
        45deg, #E2E8F0 0 6px, #F8FAFC 6px 12px
    );
}
.picker-item-stock {
  font-size: 0.8125rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  line-height: 1.2;
  color: #334155;
}
.picker-item-active .picker-item-stock {
  color: #002C73;
}
.picker-trigger-stock {
  font-size: 0.8125rem;
  font-weight: 600;
  color: #334155;
}
.picker-meta-agotado {
  display: inline-flex;
  align-items: center;
  padding: 0.125rem 0.5rem;
  border: 1px solid #FCD34D;
  border-radius: 999px;
  background: #FFFBEB;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.4;
  color: #B45309;
  white-space: nowrap;
}
.picker-trigger-meta.picker-meta-agotado {
  align-self: flex-start;
}
.picker-item-variantes {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.25rem;
}
.picker-variante {
  padding: 0.0625rem 0.375rem;
  border: 1px solid #E2E8F0;
  border-radius: 999px;
  background: #F8FAFC;
  font-size: 0.6875rem;
  font-weight: 500;
  line-height: 1.4;
  color: #475569;
  max-width: 100%;
  overflow-wrap: break-word;
  transition: border-color 0.15s, background-color 0.15s, color 0.15s;
}
.picker-variante:hover {
  border-color: #94A3B8;
  background: #F1F5F9;
}
.picker-variante-active {
  border-color: #002C73;
  background: #002C73;
  color: white;
}
.d-none {
  display: none !important;
}
@media (min-width: 768px) {
  .md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .md\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .md\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .md\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .md\:grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .md\:col-span-1 {
    grid-column: span 1 / span 1;
  }
  .md\:col-span-2 {
    grid-column: span 2 / span 2;
  }
  .md\:col-span-3 {
    grid-column: span 3 / span 3;
  }
  .md\:col-span-4 {
    grid-column: span 4 / span 4;
  }
  .md\:col-span-5 {
    grid-column: span 5 / span 5;
  }
  .md\:col-span-6 {
    grid-column: span 6 / span 6;
  }
  .md\:col-span-7 {
    grid-column: span 7 / span 7;
  }
  .md\:col-span-8 {
    grid-column: span 8 / span 8;
  }
  .md\:col-span-9 {
    grid-column: span 9 / span 9;
  }
  .md\:col-span-10 {
    grid-column: span 10 / span 10;
  }
  .md\:col-span-11 {
    grid-column: span 11 / span 11;
  }
  .md\:col-span-12 {
    grid-column: span 12 / span 12;
  }
  .md\:sticky {
    position: sticky;
  }
  .md\:top-6 {
    top: 1.5rem;
  }
  .md\:gap-4 {
    gap: 1rem;
  }
  .md\:gap-6 {
    gap: 1.5rem;
  }
  .md\:gap-8 {
    gap: 2rem;
  }
  .md\:flex-row {
    flex-direction: row;
  }
  .md\:flex-1 {
    flex: 1 1 0%;
  }
  .md\:flex-none {
    flex: none;
  }
  .md\:hidden {
    display: none;
  }
  .md\:block {
    display: block;
  }
  .md\:w-32 {
    width: 8rem;
  }
  .md\:p-8 {
    padding: 2rem;
  }
  .md\:max-h-180 {
    max-height: 180px;
  }
}
@media (min-width: 640px) {
  .sm\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .sm\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .sm\:flex-row {
    flex-direction: row;
  }
  .sm\:flex-none {
    flex: none;
  }
  .sm\:items-center {
    align-items: center;
  }
  .sm\:items-start {
    align-items: flex-start;
  }
  .sm\:justify-between {
    justify-content: space-between;
  }
  .sm\:self-start {
    align-self: flex-start;
  }
  .sm\:w-32 {
    width: 8rem;
  }
  .sm\:p-8 {
    padding: 2rem;
  }
  .sm\:py-28 {
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
  .sm\:text-4xl {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
  .sm\:text-5xl {
    font-size: 3rem;
    line-height: 1;
  }
}
@media (min-width: 1024px) {
  .lg\:grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .lg\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .lg\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .lg\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .lg\:grid-cols-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .lg\:grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .lg\:grid-cols-11 {
    grid-template-columns: repeat(11, minmax(0, 1fr));
  }
  .lg\:grid-cols-12 {
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }
  .lg\:col-span-1 {
    grid-column: span 1 / span 1;
  }
  .lg\:col-span-2 {
    grid-column: span 2 / span 2;
  }
  .lg\:col-span-3 {
    grid-column: span 3 / span 3;
  }
  .lg\:col-span-4 {
    grid-column: span 4 / span 4;
  }
  .lg\:col-span-5 {
    grid-column: span 5 / span 5;
  }
  .lg\:col-span-6 {
    grid-column: span 6 / span 6;
  }
  .lg\:col-span-7 {
    grid-column: span 7 / span 7;
  }
  .lg\:col-span-8 {
    grid-column: span 8 / span 8;
  }
  .lg\:col-span-9 {
    grid-column: span 9 / span 9;
  }
  .lg\:col-span-10 {
    grid-column: span 10 / span 10;
  }
  .lg\:col-span-11 {
    grid-column: span 11 / span 11;
  }
  .lg\:col-span-12 {
    grid-column: span 12 / span 12;
  }
  .lg\:sticky {
    position: sticky;
  }
  .lg\:top-4 {
    top: 1rem;
  }
  .lg\:top-6 {
    top: 1.5rem;
  }
  .lg\:gap-8 {
    gap: 2rem;
  }
}
@media (min-width: 1280px) {
  .xl\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .xl\:grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .xl\:grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (min-width: 1024px) {
  .home-row {
    height: 42rem;
  }
  .home-fill {
    flex: 1 1 0%;
    min-height: 0;
    max-height: none;
  }
  .home-half {
    max-height: 50%;
    min-height: 0;
  }
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes fade-up {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@layer utilities {
  .animate-fade-up {
    animation: fade-up 0.4s ease-out both;
  }
}
label.block {
  display: block;
}
label.inline-block {
  display: inline-block;
}
label.flex {
  display: flex;
}
label.inline-flex {
  display: inline-flex;
}
label.grid {
  display: grid;
}
label.inline-grid {
  display: inline-grid;
}
label.hidden {
  display: none;
}
label.contents {
  display: contents;
}
summary.flex {
  display: flex;
}
summary.inline-flex {
  display: inline-flex;
}
label.band-label {
  display: flex;
}
textarea.resize-none {
  resize: none;
}
textarea.resize-y {
  resize: vertical;
}
textarea.resize-x {
  resize: horizontal;
}
textarea.resize {
  resize: both;
}
select.control-flat,
input.control-flat,
textarea.control-flat {
  width: 100%;
  min-width: 0;
  border: 0;
  background-color: transparent;
  background-image: none;
  padding: 0;
  box-shadow: none;
  font-family: inherit;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.4;
  color: var(--color-navy-900);
}
select.control-flat {
  padding-right: 1.25rem;
  cursor: pointer;
}
select.control-flat:focus,
input.control-flat:focus,
textarea.control-flat:focus {
  outline: none;
  box-shadow: none;
  border: 0;
  background-color: transparent;
}
input.control-flat::placeholder,
textarea.control-flat::placeholder {
  color: var(--color-slate-400);
}
textarea.control-flat {
  resize: vertical;
}
input.control-flat-mono,
select.control-flat-mono {
  font-family: var(--font-mono);
  font-weight: 600;
}
select.control-flat-sm,
input.control-flat-sm,
textarea.control-flat-sm {
  font-size: 0.8125rem;
  font-weight: 400;
}
textarea.control-flat-texto,
input.control-flat-texto {
  font-weight: 400;
  line-height: 1.6;
  color: var(--color-slate-700);
}
a.btn-primary, button.btn-primary {
  background-color: var(--color-blue-600);
  color: #fff;
}
a.btn-primary:hover, button.btn-primary:hover {
  background-color: var(--color-blue-700);
  color: #fff;
}
a.btn-secondary, button.btn-secondary {
  background-color: var(--color-navy-900);
  color: #fff;
}
a.btn-secondary:hover, button.btn-secondary:hover {
  background-color: var(--color-navy-800);
  color: #fff;
}
a.btn-accent, button.btn-accent {
  background-color: var(--color-gold-400);
  color: var(--color-navy-900);
}
a.btn-accent:hover, button.btn-accent:hover {
  background-color: var(--color-gold-500);
  color: var(--color-navy-900);
}
a.btn-outline, button.btn-outline {
  background-color: var(--color-slate-100);
  color: var(--color-slate-700);
}
a.btn-outline:hover, button.btn-outline:hover {
  background-color: var(--color-slate-200);
  color: var(--color-slate-700);
}
a.btn-estado-ambar, button.btn-estado-ambar {
  background-color: var(--color-amber-100);
  color: var(--color-amber-800);
}
a.btn-estado-ambar:hover, button.btn-estado-ambar:hover {
  background-color: var(--color-amber-200);
  color: var(--color-amber-900);
}
a.btn-estado-mint, button.btn-estado-mint {
  background-color: var(--color-mint-100);
  color: var(--color-mint-800);
}
a.btn-estado-mint:hover, button.btn-estado-mint:hover {
  background-color: var(--color-mint-200);
  color: var(--color-mint-900);
}
a.btn-danger, button.btn-danger {
  background-color: var(--color-coral-500);
  color: #fff;
}
a.btn-danger:hover, button.btn-danger:hover {
  background-color: var(--color-coral-600);
  color: #fff;
}
a.btn-ghost, button.btn-ghost {
  background-color: transparent;
  color: var(--color-slate-600);
  box-shadow: none;
}
a.btn-ghost:hover, button.btn-ghost:hover {
  background-color: var(--color-slate-100);
  color: var(--color-slate-800);
}
a.btn-ghost-danger, button.btn-ghost-danger {
  background-color: transparent;
  color: var(--color-coral-600);
  box-shadow: none;
}
a.btn-ghost-danger:hover, button.btn-ghost-danger:hover {
  background-color: var(--color-coral-50);
  color: var(--color-coral-700);
}
a.btn-icon, button.btn-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2rem;
  width: 2rem;
  border: 0;
  border-radius: var(--radius-md);
  background-color: transparent;
  color: var(--color-slate-500);
}
a.btn-icon:hover, button.btn-icon:hover {
  background-color: var(--color-slate-100);
  color: var(--color-slate-800);
}
a.btn-icon.btn-icon-danger:hover, button.btn-icon.btn-icon-danger:hover {
  background-color: var(--color-coral-50);
  color: var(--color-coral-600);
}
a.btn-icon.btn-icon-active, button.btn-icon.btn-icon-active {
  background-color: var(--color-slate-100);
  color: var(--color-slate-800);
}
a.menu-accion, button.menu-accion {
  display: flex;
  width: 100%;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.75rem;
  border: 0;
  border-radius: var(--radius-md);
  background-color: transparent;
  cursor: pointer;
  color: var(--color-slate-700);
  font-size: 0.75rem;
  font-weight: 500;
  text-align: left;
  text-decoration: none;
}
a.menu-accion:hover, button.menu-accion:hover {
  background-color: var(--color-slate-100);
  color: var(--color-slate-900);
}
button.menu-accion:disabled {
  background-color: transparent;
  color: var(--color-slate-300);
  cursor: not-allowed;
}
a.menu-accion-danger, button.menu-accion-danger {
  color: var(--color-coral-600);
}
a.menu-accion-danger:hover, button.menu-accion-danger:hover {
  background-color: var(--color-coral-50);
  color: var(--color-coral-700);
}
a.menu-item {
  color: var(--color-slate-700);
}
a.menu-item:hover {
  color: var(--color-slate-900);
}
a.tile-acceso, a.tile-acceso:hover {
  color: inherit;
  text-decoration: none;
  background-color: #fff;
}
a.tile-acceso .tile-acceso-title {
  color: var(--color-navy-900);
}
a.tile-acceso .tile-acceso-desc {
  color: var(--color-slate-500);
}
a.list-row, a.list-row:hover {
  color: inherit;
  text-decoration: none;
}
a.list-row .list-row-title {
  color: var(--color-navy-900);
}
.max-w-\[96rem\] {
  max-width: 96rem;
}
button.text-\[11px\] {
  font-size: 11px;
}
a.btn-sm, button.btn-sm, label.btn-sm {
  padding: 0.375rem 0.75rem;
  font-size: var(--text-xs);
}
a.btn-lg, button.btn-lg, label.btn-lg {
  padding: 0.75rem 1.5rem;
  font-size: var(--text-base);
}
h2.panel-title, h3.panel-title, h4.panel-title {
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 700;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  color: var(--color-slate-600);
  margin-bottom: 0;
}
tr.is-hidden {
  display: none;
}
dialog:modal,
dialog.dialog-centrado {
  margin: auto;
  inset: 0;
}
th.th-sortable, span.th-sortable {
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
}
th.th-sortable::after, span.th-sortable::after {
  content: '\2195';
  display: inline-block;
  margin-left: 0.25rem;
  color: var(--color-slate-300);
  opacity: 0.6;
}
span.th-sortable:hover::after,
th.th-sortable:hover::after {
  color: var(--color-slate-500);
  opacity: 1;
}
span.th-sortable[aria-sort="ascending"]::after,
th.th-sortable[aria-sort="ascending"]::after {
  content: '\2191';
  color: var(--color-blue-600);
  opacity: 1;
}
span.th-sortable[aria-sort="descending"]::after,
th.th-sortable[aria-sort="descending"]::after {
  content: '\2193';
  color: var(--color-blue-600);
  opacity: 1;
}
details.field-collapse > summary {
  display: flex;
  align-items: center;
  width: 100%;
  list-style: none;
}
details.field-collapse > summary:hover {
  color: var(--color-blue-700);
}
h2.section-flow-title, h3.section-flow-title, h4.section-flow-title,
label.section-flow-title {
  font-size: 0.75rem;
  line-height: 1rem;
  font-weight: 700;
  margin-bottom: 0;
}
label.section-flow-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
summary.section-flow-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  list-style: none;
}
summary.section-flow-title::-webkit-details-marker {
  display: none;
}
summary.section-flow-title:hover {
  color: var(--color-blue-700);
}
.datagrid td.actions-as-dropdown .dropdown-actions {
  position: relative;
}
.datagrid .dropdown-actions .dropdown-toggle {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0 !important;
  border-radius: 8px;
  line-height: 1;
}
.datagrid .dropdown-actions .dropdown-toggle svg {
  width: 18px;
  height: 18px;
  vertical-align: middle;
}
.datagrid td.actions-as-dropdown .dropdown-actions .dropdown-menu {
  position: absolute !important;
  inset: 0 calc(100% + 6px) auto auto !important;
  transform: none !important;
  margin: 0 !important;
}
a.hover\:bg-navy-900:hover,
button.hover\:bg-navy-900:hover {
  background-color: var(--color-navy-900) !important;
  color: #fff !important;
}
a.hover\:bg-navy-800:hover,
button.hover\:bg-navy-800:hover {
  background-color: var(--color-navy-800) !important;
  color: #fff !important;
}
a.hover\:bg-blue-600:hover,
button.hover\:bg-blue-600:hover {
  background-color: var(--color-blue-600) !important;
  color: #fff !important;
}
a.hover\:bg-blue-700:hover,
button.hover\:bg-blue-700:hover {
  background-color: var(--color-blue-700) !important;
  color: #fff !important;
}
a.hover\:bg-coral-600:hover,
button.hover\:bg-coral-600:hover {
  background-color: var(--color-coral-600) !important;
  color: #fff !important;
}
a.hover\:bg-navy-900:hover svg,
a.hover\:bg-navy-800:hover svg,
a.hover\:bg-blue-600:hover svg,
a.hover\:bg-blue-700:hover svg,
a.hover\:bg-coral-600:hover svg,
button.hover\:bg-navy-900:hover svg,
button.hover\:bg-navy-800:hover svg,
button.hover\:bg-blue-600:hover svg,
button.hover\:bg-blue-700:hover svg,
button.hover\:bg-coral-600:hover svg {
  color: #fff !important;
  stroke: #fff !important;
}
a.hover\:border-navy-900:hover,
button.hover\:border-navy-900:hover {
  border-color: var(--color-navy-900) !important;
}
a.hover\:border-blue-600:hover,
button.hover\:border-blue-600:hover {
  border-color: var(--color-blue-600) !important;
}
a.hover\:border-coral-600:hover,
button.hover\:border-coral-600:hover {
  border-color: var(--color-coral-600) !important;
}
a.hover\:text-navy-900:hover {
  color: var(--color-navy-900);
}
a.hover\:text-blue-500:hover {
  color: var(--color-blue-500);
}
a.hover\:text-blue-600:hover {
  color: var(--color-blue-600);
}
a.hover\:text-blue-700:hover {
  color: var(--color-blue-700);
}
a.hover\:text-coral-600:hover {
  color: var(--color-coral-600);
}
a.hover\:text-coral-700:hover {
  color: var(--color-coral-700);
}
input.mt-1,    select.mt-1,    textarea.mt-1,    button.mt-1 {
  margin-top: 0.25rem;
}
input.mt-1\.5, select.mt-1\.5, textarea.mt-1\.5, button.mt-1\.5 {
  margin-top: 0.375rem;
}
input.mt-2,    select.mt-2,    textarea.mt-2,    button.mt-2 {
  margin-top: 0.5rem;
}
input.text-xs,   select.text-xs,   textarea.text-xs,   button.text-xs {
  font-size: 0.75rem;
  line-height: 1rem;
}
input.text-sm,   select.text-sm,   textarea.text-sm,   button.text-sm {
  font-size: 0.875rem;
  line-height: 1.25rem;
}
input.text-base, select.text-base, textarea.text-base, button.text-base {
  font-size: 1rem;
  line-height: 1.5rem;
}
input.font-mono, select.font-mono, textarea.font-mono, button.font-mono {
  font-family: var(--font-mono);
}
input.font-medium,   select.font-medium,   textarea.font-medium,   button.font-medium {
  font-weight: 500;
}
input.font-semibold, select.font-semibold, textarea.font-semibold, button.font-semibold {
  font-weight: 600;
}
fieldset.bg-transparent {
  background: transparent;
}
span.badge {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  white-space: nowrap;
  vertical-align: middle;
}
.table-compact tbody td.obs-wrap {
  white-space: normal;
  overflow-wrap: anywhere;
  max-width: 260px;
}
.ts-dropdown.ts-dropdown--up {
  top: auto;
  bottom: 100%;
  margin: 0 0 0.25rem;
  border-top: 1px solid #d0d0d0;
  border-bottom: 0 none;
  border-radius: 0.25rem 0.25rem 0 0;
}
.ts-dropdown .ts-dropdown-content {
  max-height: 300px;
}
.file-chip-list {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.file-chip-list.is-empty {
  gap: 0;
}
.file-chip {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  padding: 0.375rem 0.625rem;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: white;
  font-size: 0.875rem;
  line-height: 1.25rem;
  transition: border-color 0.2s, background-color 0.2s;
}
.file-chip-clickable {
  cursor: pointer;
}
.file-chip-clickable:hover {
  border-color: #93C5FD;
  background: #F8FAFC;
}
.file-chip-icon {
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
  color: #94A3B8;
}
.file-chip-name {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #334155;
}
.file-chip-meta {
  flex: 0 0 auto;
  font-size: 0.75rem;
  color: #64748B;
}
.file-chip-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #94A3B8;
  cursor: pointer;
  transition: background-color 0.2s, color 0.2s;
}
.file-chip-btn:hover {
  background: #F1F5F9;
  color: #C2410C;
}
.file-chip-btn-restore:hover {
  background: #E2E8F0;
  color: #1D4ED8;
}
.file-chip-off {
  background: #F8FAFC;
  opacity: 0.6;
}
.file-chip-off .file-chip-name {
  text-decoration: line-through;
}
.file-chip-off .file-chip-meta {
  color: #94A3B8;
}
.file-chip-pending {
  opacity: 0.6;
}
.file-chip-error {
  border-color: #FCA5A5;
  background: #FEF2F2;
}
.file-chip-error .file-chip-icon {
  color: #DC2626;
}
.file-chip-note {
  padding: 0 0.125rem;
  font-size: 0.6875rem;
  line-height: 1rem;
  color: #94A3B8;
  list-style: none;
}
.file-chip-note.is-error {
  color: #DC2626;
}
.msg-atts {
  padding: 0.75rem 0.875rem;
  border-top: 1px solid #F1F5F9;
  background: rgba(248, 250, 252, 0.6);
}
.msg-atts-head {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  margin-bottom: 0.625rem;
  font-size: 0.6875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #94A3B8;
}
.msg-atts-head-icon {
  width: 0.875rem;
  height: 0.875rem;
}
.msg-atts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr));
  gap: 0.625rem;
}
.msg-att {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: white;
  text-align: left;
  transition: border-color 0.2s, box-shadow 0.2s;
}
button.msg-att {
  cursor: pointer;
  font: inherit;
}
button.msg-att:hover,
button.msg-att:focus-visible {
  border-color: #93C5FD;
  box-shadow: 0 4px 14px -4px rgba(11, 31, 77, 0.18);
}
.msg-att-thumb {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #F8FAFC;
  border-bottom: 1px solid #F1F5F9;
}
.msg-att-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.msg-att-thumb.is-loading {
  background: linear-gradient(100deg, #F1F5F9 30%, #E2E8F0 50%, #F1F5F9 70%);
  background-size: 220% 100%;
  animation: msg-att-shimmer 1.4s ease-in-out infinite;
}
.msg-att-thumb.is-loading img {
  opacity: 0;
}
@keyframes msg-att-shimmer {
  from {
    background-position: 120% 0;
  }
  to {
    background-position: -120% 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .msg-att-thumb.is-loading {
    animation: none;
  }
}
.msg-att-thumb iframe {
  width: calc(100% + 20px);
  height: 100%;
  border: 0;
  pointer-events: none;
}
.msg-att-thumb-shield {
  position: absolute;
  inset: 0;
}
.msg-att-icon {
  width: 2rem;
  height: 2rem;
  color: #CBD5E1;
}
.msg-att-foot {
  display: flex;
  align-items: baseline;
  gap: 0.375rem;
  min-width: 0;
  padding: 0.4375rem 0.5625rem;
}
.msg-att-name {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.75rem;
  color: #334155;
}
.msg-att-size {
  flex: 0 0 auto;
  font-size: 0.6875rem;
  color: #94A3B8;
}
.msg-att-download {
  position: absolute;
  top: 0.375rem;
  right: 0.375rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  color: #475569;
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.14);
  opacity: 0;
  transition: opacity 0.2s, background-color 0.2s;
}
.msg-att-download svg {
  width: 0.875rem;
  height: 0.875rem;
}
.msg-att:hover .msg-att-download,
.msg-att:focus-within .msg-att-download {
  opacity: 1;
}
.msg-att-download:hover {
  background: white;
  color: #1D4ED8;
}
@media (hover: none) {
  .msg-att-download {
    opacity: 1;
  }
}
.msg-atts-compact {
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  padding: 0.5rem 0.75rem;
}
.msg-att-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  max-width: 100%;
  padding: 0.125rem 0.5rem;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: white;
  font-size: 0.6875rem;
  color: #475569;
}
a.msg-att-chip:hover {
  border-color: #93C5FD;
  color: #1D4ED8;
}
.msg-att-chip-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.msg-att-chip-size {
  color: #94A3B8;
}
dialog.att-dialog {
  margin: auto;
  inset: 0;
  position: fixed;
  width: min(94vw, 68rem);
  max-height: 92vh;
  padding: 0;
  border: 0;
  border-radius: 12px;
  background: white;
  box-shadow: 0 24px 70px -12px rgba(11, 31, 77, 0.45);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
dialog.att-dialog:not([open]) {
  display: none;
}
dialog.att-dialog::backdrop {
  background: rgba(11, 31, 77, 0.55);
  backdrop-filter: blur(4px);
}
.att-dialog-head {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.625rem 0.875rem;
  border-bottom: 1px solid #E2E8F0;
  background: white;
}
.att-dialog-title {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.875rem;
  font-weight: 600;
  color: #0B1F4D;
}
.att-dialog-count {
  flex: 0 0 auto;
  font-size: 0.75rem;
  color: #94A3B8;
}
.att-dialog-tools {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.att-dialog-nav,
.att-dialog-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #64748B;
  cursor: pointer;
  transition: background-color 0.2s, color 0.2s;
}
.att-dialog-nav svg,
.att-dialog-close svg {
  width: 1rem;
  height: 1rem;
}
.att-dialog-nav:hover,
.att-dialog-close:hover {
  background: #E2E8F0;
  color: #0B1F4D;
}
.att-dialog-nav.is-hidden {
  display: none;
}
.att-dialog-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
  background: #F8FAFC;
}
.att-dialog-image {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}
.att-dialog-image img {
  max-width: 100%;
  max-height: 78vh;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.12);
}
.att-dialog-frame {
  width: 100%;
  height: 80vh;
  border: 0;
  display: block;
}
.att-dialog-empty {
  padding: 3rem 1rem;
  text-align: center;
  font-size: 0.875rem;
  color: #64748B;
}
.att-dialog-empty-icon {
  display: block;
  width: 2.5rem;
  height: 2.5rem;
  margin: 0 auto 0.75rem;
  color: #CBD5E1;
}
.att-dialog-empty p {
  margin: 0 0 1rem;
}
.op-frame {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  background: white;
}
.att-dialog-body .op-frame {
  height: 80vh;
}
.dock-preview-body .op-frame {
  flex: 1 1 auto;
  align-self: stretch;
}
.op-msg {
  padding: 2.5rem 1rem;
  text-align: center;
  font-size: 0.8125rem;
  color: #64748B;
}
.op-msg p {
  margin: 0;
}
.op-msg-link {
  display: inline-block;
  margin-top: 0.75rem;
  font-weight: 500;
  color: #1D4ED8;
}
dialog.app-files-dialog {
  width: min(92vw, 46rem);
}
.app-files-context {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 0.75rem;
  padding: 0.875rem 1.5rem;
  border-bottom: 1px solid #E2E8F0;
  background: #F8FAFC;
}
@media (max-width: 640px) {
  .app-files-context {
    grid-template-columns: 1fr;
  }
}
.app-files-ctx-field {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}
.app-files-ctx-label {
  font-size: 0.6875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #64748B;
}
.app-files-ctx-input {
  position: relative;
  display: block;
}
.app-files-dialog input[type="search"],
.app-files-dialog select {
  width: 100%;
  height: 2.25rem;
  padding: 0 0.625rem;
  border: 1px solid #CBD5E1;
  border-radius: 8px;
  background: white;
  font-size: 0.875rem;
  color: #0F172A;
}
.app-files-dialog input[type="search"]:focus,
.app-files-dialog select:focus {
  outline: 0;
  border-color: #3B82F6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.18);
}
.app-files-dialog select:disabled {
  background: #F1F5F9;
  color: #94A3B8;
}
.app-files-suggest {
  position: absolute;
  z-index: 5;
  top: calc(100% + 0.25rem);
  left: 0;
  right: 0;
  max-height: 15rem;
  overflow-y: auto;
  margin: 0;
  padding: 0.25rem;
  list-style: none;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: white;
  box-shadow: 0 10px 30px -8px rgba(15, 23, 42, 0.25);
}
.app-files-suggest[hidden] {
  display: none;
}
.app-files-suggest-item {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  padding: 0.375rem 0.5rem;
  border-radius: 6px;
  font-size: 0.8125rem;
  color: #334155;
  cursor: pointer;
}
.app-files-suggest-item:hover {
  background: #EFF6FF;
}
.app-files-suggest-name {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.app-files-suggest-meta {
  flex: 0 0 auto;
  font-size: 0.6875rem;
  color: #94A3B8;
}
.app-files-tabs {
  flex: 0 0 auto;
  display: flex;
  gap: 0.25rem;
  padding: 0.625rem 1.5rem 0;
  border-bottom: 1px solid #E2E8F0;
}
.app-files-tab {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.4375rem 0.75rem;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  font-size: 0.8125rem;
  font-weight: 500;
  color: #64748B;
  cursor: pointer;
  transition: color 0.2s, border-color 0.2s;
}
.app-files-tab:hover {
  color: #0B1F4D;
}
.app-files-tab.is-active {
  color: #1D4ED8;
  border-bottom-color: #1D4ED8;
  font-weight: 600;
}
.app-files-count {
  display: inline-block;
  min-width: 1.125rem;
  padding: 0 0.25rem;
  border-radius: 6px;
  background: #E2E8F0;
  font-size: 0.6875rem;
  line-height: 1.125rem;
  text-align: center;
  color: #475569;
}
.app-files-tab.is-active .app-files-count {
  background: #DBEAFE;
  color: #1D4ED8;
}
.app-files-body {
  padding: 0.5rem 1rem;
}
.app-files-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.app-files-row {
  border-radius: 8px;
}
.app-files-row.is-disabled {
  opacity: 0.55;
}
.app-files-row-inner {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  padding: 0.4375rem 0.5rem;
  border-radius: 8px;
  cursor: pointer;
}
.app-files-row-inner:hover {
  background: #F8FAFC;
}
.app-files-row.is-disabled .app-files-row-inner {
  cursor: default;
  background: transparent;
}
.app-files-check {
  flex: 0 0 auto;
  width: 0.9375rem;
  height: 0.9375rem;
  accent-color: #1D4ED8;
}
.app-files-row-icon {
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
  color: #94A3B8;
}
.app-files-row-name {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.875rem;
  color: #334155;
}
.app-files-row-meta {
  flex: 0 0 auto;
  font-size: 0.75rem;
  color: #94A3B8;
}
.app-files-empty {
  padding: 2rem 0.5rem;
  text-align: center;
  font-size: 0.8125rem;
  color: #94A3B8;
  list-style: none;
}
.app-files-foot {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.5rem;
  border-top: 1px solid #E2E8F0;
  background: white;
}
.app-files-summary {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 0.8125rem;
  color: #64748B;
}
#compose-dock,
#asistente-dock {
  position: fixed;
  bottom: 0;
  right: 1rem;
  z-index: 3000;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 0.6rem;
}
.dock-window {
  width: min(38rem, calc(100vw - 2rem));
  flex: 0 0 auto;
}
.dock-window.dock-hidden {
  display: none;
}
.dock-window.dock-chat {
  width: min(27rem, calc(100vw - 2rem));
}
.dock-window.dock-chat [data-dock="card"] {
  grid-template-columns: minmax(0, 1fr);
  height: min(40rem, calc(100vh - 4.5rem));
}
.dock-chat-hilo {
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overflow-wrap: anywhere;
  padding: 1rem;
  overscroll-behavior: contain;
}
.dock-chat-hilo table {
  width: 100%;
}
.dock-chat-pie {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  border-top: 1px solid #F1F5F9;
  padding: 0.75rem 1rem;
}
.dock-window.dock-large {
  position: fixed;
  inset: clamp(0.5rem, 2vw, 1.5rem);
  width: auto;
  z-index: 3001;
  max-width: none;
  flex: none;
  display: flex;
}
.dock-window [data-dock="bar"] {
  display: none;
}
.dock-window.dock-minimized {
  width: 15rem;
}
.dock-window.dock-minimized [data-dock="card"] {
  display: none;
}
.dock-window.dock-minimized [data-dock="bar"] {
  display: flex;
}
.dock-window.dock-large.dock-minimized {
  position: static;
  inset: auto;
  width: 15rem;
  flex: 0 0 auto;
  display: block;
}
.dock-band {
  background: #1E293B;
  color: #fff;
}
.dock-window.dock-sending [data-dock="dock-body"],
.dock-window.dock-sending .dock-head {
  pointer-events: none;
  opacity: 0.6;
}
.dock-window.dock-sending [data-dock="cancel"] {
  pointer-events: none;
  opacity: 0.5;
}
.dock-bar {
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  height: 2.25rem;
  padding: 0 0.75rem;
  border-radius: 8px 8px 0 0;
  box-shadow: 0 -4px 16px rgba(15, 23, 42, 0.18);
  cursor: pointer;
  user-select: none;
}
.dock-bar-title {
  font-size: 0.8125rem;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dock-bar-tools {
  display: inline-flex;
  align-items: center;
  gap: 0.125rem;
  flex: 0 0 auto;
}
.dock-window [data-dock="card"] {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  height: min(46rem, calc(100vh - 4.5rem));
  max-height: calc(100vh - 4.5rem);
  background: #fff;
  border: 1px solid #E2E8F0;
  border-bottom: 0;
  border-radius: 12px 12px 0 0;
  box-shadow: 0 -8px 30px rgba(15, 23, 42, 0.18);
  overflow: hidden;
}
.dock-window.dock-large [data-dock="card"] {
  width: 100%;
  height: 100%;
  max-height: none;
  border-bottom: 1px solid #E2E8F0;
  border-radius: 12px;
  box-shadow: 0 18px 60px rgba(15, 23, 42, 0.28);
}
.dock-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  height: 2.75rem;
  padding: 0 0.5rem 0 1rem;
}
.dock-head-title {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  font-size: 0.875rem;
  font-weight: 600;
}
.dock-head-tools {
  display: inline-flex;
  align-items: center;
  gap: 0.125rem;
  flex: 0 0 auto;
}
.dock-head-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: inherit;
  cursor: pointer;
  transition: background-color 0.2s;
}
.dock-head-btn:hover {
  background: rgba(255, 255, 255, 0.15);
}
.dock-window [data-dock="dock-body"] {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  min-height: 0;
  padding: 1rem;
  overflow: hidden;
}
.dock-window.dock-large:not(.dock-mode-reader) [data-dock="dock-body"] {
  display: grid;
  grid-template-columns: minmax(0, 1fr) clamp(18rem, 26%, 28rem);
  grid-template-rows: auto auto auto auto minmax(0, 1fr);
  grid-template-areas: "to      adjuntos"
        "cc      adjuntos"
        "subject adjuntos"
        "thread  adjuntos"
        "message adjuntos";
  gap: 0.75rem 1.25rem;
}
.dock-window.dock-large [data-dock-section="to"] {
  grid-area: to;
}
.dock-window.dock-large [data-dock-section="cc"] {
  grid-area: cc;
}
.dock-window.dock-large [data-dock-section="subject"] {
  grid-area: subject;
}
.dock-window.dock-large [data-dock-section="thread"] {
  grid-area: thread;
}
.dock-window.dock-large [data-dock-section="message"] {
  grid-area: message;
}
.dock-window.dock-large [data-dock-section="attachments"] {
  grid-area: adjuntos;
  min-height: 0;
  overflow-y: auto;
}
.dock-window.dock-large .dock-attachments-scroll {
  max-height: none;
  overflow-y: visible;
}
@media (max-width: 60rem) {
  .dock-window.dock-large:not(.dock-mode-reader) [data-dock="dock-body"] {
    display: flex;
    flex-direction: column;
  }
}
.dock-foot {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  padding: 0.75rem 1rem;
  border-top: 1px solid #E2E8F0;
  background: white;
}
.dock-field {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
  flex: 0 0 auto;
}
.dock-field-grow {
  flex: 1 1 auto;
  min-height: 0;
}
.dock-window:not(.dock-large) [data-dock-section="message"] {
  min-height: 9rem;
}
.dock-window [data-dock="body"] {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
}
.dock-label {
  font-size: 0.75rem;
  font-weight: 600;
  color: #64748B;
}
.dock-label-hint {
  font-weight: 400;
  color: #94A3B8;
}
.dock-req {
  color: #DC2626;
}
.dock-window input.dock-input,
.dock-window select.dock-input {
  width: 100%;
  height: 2.5rem;
  padding: 0 0.75rem;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: white;
  font-size: 0.875rem;
  color: #0F172A;
}
.dock-window input.dock-input:focus,
.dock-window select.dock-input:focus {
  outline: 0;
  border-color: #3B82F6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.18);
}
.dock-cc-toggles {
  display: flex;
  gap: 0.75rem;
}
.dock-link-btn {
  border: 0;
  background: transparent;
  padding: 0;
  font-size: 0.75rem;
  font-weight: 600;
  color: #1D4ED8;
  cursor: pointer;
}
.dock-link-btn:hover {
  color: #1E40AF;
  text-decoration: underline;
}
.dock-link-btn.is-active {
  color: #64748B;
}
.dock-to-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}
.dock-to-head .dock-link-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}
.dock-threadbar {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 0.625rem;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: #F8FAFC;
}
.dock-threadbar.is-replying {
  border-color: #BFDBFE;
  background: #EFF6FF;
}
.dock-threadbar.is-rancio {
  border-color: #FDBA74;
  background: #FFF7ED;
}
.dock-threadbar.is-rancio .dock-threadbar-label,
.dock-threadbar.is-rancio .dock-threadbar-meta {
  color: #9A3412;
}
.dock-threadbar-icon {
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
  color: #94A3B8;
}
.dock-threadbar.is-replying .dock-threadbar-icon {
  color: #2563EB;
}
.dock-threadbar.is-rancio .dock-threadbar-icon {
  color: #EA580C;
}
.dock-threadbar-text {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.dock-threadbar-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.75rem;
  font-weight: 600;
  color: #334155;
}
.dock-threadbar-meta {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.6875rem;
  color: #64748B;
}
.dock-threadbar-meta:empty {
  display: none;
}
.dock-threadbar-actions {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 0.125rem;
}
.dock-threadbar-clear {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #94A3B8;
  cursor: pointer;
}
.dock-threadbar-clear:hover {
  background: #E2E8F0;
  color: #C2410C;
}
.dock-attachments {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 0.75rem;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: rgba(248, 250, 252, 0.6);
}
.dock-attachments-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}
.dock-attachments-title {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  font-size: 0.75rem;
  font-weight: 600;
  color: #64748B;
}
.dock-attachments-total {
  font-size: 0.75rem;
  color: #64748B;
}
.dock-attachments-scroll {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  min-height: 0;
  max-height: 9rem;
  overflow-y: auto;
}
.dock-attachments-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}
.dock-preview {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  min-height: 0;
  padding-top: 0.75rem;
  border-top: 1px solid #E2E8F0;
}
.dock-preview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}
.dock-preview-name {
  font-size: 0.75rem;
  font-weight: 600;
  color: #334155;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.dock-preview-tools {
  display: inline-flex;
  align-items: center;
  gap: 0.125rem;
  flex: 0 0 auto;
}
.dock-preview-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #94A3B8;
  cursor: pointer;
}
.dock-preview-btn:hover {
  background: #E2E8F0;
  color: #334155;
}
.dock-preview-body {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 0;
  height: clamp(12rem, 32vh, 26rem);
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: #F8FAFC;
  overflow: auto;
}
.dock-preview-img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.dock-preview-frame {
  width: 100%;
  height: 100%;
  border: 0;
}
.dock-preview-empty {
  margin: 0;
  padding: 0 1rem;
  font-size: 0.75rem;
  color: #64748B;
  text-align: center;
}
.dock-attach-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  height: 2.25rem;
  padding: 0 0.75rem;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: white;
  font-size: 0.875rem;
  color: #334155;
  cursor: pointer;
  transition: background-color 0.2s;
}
.dock-attach-btn:hover {
  background: #F1F5F9;
}
.dock-compose-part {
  display: contents;
}
.dock-reader {
  display: none;
  flex-direction: column;
  min-height: 0;
  flex: 1 1 auto;
  gap: 0.75rem;
}
.dock-window.dock-mode-reader .dock-compose-part {
  display: none;
}
.dock-window.dock-mode-reader .dock-reader {
  display: flex;
}
.dock-window.dock-mode-reader [data-dock="foot"] {
  display: none;
}
.dock-window.dock-mode-reader [data-dock="dock-body"] {
  padding: 0.75rem;
}
.dock-reader-head {
  flex: 0 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}
.dock-reader-meta {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 0.75rem;
  color: #64748B;
}
.dock-reader-actions {
  flex: 0 0 auto;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.375rem;
}
.dock-reader-body {
  flex: 1 1 auto;
  min-height: 0;
  max-height: 60vh;
  overflow-y: auto;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: white;
}
.dock-window.dock-large .dock-reader-body {
  max-height: none;
}
#mailbox-inline-compose {
  max-height: 60%;
  overflow-y: auto;
}
#mailbox-inline-compose .rte-area {
  min-height: 5rem;
  max-height: 16rem;
}
dialog.dock-discard {
  width: min(92vw, 24rem);
  padding: 1.25rem;
  border: 0;
  border-radius: 12px;
}
dialog.dock-discard:not([open]) {
  display: none;
}
dialog.dock-discard::backdrop {
  background: rgba(11, 31, 77, 0.55);
  backdrop-filter: blur(4px);
}
.dock-discard-body {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
}
.dock-discard-icon {
  flex: 0 0 auto;
  width: 1.25rem;
  height: 1.25rem;
  margin-top: 0.125rem;
  color: #2563EB;
}
.dock-discard-title {
  margin: 0;
  font-size: 0.875rem;
  font-weight: 600;
  color: #1E293B;
}
.dock-discard-sub {
  margin: 0.25rem 0 0;
  font-size: 0.75rem;
  color: #64748B;
}
.dock-discard-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  margin-top: 1rem;
}
@media (max-width: 640px) {
  #compose-dock {
    right: 0.5rem;
    left: 0.5rem;
  }
  .dock-window {
    width: 100%;
  }
  .dock-window.dock-large {
    inset: 0.5rem;
    width: auto;
  }
  .dock-window.dock-minimized {
    width: 12rem;
  }
  .dock-window.dock-large.dock-minimized {
    inset: auto;
    width: 12rem;
  }
}
.btn.hidden {
  display: none;
}
#compose-dock .hidden,
dialog.app-files-dialog .hidden,
dialog.thread-dialog .hidden,
dialog.att-dialog .hidden {
  display: none;
}
.stock-reglas-summary {
  display: flex;
}
.rcpt-field {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem;
  min-height: 2.5rem;
  padding: 0.25rem 0.375rem;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: white;
  cursor: text;
}
.rcpt-field:focus-within {
  border-color: #3B82F6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.18);
}
.rcpt-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  max-width: 100%;
  padding: 0.125rem 0.25rem 0.125rem 0.5rem;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  background: #F1F5F9;
  font-size: 0.8125rem;
  color: #334155;
}
.rcpt-chip-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rcpt-chip-editable {
  cursor: pointer;
}
.rcpt-chip-bad {
  border-color: #FCA5A5;
  background: #FEF2F2;
  color: #B91C1C;
}
.rcpt-chip-x {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.125rem;
  height: 1.125rem;
  flex: 0 0 auto;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: inherit;
  opacity: 0.55;
  cursor: pointer;
}
.rcpt-chip-x svg {
  width: 0.75rem;
  height: 0.75rem;
}
.rcpt-chip-x:hover {
  opacity: 1;
  background: rgba(15, 23, 42, 0.08);
}
.rcpt-input {
  flex: 1 1 8rem;
  min-width: 8rem;
  border: 0;
  outline: 0;
  padding: 0.25rem;
  background: transparent;
  font-size: 0.875rem;
  color: #0F172A;
}
.rcpt-field input.rcpt-input {
  border: 0;
  box-shadow: none;
  height: auto;
  background: transparent;
}
.rte {
  display: flex;
  flex-direction: column;
  min-height: 0;
  flex: 1 1 auto;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: white;
  overflow: hidden;
}
.rte:focus-within {
  border-color: #3B82F6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.18);
}
.rte-bar {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 0.125rem;
  padding: 0.25rem 0.375rem;
  border-bottom: 1px solid #F1F5F9;
  background: #F8FAFC;
}
.rte-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #475569;
  cursor: pointer;
  transition: background-color 0.2s, color 0.2s;
}
.rte-btn svg {
  width: 0.875rem;
  height: 0.875rem;
}
.rte-btn:hover {
  background: #E2E8F0;
  color: #0B1F4D;
}
.rte-btn.is-active {
  background: #DBEAFE;
  color: #1D4ED8;
}
.rte-color-btn {
  flex-direction: column;
  gap: 1px;
}
.rte-color-btn svg {
  width: 0.8125rem;
  height: 0.75rem;
}
.rte-color-bar {
  width: 0.875rem;
  height: 3px;
  border-radius: 1px;
  background: #0F172A;
}
.rte-palette {
  position: fixed;
  z-index: 3100;
  display: flex;
  gap: 0.25rem;
  padding: 0.375rem;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: white;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.14);
}
.rte-swatch {
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 6px;
  cursor: pointer;
  transition: transform 0.2s, box-shadow 0.2s;
}
.rte-swatch:hover {
  transform: scale(1.12);
}
.rte-swatch.is-active {
  box-shadow: 0 0 0 2px white, 0 0 0 3px #0066FF;
}
.rte-hint {
  margin-left: 0.375rem;
  font-size: 0.6875rem;
  color: #C2410C;
}
.rte-area {
  flex: 1 1 auto;
  min-height: 6rem;
  max-height: 60vh;
  overflow-y: auto;
  padding: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #0F172A;
  outline: 0;
}
.dock-window .rte-area {
  min-height: 5rem;
  max-height: none;
}
@media (max-height: 40rem) {
  .dock-window:not(.dock-large) [data-dock="dock-body"] {
    overflow-y: auto;
  }
  .dock-window:not(.dock-large) .rte-area {
    max-height: 12rem;
  }
}
.rte-area p {
  margin: 0 0 0.5rem;
}
.rte-area ul, .rte-area ol {
  margin: 0 0 0.5rem;
  padding-left: 1.5rem;
}
.rte-area ul {
  list-style: disc;
}
.rte-area ol {
  list-style: decimal;
}
.rte-area li {
  margin: 0.125rem 0;
}
.rte-area a {
  color: #1D4ED8;
  text-decoration: underline;
}
.rte-area u {
  text-decoration: underline;
}
.rte-area img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0.25rem 0;
  border-radius: 6px;
}
.rte-area:empty::before {
  content: attr(data-placeholder);
  color: #94A3B8;
}
dialog.thread-dialog {
  width: min(94vw, 68rem);
  height: min(88vh, 46rem);
  max-height: 88vh;
}
.thread-dialog-body {
  flex: 1 1 auto;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(16rem, 22rem) minmax(0, 1fr);
}
.thread-dialog-list {
  min-height: 0;
  overflow-y: auto;
  border-right: 1px solid #E2E8F0;
  background: #F8FAFC;
}
.thread-dialog-item {
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  width: 100%;
  padding: 0.625rem 0.875rem;
  border: 0;
  border-left: 3px solid transparent;
  border-bottom: 1px solid #F1F5F9;
  background: transparent;
  text-align: left;
  cursor: pointer;
  transition: background-color 0.2s, border-color 0.2s;
}
.thread-dialog-item:hover {
  background: white;
}
.thread-dialog-item.is-active {
  background: white;
  border-left-color: #2563EB;
}
.thread-dialog-item-top {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  min-width: 0;
}
.thread-dialog-item-subject {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.8125rem;
  font-weight: 600;
  color: #1E293B;
}
.thread-dialog-item-date {
  flex: 0 0 auto;
  font-size: 0.6875rem;
  color: #94A3B8;
}
.thread-dialog-item-people,
.thread-dialog-item-snippet {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.6875rem;
  color: #64748B;
}
.thread-dialog-item-snippet {
  color: #94A3B8;
}
.thread-dialog-preview {
  display: flex;
  flex-direction: column;
  min-height: 0;
  min-width: 0;
}
.thread-dialog-preview-head {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  padding: 0.75rem 1rem;
  border-bottom: 1px solid #F1F5F9;
}
.thread-dialog-preview-head:empty {
  display: none;
}
.thread-dialog-preview-title {
  font-size: 0.875rem;
  font-weight: 600;
  color: #0B1F4D;
}
.thread-dialog-preview-meta {
  font-size: 0.75rem;
  color: #64748B;
}
.thread-dialog-preview-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
}
.thread-dialog-note {
  padding: 2rem 1rem;
  text-align: center;
  font-size: 0.8125rem;
  color: #94A3B8;
}
.thread-dialog-foot {
  flex: 0 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.25rem;
  border-top: 1px solid #E2E8F0;
  background: white;
}
.thread-dialog-foot-spacer {
  flex: 1 1 auto;
}
dialog.dest-dialog {
  width: min(92vw, 46rem);
}
.dest-dialog-grupo + .dest-dialog-grupo {
  margin-top: 1.5rem;
}
.dest-dialog-grupo-titulo {
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #94A3B8;
  margin: 0 0 0.25rem;
}
.dest-dialog-fila {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  padding: 0.625rem 0.5rem;
  border: 0;
  border-top: 1px solid #F1F5F9;
  background: transparent;
  border-radius: 8px;
  text-align: left;
  cursor: pointer;
  transition: background 0.15s;
}
.dest-dialog-fila:first-of-type {
  border-top: 0;
}
.dest-dialog-fila:hover {
  background: #F8FAFC;
}
.dest-dialog-fila.is-on {
  background: #EFF6FF;
}
.dest-dialog-check {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem;
  height: 1.25rem;
  border: 1px solid #CBD5E1;
  border-radius: 6px;
  background: white;
  color: white;
}
.dest-dialog-fila.is-on .dest-dialog-check {
  background: #1D4ED8;
  border-color: #1D4ED8;
}
.dest-dialog-datos {
  display: flex;
  flex-direction: column;
  min-width: 0;
  flex: 1 1 auto;
}
.dest-dialog-nombre {
  font-size: 0.875rem;
  color: #0F172A;
  word-break: break-all;
}
.dest-dialog-email {
  font-size: 0.75rem;
  color: #64748B;
  word-break: break-all;
}
.dest-dialog-cargo {
  flex: 0 0 auto;
  font-size: 0.75rem;
  color: #94A3B8;
}
.dest-dialog-vacio {
  font-size: 0.875rem;
  color: #64748B;
  margin: 0;
}
.dest-dialog-alta {
  flex: 0 0 auto;
  padding: 0.875rem 1.5rem 1rem;
  border-top: 1px solid #E2E8F0;
  background: #F8FAFC;
}
.dest-dialog-alta .dest-dialog-grupo-titulo {
  margin-bottom: 0.5rem;
}
.dest-dialog-alta-campos {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
  align-items: end;
  gap: 0.5rem 0.75rem;
}
.dest-dialog-campo {
  display: flex;
  flex-direction: column;
  gap: 0.1875rem;
  min-width: 0;
}
.dest-dialog-campo-label {
  font-size: 0.6875rem;
  font-weight: 500;
  color: #64748B;
}
.dest-dialog-campo input, .dest-dialog-campo select {
  width: 100%;
}
.dest-dialog-campo-email {
  grid-column: span 2;
}
.dest-dialog-campo-funcion {
  grid-column: span 2;
}
.dest-dialog-alta-btn {
  align-self: end;
  white-space: nowrap;
}
@media (max-width: 40rem) {
  .dest-dialog-campo-email, .dest-dialog-campo-funcion {
    grid-column: auto;
  }
}
@media (max-width: 900px) {
  .thread-dialog-body {
    grid-template-columns: 1fr;
    grid-template-rows: 14rem minmax(0, 1fr);
  }
  .thread-dialog-list {
    border-right: 0;
    border-bottom: 1px solid #E2E8F0;
  }
}
.articulo-lookup {
  position: absolute;
  z-index: 2500;
  max-height: 20rem;
  overflow-y: auto;
  border: 1px solid #E2E8F0;
  border-radius: 8px;
  background: white;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.16);
}
.articulo-lookup.hidden {
  display: none;
}
.articulo-lookup-item {
  display: grid;
  grid-template-columns: min-content minmax(0, 1fr) auto;
  align-items: baseline;
  gap: 0.125rem 0.625rem;
  width: 100%;
  padding: 0.5rem 0.75rem;
  border: 0;
  border-bottom: 1px solid #F1F5F9;
  background: transparent;
  text-align: left;
  cursor: pointer;
}
.articulo-lookup-item:last-of-type {
  border-bottom: 0;
}
.articulo-lookup-item:hover,
.articulo-lookup-item.is-active {
  background: #EFF6FF;
}
.articulo-lookup-ref {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.75rem;
  color: #1D4ED8;
  white-space: nowrap;
}
.articulo-lookup-nombre {
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.3;
  color: #0F172A;
  overflow-wrap: anywhere;
}
.articulo-lookup-stock {
  grid-row: 1;
  grid-column: 3;
  padding: 0.0625rem 0.375rem;
  border-radius: 9999px;
  background: #ECFDF5;
  font-size: 0.625rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #047857;
  white-space: nowrap;
}
.articulo-lookup-vacio,
.articulo-lookup-mas {
  padding: 0.5rem 0.75rem;
  font-size: 0.75rem;
  color: #64748B;
}
.articulo-lookup-mas {
  border-top: 1px solid #F1F5F9;
  background: #F8FAFC;
}
.arti-codigo-wrap {
  display: flex;
  align-items: stretch;
  gap: 0.375rem;
  min-width: 0;
}
.arti-codigo-wrap > .linea-codigo {
  flex: 1 1 auto;
  min-width: 0;
  margin-top: 0;
}
.arti-catalogo-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  border: 1px solid #E2E8F0;
  border-radius: 6px;
  background: white;
  color: #475569;
  cursor: pointer;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.arti-catalogo-btn:hover {
  background: #EFF6FF;
  border-color: #BFDBFE;
  color: #1D4ED8;
}
.arti-catalogo-btn:disabled {
  display: none;
}
.arti-catalogo-btn svg {
  width: 1rem;
  height: 1rem;
}
dialog.arti-catalogo {
  height: 88vh;
}
.arti-catalogo-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  scrollbar-width: thin;
  padding: 0.375rem 0 1rem;
}
.arti-catalogo-body .transfer-row-main {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
}
.arti-catalogo-hoja .transfer-row-nombre {
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.3;
}
.arti-catalogo-hoja:hover, .arti-catalogo-hoja.is-active {
  background: #EFF6FF;
}
.arti-catalogo-hoja .articulo-lookup-ref {
  flex: 0 0 auto;
  min-width: 5.5rem;
}
.arti-catalogo-chevron {
  flex: 0 0 auto;
  width: 0.875rem;
  height: 0.875rem;
  color: #94A3B8;
  transition: transform 0.15s;
}
.transfer-row[aria-expanded="true"] .arti-catalogo-chevron {
  transform: rotate(90deg);
}
.arti-catalogo-mas {
  padding: 0.5rem 1rem;
  font-size: 0.75rem;
  color: #64748B;
}
input.doc-sel {
  width: 0.875rem;
  height: 0.875rem;
  border-radius: 4px;
  border: 1px solid #CBD5E1;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.15s ease;
}
tr:hover > td > input.doc-sel,
input.doc-sel:focus-visible,
input.doc-sel:checked {
  opacity: 1;
}
tr.is-doc-selected > td {
  background: #EFF6FF;
}
.exp-sel-bar {
  position: fixed;
  left: 50%;
  bottom: 1.5rem;
  z-index: 40;
  transform: translateX(-50%);
  display: none;
  align-items: center;
  gap: 0.75rem;
  padding: 0.625rem 1rem;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.97);
  backdrop-filter: blur(6px);
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.16);
}
.exp-sel-bar.is-visible {
  display: flex;
}
input.campo-falta,
select.campo-falta,
textarea.campo-falta {
  border-color: var(--color-coral-400, #FF8A7A);
  border-left-width: 3px;
  background-color: var(--color-coral-50, #FFF1EE);
  box-shadow: inset 0 0 0 1px var(--color-coral-200, #FFB3A8);
}
input.campo-falta:focus,
select.campo-falta:focus,
textarea.campo-falta:focus {
  border-color: var(--color-coral-500, #FF6B5A);
  box-shadow: inset 0 0 0 1px var(--color-coral-300, #FFB3A8);
}
input.campo-falta::placeholder,
textarea.campo-falta::placeholder {
  color: var(--color-coral-600, #E84F3D);
  opacity: 0.7;
}
.campo-falta-marca {
  color: var(--color-coral-600, #E84F3D);
  font-weight: 700;
}
.transfer-inline {
  display: flex;
  flex-direction: column;
  height: min(68vh, 40rem);
  min-height: 26rem;
  border: 1px solid #E2E8F0;
  border-radius: 12px;
  background: white;
  overflow: hidden;
}
.transfer-inline-head {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.625rem 0.875rem;
  border-bottom: 1px solid #E2E8F0;
}
.transfer-inline-head .picker-dialog-search {
  flex: 0 1 22rem;
}
.transfer-inline-hint {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 0.6875rem;
  color: #94A3B8;
}
.transfer-body {
  flex: 1 1 auto;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr) minmax(0, 17rem);
}
.transfer-panel {
  display: flex;
  flex-direction: column;
  min-height: 0;
  min-width: 0;
}
.transfer-panel + .transfer-panel {
  border-left: 1px solid #E2E8F0;
}
.transfer-panel-head {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 1rem;
  border-bottom: 1px solid #F1F5F9;
  background: #F8FAFC;
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #64748B;
}
.transfer-panel-count {
  margin-left: auto;
  font-family: var(--font-mono, ui-monospace), monospace;
  letter-spacing: 0;
  color: #0B1F4D;
}
.transfer-panel-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  scrollbar-width: thin;
  padding: 0.375rem 0;
}
.transfer-row {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  width: 100%;
  padding-right: 0.5rem;
  transition: background-color 0.15s;
}
.transfer-row:hover {
  background: #F1F5F9;
}
.transfer-row-main {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.25rem 0.25rem 0.25rem calc(0.75rem + var(--nivel, 0) * 1rem);
  border: 0;
  background: transparent;
  text-align: left;
  font-size: 0.8125rem;
  color: inherit;
  cursor: pointer;
}
.transfer-row-familia {
  font-weight: 700;
  color: #0B1F4D;
  letter-spacing: -0.01em;
}
.transfer-row-producto {
  font-weight: 600;
  color: #1E293B;
}
.transfer-row-gama {
  font-weight: 600;
  color: #334155;
}
.transfer-row-variante {
  color: #475569;
}
.transfer-row-nombre {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.transfer-row-count {
  flex: 0 0 auto;
  font-family: var(--font-mono, ui-monospace), monospace;
  font-size: 0.6875rem;
  color: #94A3B8;
}
.transfer-row-chevron {
  flex: 0 0 auto;
  width: 0.875rem;
  height: 0.875rem;
  color: #94A3B8;
  transition: transform 0.15s;
}
.transfer-row[aria-expanded="true"] .transfer-row-chevron {
  transform: rotate(90deg);
}
.transfer-row-hueco {
  flex: 0 0 auto;
  width: 0.875rem;
}
.transfer-escala-sel {
  flex: 0 0 auto;
  max-width: 9.5rem;
  padding: 0.0625rem 0.25rem;
  border: 0;
  border-radius: 6px;
  background: transparent;
  font-size: 0.6875rem;
  font-weight: 500;
  color: #94A3B8;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.transfer-escala-sel:hover {
  background: #E2E8F0;
  color: #334155;
}
.transfer-escala-sel.is-propia {
  color: #1D4ED8;
  font-weight: 700;
  background: #EFF6FF;
}
.transfer-escala-na {
  flex: 0 0 auto;
  font-size: 0.6875rem;
  color: #CBD5E1;
  font-style: italic;
}
.transfer-tope {
  flex: 0 0 auto;
  width: 4.5rem;
  padding: 0.0625rem 0.25rem;
  border: 0;
  border-radius: 6px;
  background: transparent;
  font-family: var(--font-mono, ui-monospace), monospace;
  font-size: 0.6875rem;
  font-weight: 500;
  text-align: right;
  color: #94A3B8;
  transition: background 0.15s, color 0.15s;
}
.transfer-tope::placeholder {
  color: #CBD5E1;
  font-style: italic;
}
.transfer-tope:hover, .transfer-tope:focus {
  background: #E2E8F0;
  color: #334155;
  outline: 0;
}
.transfer-tope.is-propia {
  color: #1D4ED8;
  font-weight: 700;
  background: #EFF6FF;
}
.transfer-tope::-webkit-outer-spin-button,
.transfer-tope::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.transfer-tope {
  -moz-appearance: textfield;
  appearance: textfield;
}
.transfer-move {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #64748B;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.transfer-move:hover, .transfer-move:focus-visible {
  background: #DBEAFE;
  color: #2563EB;
}
.transfer-check {
  flex: 0 0 auto;
  width: 0.875rem;
  height: 0.875rem;
  margin: 0;
  accent-color: #1D4ED8;
  cursor: pointer;
}
.transfer-row > .transfer-check {
  margin-left: calc(0.75rem + var(--nivel, 0) * 1rem);
}
.transfer-row > .transfer-check + .transfer-row-main {
  padding-left: 0.25rem;
}
.transfer-bulk {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.1875rem 0.5rem;
  border: 0;
  border-radius: 6px;
  background: #1D4ED8;
  color: white;
  font-size: 0.6875rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  cursor: pointer;
  transition: background 0.15s, opacity 0.15s;
}
.transfer-bulk:hover {
  background: #1E40AF;
}
.transfer-bulk:disabled {
  opacity: 0.35;
  cursor: default;
  background: #64748B;
}
.transfer-vacio {
  padding: 2.5rem 1rem;
  text-align: center;
  font-size: 0.8125rem;
  color: #94A3B8;
}
.transfer-aside {
  background: #F8FAFC;
}
.transfer-aside .transfer-panel-body {
  padding: 0.75rem 0.875rem;
}
.transfer-aside-link {
  margin-left: auto;
  font-size: 0.6875rem;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  color: #2563EB;
}
.transfer-aside-link:hover {
  text-decoration: underline;
}
.transfer-aside-block {
  padding-bottom: 0.75rem;
  margin-bottom: 0.5rem;
  border-bottom: 1px solid #E2E8F0;
}
.transfer-aside-block .label {
  font-size: 0.6875rem;
}
.transfer-aside-rotulo {
  font-size: 0.625rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #94A3B8;
  margin-bottom: 0.375rem;
}
.transfer-aside-nota {
  margin-top: 0.375rem;
  font-size: 0.6875rem;
  line-height: 1.35;
  color: #94A3B8;
}
.transfer-escala {
  padding: 0.25rem 0;
}
.transfer-escala-sum {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.125rem 0;
}
.transfer-escala-nombre {
  font-size: 0.75rem;
  font-weight: 700;
  color: #0B1F4D;
}
.transfer-escala-tag {
  font-size: 0.5625rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #B08A2E;
  background: #FBF3DE;
  border-radius: 4px;
  padding: 0.0625rem 0.25rem;
}
.transfer-escala-tramos {
  margin: 0.25rem 0 0 1.25rem;
}
.transfer-escala-tramo {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.0625rem 0;
  font-size: 0.6875rem;
  color: #64748B;
}
.transfer-escala-tramo span:last-child {
  font-family: var(--font-mono, ui-monospace), monospace;
  color: #0B1F4D;
  font-weight: 600;
}
.transfer-escala-vacia {
  margin-left: 1.25rem;
  font-size: 0.6875rem;
  color: #E84F3D;
}
.transfer-huerfana {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.125rem 0;
}
.transfer-huerfana-nombre {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.6875rem;
  color: #475569;
}
.transfer-huerfana-escala {
  flex: 0 0 auto;
  font-size: 0.625rem;
  font-weight: 700;
  color: #1D4ED8;
}
.transfer-foot {
  flex: 0 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 0.875rem;
  border-top: 1px solid #E2E8F0;
  background: white;
}
.transfer-foot-diff {
  font-size: 0.8125rem;
  color: #64748B;
}
.transfer-foot-diff strong {
  font-family: var(--font-mono, ui-monospace), monospace;
  color: #0B1F4D;
}
.transfer-foot-spacer {
  flex: 1 1 auto;
}
@media (max-width: 1200px) {
  .transfer-body {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  }
  .transfer-aside {
    grid-column: 1 / -1;
    border-left: 0;
    border-top: 1px solid #E2E8F0;
    max-height: 18rem;
  }
}
@media (max-width: 900px) {
  .transfer-inline {
    height: auto;
  }
  .transfer-body {
    grid-template-columns: 1fr;
  }
  .transfer-panel {
    max-height: 22rem;
  }
  .transfer-panel + .transfer-panel {
    border-left: 0;
    border-top: 1px solid #E2E8F0;
  }
}
.guia {
  color: #334155;
}
.guia-cabecera {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
h2.guia-titulo {
  font-size: 2.25rem;
  line-height: 1.1;
  font-weight: 700;
  letter-spacing: -0.025em;
  color: #0B1F4D;
  margin: 0;
}
.guia-subtitulo {
  font-size: 0.9375rem;
  color: #64748B;
  margin: 0.5rem 0 0;
  max-width: 42rem;
}
.guia-cuerpo {
  display: grid;
  grid-template-columns: 14rem minmax(0, 58rem);
  gap: 3.5rem;
  align-items: start;
  margin-top: 2.5rem;
}
nav.guia-indice {
  position: sticky;
  top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
}
.guia-indice-rotulo {
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #94A3B8;
  padding: 0 0.75rem;
  margin-bottom: 0.5rem;
}
nav.guia-indice a {
  display: flex;
  align-items: baseline;
  gap: 0.5rem;
  padding: 0.375rem 0.75rem;
  border-radius: 8px;
  font-size: 0.8125rem;
  color: #475569;
  text-decoration: none;
  transition: background-color 0.2s, color 0.2s;
}
nav.guia-indice a:hover {
  background: #F1F5F9;
  color: #0B1F4D;
  text-decoration: none;
}
nav.guia-indice a.is-active {
  background: #EFF6FF;
  color: #1D4ED8;
  font-weight: 500;
}
nav.guia-indice a span:first-child {
  font-family: var(--font-mono, ui-monospace), monospace;
  font-size: 0.6875rem;
  color: #94A3B8;
  min-width: 1.25rem;
}
nav.guia-indice a.is-active span:first-child {
  color: #60A5FA;
}
.guia-capitulos {
  display: flex;
  flex-direction: column;
  gap: 5rem;
  min-width: 0;
}
section.guia-cap {
  scroll-margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.guia-cap-cabecera {
  display: flex;
  align-items: flex-start;
  gap: 0.875rem;
}
.guia-cap-num {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2rem;
  width: 2rem;
  border-radius: 8px;
  background: #EFF6FF;
  color: #1D4ED8;
  font-size: 0.875rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  margin-top: 0.125rem;
}
h3.guia-cap-titulo {
  font-size: 1.5rem;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #0B1F4D;
  margin: 0;
}
.guia-cap-lead {
  font-size: 0.9375rem;
  line-height: 1.65;
  color: #475569;
  margin: 0.375rem 0 0;
}
p.guia-p {
  font-size: 0.9375rem;
  line-height: 1.65;
  color: #475569;
  margin: 0;
}
.guia strong {
  color: #0B1F4D;
  font-weight: 600;
}
ol.guia-rail {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  counter-reset: paso;
}
ol.guia-rail > li {
  position: relative;
  padding: 0 0 1.125rem 3rem;
  font-size: 0.9375rem;
  line-height: 1.6;
  color: #475569;
  counter-increment: paso;
}
ol.guia-rail > li::before {
  content: counter(paso);
  position: absolute;
  left: 0;
  top: -0.125rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2rem;
  width: 2rem;
  border-radius: 9999px;
  background: #0B1F4D;
  color: white;
  font-size: 0.8125rem;
  font-weight: 700;
}
ol.guia-rail > li::after {
  content: "";
  position: absolute;
  left: 0.9375rem;
  top: 2rem;
  bottom: 0;
  width: 2px;
  background: #E2E8F0;
}
ol.guia-rail > li:last-child {
  padding-bottom: 0;
}
ol.guia-rail > li:last-child::after {
  display: none;
}
.guia-fichas {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.guia-fichas-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.guia-ficha {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  padding: 1.125rem 1.25rem;
  border-radius: 12px;
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
}
.guia-ficha-icono {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2.25rem;
  width: 2.25rem;
  border-radius: 8px;
  background: white;
  color: #475569;
  margin-bottom: 0.25rem;
  box-shadow: 0 1px 2px rgba(11, 31, 77, 0.06);
}
.guia-ficha-icono svg, .guia-ficha-icono [data-lucide] {
  height: 1.125rem;
  width: 1.125rem;
}
.guia-ficha-titulo {
  display: block;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #0B1F4D;
}
.guia-ficha-texto {
  display: block;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #475569;
}
.guia-ficha-blue {
  background: #EFF6FF;
  border-color: #BFDBFE;
}
.guia-ficha-blue .guia-ficha-icono {
  color: #1D4ED8;
}
.guia-ficha-gold {
  background: #FBF3DE;
  border-color: #F1DFA6;
}
.guia-ficha-gold .guia-ficha-icono {
  color: #B08A2E;
}
.guia-ficha-mint {
  background: #ECFDF5;
  border-color: #A7F3D0;
}
.guia-ficha-mint .guia-ficha-icono {
  color: #047857;
}
.guia-ficha-coral {
  background: #FFF1EF;
  border-color: #FECDC7;
}
.guia-ficha-coral .guia-ficha-icono {
  color: #C2410C;
}
.guia-ficha-navy {
  background: #0B1F4D;
  border-color: #0B1F4D;
  color: #CBD5E1;
}
.guia-ficha-navy .guia-ficha-titulo {
  color: white;
}
.guia-ficha-navy .guia-ficha-texto {
  color: #CBD5E1;
}
.guia-ficha-navy .guia-ficha-icono {
  background: rgba(255, 255, 255, 0.1);
  color: #E5B84B;
  box-shadow: none;
}
.guia-ficha-navy strong {
  color: white;
}
.guia-ficha-ancha {
  grid-column: 1 / -1;
  flex-direction: row;
  align-items: flex-start;
  gap: 1rem;
}
.guia-ficha-ancha .guia-ficha-icono {
  margin: 0;
  flex: 0 0 auto;
}
.guia-flujo {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.375rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.guia-flujo > li {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}
.guia-flujo > li + li::before {
  content: "›";
  color: #CBD5E1;
  font-size: 1.125rem;
  line-height: 1;
  margin-right: 0.375rem;
}
.guia-flujo-nota {
  font-size: 0.75rem;
  color: #64748B;
}
dl.guia-glosario {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.875rem;
  margin: 0;
}
dl.guia-glosario > div {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  padding: 1rem 1.125rem;
  border-radius: 12px;
  background: #F8FAFC;
  border: 1px solid #E2E8F0;
}
dl.guia-glosario dt {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #0B1F4D;
  margin: 0;
}
dl.guia-glosario dt svg, dl.guia-glosario dt [data-lucide] {
  height: 1rem;
  width: 1rem;
  color: #1D4ED8;
}
dl.guia-glosario dd {
  font-size: 0.8125rem;
  line-height: 1.55;
  color: #64748B;
  margin: 0;
}
figure.guia-figura {
  margin: 0.25rem 0 0;
  border-radius: 12px;
  border: 1px solid #E2E8F0;
  background: white;
  overflow: hidden;
  box-shadow: 0 4px 16px -8px rgba(11, 31, 77, 0.12);
}
figure.guia-figura img {
  display: block;
  width: 100%;
  height: auto;
  cursor: zoom-in;
}
figure.guia-figura figcaption {
  padding: 0.5rem 1rem;
  font-size: 0.75rem;
  color: #64748B;
  border-top: 1px solid #F1F5F9;
  background: rgba(248, 250, 252, 0.7);
}
.guia-figuras {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
  align-items: start;
}
.guia-cierre {
  display: flex;
  gap: 1.25rem;
  align-items: flex-start;
  padding: 1.5rem 1.75rem;
  border-radius: 12px;
  background: linear-gradient(135deg, #EFF6FF 0%, #F8FAFC 100%);
  border: 1px solid #BFDBFE;
}
.guia-cierre-icono {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 2.75rem;
  width: 2.75rem;
  border-radius: 10px;
  background: #1D4ED8;
  color: white;
}
.guia-cierre-icono svg, .guia-cierre-icono [data-lucide] {
  height: 1.375rem;
  width: 1.375rem;
}
h3.guia-cierre-titulo {
  font-size: 1.125rem;
  font-weight: 700;
  color: #0B1F4D;
  margin: 0 0 0.375rem;
  letter-spacing: -0.01em;
}
.guia-cierre p {
  font-size: 0.9375rem;
  line-height: 1.65;
  color: #475569;
  margin: 0;
}
dialog.guia-lightbox img {
  cursor: zoom-out;
}
@media (max-width: 1100px) {
  .guia-cuerpo {
    grid-template-columns: minmax(0, 1fr);
    gap: 2rem;
  }
  nav.guia-indice {
    position: static;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.25rem;
  }
  .guia-indice-rotulo {
    flex-basis: 100%;
  }
  dl.guia-glosario {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  h2.guia-titulo {
    font-size: 1.75rem;
  }
  .guia-figuras, .guia-fichas, .guia-fichas-3, dl.guia-glosario {
    grid-template-columns: 1fr;
  }
  .guia-ficha-ancha {
    flex-direction: column;
  }
  .guia-cierre {
    flex-direction: column;
  }
}
@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-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@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-ordinal {
  syntax: "*";
  inherits: false;
}
@property --tw-slashed-zero {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-figure {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-fraction {
  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-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-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@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;
}
@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}
@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-y-reverse: 0;
      --tw-divide-x-reverse: 0;
      --tw-border-style: solid;
      --tw-divide-y-reverse: 0;
      --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-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: 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-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-outline-style: solid;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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QUFBLGlDQUFtQjtFQUFBO0VBQW5CO0lBQUEsK0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxpQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLCtCQUFtQjtFQUFBO0VBQW5CO0lBQUEsK0JBQW1CO0VBQUE7RUFBbkI7SUFBQSwrQkFBbUI7RUFBQTtFQUFuQjtJQUFBLCtCQUFtQjtFQUFBO0VBQW5CO0lBQUEsK0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLGdDQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLGdDQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLGdDQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLGdDQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLGdDQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLGdDQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLGdDQUFtQjtFQUFBO0VBQW5CO0lBQUEsVUFBbUI7RUFBQTtFQUFuQjtJQUFBLFlBQW1CO0VBQUE7RUFBbkI7SUFBQSxZQUFtQjtFQUFBO0VBQW5CO0lBQUEsWUFBbUI7RUFBQTtFQUFuQjtJQUFBLFlBQW1CO0VBQUE7RUFBbkI7SUFBQSxZQUFtQjtFQUFBO0VBQW5CO0lBQUEsWUFBbUI7RUFBQTtFQUFuQjtJQUFBLFVBQW1CO0VBQUE7RUFBbkI7SUFBQSxZQUFtQjtFQUFBO0VBQW5CO0lBQUEsV0FBbUI7RUFBQTtFQUFuQjtJQUFBLFdBQW1CO0VBQUE7RUFBbkI7SUFBQSxZQUFtQjtFQUFBO0VBQW5CO0lBQUEsV0FBbUI7RUFBQTtFQUFuQjtJQUFBLFdBQW1CO0VBQUE7RUFBbkI7SUFBQSxXQUFtQjtFQUFBO0VBQW5CO0lBQUEsV0FBbUI7RUFBQTtFQUFuQjtJQUFBLFdBQW1CO0VBQUE7RUFBbkI7SUFBQSxXQUFtQjtFQUFBO0VBQW5CO0lBQUEsV0FBbUI7RUFBQTtFQUFuQjtJQUFBLFdBQW1CO0VBQUE7RUFBbkI7SUFBQSxZQUFtQjtFQUFBO0VBQW5CO0lBQUEsWUFBbUI7RUFBQTtFQUFuQjtJQUFBLFlBQW1CO0VBQUE7RUFBbkI7SUFBQSxZQUFtQjtFQUFBO0VBQW5CO0lBQUEsWUFBbUI7RUFBQTtFQUFuQjtJQUFBLFlBQW1CO0VBQUE7RUFBbkI7SUFBQSxZQUFtQjtFQUFBO0VBQW5CO0lBQUEsWUFBbUI7RUFBQTtFQUFuQjtJQUFBLFlBQW1CO0VBQUE7RUFBbkI7SUFBQSxZQUFtQjtFQUFBO0VBQW5CO0lBQUEsWUFBbUI7RUFBQTtFQUFuQjtJQUFBLFlBQW1CO0VBQUE7RUFBbkI7SUFBQSxZQUFtQjtFQUFBO0VBQW5CO0lBQUEsWUFBbUI7RUFBQTtFQUFuQjtJQUFBLFlBQW1CO0VBQUE7RUFBbkI7SUFBQSxZQUFtQjtFQUFBO0VBQW5CO0lBQUEsWUFBbUI7RUFBQTtFQUFuQjtJQUFBLFlBQW1CO0VBQUE7RUFBbkI7SUFBQSxZQUFtQjtFQUFBO0VBQW5CO0lBQUEsWUFBbUI7RUFBQTtFQUFuQjtJQUFBLFVBQW1CO0VBQUE7RUFBbkI7SUFBQSx1QkFBbUI7RUFBQTtFQUFuQjtJQUFBLHVCQUFtQjtFQUFBO0VBQW5CO0lBQUEsdUJBQW1CO0VBQUE7RUFBbkI7SUFBQSx1QkFBbUI7RUFBQTtFQUFuQjtJQUFBLHVCQUFtQjtFQUFBO0VBQW5CO0lBQUEsdUJBQW1CO0VBQUE7RUFBbkI7SUFBQSx1QkFBbUI7RUFBQTtFQUFuQjtJQUFBLHVCQUFtQjtFQUFBO0VBQW5CO0lBQUEsdUJBQW1CO0VBQUE7RUFBbkI7SUFBQSx1QkFBbUI7RUFBQTtFQUFuQjtJQUFBLHVCQUFtQjtFQUFBO0VBQW5CO0lBQUEsdUJBQW1CO0VBQUE7RUFBbkI7SUFBQSxxQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLHVCQUFtQjtFQUFBO0VBQW5CO0lBQUEsdUJBQW1CO0VBQUE7RUFBbkI7SUFBQSxRQUFtQjtFQUFBO0VBQW5CO0lBQUEsV0FBbUI7RUFBQTtFQUFuQjtJQUFBLGtCQUFtQjtFQUFBO0VBQW5CO0lBQUEsV0FBbUI7RUFBQTtFQUFuQjtJQUFBLFVBQW1CO0VBQUE7RUFBbkI7SUFBQSwrQkFBbUI7RUFBQTtFQUFuQjtJQUFBLCtCQUFtQjtFQUFBO0VBQW5CO0lBQUEsK0JBQW1CO0VBQUE7RUFBbkI7SUFBQSwrQkFBbUI7RUFBQTtFQUFuQjtJQUFBLCtCQUFtQjtFQUFBO0VBQW5CO0lBQUEsK0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxlQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQkFBbUI7RUFBQTtFQUFuQjtJQUFBLGdCQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxjQUFtQjtFQUFBO0VBQW5CO0lBQUEsZUFBbUI7RUFBQTtFQUFuQjtJQUFBLGVBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQkFBbUI7RUFBQTtFQUFuQjtJQUFBLGdCQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxlQUFtQjtFQUFBO0VBQW5CO0lBQUEsOEJBQW1CO0VBQUE7RUFBbkI7SUFBQSw4QkFBbUI7RUFBQTtFQUFuQjtJQUFBLGVBQW1CO0VBQUE7RUFBbkI7SUFBQSxlQUFtQjtFQUFBO0VBQW5CO0lBQUEsOEJBQW1CO0VBQUE7RUFBbkI7SUFBQSw4QkFBbUI7RUFBQTtFQUFuQjtJQUFBLDhCQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxvQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLGVBQW1CO0VBQUE7RUFBbkI7SUFBQSxpQkFBbUI7RUFBQTtFQUFuQjtJQUFBLGVBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQkFBbUI7RUFBQTtFQUFuQjtJQUFBLGdCQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQkFBbUI7RUFBQTtFQUFuQjtJQUFBLGdCQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQkFBbUI7RUFBQTtFQUFuQjtJQUFBLGdCQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQkFBbUI7RUFBQTtFQUFuQjtJQUFBLGdCQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQkFBbUI7RUFBQTtFQUFuQjtJQUFBLGdCQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQkFBbUI7RUFBQTtFQUFuQjtJQUFBLGdCQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQkFBbUI7RUFBQTtFQUFuQjtJQUFBLGdCQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxnQkFBbUI7RUFBQTtFQUFuQjtJQUFBLGdCQUFtQjtFQUFBO0VBQW5CO0lBQUEsZ0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxpQkFBbUI7RUFBQTtFQUFuQjtJQUFBLGVBQW1CO0VBQUE7RUFBbkI7SUFBQSxPQUFtQjtFQUFBO0VBQW5CO0lBQUEsY0FBbUI7RUFBQTtFQUFuQjtJQUFBLGNBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQkFBbUI7RUFBQTtFQUFuQjtJQUFBLHlCQUFtQjtFQUFBO0VBQW5CO0lBQUEsK0NBQW1CO0lBQW5CLHNEQUFtQjtFQUFBO0VBQW5CO0lBQUEsMENBQW1CO0lBQW5CLHNEQUFtQjtFQUFBO0VBQW5CO0lBQUEsMENBQW1CO0lBQW5CLHNEQUFtQjtFQUFBO0VBQW5CO0lBQUEsK0NBQW1CO0lBQW5CLHNEQUFtQjtFQUFBO0VBQW5CO0lBQUEsYUFBbUI7RUFBQTtFQUFuQjtJQUFBLGNBQW1CO0VBQUE7RUFBbkI7SUFBQSwwR0FBbUI7RUFBQTtFQUFu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QSx5Q0FBbUI7SUFBbkIsc0JBQW1CO0VBQUE7RUFBbkI7SUFBQSx5Q0FBbUI7SUFBbkIsc0JBQW1CO0VBQUE7RUFBbkI7SUFBQSx5Q0FBbUI7SUFBbkIsc0JBQW1CO0VBQUE7RUFBbkI7SUFBQSx5QkFBbUI7SUFBbkIsb0JBQW1CO0VBQUE7RUFBbkI7SUFBQSxvQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG9DQUFtQjtFQUFBO0VBQW5CO0lBQUEsb0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxrQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsb0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxvQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG9DQUFtQjtFQUFBO0VBQW5CO0lBQUEsb0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxvQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG9DQUFtQjtFQUFBO0VBQW5CO0lBQUEsb0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxvQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG9DQUFtQjtFQUFBO0VBQW5CO0lBQUEsc0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxzQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLGtDQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsa0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxrQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG1DQUFtQjtFQUFBO0VBQW5CO0lBQUEsbUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLGtDQUFtQjtFQUFBO0VBQW5CO0lBQUEsa0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxtQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG9DQUFtQjtFQUFBO0VBQW5CO0lBQUEsb0NBQW1CO0VBQUE7RUFBbkI7SUFBQSwwREFBbUI7SUFBbkI7TUFBQSwwRUFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUEsMERBQW1CO0lBQW5CO01BQUEsMEVBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBLG9DQUFtQjtFQUFBO0VBQW5CO0lBQUEsb0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxvQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG9DQUFtQjtFQUFBO0VBQW5CO0lBQUEsb0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxvQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLG9DQUFtQjtFQUFBO0VBQW5CO0lBQUEseUJBQW1CO0VBQUE7RUFBbkI7SUFB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Q0FBbUI7RUFBQTtFQUFuQjtJQUFBLHVDQUFtQjtFQUFBO0VBQW5CO0lBQUEscUNBQW1CO0VBQUE7RUFBbkI7SUFBQSx1Q0FBbUI7RUFBQTtFQUFuQjtJQUFBLHFDQUFtQjtFQUFBO0VBQW5CO0lBQUEscUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxxQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLHFDQUFtQjtFQUFBO0VBQW5CO0lBQUEsaUJBQW1CO0VBQUE7RUFBbkI7SUFBQSx1Q0FBbUI7RUFBQTtFQUFuQjtJQUFBLHVDQUFtQjtFQUFBO0VBQW5CO0lBQUEsdUNBQW1CO0VBQUE7RUFBbkI7SUFBQSx1Q0FBbUI7RUFBQTtFQUFuQjtJQUFBLHVDQUFtQjtFQUFBO0VBQW5CO0lBQUEsdUNBQW1CO0VBQUE7RUFBbkI7SUFBQSx1Q0FBbUI7RUFBQTtFQUFuQjtJQUFBLHdDQUFtQjtFQUFBO0VBQW5CO0lBQUEsd0NBQW1CO0VBQUE7RUFBbkI7SUFBQSx3Q0FBbUI7RUFBQTtFQUFuQjtJQUFBLHdDQUFtQjtFQUFBO0VBQW5CO0lBQUEsMENBQW1CO0VBQUE7RUFBbkI7SUFBQSx3Q0FBbUI7RUFBQTtFQUFuQjtJQUFBLDBDQUFtQjtFQUFBO0VBQW5CO0lBQUEsd0NBQW1CO0VBQUE7RUFBbkI7SUFBQSx3Q0FBbUI7RUFBQTtFQUFuQjtJQUFBLHdDQUFtQjtFQUFBO0VBQW5CO0lBQUEsd0NBQW1CO0VBQUE7RUFBbkI7SUFBQSx5Q0FBbUI7RUFBQTtFQUFuQjtJQUFBLHlDQUFtQjtFQUFBO0VBQW5CO0lBQUEseUNBQW1CO0VBQUE7RUFBbkI7SUFBQSxzQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLHdDQUFtQjtFQUFBO0VBQW5CO0lBQUEsc0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxzQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLHdDQUFtQjtFQUFBO0VBQW5CO0lBQUEsc0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxzQ0FBbUI7RUFBQTtFQUFuQjtJQUFBLHNDQUFtQjtFQUFBO0VBQW5CO0lBQUEsc0NBQW1CO0VBQUE7RUFBbkI7SUFBQSxzQ0FB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QSxtREFBbUI7SUFBbkI7TUFBQSxrRUFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUEsbURBQW1CO0lBQW5CO01BQUEsa0VBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBLDRCQUFtQjtFQUFBO0VBQW5CO0lBQUEsNEJBQW1CO0VBQUE7RUFBbkI7SUFBQSw0QkFBbUI7RUFBQTtFQUFuQjtJQUFBLDRCQUFtQjtFQUFBO0VBQW5CO0lBQUEsNEJBQW1CO0VBQUE7RUFBbkI7SUFBQSw0QkFBbUI7RUFBQTtFQUFuQjtJQUFBLDRCQUFtQjtFQUFBO0VBQW5CO0lBQUEsNEJBQW1CO0VBQUE7RUFBbkI7SUFBQSw0QkFBbUI7RUFBQTtFQUFuQjtJQUFBLDZCQUFtQjtFQUFBO0VBQW5CO0lBQUEsNkJBQW1CO0VBQUE7RUFBbkI7SUFBQSw2QkFBbUI7RUFBQTtFQUFuQjtJQUFBLDZCQUFtQjtFQUFBO0VBQW5CO0lBQUEsNkJBQW1CO0VBQUE7RUFBbkI7SUFBQSw2QkFBbUI7RUFBQTtFQUFuQjtJQUFBLDZCQUFtQjtFQUFBO0VBQW5CO0lBQUEsNkJBQW1CO0VBQUE7RUFBbkI7SUFBQSw2QkFBbUI7RUFBQTtFQUFuQjtJQUFBLCtCQUFtQjtFQUFBO0VBQW5CO0lBQUEsK0JBQW1CO0VBQUE7RUFBbkI7SUFBQSwrQkFBbUI7RUFBQTtFQUFuQjtJQUFBLDJCQUFtQjtFQUFBO0VBQW5CO0lBQUEsNEJBQW1CO0VBQUE7RUFBbkI7SUFBQSw0QkFBbUI7RUFBQTtFQUFuQjtJQUFBLDRCQUFtQjtFQUFBO0VBQW5CO0lBQUEsNEJBQW1CO0VBQUE7RUFBbkI7SUFBQSw0QkFBbUI7RUFBQTtFQUFuQjtJQUFBLDRCQUFtQjtFQUFBO0VBQW5CO0lBQUEsNEJBQW1CO0VBQUE7RUFBbkI7SUFBQSw0QkFBbUI7RUFBQTtFQUFuQjtJQUFBLDRCQUFtQjtFQUFBO0VBQW5CO0lBQUEsMkJBQW1CO0VBQUE7RUFBbkI7SUFBQSw0QkFBbUI7RUFBQTtFQUFuQjtJQUFBLDRCQUFtQjtFQUFBO0VBQW5CO0lBQUEsNEJBQW1CO0VBQUE7RUFBbkI7SUFBQSw0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QUE7TUFBQTtRQUFBLG9DQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSxvQ0FBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsdUNBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLGdGQUFtQjtRQUFuQjtVQUFBLDZFQUFtQjtRQUFBO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLHdDQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSxzQ0FBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsOERBQW1CO1FBQW5CO1VBQUEsNEVBQW1CO1FBQUE7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsOERBQW1CO1FBQW5CO1VBQUEsNEVBQW1CO1FBQUE7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsOERBQW1CO1FBQW5CO1VBQUEsNEVBQW1CO1FBQUE7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsOERBQW1CO1FBQW5CO1VBQUEsNEVBQW1CO1FBQUE7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsOERBQW1CO1FBQW5CO1VBQUEsNEVBQW1CO1FBQUE7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsdUNBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLDhEQUFtQjtRQUFuQjtVQUFBLDZFQUFtQjtRQUFBO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLHVDQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSx1Q0FBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsdUNBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLHdDQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSx5Q0FBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsaUZBQW1CO1FBQW5CO1VBQUEsK0VBQW1CO1FBQUE7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsdUNBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLHVDQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSx1Q0FBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsdUNBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLHVDQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSw4REFBbUI7UUFBbkI7VUFBQSw2RUFBbUI7UUFBQTtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSw4REFBbUI7UUFBbkI7VUFBQSw2RUFBbUI7UUFBQTtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSw4REFBbUI7UUFBbkI7VUFBQSw2RUFBbUI7UUFBQTtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSx3Q0FBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsd0NBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLG9DQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSwyREFBbUI7UUFBbkI7VUFBQSwwRUFBbUI7UUFBQTtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSw2QkFBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsNEJBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLDRCQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSw0QkFBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsNEJBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLDZCQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSw2QkFBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsNEJBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLDRCQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSw0QkFBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsNkJBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLDZCQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSw2QkFBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsK0JBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLDRDQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSxhQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSxnSUFBbUI7UUFBbkIsc0lBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLCtIQUFtQjtRQUFuQixzSUFBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsd0hBQW1CO1FBQW5CLHNJQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSwwREFBbUI7UUFBbkI7VUFBQSx5RUFBbUI7UUFBQTtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQSxzQ0FBbUI7UUFBbkIsa0JBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBLHNDQUFtQjtRQUFuQixrQkFBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUEsb0NBQW1CO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBO1VBQUEsd0NBQW1CO1FBQUE7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLG9DQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLG1DQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLG1DQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLG1DQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLG9DQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHdIQUFtQjtNQUFuQixzSUFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSx3SEFBbUI7TUFBbkIsc0lBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsd0hBQW1CO01BQW5CLHNJQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHVDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHNDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHNDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHNDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDZEQUFtQjtNQUFuQjtRQUFBLDRFQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsdUNBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsd0JBQW1CO01BQW5CLG1CQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLHdIQUFtQjtNQUFuQixzSUFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxzQ0FBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSw2REFBbUI7TUFBbkI7UUFBQSw0RUFBbUI7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDBEQUFtQjtNQUFuQjtRQUFBLHlFQUFtQjtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsMkJBQW1CO01BQW5CLDRHQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBO1FBQUE7VUFBQSxtQ0FBbUI7UUFBQTtNQUFBO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQTtVQUFBLHNDQUFtQjtRQUFBO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBO1VBQUEsNEJBQW1CO1FBQUE7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGVBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsbUJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsWUFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxZQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLFlBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUE7UUFBQTtVQUFBLDZCQUFtQjtRQUFBO01BQUE7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQTtRQUFBO1VBQUEsNkJBQW1CO1FBQUE7TUFBQTtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDRCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLG9DQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLG9CQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGlDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGdDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGdDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLFdBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsV0FBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxPQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLFVBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsZ0RBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsZ0RBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsZ0RBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsZ0RBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsZ0RBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsZ0RBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsaURBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsZ0NBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEseUNBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsbUJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsbUJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEscUJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsdUJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsOEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNkJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNkJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsc0JBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsaUNBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsd0NBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsd0NBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsMEJBQW1CO01BQW5CLDREQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGdCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDZCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDRCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDRCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDRCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDRCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDRCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDRCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDRCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDRCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDRCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDhCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDhCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDhCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGNBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsYUFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxhQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGdDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLE9BQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsVUFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxnREFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxnREFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxnREFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxnREFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxnREFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxnREFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxpREFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSwrQkFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSwwQ0FBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxtQkFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSx5QkFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSw2QkFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSw2QkFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSw2QkFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSx5Q0FBbUI7TUFBbkIsc0JBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsb0NBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsaUNBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsc0NBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsaUJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsZ0JBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNkJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNkJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsNEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsOEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsOEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsOEJBQW1CO0lBQUE7RUFBQTtFQUFuQjtJQUFBO01BQUEsZUFBbUI7SUFBQTtFQUFBO0VBQW5CO0lBQUE7TUFBQSxhQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLDJCQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGdEQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGdEQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGdEQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGdEQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGdEQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGdEQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGlEQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGlEQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGlDQUFtQjtJQUFBO0VBQUE7RUFBbkI7SUFBQTtNQUFBLGlDQUFt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ZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLGdCQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7RUFBbkIsZ0JBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtFQUFuQixvQkFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLGdCQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLGlCQUFtQjtFQUFuQixlQUFtQjtFQUFuQixvQkFBbUI7QUFBQTtBQUFuQjtFQUFBLGlCQUFtQjtFQUFuQixlQUFtQjtFQUFuQixvQkFBbUI7QUFBQTtBQUFuQjtFQUFBLGlCQUFtQjtFQUFuQixlQUFtQjtFQUFuQixvQkFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsNkJBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLGlCQUFtQjtBQUFBO0FBQW5CO0VBQUEsNkJBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLGtCQUFtQjtBQUFBO0FBQW5CO0VBQUEsNkJBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLG1CQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtFQUFuQix3QkFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxzQkFBbUI7RUFBbkIsZUFBbUI7RUFBbkIsbUJBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtFQUFuQix3QkFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxzQkFBbUI7RUFBbkIsZUFBbUI7RUFBbkIsbUJBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7RUFBbkIsd0JBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7RUFBbkIsd0JBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsa0JBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLGtCQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7RUFBbkIsbUJBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtFQUFuQix3QkFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsc0JBQW1CO0VBQW5CLGVBQW1CO0VBQW5CLG1CQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtBQUFBO0FBQW5CO0VBQUEsV0FBbUI7RUFBbkIsZUFBbUI7QUFBQTtBQUFuQjtFQUFBLFdBQW1CO0VBQW5CLGVBQW1CO0FBQUE7QUFBbkI7RUFBQSxXQUFtQjtFQUFuQixlQUFtQjtFQUFuQixvQkFBbUI7QUFBQTtBQzdrQmdFO0VBQUEsV0FBZTtFQUFmLGVBQWU7RUFBZixnQkFBZTtBQUFBO0FBQWY7RUFBQSxXQUFlO0VBQWYsZUFBZTtFQUFmLGdCQUFlO0FBQUE7QUFBZjtFQUFBLFdBQWU7RUFBZixlQUFlO0VBQWYsZ0JBQWU7QUFBQTtBRGtHaEc7RUFDRTtJQUNFLHlCQUF5QjtFQUR4QjtBQURXO0FBMmVsQjtFQUFBO0lBQUE7TUFBQSxtQkFBbUI7TUFBbkIsbUJBQW1CO01BQW5CLG1CQUFtQjtNQUFuQixzQkFBbUI7TUFBbkIsc0JBQW1CO01BQW5CLHNCQUFtQjtNQUFuQixvQkFBbUI7TUFBbkIsb0JBQW1CO01BQW5CLHVCQUFtQjtNQUFuQix3QkFBbUI7TUFBbkIsd0JBQW1CO01BQW5CLHdCQUFtQjtNQUFuQiwrQkFBbUI7TUFBbkIseUJBQW1CO01BQW5CLHdCQUFtQjtNQUFuQix1QkFBbUI7TUFBbkIsNEJBQW1CO01BQW5CLGdDQUFtQjtNQUFuQiwrQkFBbUI7TUFBbkIsK0JBQW1CO01BQW5CLCtCQUFtQjtNQUFuQixxQkFBbUI7TUFBbkIseUJBQW1CO01BQW5CLHNCQUFtQjtNQUFuQixxQkFBbUI7TUFBbkIsMEJBQW1CO01BQW5CLDRCQUFtQjtNQUFuQiw2QkFBbUI7TUFBbkIsOEJBQW1CO01BQW5CLHNCQUFtQjtNQUFuQiwwQkFBbUI7TUFBbkIsdUJBQW1CO01BQW5CLDRCQUFtQjtNQUFuQixnQ0FBbUI7TUFBbkIsNkJBQW1CO01BQW5CLHdCQUFtQjtNQUFuQiwyQkFBbUI7TUFBbkIsOEJBQW1CO01BQW5CLGlDQUFtQjtNQUFuQix3QkFBbUI7TUFBbkIsMkJBQW1CO01BQW5CLDRCQUFtQjtNQUFuQixrQ0FBbUI7TUFBbkIsa0JBQW1CO01BQW5CLHdCQUFtQjtNQUFuQixzQkFBbUI7TUFBbkIsdUJBQW1CO01BQW5CLHdCQUFtQjtNQUFuQixvQkFBbUI7TUFBbkIscUJBQW1CO01BQW5CLHNCQUFtQjtNQUFuQixtQkFBbUI7TUFBbkIseUJBQW1CO01BQW5CLCtCQUFtQjtNQUFuQiw0QkFBbUI7TUFBbkIsOEJBQW1CO01BQW5CLDJCQUFtQjtNQUFuQixpQ0FBbUI7TUFBbkIsK0JBQW1CO01BQW5CLGdDQUFtQjtNQUFuQixpQ0FBbUI7TUFBbkIsNkJBQW1CO01BQW5CLDhCQUFtQjtNQUFuQiwrQkFBbUI7TUFBbkIsNEJBQW1CO01BQW5CLHNCQUFtQjtNQUFuQix5QkFBbUI7TUM3a0JnRSxlQUFlO01BQWYsZUFBZTtNQUFmLGVBQWU7SUQ2a0IvRTtFQUFBO0FBQUEiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vPG5vIHNvdXJjZT4iLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3RhaWx3aW5kY3NzL2luZGV4LmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL2Rlc2lnbi1zeXN0ZW0uY3NzIl0sInNvdXJjZXNDb250ZW50IjpbbnVsbCwiQGxheWVyIHRoZW1lLCBiYXNlLCBjb21wb25lbnRzLCB1dGlsaXRpZXM7XG5cbkBsYXllciB0aGVtZSB7XG4gIEB0aGVtZSBkZWZhdWx0IHtcbiAgICAtLWZvbnQtc2FuczpcbiAgICAgIHVpLXNhbnMtc2VyaWYsIHN5c3RlbS11aSwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLFxuICAgICAgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgICAtLWZvbnQtc2VyaWY6IHVpLXNlcmlmLCBHZW9yZ2lhLCBDYW1icmlhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWY7XG4gICAgLS1mb250LW1vbm86XG4gICAgICB1aS1tb25vc3BhY2UsIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIixcbiAgICAgIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlO1xuXG4gICAgLS1jb2xvci1yZWQtNTA6IG9rbGNoKDk3LjElIDAuMDEzIDE3LjM4KTtcbiAgICAtLWNvbG9yLXJlZC0xMDA6IG9rbGNoKDkzLjYlIDAuMDMyIDE3LjcxNyk7XG4gICAgLS1jb2xvci1yZWQtMjAwOiBva2xjaCg4OC41JSAwLjA2MiAxOC4zMzQpO1xuICAgIC0tY29sb3ItcmVkLTMwMDogb2tsY2goODAuOCUgMC4xMTQgMTkuNTcxKTtcbiAgICAtLWNvbG9yLXJlZC00MDA6IG9rbGNoKDcwLjQlIDAuMTkxIDIyLjIxNik7XG4gICAgLS1jb2xvci1yZWQtNTAwOiBva2xjaCg2My43JSAwLjIzNyAyNS4zMzEpO1xuICAgIC0tY29sb3ItcmVkLTYwMDogb2tsY2goNTcuNyUgMC4yNDUgMjcuMzI1KTtcbiAgICAtLWNvbG9yLXJlZC03MDA6IG9rbGNoKDUwLjUlIDAuMjEzIDI3LjUxOCk7XG4gICAgLS1jb2xvci1yZWQtODAwOiBva2xjaCg0NC40JSAwLjE3NyAyNi44OTkpO1xuICAgIC0tY29sb3ItcmVkLTkwMDogb2tsY2goMzkuNiUgMC4xNDEgMjUuNzIzKTtcbiAgICAtLWNvbG9yLXJlZC05NTA6IG9rbGNoKDI1LjglIDAuMDkyIDI2LjA0Mik7XG5cbiAgICAtLWNvbG9yLW9yYW5nZS01MDogb2tsY2goOTglIDAuMDE2IDczLjY4NCk7XG4gICAgLS1jb2xvci1vcmFuZ2UtMTAwOiBva2xjaCg5NS40JSAwLjAzOCA3NS4xNjQpO1xuICAgIC0tY29sb3Itb3JhbmdlLTIwMDogb2tsY2goOTAuMSUgMC4wNzYgNzAuNjk3KTtcbiAgICAtLWNvbG9yLW9yYW5nZS0zMDA6IG9rbGNoKDgzLjclIDAuMTI4IDY2LjI5KTtcbiAgICAtLWNvbG9yLW9yYW5nZS00MDA6IG9rbGNoKDc1JSAwLjE4MyA1NS45MzQpO1xuICAgIC0tY29sb3Itb3JhbmdlLTUwMDogb2tsY2goNzAuNSUgMC4yMTMgNDcuNjA0KTtcbiAgICAtLWNvbG9yLW9yYW5nZS02MDA6IG9rbGNoKDY0LjYlIDAuMjIyIDQxLjExNik7XG4gICAgLS1jb2xvci1vcmFuZ2UtNzAwOiBva2xjaCg1NS4zJSAwLjE5NSAzOC40MDIpO1xuICAgIC0tY29sb3Itb3JhbmdlLTgwMDogb2tsY2goNDclIDAuMTU3IDM3LjMwNCk7XG4gICAgLS1jb2xvci1vcmFuZ2UtOTAwOiBva2xjaCg0MC44JSAwLjEyMyAzOC4xNzIpO1xuICAgIC0tY29sb3Itb3JhbmdlLTk1MDogb2tsY2goMjYuNiUgMC4wNzkgMzYuMjU5KTtcblxuICAgIC0tY29sb3ItYW1iZXItNTA6IG9rbGNoKDk4LjclIDAuMDIyIDk1LjI3Nyk7XG4gICAgLS1jb2xvci1hbWJlci0xMDA6IG9rbGNoKDk2LjIlIDAuMDU5IDk1LjYxNyk7XG4gICAgLS1jb2xvci1hbWJlci0yMDA6IG9rbGNoKDkyLjQlIDAuMTIgOTUuNzQ2KTtcbiAgICAtLWNvbG9yLWFtYmVyLTMwMDogb2tsY2goODcuOSUgMC4xNjkgOTEuNjA1KTtcbiAgICAtLWNvbG9yLWFtYmVyLTQwMDogb2tsY2goODIuOCUgMC4xODkgODQuNDI5KTtcbiAgICAtLWNvbG9yLWFtYmVyLTUwMDogb2tsY2goNzYuOSUgMC4xODggNzAuMDgpO1xuICAgIC0tY29sb3ItYW1iZXItNjAwOiBva2xjaCg2Ni42JSAwLjE3OSA1OC4zMTgpO1xuICAgIC0tY29sb3ItYW1iZXItNzAwOiBva2xjaCg1NS41JSAwLjE2MyA0OC45OTgpO1xuICAgIC0tY29sb3ItYW1iZXItODAwOiBva2xjaCg0Ny4zJSAwLjEzNyA0Ni4yMDEpO1xuICAgIC0tY29sb3ItYW1iZXItOTAwOiBva2xjaCg0MS40JSAwLjExMiA0NS45MDQpO1xuICAgIC0tY29sb3ItYW1iZXItOTUwOiBva2xjaCgyNy45JSAwLjA3NyA0NS42MzUpO1xuXG4gICAgLS1jb2xvci15ZWxsb3ctNTA6IG9rbGNoKDk4LjclIDAuMDI2IDEwMi4yMTIpO1xuICAgIC0tY29sb3IteWVsbG93LTEwMDogb2tsY2goOTcuMyUgMC4wNzEgMTAzLjE5Myk7XG4gICAgLS1jb2xvci15ZWxsb3ctMjAwOiBva2xjaCg5NC41JSAwLjEyOSAxMDEuNTQpO1xuICAgIC0tY29sb3IteWVsbG93LTMwMDogb2tsY2goOTAuNSUgMC4xODIgOTguMTExKTtcbiAgICAtLWNvbG9yLXllbGxvdy00MDA6IG9rbGNoKDg1LjIlIDAuMTk5IDkxLjkzNik7XG4gICAgLS1jb2xvci15ZWxsb3ctNTAwOiBva2xjaCg3OS41JSAwLjE4NCA4Ni4wNDcpO1xuICAgIC0tY29sb3IteWVsbG93LTYwMDogb2tsY2goNjguMSUgMC4xNjIgNzUuODM0KTtcbiAgICAtLWNvbG9yLXllbGxvdy03MDA6IG9rbGNoKDU1LjQlIDAuMTM1IDY2LjQ0Mik7XG4gICAgLS1jb2xvci15ZWxsb3ctODAwOiBva2xjaCg0Ny42JSAwLjExNCA2MS45MDcpO1xuICAgIC0tY29sb3IteWVsbG93LTkwMDogb2tsY2goNDIuMSUgMC4wOTUgNTcuNzA4KTtcbiAgICAtLWNvbG9yLXllbGxvdy05NTA6IG9rbGNoKDI4LjYlIDAuMDY2IDUzLjgxMyk7XG5cbiAgICAtLWNvbG9yLWxpbWUtNTA6IG9rbGNoKDk4LjYlIDAuMDMxIDEyMC43NTcpO1xuICAgIC0tY29sb3ItbGltZS0xMDA6IG9rbGNoKDk2LjclIDAuMDY3IDEyMi4zMjgpO1xuICAgIC0tY29sb3ItbGltZS0yMDA6IG9rbGNoKDkzLjglIDAuMTI3IDEyNC4zMjEpO1xuICAgIC0tY29sb3ItbGltZS0zMDA6IG9rbGNoKDg5LjclIDAuMTk2IDEyNi42NjUpO1xuICAgIC0tY29sb3ItbGltZS00MDA6IG9rbGNoKDg0LjElIDAuMjM4IDEyOC44NSk7XG4gICAgLS1jb2xvci1saW1lLTUwMDogb2tsY2goNzYuOCUgMC4yMzMgMTMwLjg1KTtcbiAgICAtLWNvbG9yLWxpbWUtNjAwOiBva2xjaCg2NC44JSAwLjIgMTMxLjY4NCk7XG4gICAgLS1jb2xvci1saW1lLTcwMDogb2tsY2goNTMuMiUgMC4xNTcgMTMxLjU4OSk7XG4gICAgLS1jb2xvci1saW1lLTgwMDogb2tsY2goNDUuMyUgMC4xMjQgMTMwLjkzMyk7XG4gICAgLS1jb2xvci1saW1lLTkwMDogb2tsY2goNDAuNSUgMC4xMDEgMTMxLjA2Myk7XG4gICAgLS1jb2xvci1saW1lLTk1MDogb2tsY2goMjcuNCUgMC4wNzIgMTMyLjEwOSk7XG5cbiAgICAtLWNvbG9yLWdyZWVuLTUwOiBva2xjaCg5OC4yJSAwLjAxOCAxNTUuODI2KTtcbiAgICAtLWNvbG9yLWdyZWVuLTEwMDogb2tsY2goOTYuMiUgMC4wNDQgMTU2Ljc0Myk7XG4gICAgLS1jb2xvci1ncmVlbi0yMDA6IG9rbGNoKDkyLjUlIDAuMDg0IDE1NS45OTUpO1xuICAgIC0tY29sb3ItZ3JlZW4tMzAwOiBva2xjaCg4Ny4xJSAwLjE1IDE1NC40NDkpO1xuICAgIC0tY29sb3ItZ3JlZW4tNDAwOiBva2xjaCg3OS4yJSAwLjIwOSAxNTEuNzExKTtcbiAgICAtLWNvbG9yLWdyZWVuLTUwMDogb2tsY2goNzIuMyUgMC4yMTkgMTQ5LjU3OSk7XG4gICAgLS1jb2xvci1ncmVlbi02MDA6IG9rbGNoKDYyLjclIDAuMTk0IDE0OS4yMTQpO1xuICAgIC0tY29sb3ItZ3JlZW4tNzAwOiBva2xjaCg1Mi43JSAwLjE1NCAxNTAuMDY5KTtcbiAgICAtLWNvbG9yLWdyZWVuLTgwMDogb2tsY2goNDQuOCUgMC4xMTkgMTUxLjMyOCk7XG4gICAgLS1jb2xvci1ncmVlbi05MDA6IG9rbGNoKDM5LjMlIDAuMDk1IDE1Mi41MzUpO1xuICAgIC0tY29sb3ItZ3JlZW4tOTUwOiBva2xjaCgyNi42JSAwLjA2NSAxNTIuOTM0KTtcblxuICAgIC0tY29sb3ItZW1lcmFsZC01MDogb2tsY2goOTcuOSUgMC4wMjEgMTY2LjExMyk7XG4gICAgLS1jb2xvci1lbWVyYWxkLTEwMDogb2tsY2goOTUlIDAuMDUyIDE2My4wNTEpO1xuICAgIC0tY29sb3ItZW1lcmFsZC0yMDA6IG9rbGNoKDkwLjUlIDAuMDkzIDE2NC4xNSk7XG4gICAgLS1jb2xvci1lbWVyYWxkLTMwMDogb2tsY2goODQuNSUgMC4xNDMgMTY0Ljk3OCk7XG4gICAgLS1jb2xvci1lbWVyYWxkLTQwMDogb2tsY2goNzYuNSUgMC4xNzcgMTYzLjIyMyk7XG4gICAgLS1jb2xvci1lbWVyYWxkLTUwMDogb2tsY2goNjkuNiUgMC4xNyAxNjIuNDgpO1xuICAgIC0tY29sb3ItZW1lcmFsZC02MDA6IG9rbGNoKDU5LjYlIDAuMTQ1IDE2My4yMjUpO1xuICAgIC0tY29sb3ItZW1lcmFsZC03MDA6IG9rbGNoKDUwLjglIDAuMTE4IDE2NS42MTIpO1xuICAgIC0tY29sb3ItZW1lcmFsZC04MDA6IG9rbGNoKDQzLjIlIDAuMDk1IDE2Ni45MTMpO1xuICAgIC0tY29sb3ItZW1lcmFsZC05MDA6IG9rbGNoKDM3LjglIDAuMDc3IDE2OC45NCk7XG4gICAgLS1jb2xvci1lbWVyYWxkLTk1MDogb2tsY2goMjYuMiUgMC4wNTEgMTcyLjU1Mik7XG5cbiAgICAtLWNvbG9yLXRlYWwtNTA6IG9rbGNoKDk4LjQlIDAuMDE0IDE4MC43Mik7XG4gICAgLS1jb2xvci10ZWFsLTEwMDogb2tsY2goOTUuMyUgMC4wNTEgMTgwLjgwMSk7XG4gICAgLS1jb2xvci10ZWFsLTIwMDogb2tsY2goOTElIDAuMDk2IDE4MC40MjYpO1xuICAgIC0tY29sb3ItdGVhbC0zMDA6IG9rbGNoKDg1LjUlIDAuMTM4IDE4MS4wNzEpO1xuICAgIC0tY29sb3ItdGVhbC00MDA6IG9rbGNoKDc3LjclIDAuMTUyIDE4MS45MTIpO1xuICAgIC0tY29sb3ItdGVhbC01MDA6IG9rbGNoKDcwLjQlIDAuMTQgMTgyLjUwMyk7XG4gICAgLS1jb2xvci10ZWFsLTYwMDogb2tsY2goNjAlIDAuMTE4IDE4NC43MDQpO1xuICAgIC0tY29sb3ItdGVhbC03MDA6IG9rbGNoKDUxLjElIDAuMDk2IDE4Ni4zOTEpO1xuICAgIC0tY29sb3ItdGVhbC04MDA6IG9rbGNoKDQzLjclIDAuMDc4IDE4OC4yMTYpO1xuICAgIC0tY29sb3ItdGVhbC05MDA6IG9rbGNoKDM4LjYlIDAuMDYzIDE4OC40MTYpO1xuICAgIC0tY29sb3ItdGVhbC05NTA6IG9rbGNoKDI3LjclIDAuMDQ2IDE5Mi41MjQpO1xuXG4gICAgLS1jb2xvci1jeWFuLTUwOiBva2xjaCg5OC40JSAwLjAxOSAyMDAuODczKTtcbiAgICAtLWNvbG9yLWN5YW4tMTAwOiBva2xjaCg5NS42JSAwLjA0NSAyMDMuMzg4KTtcbiAgICAtLWNvbG9yLWN5YW4tMjAwOiBva2xjaCg5MS43JSAwLjA4IDIwNS4wNDEpO1xuICAgIC0tY29sb3ItY3lhbi0zMDA6IG9rbGNoKDg2LjUlIDAuMTI3IDIwNy4wNzgpO1xuICAgIC0tY29sb3ItY3lhbi00MDA6IG9rbGNoKDc4LjklIDAuMTU0IDIxMS41Myk7XG4gICAgLS1jb2xvci1jeWFuLTUwMDogb2tsY2goNzEuNSUgMC4xNDMgMjE1LjIyMSk7XG4gICAgLS1jb2xvci1jeWFuLTYwMDogb2tsY2goNjAuOSUgMC4xMjYgMjIxLjcyMyk7XG4gICAgLS1jb2xvci1jeWFuLTcwMDogb2tsY2goNTIlIDAuMTA1IDIyMy4xMjgpO1xuICAgIC0tY29sb3ItY3lhbi04MDA6IG9rbGNoKDQ1JSAwLjA4NSAyMjQuMjgzKTtcbiAgICAtLWNvbG9yLWN5YW4tOTAwOiBva2xjaCgzOS44JSAwLjA3IDIyNy4zOTIpO1xuICAgIC0tY29sb3ItY3lhbi05NTA6IG9rbGNoKDMwLjIlIDAuMDU2IDIyOS42OTUpO1xuXG4gICAgLS1jb2xvci1za3ktNTA6IG9rbGNoKDk3LjclIDAuMDEzIDIzNi42Mik7XG4gICAgLS1jb2xvci1za3ktMTAwOiBva2xjaCg5NS4xJSAwLjAyNiAyMzYuODI0KTtcbiAgICAtLWNvbG9yLXNreS0yMDA6IG9rbGNoKDkwLjElIDAuMDU4IDIzMC45MDIpO1xuICAgIC0tY29sb3Itc2t5LTMwMDogb2tsY2goODIuOCUgMC4xMTEgMjMwLjMxOCk7XG4gICAgLS1jb2xvci1za3ktNDAwOiBva2xjaCg3NC42JSAwLjE2IDIzMi42NjEpO1xuICAgIC0tY29sb3Itc2t5LTUwMDogb2tsY2goNjguNSUgMC4xNjkgMjM3LjMyMyk7XG4gICAgLS1jb2xvci1za3ktNjAwOiBva2xjaCg1OC44JSAwLjE1OCAyNDEuOTY2KTtcbiAgICAtLWNvbG9yLXNreS03MDA6IG9rbGNoKDUwJSAwLjEzNCAyNDIuNzQ5KTtcbiAgICAtLWNvbG9yLXNreS04MDA6IG9rbGNoKDQ0LjMlIDAuMTEgMjQwLjc5KTtcbiAgICAtLWNvbG9yLXNreS05MDA6IG9rbGNoKDM5LjElIDAuMDkgMjQwLjg3Nik7XG4gICAgLS1jb2xvci1za3ktOTUwOiBva2xjaCgyOS4zJSAwLjA2NiAyNDMuMTU3KTtcblxuICAgIC0tY29sb3ItYmx1ZS01MDogb2tsY2goOTclIDAuMDE0IDI1NC42MDQpO1xuICAgIC0tY29sb3ItYmx1ZS0xMDA6IG9rbGNoKDkzLjIlIDAuMDMyIDI1NS41ODUpO1xuICAgIC0tY29sb3ItYmx1ZS0yMDA6IG9rbGNoKDg4LjIlIDAuMDU5IDI1NC4xMjgpO1xuICAgIC0tY29sb3ItYmx1ZS0zMDA6IG9rbGNoKDgwLjklIDAuMTA1IDI1MS44MTMpO1xuICAgIC0tY29sb3ItYmx1ZS00MDA6IG9rbGNoKDcwLjclIDAuMTY1IDI1NC42MjQpO1xuICAgIC0tY29sb3ItYmx1ZS01MDA6IG9rbGNoKDYyLjMlIDAuMjE0IDI1OS44MTUpO1xuICAgIC0tY29sb3ItYmx1ZS02MDA6IG9rbGNoKDU0LjYlIDAuMjQ1IDI2Mi44ODEpO1xuICAgIC0tY29sb3ItYmx1ZS03MDA6IG9rbGNoKDQ4LjglIDAuMjQzIDI2NC4zNzYpO1xuICAgIC0tY29sb3ItYmx1ZS04MDA6IG9rbGNoKDQyLjQlIDAuMTk5IDI2NS42MzgpO1xuICAgIC0tY29sb3ItYmx1ZS05MDA6IG9rbGNoKDM3LjklIDAuMTQ2IDI2NS41MjIpO1xuICAgIC0tY29sb3ItYmx1ZS05NTA6IG9rbGNoKDI4LjIlIDAuMDkxIDI2Ny45MzUpO1xuXG4gICAgLS1jb2xvci1pbmRpZ28tNTA6IG9rbGNoKDk2LjIlIDAuMDE4IDI3Mi4zMTQpO1xuICAgIC0tY29sb3ItaW5kaWdvLTEwMDogb2tsY2goOTMlIDAuMDM0IDI3Mi43ODgpO1xuICAgIC0tY29sb3ItaW5kaWdvLTIwMDogb2tsY2goODclIDAuMDY1IDI3NC4wMzkpO1xuICAgIC0tY29sb3ItaW5kaWdvLTMwMDogb2tsY2goNzguNSUgMC4xMTUgMjc0LjcxMyk7XG4gICAgLS1jb2xvci1pbmRpZ28tNDAwOiBva2xjaCg2Ny4zJSAwLjE4MiAyNzYuOTM1KTtcbiAgICAtLWNvbG9yLWluZGlnby01MDA6IG9rbGNoKDU4LjUlIDAuMjMzIDI3Ny4xMTcpO1xuICAgIC0tY29sb3ItaW5kaWdvLTYwMDogb2tsY2goNTEuMSUgMC4yNjIgMjc2Ljk2Nik7XG4gICAgLS1jb2xvci1pbmRpZ28tNzAwOiBva2xjaCg0NS43JSAwLjI0IDI3Ny4wMjMpO1xuICAgIC0tY29sb3ItaW5kaWdvLTgwMDogb2tsY2goMzkuOCUgMC4xOTUgMjc3LjM2Nik7XG4gICAgLS1jb2xvci1pbmRpZ28tOTAwOiBva2xjaCgzNS45JSAwLjE0NCAyNzguNjk3KTtcbiAgICAtLWNvbG9yLWluZGlnby05NTA6IG9rbGNoKDI1LjclIDAuMDkgMjgxLjI4OCk7XG5cbiAgICAtLWNvbG9yLXZpb2xldC01MDogb2tsY2goOTYuOSUgMC4wMTYgMjkzLjc1Nik7XG4gICAgLS1jb2xvci12aW9sZXQtMTAwOiBva2xjaCg5NC4zJSAwLjAyOSAyOTQuNTg4KTtcbiAgICAtLWNvbG9yLXZpb2xldC0yMDA6IG9rbGNoKDg5LjQlIDAuMDU3IDI5My4yODMpO1xuICAgIC0tY29sb3ItdmlvbGV0LTMwMDogb2tsY2goODEuMSUgMC4xMTEgMjkzLjU3MSk7XG4gICAgLS1jb2xvci12aW9sZXQtNDAwOiBva2xjaCg3MC4yJSAwLjE4MyAyOTMuNTQxKTtcbiAgICAtLWNvbG9yLXZpb2xldC01MDA6IG9rbGNoKDYwLjYlIDAuMjUgMjkyLjcxNyk7XG4gICAgLS1jb2xvci12aW9sZXQtNjAwOiBva2xjaCg1NC4xJSAwLjI4MSAyOTMuMDA5KTtcbiAgICAtLWNvbG9yLXZpb2xldC03MDA6IG9rbGNoKDQ5LjElIDAuMjcgMjkyLjU4MSk7XG4gICAgLS1jb2xvci12aW9sZXQtODAwOiBva2xjaCg0My4yJSAwLjIzMiAyOTIuNzU5KTtcbiAgICAtLWNvbG9yLXZpb2xldC05MDA6IG9rbGNoKDM4JSAwLjE4OSAyOTMuNzQ1KTtcbiAgICAtLWNvbG9yLXZpb2xldC05NTA6IG9rbGNoKDI4LjMlIDAuMTQxIDI5MS4wODkpO1xuXG4gICAgLS1jb2xvci1wdXJwbGUtNTA6IG9rbGNoKDk3LjclIDAuMDE0IDMwOC4yOTkpO1xuICAgIC0tY29sb3ItcHVycGxlLTEwMDogb2tsY2goOTQuNiUgMC4wMzMgMzA3LjE3NCk7XG4gICAgLS1jb2xvci1wdXJwbGUtMjAwOiBva2xjaCg5MC4yJSAwLjA2MyAzMDYuNzAzKTtcbiAgICAtLWNvbG9yLXB1cnBsZS0zMDA6IG9rbGNoKDgyLjclIDAuMTE5IDMwNi4zODMpO1xuICAgIC0tY29sb3ItcHVycGxlLTQwMDogb2tsY2goNzEuNCUgMC4yMDMgMzA1LjUwNCk7XG4gICAgLS1jb2xvci1wdXJwbGUtNTAwOiBva2xjaCg2Mi43JSAwLjI2NSAzMDMuOSk7XG4gICAgLS1jb2xvci1wdXJwbGUtNjAwOiBva2xjaCg1NS44JSAwLjI4OCAzMDIuMzIxKTtcbiAgICAtLWNvbG9yLXB1cnBsZS03MDA6IG9rbGNoKDQ5LjYlIDAuMjY1IDMwMS45MjQpO1xuICAgIC0tY29sb3ItcHVycGxlLTgwMDogb2tsY2goNDMuOCUgMC4yMTggMzAzLjcyNCk7XG4gICAgLS1jb2xvci1wdXJwbGUtOTAwOiBva2xjaCgzOC4xJSAwLjE3NiAzMDQuOTg3KTtcbiAgICAtLWNvbG9yLXB1cnBsZS05NTA6IG9rbGNoKDI5LjElIDAuMTQ5IDMwMi43MTcpO1xuXG4gICAgLS1jb2xvci1mdWNoc2lhLTUwOiBva2xjaCg5Ny43JSAwLjAxNyAzMjAuMDU4KTtcbiAgICAtLWNvbG9yLWZ1Y2hzaWEtMTAwOiBva2xjaCg5NS4yJSAwLjAzNyAzMTguODUyKTtcbiAgICAtLWNvbG9yLWZ1Y2hzaWEtMjAwOiBva2xjaCg5MC4zJSAwLjA3NiAzMTkuNjIpO1xuICAgIC0tY29sb3ItZnVjaHNpYS0zMDA6IG9rbGNoKDgzLjMlIDAuMTQ1IDMyMS40MzQpO1xuICAgIC0tY29sb3ItZnVjaHNpYS00MDA6IG9rbGNoKDc0JSAwLjIzOCAzMjIuMTYpO1xuICAgIC0tY29sb3ItZnVjaHNpYS01MDA6IG9rbGNoKDY2LjclIDAuMjk1IDMyMi4xNSk7XG4gICAgLS1jb2xvci1mdWNoc2lhLTYwMDogb2tsY2goNTkuMSUgMC4yOTMgMzIyLjg5Nik7XG4gICAgLS1jb2xvci1mdWNoc2lhLTcwMDogb2tsY2goNTEuOCUgMC4yNTMgMzIzLjk0OSk7XG4gICAgLS1jb2xvci1mdWNoc2lhLTgwMDogb2tsY2goNDUuMiUgMC4yMTEgMzI0LjU5MSk7XG4gICAgLS1jb2xvci1mdWNoc2lhLTkwMDogb2tsY2goNDAuMSUgMC4xNyAzMjUuNjEyKTtcbiAgICAtLWNvbG9yLWZ1Y2hzaWEtOTUwOiBva2xjaCgyOS4zJSAwLjEzNiAzMjUuNjYxKTtcblxuICAgIC0tY29sb3ItcGluay01MDogb2tsY2goOTcuMSUgMC4wMTQgMzQzLjE5OCk7XG4gICAgLS1jb2xvci1waW5rLTEwMDogb2tsY2goOTQuOCUgMC4wMjggMzQyLjI1OCk7XG4gICAgLS1jb2xvci1waW5rLTIwMDogb2tsY2goODkuOSUgMC4wNjEgMzQzLjIzMSk7XG4gICAgLS1jb2xvci1waW5rLTMwMDogb2tsY2goODIuMyUgMC4xMiAzNDYuMDE4KTtcbiAgICAtLWNvbG9yLXBpbmstNDAwOiBva2xjaCg3MS44JSAwLjIwMiAzNDkuNzYxKTtcbiAgICAtLWNvbG9yLXBpbmstNTAwOiBva2xjaCg2NS42JSAwLjI0MSAzNTQuMzA4KTtcbiAgICAtLWNvbG9yLXBpbmstNjAwOiBva2xjaCg1OS4yJSAwLjI0OSAwLjU4NCk7XG4gICAgLS1jb2xvci1waW5rLTcwMDogb2tsY2goNTIuNSUgMC4yMjMgMy45NTgpO1xuICAgIC0tY29sb3ItcGluay04MDA6IG9rbGNoKDQ1LjklIDAuMTg3IDMuODE1KTtcbiAgICAtLWNvbG9yLXBpbmstOTAwOiBva2xjaCg0MC44JSAwLjE1MyAyLjQzMik7XG4gICAgLS1jb2xvci1waW5rLTk1MDogb2tsY2goMjguNCUgMC4xMDkgMy45MDcpO1xuXG4gICAgLS1jb2xvci1yb3NlLTUwOiBva2xjaCg5Ni45JSAwLjAxNSAxMi40MjIpO1xuICAgIC0tY29sb3Itcm9zZS0xMDA6IG9rbGNoKDk0LjElIDAuMDMgMTIuNTgpO1xuICAgIC0tY29sb3Itcm9zZS0yMDA6IG9rbGNoKDg5LjIlIDAuMDU4IDEwLjAwMSk7XG4gICAgLS1jb2xvci1yb3NlLTMwMDogb2tsY2goODElIDAuMTE3IDExLjYzOCk7XG4gICAgLS1jb2xvci1yb3NlLTQwMDogb2tsY2goNzEuMiUgMC4xOTQgMTMuNDI4KTtcbiAgICAtLWNvbG9yLXJvc2UtNTAwOiBva2xjaCg2NC41JSAwLjI0NiAxNi40MzkpO1xuICAgIC0tY29sb3Itcm9zZS02MDA6IG9rbGNoKDU4LjYlIDAuMjUzIDE3LjU4NSk7XG4gICAgLS1jb2xvci1yb3NlLTcwMDogb2tsY2goNTEuNCUgMC4yMjIgMTYuOTM1KTtcbiAgICAtLWNvbG9yLXJvc2UtODAwOiBva2xjaCg0NS41JSAwLjE4OCAxMy42OTcpO1xuICAgIC0tY29sb3Itcm9zZS05MDA6IG9rbGNoKDQxJSAwLjE1OSAxMC4yNzIpO1xuICAgIC0tY29sb3Itcm9zZS05NTA6IG9rbGNoKDI3LjElIDAuMTA1IDEyLjA5NCk7XG5cbiAgICAtLWNvbG9yLXNsYXRlLTUwOiBva2xjaCg5OC40JSAwLjAwMyAyNDcuODU4KTtcbiAgICAtLWNvbG9yLXNsYXRlLTEwMDogb2tsY2goOTYuOCUgMC4wMDcgMjQ3Ljg5Nik7XG4gICAgLS1jb2xvci1zbGF0ZS0yMDA6IG9rbGNoKDkyLjklIDAuMDEzIDI1NS41MDgpO1xuICAgIC0tY29sb3Itc2xhdGUtMzAwOiBva2xjaCg4Ni45JSAwLjAyMiAyNTIuODk0KTtcbiAgICAtLWNvbG9yLXNsYXRlLTQwMDogb2tsY2goNzAuNCUgMC4wNCAyNTYuNzg4KTtcbiAgICAtLWNvbG9yLXNsYXRlLTUwMDogb2tsY2goNTUuNCUgMC4wNDYgMjU3LjQxNyk7XG4gICAgLS1jb2xvci1zbGF0ZS02MDA6IG9rbGNoKDQ0LjYlIDAuMDQzIDI1Ny4yODEpO1xuICAgIC0tY29sb3Itc2xhdGUtNzAwOiBva2xjaCgzNy4yJSAwLjA0NCAyNTcuMjg3KTtcbiAgICAtLWNvbG9yLXNsYXRlLTgwMDogb2tsY2goMjcuOSUgMC4wNDEgMjYwLjAzMSk7XG4gICAgLS1jb2xvci1zbGF0ZS05MDA6IG9rbGNoKDIwLjglIDAuMDQyIDI2NS43NTUpO1xuICAgIC0tY29sb3Itc2xhdGUtOTUwOiBva2xjaCgxMi45JSAwLjA0MiAyNjQuNjk1KTtcblxuICAgIC0tY29sb3ItZ3JheS01MDogb2tsY2goOTguNSUgMC4wMDIgMjQ3LjgzOSk7XG4gICAgLS1jb2xvci1ncmF5LTEwMDogb2tsY2goOTYuNyUgMC4wMDMgMjY0LjU0Mik7XG4gICAgLS1jb2xvci1ncmF5LTIwMDogb2tsY2goOTIuOCUgMC4wMDYgMjY0LjUzMSk7XG4gICAgLS1jb2xvci1ncmF5LTMwMDogb2tsY2goODcuMiUgMC4wMSAyNTguMzM4KTtcbiAgICAtLWNvbG9yLWdyYXktNDAwOiBva2xjaCg3MC43JSAwLjAyMiAyNjEuMzI1KTtcbiAgICAtLWNvbG9yLWdyYXktNTAwOiBva2xjaCg1NS4xJSAwLjAyNyAyNjQuMzY0KTtcbiAgICAtLWNvbG9yLWdyYXktNjAwOiBva2xjaCg0NC42JSAwLjAzIDI1Ni44MDIpO1xuICAgIC0tY29sb3ItZ3JheS03MDA6IG9rbGNoKDM3LjMlIDAuMDM0IDI1OS43MzMpO1xuICAgIC0tY29sb3ItZ3JheS04MDA6IG9rbGNoKDI3LjglIDAuMDMzIDI1Ni44NDgpO1xuICAgIC0tY29sb3ItZ3JheS05MDA6IG9rbGNoKDIxJSAwLjAzNCAyNjQuNjY1KTtcbiAgICAtLWNvbG9yLWdyYXktOTUwOiBva2xjaCgxMyUgMC4wMjggMjYxLjY5Mik7XG5cbiAgICAtLWNvbG9yLXppbmMtNTA6IG9rbGNoKDk4LjUlIDAgMCk7XG4gICAgLS1jb2xvci16aW5jLTEwMDogb2tsY2goOTYuNyUgMC4wMDEgMjg2LjM3NSk7XG4gICAgLS1jb2xvci16aW5jLTIwMDogb2tsY2goOTIlIDAuMDA0IDI4Ni4zMik7XG4gICAgLS1jb2xvci16aW5jLTMwMDogb2tsY2goODcuMSUgMC4wMDYgMjg2LjI4Nik7XG4gICAgLS1jb2xvci16aW5jLTQwMDogb2tsY2goNzAuNSUgMC4wMTUgMjg2LjA2Nyk7XG4gICAgLS1jb2xvci16aW5jLTUwMDogb2tsY2goNTUuMiUgMC4wMTYgMjg1LjkzOCk7XG4gICAgLS1jb2xvci16aW5jLTYwMDogb2tsY2goNDQuMiUgMC4wMTcgMjg1Ljc4Nik7XG4gICAgLS1jb2xvci16aW5jLTcwMDogb2tsY2goMzclIDAuMDEzIDI4NS44MDUpO1xuICAgIC0tY29sb3ItemluYy04MDA6IG9rbGNoKDI3LjQlIDAuMDA2IDI4Ni4wMzMpO1xuICAgIC0tY29sb3ItemluYy05MDA6IG9rbGNoKDIxJSAwLjAwNiAyODUuODg1KTtcbiAgICAtLWNvbG9yLXppbmMtOTUwOiBva2xjaCgxNC4xJSAwLjAwNSAyODUuODIzKTtcblxuICAgIC0tY29sb3ItbmV1dHJhbC01MDogb2tsY2goOTguNSUgMCAwKTtcbiAgICAtLWNvbG9yLW5ldXRyYWwtMTAwOiBva2xjaCg5NyUgMCAwKTtcbiAgICAtLWNvbG9yLW5ldXRyYWwtMjAwOiBva2xjaCg5Mi4yJSAwIDApO1xuICAgIC0tY29sb3ItbmV1dHJhbC0zMDA6IG9rbGNoKDg3JSAwIDApO1xuICAgIC0tY29sb3ItbmV1dHJhbC00MDA6IG9rbGNoKDcwLjglIDAgMCk7XG4gICAgLS1jb2xvci1uZXV0cmFsLTUwMDogb2tsY2goNTUuNiUgMCAwKTtcbiAgICAtLWNvbG9yLW5ldXRyYWwtNjAwOiBva2xjaCg0My45JSAwIDApO1xuICAgIC0tY29sb3ItbmV1dHJhbC03MDA6IG9rbGNoKDM3LjElIDAgMCk7XG4gICAgLS1jb2xvci1uZXV0cmFsLTgwMDogb2tsY2goMjYuOSUgMCAwKTtcbiAgICAtLWNvbG9yLW5ldXRyYWwtOTAwOiBva2xjaCgyMC41JSAwIDApO1xuICAgIC0tY29sb3ItbmV1dHJhbC05NTA6IG9rbGNoKDE0LjUlIDAgMCk7XG5cbiAgICAtLWNvbG9yLXN0b25lLTUwOiBva2xjaCg5OC41JSAwLjAwMSAxMDYuNDIzKTtcbiAgICAtLWNvbG9yLXN0b25lLTEwMDogb2tsY2goOTclIDAuMDAxIDEwNi40MjQpO1xuICAgIC0tY29sb3Itc3RvbmUtMjAwOiBva2xjaCg5Mi4zJSAwLjAwMyA0OC43MTcpO1xuICAgIC0tY29sb3Itc3RvbmUtMzAwOiBva2xjaCg4Ni45JSAwLjAwNSA1Ni4zNjYpO1xuICAgIC0tY29sb3Itc3RvbmUtNDAwOiBva2xjaCg3MC45JSAwLjAxIDU2LjI1OSk7XG4gICAgLS1jb2xvci1zdG9uZS01MDA6IG9rbGNoKDU1LjMlIDAuMDEzIDU4LjA3MSk7XG4gICAgLS1jb2xvci1zdG9uZS02MDA6IG9rbGNoKDQ0LjQlIDAuMDExIDczLjYzOSk7XG4gICAgLS1jb2xvci1zdG9uZS03MDA6IG9rbGNoKDM3LjQlIDAuMDEgNjcuNTU4KTtcbiAgICAtLWNvbG9yLXN0b25lLTgwMDogb2tsY2goMjYuOCUgMC4wMDcgMzQuMjk4KTtcbiAgICAtLWNvbG9yLXN0b25lLTkwMDogb2tsY2goMjEuNiUgMC4wMDYgNTYuMDQzKTtcbiAgICAtLWNvbG9yLXN0b25lLTk1MDogb2tsY2goMTQuNyUgMC4wMDQgNDkuMjUpO1xuXG4gICAgLS1jb2xvci1tYXV2ZS01MDogb2tsY2goOTguNSUgMCAwKTtcbiAgICAtLWNvbG9yLW1hdXZlLTEwMDogb2tsY2goOTYlIDAuMDAzIDMyNS42KTtcbiAgICAtLWNvbG9yLW1hdXZlLTIwMDogb2tsY2goOTIuMiUgMC4wMDUgMzI1LjYyKTtcbiAgICAtLWNvbG9yLW1hdXZlLTMwMDogb2tsY2goODYuNSUgMC4wMTIgMzI1LjY4KTtcbiAgICAtLWNvbG9yLW1hdXZlLTQwMDogb2tsY2goNzEuMSUgMC4wMTkgMzIzLjAyKTtcbiAgICAtLWNvbG9yLW1hdXZlLTUwMDogb2tsY2goNTQuMiUgMC4wMzQgMzIyLjUpO1xuICAgIC0tY29sb3ItbWF1dmUtNjAwOiBva2xjaCg0My41JSAwLjAyOSAzMjEuNzgpO1xuICAgIC0tY29sb3ItbWF1dmUtNzAwOiBva2xjaCgzNi40JSAwLjAyOSAzMjMuODkpO1xuICAgIC0tY29sb3ItbWF1dmUtODAwOiBva2xjaCgyNi4zJSAwLjAyNCAzMjAuMTIpO1xuICAgIC0tY29sb3ItbWF1dmUtOTAwOiBva2xjaCgyMS4yJSAwLjAxOSAzMjIuMTIpO1xuICAgIC0tY29sb3ItbWF1dmUtOTUwOiBva2xjaCgxNC41JSAwLjAwOCAzMjYpO1xuXG4gICAgLS1jb2xvci1vbGl2ZS01MDogb2tsY2goOTguOCUgMC4wMDMgMTA2LjUpO1xuICAgIC0tY29sb3Itb2xpdmUtMTAwOiBva2xjaCg5Ni42JSAwLjAwNSAxMDYuNSk7XG4gICAgLS1jb2xvci1vbGl2ZS0yMDA6IG9rbGNoKDkzJSAwLjAwNyAxMDYuNSk7XG4gICAgLS1jb2xvci1vbGl2ZS0zMDA6IG9rbGNoKDg4JSAwLjAxMSAxMDYuNik7XG4gICAgLS1jb2xvci1vbGl2ZS00MDA6IG9rbGNoKDczLjclIDAuMDIxIDEwNi45KTtcbiAgICAtLWNvbG9yLW9saXZlLTUwMDogb2tsY2goNTglIDAuMDMxIDEwNy4zKTtcbiAgICAtLWNvbG9yLW9saXZlLTYwMDogb2tsY2goNDYuNiUgMC4wMjUgMTA3LjMpO1xuICAgIC0tY29sb3Itb2xpdmUtNzAwOiBva2xjaCgzOS40JSAwLjAyMyAxMDcuNCk7XG4gICAgLS1jb2xvci1vbGl2ZS04MDA6IG9rbGNoKDI4LjYlIDAuMDE2IDEwNy40KTtcbiAgICAtLWNvbG9yLW9saXZlLTkwMDogb2tsY2goMjIuOCUgMC4wMTMgMTA3LjQpO1xuICAgIC0tY29sb3Itb2xpdmUtOTUwOiBva2xjaCgxNS4zJSAwLjAwNiAxMDcuMSk7XG5cbiAgICAtLWNvbG9yLW1pc3QtNTA6IG9rbGNoKDk4LjclIDAuMDAyIDE5Ny4xKTtcbiAgICAtLWNvbG9yLW1pc3QtMTAwOiBva2xjaCg5Ni4zJSAwLjAwMiAxOTcuMSk7XG4gICAgLS1jb2xvci1taXN0LTIwMDogb2tsY2goOTIuNSUgMC4wMDUgMjE0LjMpO1xuICAgIC0tY29sb3ItbWlzdC0zMDA6IG9rbGNoKDg3LjIlIDAuMDA3IDIxOS42KTtcbiAgICAtLWNvbG9yLW1pc3QtNDAwOiBva2xjaCg3Mi4zJSAwLjAxNCAyMTQuNCk7XG4gICAgLS1jb2xvci1taXN0LTUwMDogb2tsY2goNTYlIDAuMDIxIDIxMy41KTtcbiAgICAtLWNvbG9yLW1pc3QtNjAwOiBva2xjaCg0NSUgMC4wMTcgMjEzLjIpO1xuICAgIC0tY29sb3ItbWlzdC03MDA6IG9rbGNoKDM3LjglIDAuMDE1IDIxNik7XG4gICAgLS1jb2xvci1taXN0LTgwMDogb2tsY2goMjcuNSUgMC4wMTEgMjE2LjkpO1xuICAgIC0tY29sb3ItbWlzdC05MDA6IG9rbGNoKDIxLjglIDAuMDA4IDIyMy45KTtcbiAgICAtLWNvbG9yLW1pc3QtOTUwOiBva2xjaCgxNC44JSAwLjAwNCAyMjguOCk7XG5cbiAgICAtLWNvbG9yLXRhdXBlLTUwOiBva2xjaCg5OC42JSAwLjAwMiA2Ny44KTtcbiAgICAtLWNvbG9yLXRhdXBlLTEwMDogb2tsY2goOTYlIDAuMDAyIDE3LjIpO1xuICAgIC0tY29sb3ItdGF1cGUtMjAwOiBva2xjaCg5Mi4yJSAwLjAwNSAzNC4zKTtcbiAgICAtLWNvbG9yLXRhdXBlLTMwMDogb2tsY2goODYuOCUgMC4wMDcgMzkuNSk7XG4gICAgLS1jb2xvci10YXVwZS00MDA6IG9rbGNoKDcxLjQlIDAuMDE0IDQxLjIpO1xuICAgIC0tY29sb3ItdGF1cGUtNTAwOiBva2xjaCg1NC43JSAwLjAyMSA0My4xKTtcbiAgICAtLWNvbG9yLXRhdXBlLTYwMDogb2tsY2goNDMuOCUgMC4wMTcgMzkuMyk7XG4gICAgLS1jb2xvci10YXVwZS03MDA6IG9rbGNoKDM2LjclIDAuMDE2IDM1LjcpO1xuICAgIC0tY29sb3ItdGF1cGUtODAwOiBva2xjaCgyNi44JSAwLjAxMSAzNi41KTtcbiAgICAtLWNvbG9yLXRhdXBlLTkwMDogb2tsY2goMjEuNCUgMC4wMDkgNDMuMSk7XG4gICAgLS1jb2xvci10YXVwZS05NTA6IG9rbGNoKDE0LjclIDAuMDA0IDQ5LjMpO1xuXG4gICAgLS1jb2xvci1ibGFjazogIzAwMDtcbiAgICAtLWNvbG9yLXdoaXRlOiAjZmZmO1xuXG4gICAgLS1zcGFjaW5nOiAwLjI1cmVtO1xuXG4gICAgLS1icmVha3BvaW50LXNtOiA0MHJlbTtcbiAgICAtLWJyZWFrcG9pbnQtbWQ6IDQ4cmVtO1xuICAgIC0tYnJlYWtwb2ludC1sZzogNjRyZW07XG4gICAgLS1icmVha3BvaW50LXhsOiA4MHJlbTtcbiAgICAtLWJyZWFrcG9pbnQtMnhsOiA5NnJlbTtcblxuICAgIC0tY29udGFpbmVyLTN4czogMTZyZW07XG4gICAgLS1jb250YWluZXItMnhzOiAxOHJlbTtcbiAgICAtLWNvbnRhaW5lci14czogMjByZW07XG4gICAgLS1jb250YWluZXItc206IDI0cmVtO1xuICAgIC0tY29udGFpbmVyLW1kOiAyOHJlbTtcbiAgICAtLWNvbnRhaW5lci1sZzogMzJyZW07XG4gICAgLS1jb250YWluZXIteGw6IDM2cmVtO1xuICAgIC0tY29udGFpbmVyLTJ4bDogNDJyZW07XG4gICAgLS1jb250YWluZXItM3hsOiA0OHJlbTtcbiAgICAtLWNvbnRhaW5lci00eGw6IDU2cmVtO1xuICAgIC0tY29udGFpbmVyLTV4bDogNjRyZW07XG4gICAgLS1jb250YWluZXItNnhsOiA3MnJlbTtcbiAgICAtLWNvbnRhaW5lci03eGw6IDgwcmVtO1xuXG4gICAgLS10ZXh0LXhzOiAwLjc1cmVtO1xuICAgIC0tdGV4dC14cy0tbGluZS1oZWlnaHQ6IGNhbGMoMSAvIDAuNzUpO1xuICAgIC0tdGV4dC1zbTogMC44NzVyZW07XG4gICAgLS10ZXh0LXNtLS1saW5lLWhlaWdodDogY2FsYygxLjI1IC8gMC44NzUpO1xuICAgIC0tdGV4dC1iYXNlOiAxcmVtO1xuICAgIC0tdGV4dC1iYXNlLS1saW5lLWhlaWdodDogY2FsYygxLjUgLyAxKTtcbiAgICAtLXRleHQtbGc6IDEuMTI1cmVtO1xuICAgIC0tdGV4dC1sZy0tbGluZS1oZWlnaHQ6IGNhbGMoMS43NSAvIDEuMTI1KTtcbiAgICAtLXRleHQteGw6IDEuMjVyZW07XG4gICAgLS10ZXh0LXhsLS1saW5lLWhlaWdodDogY2FsYygxLjc1IC8gMS4yNSk7XG4gICAgLS10ZXh0LTJ4bDogMS41cmVtO1xuICAgIC0tdGV4dC0yeGwtLWxpbmUtaGVpZ2h0OiBjYWxjKDIgLyAxLjUpO1xuICAgIC0tdGV4dC0zeGw6IDEuODc1cmVtO1xuICAgIC0tdGV4dC0zeGwtLWxpbmUtaGVpZ2h0OiBjYWxjKDIuMjUgLyAxLjg3NSk7XG4gICAgLS10ZXh0LTR4bDogMi4yNXJlbTtcbiAgICAtLXRleHQtNHhsLS1saW5lLWhlaWdodDogY2FsYygyLjUgLyAyLjI1KTtcbiAgICAtLXRleHQtNXhsOiAzcmVtO1xuICAgIC0tdGV4dC01eGwtLWxpbmUtaGVpZ2h0OiAxO1xuICAgIC0tdGV4dC02eGw6IDMuNzVyZW07XG4gICAgLS10ZXh0LTZ4bC0tbGluZS1oZWlnaHQ6IDE7XG4gICAgLS10ZXh0LTd4bDogNC41cmVtO1xuICAgIC0tdGV4dC03eGwtLWxpbmUtaGVpZ2h0OiAxO1xuICAgIC0tdGV4dC04eGw6IDZyZW07XG4gICAgLS10ZXh0LTh4bC0tbGluZS1oZWlnaHQ6IDE7XG4gICAgLS10ZXh0LTl4bDogOHJlbTtcbiAgICAtLXRleHQtOXhsLS1saW5lLWhlaWdodDogMTtcblxuICAgIC0tZm9udC13ZWlnaHQtdGhpbjogMTAwO1xuICAgIC0tZm9udC13ZWlnaHQtZXh0cmFsaWdodDogMjAwO1xuICAgIC0tZm9udC13ZWlnaHQtbGlnaHQ6IDMwMDtcbiAgICAtLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwO1xuICAgIC0tZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7XG4gICAgLS1mb250LXdlaWdodC1zZW1pYm9sZDogNjAwO1xuICAgIC0tZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuICAgIC0tZm9udC13ZWlnaHQtZXh0cmFib2xkOiA4MDA7XG4gICAgLS1mb250LXdlaWdodC1ibGFjazogOTAwO1xuXG4gICAgLS10cmFja2luZy10aWdodGVyOiAtMC4wNWVtO1xuICAgIC0tdHJhY2tpbmctdGlnaHQ6IC0wLjAyNWVtO1xuICAgIC0tdHJhY2tpbmctbm9ybWFsOiAwZW07XG4gICAgLS10cmFja2luZy13aWRlOiAwLjAyNWVtO1xuICAgIC0tdHJhY2tpbmctd2lkZXI6IDAuMDVlbTtcbiAgICAtLXRyYWNraW5nLXdpZGVzdDogMC4xZW07XG5cbiAgICAtLWxlYWRpbmctdGlnaHQ6IDEuMjU7XG4gICAgLS1sZWFkaW5nLXNudWc6IDEuMzc1O1xuICAgIC0tbGVhZGluZy1ub3JtYWw6IDEuNTtcbiAgICAtLWxlYWRpbmctcmVsYXhlZDogMS42MjU7XG4gICAgLS1sZWFkaW5nLWxvb3NlOiAyO1xuXG4gICAgLS1yYWRpdXMteHM6IDAuMTI1cmVtO1xuICAgIC0tcmFkaXVzLXNtOiAwLjI1cmVtO1xuICAgIC0tcmFkaXVzLW1kOiAwLjM3NXJlbTtcbiAgICAtLXJhZGl1cy1sZzogMC41cmVtO1xuICAgIC0tcmFkaXVzLXhsOiAwLjc1cmVtO1xuICAgIC0tcmFkaXVzLTJ4bDogMXJlbTtcbiAgICAtLXJhZGl1cy0zeGw6IDEuNXJlbTtcbiAgICAtLXJhZGl1cy00eGw6IDJyZW07XG5cbiAgICAtLXNoYWRvdy0yeHM6IDAgMXB4IHJnYigwIDAgMCAvIDAuMDUpO1xuICAgIC0tc2hhZG93LXhzOiAwIDFweCAycHggMCByZ2IoMCAwIDAgLyAwLjA1KTtcbiAgICAtLXNoYWRvdy1zbTogMCAxcHggM3B4IDAgcmdiKDAgMCAwIC8gMC4xKSwgMCAxcHggMnB4IC0xcHggcmdiKDAgMCAwIC8gMC4xKTtcbiAgICAtLXNoYWRvdy1tZDpcbiAgICAgIDAgNHB4IDZweCAtMXB4IHJnYigwIDAgMCAvIDAuMSksIDAgMnB4IDRweCAtMnB4IHJnYigwIDAgMCAvIDAuMSk7XG4gICAgLS1zaGFkb3ctbGc6XG4gICAgICAwIDEwcHggMTVweCAtM3B4IHJnYigwIDAgMCAvIDAuMSksIDAgNHB4IDZweCAtNHB4IHJnYigwIDAgMCAvIDAuMSk7XG4gICAgLS1zaGFkb3cteGw6XG4gICAgICAwIDIwcHggMjVweCAtNXB4IHJnYigwIDAgMCAvIDAuMSksIDAgOHB4IDEwcHggLTZweCByZ2IoMCAwIDAgLyAwLjEpO1xuICAgIC0tc2hhZG93LTJ4bDogMCAyNXB4IDUwcHggLTEycHggcmdiKDAgMCAwIC8gMC4yNSk7XG5cbiAgICAtLWluc2V0LXNoYWRvdy0yeHM6IGluc2V0IDAgMXB4IHJnYigwIDAgMCAvIDAuMDUpO1xuICAgIC0taW5zZXQtc2hhZG93LXhzOiBpbnNldCAwIDFweCAxcHggcmdiKDAgMCAwIC8gMC4wNSk7XG4gICAgLS1pbnNldC1zaGFkb3ctc206IGluc2V0IDAgMnB4IDRweCByZ2IoMCAwIDAgLyAwLjA1KTtcblxuICAgIC0tZHJvcC1zaGFkb3cteHM6IDAgMXB4IDFweCByZ2IoMCAwIDAgLyAwLjA1KTtcbiAgICAtLWRyb3Atc2hhZG93LXNtOiAwIDFweCAycHggcmdiKDAgMCAwIC8gMC4xNSk7XG4gICAgLS1kcm9wLXNoYWRvdy1tZDogMCAzcHggM3B4IHJnYigwIDAgMCAvIDAuMTIpO1xuICAgIC0tZHJvcC1zaGFkb3ctbGc6IDAgNHB4IDRweCByZ2IoMCAwIDAgLyAwLjE1KTtcbiAgICAtLWRyb3Atc2hhZG93LXhsOiAwIDlweCA3cHggcmdiKDAgMCAwIC8gMC4xKTtcbiAgICAtLWRyb3Atc2hhZG93LTJ4bDogMCAyNXB4IDI1cHggcmdiKDAgMCAwIC8gMC4xNSk7XG5cbiAgICAtLXRleHQtc2hhZG93LTJ4czogMHB4IDFweCAwcHggcmdiKDAgMCAwIC8gMC4xNSk7XG4gICAgLS10ZXh0LXNoYWRvdy14czogMHB4IDFweCAxcHggcmdiKDAgMCAwIC8gMC4yKTtcbiAgICAtLXRleHQtc2hhZG93LXNtOlxuICAgICAgMHB4IDFweCAwcHggcmdiKDAgMCAwIC8gMC4wNzUpLCAwcHggMXB4IDFweCByZ2IoMCAwIDAgLyAwLjA3NSksXG4gICAgICAwcHggMnB4IDJweCByZ2IoMCAwIDAgLyAwLjA3NSk7XG4gICAgLS10ZXh0LXNoYWRvdy1tZDpcbiAgICAgIDBweCAxcHggMXB4IHJnYigwIDAgMCAvIDAuMSksIDBweCAxcHggMnB4IHJnYigwIDAgMCAvIDAuMSksXG4gICAgICAwcHggMnB4IDRweCByZ2IoMCAwIDAgLyAwLjEpO1xuICAgIC0tdGV4dC1zaGFkb3ctbGc6XG4gICAgICAwcHggMXB4IDJweCByZ2IoMCAwIDAgLyAwLjEpLCAwcHggM3B4IDJweCByZ2IoMCAwIDAgLyAwLjEpLFxuICAgICAgMHB4IDRweCA4cHggcmdiKDAgMCAwIC8gMC4xKTtcblxuICAgIC0tZWFzZS1pbjogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMSwgMSk7XG4gICAgLS1lYXNlLW91dDogY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSk7XG4gICAgLS1lYXNlLWluLW91dDogY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcblxuICAgIC0tYW5pbWF0ZS1zcGluOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAtLWFuaW1hdGUtcGluZzogcGluZyAxcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKSBpbmZpbml0ZTtcbiAgICAtLWFuaW1hdGUtcHVsc2U6IHB1bHNlIDJzIGN1YmljLWJlemllcigwLjQsIDAsIDAuNiwgMSkgaW5maW5pdGU7XG4gICAgLS1hbmltYXRlLWJvdW5jZTogYm91bmNlIDFzIGluZmluaXRlO1xuXG4gICAgQGtleWZyYW1lcyBzcGluIHtcbiAgICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIHBpbmcge1xuICAgICAgNzUlLFxuICAgICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMik7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBwdWxzZSB7XG4gICAgICA1MCUge1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBib3VuY2Uge1xuICAgICAgMCUsXG4gICAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNSUpO1xuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC44LCAwLCAxLCAxKTtcbiAgICAgIH1cblxuICAgICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAtLWJsdXIteHM6IDRweDtcbiAgICAtLWJsdXItc206IDhweDtcbiAgICAtLWJsdXItbWQ6IDEycHg7XG4gICAgLS1ibHVyLWxnOiAxNnB4O1xuICAgIC0tYmx1ci14bDogMjRweDtcbiAgICAtLWJsdXItMnhsOiA0MHB4O1xuICAgIC0tYmx1ci0zeGw6IDY0cHg7XG5cbiAgICAtLXBlcnNwZWN0aXZlLWRyYW1hdGljOiAxMDBweDtcbiAgICAtLXBlcnNwZWN0aXZlLW5lYXI6IDMwMHB4O1xuICAgIC0tcGVyc3BlY3RpdmUtbm9ybWFsOiA1MDBweDtcbiAgICAtLXBlcnNwZWN0aXZlLW1pZHJhbmdlOiA4MDBweDtcbiAgICAtLXBlcnNwZWN0aXZlLWRpc3RhbnQ6IDEyMDBweDtcblxuICAgIC0tYXNwZWN0LXZpZGVvOiAxNiAvIDk7XG5cbiAgICAtLWRlZmF1bHQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMTUwbXM7XG4gICAgLS1kZWZhdWx0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgIC0tZGVmYXVsdC1mb250LWZhbWlseTogLS10aGVtZSgtLWZvbnQtc2FucywgaW5pdGlhbCk7XG4gICAgLS1kZWZhdWx0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogLS10aGVtZShcbiAgICAgIC0tZm9udC1zYW5zLS1mb250LWZlYXR1cmUtc2V0dGluZ3MsXG4gICAgICBpbml0aWFsXG4gICAgKTtcbiAgICAtLWRlZmF1bHQtZm9udC12YXJpYXRpb24tc2V0dGluZ3M6IC0tdGhlbWUoXG4gICAgICAtLWZvbnQtc2Fucy0tZm9udC12YXJpYXRpb24tc2V0dGluZ3MsXG4gICAgICBpbml0aWFsXG4gICAgKTtcbiAgICAtLWRlZmF1bHQtbW9uby1mb250LWZhbWlseTogLS10aGVtZSgtLWZvbnQtbW9ubywgaW5pdGlhbCk7XG4gICAgLS1kZWZhdWx0LW1vbm8tZm9udC1mZWF0dXJlLXNldHRpbmdzOiAtLXRoZW1lKFxuICAgICAgLS1mb250LW1vbm8tLWZvbnQtZmVhdHVyZS1zZXR0aW5ncyxcbiAgICAgIGluaXRpYWxcbiAgICApO1xuICAgIC0tZGVmYXVsdC1tb25vLWZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAtLXRoZW1lKFxuICAgICAgLS1mb250LW1vbm8tLWZvbnQtdmFyaWF0aW9uLXNldHRpbmdzLFxuICAgICAgaW5pdGlhbFxuICAgICk7XG4gIH1cblxuICAvKiBEZXByZWNhdGVkICovXG4gIEB0aGVtZSBkZWZhdWx0IGlubGluZSByZWZlcmVuY2Uge1xuICAgIC0tYmx1cjogOHB4O1xuICAgIC0tc2hhZG93OiAwIDFweCAzcHggMCByZ2IoMCAwIDAgLyAwLjEpLCAwIDFweCAycHggLTFweCByZ2IoMCAwIDAgLyAwLjEpO1xuICAgIC0tc2hhZG93LWlubmVyOiBpbnNldCAwIDJweCA0cHggMCByZ2IoMCAwIDAgLyAwLjA1KTtcbiAgICAtLWRyb3Atc2hhZG93OiAwIDFweCAycHggcmdiKDAgMCAwIC8gMC4xKSwgMCAxcHggMXB4IHJnYigwIDAgMCAvIDAuMDYpO1xuICAgIC0tcmFkaXVzOiAwLjI1cmVtO1xuICAgIC0tbWF4LXdpZHRoLXByb3NlOiA2NWNoO1xuICB9XG59XG5cbkBsYXllciBiYXNlIHtcbiAgLypcbiAgMS4gUHJldmVudCBwYWRkaW5nIGFuZCBib3JkZXIgZnJvbSBhZmZlY3RpbmcgZWxlbWVudCB3aWR0aC4gKGh0dHBzOi8vZ2l0aHViLmNvbS9tb3pkZXZzL2Nzc3JlbWVkeS9pc3N1ZXMvNClcbiAgMi4gUmVtb3ZlIGRlZmF1bHQgbWFyZ2lucyBhbmQgcGFkZGluZ1xuICAzLiBSZXNldCBhbGwgYm9yZGVycy5cbiovXG5cbiAgKixcbiAgOjphZnRlcixcbiAgOjpiZWZvcmUsXG4gIDo6YmFja2Ryb3AsXG4gIDo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICBtYXJnaW46IDA7IC8qIDIgKi9cbiAgICBwYWRkaW5nOiAwOyAvKiAyICovXG4gICAgYm9yZGVyOiAwIHNvbGlkOyAvKiAzICovXG4gIH1cblxuICAvKlxuICAxLiBVc2UgYSBjb25zaXN0ZW50IHNlbnNpYmxlIGxpbmUtaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gIDMuIFVzZSBhIG1vcmUgcmVhZGFibGUgdGFiIHNpemUuXG4gIDQuIFVzZSB0aGUgdXNlcidzIGNvbmZpZ3VyZWQgYHNhbnNgIGZvbnQtZmFtaWx5IGJ5IGRlZmF1bHQuXG4gIDUuIFVzZSB0aGUgdXNlcidzIGNvbmZpZ3VyZWQgYHNhbnNgIGZvbnQtZmVhdHVyZS1zZXR0aW5ncyBieSBkZWZhdWx0LlxuICA2LiBVc2UgdGhlIHVzZXIncyBjb25maWd1cmVkIGBzYW5zYCBmb250LXZhcmlhdGlvbi1zZXR0aW5ncyBieSBkZWZhdWx0LlxuICA3LiBEaXNhYmxlIHRhcCBoaWdobGlnaHRzIG9uIGlPUy5cbiovXG5cbiAgaHRtbCxcbiAgOmhvc3Qge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7IC8qIDEgKi9cbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgICB0YWItc2l6ZTogNDsgLyogMyAqL1xuICAgIGZvbnQtZmFtaWx5OiAtLXRoZW1lKFxuICAgICAgLS1kZWZhdWx0LWZvbnQtZmFtaWx5LFxuICAgICAgdWktc2Fucy1zZXJpZixcbiAgICAgIHN5c3RlbS11aSxcbiAgICAgIHNhbnMtc2VyaWYsXG4gICAgICBcIkFwcGxlIENvbG9yIEVtb2ppXCIsXG4gICAgICBcIlNlZ29lIFVJIEVtb2ppXCIsXG4gICAgICBcIlNlZ29lIFVJIFN5bWJvbFwiLFxuICAgICAgXCJOb3RvIENvbG9yIEVtb2ppXCJcbiAgICApOyAvKiA0ICovXG4gICAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAtLXRoZW1lKFxuICAgICAgLS1kZWZhdWx0LWZvbnQtZmVhdHVyZS1zZXR0aW5ncyxcbiAgICAgIG5vcm1hbFxuICAgICk7IC8qIDUgKi9cbiAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogLS10aGVtZShcbiAgICAgIC0tZGVmYXVsdC1mb250LXZhcmlhdGlvbi1zZXR0aW5ncyxcbiAgICAgIG5vcm1hbFxuICAgICk7IC8qIDYgKi9cbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiA3ICovXG4gIH1cblxuICAvKlxuICAxLiBBZGQgdGhlIGNvcnJlY3QgaGVpZ2h0IGluIEZpcmVmb3guXG4gIDIuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIG9mIGJvcmRlciBjb2xvciBpbiBGaXJlZm94LiAoaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkwNjU1KVxuICAzLiBSZXNldCB0aGUgZGVmYXVsdCBib3JkZXIgc3R5bGUgdG8gYSAxcHggc29saWQgYm9yZGVyLlxuKi9cblxuICBociB7XG4gICAgaGVpZ2h0OiAwOyAvKiAxICovXG4gICAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7IC8qIDMgKi9cbiAgfVxuXG4gIC8qXG4gIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuKi9cblxuICBhYmJyOndoZXJlKFt0aXRsZV0pIHtcbiAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIH1cblxuICAvKlxuICBSZW1vdmUgdGhlIGRlZmF1bHQgZm9udCBzaXplIGFuZCB3ZWlnaHQgZm9yIGhlYWRpbmdzLlxuKi9cblxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvKlxuICBSZXNldCBsaW5rcyB0byBvcHRpbWl6ZSBmb3Igb3B0LWluIHN0eWxpbmcgaW5zdGVhZCBvZiBvcHQtb3V0LlxuKi9cblxuICBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIH1cblxuICAvKlxuICBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gRWRnZSBhbmQgU2FmYXJpLlxuKi9cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvKlxuICAxLiBVc2UgdGhlIHVzZXIncyBjb25maWd1cmVkIGBtb25vYCBmb250LWZhbWlseSBieSBkZWZhdWx0LlxuICAyLiBVc2UgdGhlIHVzZXIncyBjb25maWd1cmVkIGBtb25vYCBmb250LWZlYXR1cmUtc2V0dGluZ3MgYnkgZGVmYXVsdC5cbiAgMy4gVXNlIHRoZSB1c2VyJ3MgY29uZmlndXJlZCBgbW9ub2AgZm9udC12YXJpYXRpb24tc2V0dGluZ3MgYnkgZGVmYXVsdC5cbiAgNC4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuKi9cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAsXG4gIHByZSB7XG4gICAgZm9udC1mYW1pbHk6IC0tdGhlbWUoXG4gICAgICAtLWRlZmF1bHQtbW9uby1mb250LWZhbWlseSxcbiAgICAgIHVpLW1vbm9zcGFjZSxcbiAgICAgIFNGTW9uby1SZWd1bGFyLFxuICAgICAgTWVubG8sXG4gICAgICBNb25hY28sXG4gICAgICBDb25zb2xhcyxcbiAgICAgIFwiTGliZXJhdGlvbiBNb25vXCIsXG4gICAgICBcIkNvdXJpZXIgTmV3XCIsXG4gICAgICBtb25vc3BhY2VcbiAgICApOyAvKiAxICovXG4gICAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAtLXRoZW1lKFxuICAgICAgLS1kZWZhdWx0LW1vbm8tZm9udC1mZWF0dXJlLXNldHRpbmdzLFxuICAgICAgbm9ybWFsXG4gICAgKTsgLyogMiAqL1xuICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAtLXRoZW1lKFxuICAgICAgLS1kZWZhdWx0LW1vbm8tZm9udC12YXJpYXRpb24tc2V0dGluZ3MsXG4gICAgICBub3JtYWxcbiAgICApOyAvKiAzICovXG4gICAgZm9udC1zaXplOiAxZW07IC8qIDQgKi9cbiAgfVxuXG4gIC8qXG4gIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuKi9cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvKlxuICBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuKi9cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIC8qXG4gIDEuIFJlbW92ZSB0ZXh0IGluZGVudGF0aW9uIGZyb20gdGFibGUgY29udGVudHMgaW4gQ2hyb21lIGFuZCBTYWZhcmkuIChodHRwczovL2J1Z3MuY2hyb21pdW0ub3JnL3AvY2hyb21pdW0vaXNzdWVzL2RldGFpbD9pZD05OTkwODgsIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDEyOTcpXG4gIDIuIENvcnJlY3QgdGFibGUgYm9yZGVyIGNvbG9yIGluaGVyaXRhbmNlIGluIGFsbCBDaHJvbWUgYW5kIFNhZmFyaS4gKGh0dHBzOi8vYnVncy5jaHJvbWl1bS5vcmcvcC9jaHJvbWl1bS9pc3N1ZXMvZGV0YWlsP2lkPTkzNTcyOSwgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5NTAxNilcbiAgMy4gUmVtb3ZlIGdhcHMgYmV0d2VlbiB0YWJsZSBib3JkZXJzIGJ5IGRlZmF1bHQuXG4qL1xuXG4gIHRhYmxlIHtcbiAgICB0ZXh0LWluZGVudDogMDsgLyogMSAqL1xuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8qIDMgKi9cbiAgfVxuXG4gIC8qXG4gIFVzZSB0aGUgbW9kZXJuIEZpcmVmb3ggZm9jdXMgc3R5bGUgZm9yIGFsbCBmb2N1c2FibGUgZWxlbWVudHMuXG4qL1xuXG4gIDotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogYXV0bztcbiAgfVxuXG4gIC8qXG4gIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lIGFuZCBGaXJlZm94LlxuKi9cblxuICBwcm9ncmVzcyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgLypcbiAgQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4qL1xuXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuXG4gIC8qXG4gIE1ha2UgbGlzdHMgdW5zdHlsZWQgYnkgZGVmYXVsdC5cbiovXG5cbiAgb2wsXG4gIHVsLFxuICBtZW51IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG5cbiAgLypcbiAgMS4gTWFrZSByZXBsYWNlZCBlbGVtZW50cyBgZGlzcGxheTogYmxvY2tgIGJ5IGRlZmF1bHQuIChodHRwczovL2dpdGh1Yi5jb20vbW96ZGV2cy9jc3NyZW1lZHkvaXNzdWVzLzE0KVxuICAyLiBBZGQgYHZlcnRpY2FsLWFsaWduOiBtaWRkbGVgIHRvIGFsaWduIHJlcGxhY2VkIGVsZW1lbnRzIG1vcmUgc2Vuc2libHkgYnkgZGVmYXVsdC4gKGh0dHBzOi8vZ2l0aHViLmNvbS9qZW5zaW1tb25zL2Nzc3JlbWVkeS9pc3N1ZXMvMTQjaXNzdWVjb21tZW50LTYzNDkzNDIxMClcbiAgICAgIFRoaXMgY2FuIHRyaWdnZXIgYSBwb29ybHkgY29uc2lkZXJlZCBsaW50IGVycm9yIGluIHNvbWUgdG9vbHMgYnV0IGlzIGluY2x1ZGVkIGJ5IGRlc2lnbi5cbiovXG5cbiAgaW1nLFxuICBzdmcsXG4gIHZpZGVvLFxuICBjYW52YXMsXG4gIGF1ZGlvLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvKiAxICovXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLyogMiAqL1xuICB9XG5cbiAgLypcbiAgQ29uc3RyYWluIGltYWdlcyBhbmQgdmlkZW9zIHRvIHRoZSBwYXJlbnQgd2lkdGggYW5kIHByZXNlcnZlIHRoZWlyIGludHJpbnNpYyBhc3BlY3QgcmF0aW8uIChodHRwczovL2dpdGh1Yi5jb20vbW96ZGV2cy9jc3NyZW1lZHkvaXNzdWVzLzE0KVxuKi9cblxuICBpbWcsXG4gIHZpZGVvIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLypcbiAgMS4gSW5oZXJpdCBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gIDIuIFJlbW92ZSBib3JkZXIgcmFkaXVzIGluIGFsbCBicm93c2Vycy5cbiAgMy4gUmVtb3ZlIGJhY2tncm91bmQgY29sb3IgaW4gYWxsIGJyb3dzZXJzLlxuICA0LiBFbnN1cmUgY29uc2lzdGVudCBvcGFjaXR5IGZvciBkaXNhYmxlZCBzdGF0ZXMgaW4gYWxsIGJyb3dzZXJzLlxuKi9cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIG9wdGdyb3VwLFxuICB0ZXh0YXJlYSxcbiAgOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgZm9udDogaW5oZXJpdDsgLyogMSAqL1xuICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogaW5oZXJpdDsgLyogMSAqL1xuICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiBpbmhlcml0OyAvKiAxICovXG4gICAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7IC8qIDEgKi9cbiAgICBjb2xvcjogaW5oZXJpdDsgLyogMSAqL1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IC8qIDIgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMyAqL1xuICAgIG9wYWNpdHk6IDE7IC8qIDQgKi9cbiAgfVxuXG4gIC8qXG4gIFJlc3RvcmUgZGVmYXVsdCBmb250IHdlaWdodC5cbiovXG5cbiAgOndoZXJlKHNlbGVjdDppcyhbbXVsdGlwbGVdLCBbc2l6ZV0pKSBvcHRncm91cCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC8qXG4gIFJlc3RvcmUgaW5kZW50YXRpb24uXG4qL1xuXG4gIDp3aGVyZShzZWxlY3Q6aXMoW211bHRpcGxlXSwgW3NpemVdKSkgb3B0Z3JvdXAgb3B0aW9uIHtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMjBweDtcbiAgfVxuXG4gIC8qXG4gIFJlc3RvcmUgc3BhY2UgYWZ0ZXIgYnV0dG9uLlxuKi9cblxuICA6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogNHB4O1xuICB9XG5cbiAgLypcbiAgUmVzZXQgdGhlIGRlZmF1bHQgcGxhY2Vob2xkZXIgb3BhY2l0eSBpbiBGaXJlZm94LiAoaHR0cHM6Ly9naXRodWIuY29tL3RhaWx3aW5kbGFicy90YWlsd2luZGNzcy9pc3N1ZXMvMzMwMClcbiovXG5cbiAgOjpwbGFjZWhvbGRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIC8qXG4gIFNldCB0aGUgZGVmYXVsdCBwbGFjZWhvbGRlciBjb2xvciB0byBhIHNlbWktdHJhbnNwYXJlbnQgdmVyc2lvbiBvZiB0aGUgY3VycmVudCB0ZXh0IGNvbG9yIGluIGJyb3dzZXJzIHRoYXQgZG8gbm90XG4gIGNyYXNoIHdoZW4gdXNpbmcgYGNvbG9yLW1peCjigKYpYCB3aXRoIGBjdXJyZW50Y29sb3JgLiAoaHR0cHM6Ly9naXRodWIuY29tL3RhaWx3aW5kbGFicy90YWlsd2luZGNzcy9pc3N1ZXMvMTcxOTQpXG4qL1xuXG4gIEBzdXBwb3J0cyAobm90ICgtd2Via2l0LWFwcGVhcmFuY2U6IC1hcHBsZS1wYXktYnV0dG9uKSkgLyogTm90IFNhZmFyaSAqLyBvclxuICAgIChjb250YWluLWludHJpbnNpYy1zaXplOiAxcHgpIC8qIFNhZmFyaSAxNysgKi8ge1xuICAgIDo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IGNvbG9yLW1peChpbiBva2xhYiwgY3VycmVudGNvbG9yIDUwJSwgdHJhbnNwYXJlbnQpO1xuICAgIH1cbiAgfVxuXG4gIC8qXG4gIFByZXZlbnQgcmVzaXppbmcgdGV4dGFyZWFzIGhvcml6b250YWxseSBieSBkZWZhdWx0LlxuKi9cblxuICB0ZXh0YXJlYSB7XG4gICAgcmVzaXplOiB2ZXJ0aWNhbDtcbiAgfVxuXG4gIC8qXG4gIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiovXG5cbiAgOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvKlxuICAxLiBFbnN1cmUgZGF0ZS90aW1lIGlucHV0cyBoYXZlIHRoZSBzYW1lIGhlaWdodCB3aGVuIGVtcHR5IGluIGlPUyBTYWZhcmkuXG4gIDIuIEVuc3VyZSB0ZXh0IGFsaWdubWVudCBjYW4gYmUgY2hhbmdlZCBvbiBkYXRlL3RpbWUgaW5wdXRzIGluIGlPUyBTYWZhcmkuXG4qL1xuXG4gIDo6LXdlYmtpdC1kYXRlLWFuZC10aW1lLXZhbHVlIHtcbiAgICBtaW4taGVpZ2h0OiAxbGg7IC8qIDEgKi9cbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvKiAyICovXG4gIH1cblxuICAvKlxuICBQcmV2ZW50IGhlaWdodCBmcm9tIGNoYW5naW5nIG9uIGRhdGUvdGltZSBpbnB1dHMgaW4gbWFjT1MgU2FmYXJpIHdoZW4gdGhlIGlucHV0IGlzIHNldCB0byBgZGlzcGxheTogYmxvY2tgLlxuKi9cblxuICA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH1cblxuICAvKlxuICBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgZnJvbSBwc2V1ZG8tZWxlbWVudHMgaW4gZGF0ZS90aW1lIGlucHV0cyB0byBlbnN1cmUgY29uc2lzdGVudCBoZWlnaHQgYWNyb3NzIGJyb3dzZXJzLlxuKi9cblxuICA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1maWVsZHMtd3JhcHBlciB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LFxuICA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC15ZWFyLWZpZWxkLFxuICA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCxcbiAgOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtZGF5LWZpZWxkLFxuICA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1ob3VyLWZpZWxkLFxuICA6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1taW51dGUtZmllbGQsXG4gIDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXNlY29uZC1maWVsZCxcbiAgOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtbWlsbGlzZWNvbmQtZmllbGQsXG4gIDo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1lcmlkaWVtLWZpZWxkIHtcbiAgICBwYWRkaW5nLWJsb2NrOiAwO1xuICB9XG5cbiAgLypcbiAgQ2VudGVyIGRyb3Bkb3duIG1hcmtlciBzaG93biBvbiBpbnB1dHMgd2l0aCBwYWlyZWQgYDxkYXRhbGlzdD5gcyBpbiBDaHJvbWUuIChodHRwczovL2dpdGh1Yi5jb20vdGFpbHdpbmRsYWJzL3RhaWx3aW5kY3NzL2lzc3Vlcy8xODQ5OSlcbiovXG5cbiAgOjotd2Via2l0LWNhbGVuZGFyLXBpY2tlci1pbmRpY2F0b3Ige1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgLypcbiAgUmVtb3ZlIHRoZSBhZGRpdGlvbmFsIGA6aW52YWxpZGAgc3R5bGVzIGluIEZpcmVmb3guIChodHRwczovL2dpdGh1Yi5jb20vbW96aWxsYS9nZWNrby1kZXYvYmxvYi8yZjllYWNkOWQzZDk5NWM5MzdiNDI1MWE1NTU3ZDk1ZDQ5NGM5YmUxL2xheW91dC9zdHlsZS9yZXMvZm9ybXMuY3NzI0w3MjgtTDczNylcbiovXG5cbiAgOi1tb3otdWktaW52YWxpZCB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC8qXG4gIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSB0aGUgYm9yZGVyIHJhZGl1cyBpbiBpT1MgU2FmYXJpLlxuKi9cblxuICBidXR0b24sXG4gIGlucHV0OndoZXJlKFt0eXBlPVwiYnV0dG9uXCJdLCBbdHlwZT1cInJlc2V0XCJdLCBbdHlwZT1cInN1Ym1pdFwiXSksXG4gIDo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIGFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8qXG4gIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIFNhZmFyaS5cbiovXG5cbiAgOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICA6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8qXG4gIE1ha2UgZWxlbWVudHMgd2l0aCB0aGUgSFRNTCBoaWRkZW4gYXR0cmlidXRlIHN0YXkgaGlkZGVuIGJ5IGRlZmF1bHQuXG4qL1xuXG4gIFtoaWRkZW5dOndoZXJlKDpub3QoW2hpZGRlbj1cInVudGlsLWZvdW5kXCJdKSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbGF5ZXIgdXRpbGl0aWVzIHtcbiAgQHRhaWx3aW5kIHV0aWxpdGllcztcbn1cbiIsIkBpbXBvcnQgXCJ0YWlsd2luZGNzc1wiO1xuXG4vKiAtLS0tIEdlaXN0IGZvbnQgKEdvb2dsZSBGb250cyB2aWEgQGZvbnQtZmFjZSDigJQgZWFzeSB0byBzd2FwIGZvciBzZWxmLWhvc3RlZCB3b2ZmMiBsYXRlcikgLS0tLSAqL1xuQGltcG9ydCB1cmwoXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PUdlaXN0OndnaHRAMzAwOzQwMDs1MDA7NjAwOzcwMDs4MDAmZmFtaWx5PUdlaXN0K01vbm86d2dodEA0MDA7NTAwOzYwMCZkaXNwbGF5PXN3YXBcIik7XG5cbi8qIC0tLS0gU291cmNlIGZpbGVzIFRhaWx3aW5kIG5lZWRzIHRvIHNjYW4gZm9yIHV0aWxpdHkgdXNhZ2UgLS0tLSAqL1xuQHNvdXJjZSBcIi4uLy4uL3RlbXBsYXRlcy8qKi8qLmh0bWwudHdpZ1wiO1xuQHNvdXJjZSBcIi4uLy4uL3NyYy8qKi8qLnBocFwiO1xuQHNvdXJjZSBcIi4uL2pzLyoqLyouanNcIjtcblxuLyogLS0tLSBTYWZlbGlzdDogY2xhc3NlcyBnZW5lcmF0ZWQgZHluYW1pY2FsbHkgKGUuZy4gZGVzaWduIHN5c3RlbSBjb2xvciBzd2F0Y2hlcykgLS0tLSAqL1xuQHNvdXJjZSBpbmxpbmUoXCJ7YmctLHRleHQtLGJvcmRlci19e25hdnksYmx1ZSxnb2xkLG1pbnQsY29yYWwsc2xhdGV9LXs1MCwxMDAsMjAwLDMwMCw0MDAsNTAwLDYwMCw3MDAsODAwLDkwMH1cIik7XG5Ac291cmNlIGlubGluZShcInNoYWRvdy17c29mdC1zbSxzb2Z0LHNvZnQtbWQsc29mdC1sZyxzb2Z0LXhsfVwiKTtcblxuLyogLS0tLSBTYWZlbGlzdDogcmVzcG9uc2l2ZSB2YXJpYW50cyB1c2VkIGJ5IHRoZSBjYWxjdWxhdG9yIGFuZCBhZG1pbiB0ZW1wbGF0ZXMuXG4gICBUaGUgQHNvdXJjZSBnbG9iIGFib3ZlIGRvZXMgbm90IGFsd2F5cyBwaWNrIHVwIHJlc3BvbnNpdmUgcHJlZml4ZXMgdGhyb3VnaFxuICAgd2VicGFjay1lbmNvcmUncyBQb3N0Q1NTIHBpcGVsaW5lIG9uIFdpbmRvd3MsIHNvIHdlIGRlY2xhcmUgdGhlbSBleHBsaWNpdGx5LiAtLS0tICovXG5Ac291cmNlIGlubGluZShcIm1kOmdyaWQtY29scy17MSwyLDMsNCwxMn1cIik7XG5Ac291cmNlIGlubGluZShcIm1kOmNvbC1zcGFuLXsxLDIsMyw0LDUsNiw3LDgsOSwxMCwxMSwxMn1cIik7XG5Ac291cmNlIGlubGluZShcIm1kOntzdGlja3ksdG9wLTYsZ2FwLTQsZ2FwLTYsZ2FwLTgscC04LGZsZXgtcm93LGZsZXgtMSxmbGV4LW5vbmUsdy0zMixoaWRkZW4sYmxvY2t9XCIpO1xuQHNvdXJjZSBpbmxpbmUoXCJzbTpncmlkLWNvbHMtezEsMiwzLDR9XCIpO1xuQHNvdXJjZSBpbmxpbmUoXCJzbTp7ZmxleC1yb3csZmxleC0xLGZsZXgtbm9uZSxwLTgscHktMjgsZ2FwLTMsZ2FwLTQsdy1mdWxsfVwiKTtcbkBzb3VyY2UgaW5saW5lKFwibGc6Z3JpZC1jb2xzLXsxLDIsMyw0LDYsMTJ9XCIpO1xuQHNvdXJjZSBpbmxpbmUoXCJsZzpjb2wtc3Bhbi17MSwyLDMsNCw1LDYsNyw4LDksMTAsMTEsMTJ9XCIpO1xuQHNvdXJjZSBpbmxpbmUoXCJsZzp7c3RpY2t5LHRvcC02LGdhcC02LGdhcC04LHAtOCxib3JkZXItbCxwbC03LHBsLTgsYm9yZGVyLXNsYXRlLTIwMCxmbGV4LXJvdyxpdGVtcy1zdGFydH1cIik7XG5Ac291cmNlIGlubGluZShcInhsOmdyaWQtY29scy17MSwyLDMsNCwxMn1cIik7XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRGVzaWduIHRva2VucyDigJQgV2ViLUlQUyBhbGlnbmVkXG4gICBSZWZlcmVuY2U6IEM6XFxVc2Vyc1xcVXN1YXJpb1xcQmFyYWREdXJcXERldlxcV2ViLUlQU1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AdGhlbWUge1xuICAgIC8qIC0tLS0gTmF2eSAocHJpbWFyeSBkYXJrKSAtLS0tICovXG4gICAgLS1jb2xvci1uYXZ5LTUwOiAjRThFREY1O1xuICAgIC0tY29sb3ItbmF2eS0xMDA6ICNDNUNGRTA7XG4gICAgLS1jb2xvci1uYXZ5LTIwMDogIzhGQTBCRDtcbiAgICAtLWNvbG9yLW5hdnktMzAwOiAjNUM3MTk2O1xuICAgIC0tY29sb3ItbmF2eS00MDA6ICMzNTRBNzU7XG4gICAgLS1jb2xvci1uYXZ5LTUwMDogIzFGMzI2MTtcbiAgICAtLWNvbG9yLW5hdnktNjAwOiAjMUIzQTY4O1xuICAgIC0tY29sb3ItbmF2eS03MDA6ICMxNTJFNTQ7XG4gICAgLS1jb2xvci1uYXZ5LTgwMDogIzEwMjk1MztcbiAgICAtLWNvbG9yLW5hdnktOTAwOiAjMEIxRjREO1xuXG4gICAgLyogLS0tLSBCbHVlIChwcmltYXJ5IGJyYW5kKSAtLS0tICovXG4gICAgLS1jb2xvci1ibHVlLTUwOiAjRUZGNUZGO1xuICAgIC0tY29sb3ItYmx1ZS0xMDA6ICNFMEVERkY7XG4gICAgLS1jb2xvci1ibHVlLTIwMDogI0JDRDZGRjtcbiAgICAtLWNvbG9yLWJsdWUtMzAwOiAjODVCOEZGO1xuICAgIC0tY29sb3ItYmx1ZS00MDA6ICM1QzlFRkY7XG4gICAgLS1jb2xvci1ibHVlLTUwMDogIzMzODVGRjtcbiAgICAtLWNvbG9yLWJsdWUtNjAwOiAjMDA2NkZGO1xuICAgIC0tY29sb3ItYmx1ZS03MDA6ICMwMDUyQ0M7XG4gICAgLS1jb2xvci1ibHVlLTgwMDogIzAwM0ZBMztcbiAgICAtLWNvbG9yLWJsdWUtOTAwOiAjMDAyQzczO1xuXG4gICAgLyogLS0tLSBHb2xkIChhY2NlbnQgLyBwcmVtaXVtKSAtLS0tICovXG4gICAgLS1jb2xvci1nb2xkLTUwOiAjRkJGNkU0O1xuICAgIC0tY29sb3ItZ29sZC0xMDA6ICNGNUVERDY7XG4gICAgLS1jb2xvci1nb2xkLTIwMDogI0VDRENBNDtcbiAgICAtLWNvbG9yLWdvbGQtMzAwOiAjREZDMDZCO1xuICAgIC0tY29sb3ItZ29sZC00MDA6ICNENEE3MkM7XG4gICAgLS1jb2xvci1nb2xkLTUwMDogI0M5OTUxQTtcbiAgICAtLWNvbG9yLWdvbGQtNjAwOiAjQjg4NjBCO1xuICAgIC0tY29sb3ItZ29sZC03MDA6ICM4RjY4MDk7XG4gICAgLS1jb2xvci1nb2xkLTgwMDogIzZCNEUwNztcbiAgICAtLWNvbG9yLWdvbGQtOTAwOiAjNEEzNTA1O1xuXG4gICAgLyogLS0tLSBDb3JhbCAod2FybmluZyAvIGFsZXJ0cykgLS0tLSAqL1xuICAgIC0tY29sb3ItY29yYWwtNTA6ICNGRkYxRUU7XG4gICAgLS1jb2xvci1jb3JhbC0xMDA6ICNGRkQ5RDI7XG4gICAgLS1jb2xvci1jb3JhbC0yMDA6ICNGRkIzQTg7XG4gICAgLS1jb2xvci1jb3JhbC0zMDA6ICNGRkIzQTg7XG4gICAgLS1jb2xvci1jb3JhbC00MDA6ICNGRjhBN0E7XG4gICAgLS1jb2xvci1jb3JhbC01MDA6ICNGRjZCNUE7XG4gICAgLS1jb2xvci1jb3JhbC02MDA6ICNFODRGM0Q7XG4gICAgLS1jb2xvci1jb3JhbC03MDA6ICNCODNBMkI7XG4gICAgLS1jb2xvci1jb3JhbC04MDA6ICM4QzJBMUY7XG4gICAgLS1jb2xvci1jb3JhbC05MDA6ICM1QzFCMTQ7XG5cbiAgICAvKiAtLS0tIE1pbnQgKGVjbyAvIHN1Y2Nlc3MpIC0tLS0gKi9cbiAgICAtLWNvbG9yLW1pbnQtNTA6ICNFQ0ZERjU7XG4gICAgLS1jb2xvci1taW50LTEwMDogI0QxRkFFNTtcbiAgICAtLWNvbG9yLW1pbnQtMjAwOiAjQTdGM0QwO1xuICAgIC0tY29sb3ItbWludC0zMDA6ICM2RUU3Qjc7XG4gICAgLS1jb2xvci1taW50LTQwMDogIzZFRTdCNztcbiAgICAtLWNvbG9yLW1pbnQtNTAwOiAjMzREMzk5O1xuICAgIC0tY29sb3ItbWludC02MDA6ICMxMEI5ODE7XG4gICAgLS1jb2xvci1taW50LTcwMDogIzA1OTY2OTtcbiAgICAtLWNvbG9yLW1pbnQtODAwOiAjMDQ3ODU3O1xuICAgIC0tY29sb3ItbWludC05MDA6ICMwNjVGNDY7XG5cbiAgICAvKiAtLS0tIFNsYXRlIChuZXV0cmFscyDigJQgYm9keSB0ZXh0LCBzdXJmYWNlcykgLS0tLSAqL1xuICAgIC0tY29sb3Itc2xhdGUtNTA6ICNGOUZBRkI7XG4gICAgLS1jb2xvci1zbGF0ZS0xMDA6ICNGM0Y0RjY7XG4gICAgLS1jb2xvci1zbGF0ZS0yMDA6ICNFNUU3RUI7XG4gICAgLS1jb2xvci1zbGF0ZS0zMDA6ICNEMUQ1REI7XG4gICAgLS1jb2xvci1zbGF0ZS00MDA6ICM5Q0EzQUY7XG4gICAgLS1jb2xvci1zbGF0ZS01MDA6ICM2QjcyODA7XG4gICAgLS1jb2xvci1zbGF0ZS02MDA6ICM0QjU1NjM7XG4gICAgLS1jb2xvci1zbGF0ZS03MDA6ICMzNzQxNTE7XG4gICAgLS1jb2xvci1zbGF0ZS04MDA6ICMxRjI5Mzc7XG4gICAgLS1jb2xvci1zbGF0ZS05MDA6ICMxMTE4Mjc7XG5cbiAgICAvKiAtLS0tIFR5cG9ncmFwaHkgLS0tLSAqL1xuICAgIC0tZm9udC1zYW5zOiBcIkdlaXN0XCIsIHVpLXNhbnMtc2VyaWYsIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgLS1mb250LW1vbm86IFwiR2Vpc3QgTW9ub1wiLCB1aS1tb25vc3BhY2UsIFwiU0ZNb25vLVJlZ3VsYXJcIiwgXCJNZW5sb1wiLCBcIk1vbmFjb1wiLCBcIkNvbnNvbGFzXCIsIG1vbm9zcGFjZTtcbiAgICAtLWZvbnQtZGlzcGxheTogXCJHZWlzdFwiLCB1aS1zYW5zLXNlcmlmLCBzeXN0ZW0tdWksIHNhbnMtc2VyaWY7XG5cbiAgICAvKiAtLS0tIFNvZnQgc2hhZG93IHNjYWxlIChuYXZ5LXRvbmVkLCBXZWItSVBTIHN0eWxlKSAtLS0tICovXG4gICAgLS1zaGFkb3ctc29mdC1zbTogMCAxcHggMnB4IHJnYmEoMTAsIDIyLCA0MCwgMC4wNiksIDAgMnB4IDhweCByZ2JhKDEwLCAyMiwgNDAsIDAuMDgpO1xuICAgIC0tc2hhZG93LXNvZnQ6IDAgMnB4IDRweCByZ2JhKDEwLCAyMiwgNDAsIDAuMDYpLCAwIDRweCAxNnB4IHJnYmEoMTAsIDIyLCA0MCwgMC4xMCk7XG4gICAgLS1zaGFkb3ctc29mdC1tZDogMCA0cHggOHB4IHJnYmEoMTAsIDIyLCA0MCwgMC4wNiksIDAgOHB4IDI0cHggcmdiYSgxMCwgMjIsIDQwLCAwLjEwKTtcbiAgICAtLXNoYWRvdy1zb2Z0LWxnOiAwIDRweCA4cHggcmdiYSgxMCwgMjIsIDQwLCAwLjA2KSwgMCA4cHggMzJweCByZ2JhKDEwLCAyMiwgNDAsIDAuMTIpO1xuICAgIC0tc2hhZG93LXNvZnQteGw6IDAgOHB4IDE2cHggcmdiYSgxMCwgMjIsIDQwLCAwLjA4KSwgMCAxNnB4IDQ4cHggcmdiYSgxMCwgMjIsIDQwLCAwLjE0KTtcblxuICAgIC8qIC0tLS0gUmFkaWkgKHVzZWQgYnkgVGFpbHdpbmQgdXRpbGl0aWVzIGxpa2Ugcm91bmRlZC1tZCkgLS0tLSAqL1xuICAgIC0tcmFkaXVzLXhzOiA0cHg7XG4gICAgLS1yYWRpdXMtc206IDZweDtcbiAgICAtLXJhZGl1cy1tZDogOHB4O1xuICAgIC0tcmFkaXVzLWxnOiAxMnB4O1xuICAgIC0tcmFkaXVzLXhsOiAxNnB4O1xuICAgIC0tcmFkaXVzLTJ4bDogMjRweDtcblxuICAgIC8qIC0tLS0gQnJhbmQgc2VtYW50aWMgYWxpYXNlcyAtLS0tICovXG4gICAgLS1jb2xvci1icmFuZDogdmFyKC0tY29sb3ItYmx1ZS02MDApO1xuICAgIC0tY29sb3ItYnJhbmQtZGFyazogdmFyKC0tY29sb3ItYmx1ZS04MDApO1xuICAgIC0tY29sb3Itc3VyZmFjZTogI0ZGRkZGRjtcbiAgICAtLWNvbG9yLXN1cmZhY2UtbXV0ZWQ6IHZhcigtLWNvbG9yLXNsYXRlLTUwKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNlIHJlc2V0cyDigJQgbGlnaHQgbGF5ZXIgb3ZlciBUYWlsd2luZCBwcmVmbGlnaHRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQGxheWVyIGJhc2Uge1xuICAgIGh0bWwge1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1zYW5zKTtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuXG4gICAgYm9keSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNsYXRlLTUwKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXNsYXRlLTcwMCk7XG4gICAgfVxuXG4gICAgLyogSGVhZGluZ3MgaW5oZXJpdCBHZWlzdCBieSBkZWZhdWx0OyB1c2UgdGhlc2UgY2xhc3NlcyB3aGVuIHlvdSBuZWVkIGV4cGxpY2l0IGNvbnRyb2wgKi9cbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW5hdnktOTAwKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgfVxuXG4gICAgLyogTHVjaWRlIGljb25zIOKAlCBzYW5lIGRlZmF1bHRzOiBzdHJva2UgZnJvbSBjdXJyZW50Q29sb3IsIG5vIGZpbGwgKi9cbiAgICBbZGF0YS1sdWNpZGVdIHtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAxLjc1O1xuICAgICAgICB3aWR0aDogMWVtO1xuICAgICAgICBoZWlnaHQ6IDFlbTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFJldXNhYmxlIGNvbXBvbmVudCBjbGFzc2VzXG4gICBJbnNwaXJlZCBieSBXZWItSVBTOiByb3VuZGVkLXhsLCBzb2Z0IHNoYWRvd3MsIGdlbmVyb3VzIHdoaXRlc3BhY2UuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbkBsYXllciBjb21wb25lbnRzIHtcblxuICAgIC8qIC0tLS0gQnV0dG9ucyAodXNlIGJhc2UgKyBtb2RpZmllcjogY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIikgLS0tLSAqL1xuICAgIC8qIGBjdXJzb3ItcG9pbnRlcmAgZXhwbMOtY2l0bzogVGFpbHdpbmQgNCBkZWrDsyBkZSBwb27DqXJzZWxvIGEgbG9zIGJvdG9uZXMgKHN1IHJlc2V0IHVzYVxuICAgICAgIGVsIGBjdXJzb3I6IGRlZmF1bHRgIGRlbCBuYXZlZ2Fkb3IpLCBhc8OtIHF1ZSB1biBgPGJ1dHRvbj5gIG5vIGF2aXNhYmEgZGUgcXVlIHNlIHBvZMOtYVxuICAgICAgIHB1bHNhci4gRW4gbGFzIHDDoWdpbmFzIGRlIEVhc3lBZG1pbiBubyBzZSBub3RhYmEg4oCUc3UgQm9vdHN0cmFwIGxvIHRyYWXigJQgeSBwb3IgZXNvXG4gICAgICAgdGFyZMOzIGVuIHNhbGlyOiBzZSB2ZcOtYSBzb2xvIGVuIGxvcyBib3RvbmVzIG51ZXN0cm9zIGZ1ZXJhIGRlIGVzZSBjcm9tby4gKi9cbiAgICAuYnRuIHtcbiAgICAgICAgQGFwcGx5IGlubGluZS1mbGV4IGN1cnNvci1wb2ludGVyIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBnYXAtMiByb3VuZGVkLW1kIHB4LTQgcHktMiB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTIwMCBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXMtdmlzaWJsZTpyaW5nLTIgZm9jdXMtdmlzaWJsZTpyaW5nLW9mZnNldC0yIGRpc2FibGVkOm9wYWNpdHktNTAgZGlzYWJsZWQ6Y3Vyc29yLW5vdC1hbGxvd2VkO1xuICAgIH1cbiAgICAuYnRuLXByaW1hcnkgICAgeyBAYXBwbHkgYmctYmx1ZS02MDAgdGV4dC13aGl0ZSBzaGFkb3ctc29mdC1zbSBob3ZlcjpiZy1ibHVlLTcwMCBob3ZlcjpzaGFkb3ctc29mdCBmb2N1cy12aXNpYmxlOnJpbmctYmx1ZS01MDA7IH1cbiAgICAuYnRuLXNlY29uZGFyeSAgeyBAYXBwbHkgYmctbmF2eS05MDAgdGV4dC13aGl0ZSBzaGFkb3ctc29mdC1zbSBob3ZlcjpiZy1uYXZ5LTgwMCBmb2N1cy12aXNpYmxlOnJpbmctbmF2eS03MDA7IH1cbiAgICAuYnRuLW91dGxpbmUgICAgeyBAYXBwbHkgYmctc2xhdGUtMTAwLzcwIHRleHQtc2xhdGUtNzAwIGhvdmVyOmJnLXNsYXRlLTIwMC84MCBmb2N1cy12aXNpYmxlOnJpbmctYmx1ZS01MDA7IH1cbiAgICAvKiBFc3RhZG8gc29icmUgdW4gYnRuLW91dGxpbmUgKGVsIGJvdMOzbiDCq0RhciBlbnRyYWRhwrspOiDDoW1iYXIgPSBlbiBjdXJzbywgbWludCA9IGNvbXBsZXRvLiAqL1xuICAgIC5idG4tZXN0YWRvLWFtYmFyIHsgQGFwcGx5IGJnLWFtYmVyLTEwMCB0ZXh0LWFtYmVyLTgwMCBob3ZlcjpiZy1hbWJlci0yMDA7IH1cbiAgICAuYnRuLWVzdGFkby1taW50ICB7IEBhcHBseSBiZy1taW50LTEwMCB0ZXh0LW1pbnQtODAwIGhvdmVyOmJnLW1pbnQtMjAwOyB9XG4gICAgLmJ0bi1naG9zdCAgICAgIHsgQGFwcGx5IGJnLXRyYW5zcGFyZW50IHRleHQtc2xhdGUtNjAwIGhvdmVyOmJnLXNsYXRlLTEwMCBmb2N1cy12aXNpYmxlOnJpbmctc2xhdGUtNDAwOyB9XG4gICAgLmJ0bi1kYW5nZXIgICAgIHsgQGFwcGx5IGJnLWNvcmFsLTUwMCB0ZXh0LXdoaXRlIHNoYWRvdy1zb2Z0LXNtIGhvdmVyOmJnLWNvcmFsLTYwMCBmb2N1cy12aXNpYmxlOnJpbmctY29yYWwtNDAwOyB9XG4gICAgLyogRGVzdHJ1Y3Rpdm8gZGUgYmFqbyBwZXNvOiBlbCBxdWUgb2ZyZWNlIGJvcnJhciBTSU4gZ3JpdGFyLiBFbCBzw7NsaWRvIGNvcmFsIGVzIHBhcmFcbiAgICAgICBjb25maXJtYXIgZGVudHJvIGRlbCBkacOhbG9nbzsgZWwgcXVlIHZpdmUgZW4gdW4gcmHDrWwganVudG8gYSBvdHJhcyBhY2Npb25lcyB2YSBhc8OtLFxuICAgICAgIHBvcnF1ZSB1biBgYnRuLWdob3N0YCBncmlzIG3DoXMgbm8gc2UgZGlzdGluZ3VlIGRlIMKrUmVhYnJpcsK7IG8gwqtBc2lnbmFywrsuICovXG4gICAgLmJ0bi1naG9zdC1kYW5nZXIgeyBAYXBwbHkgYmctdHJhbnNwYXJlbnQgdGV4dC1jb3JhbC02MDAgaG92ZXI6YmctY29yYWwtNTAgaG92ZXI6dGV4dC1jb3JhbC03MDAgZm9jdXMtdmlzaWJsZTpyaW5nLWNvcmFsLTQwMDsgfVxuICAgIC5idG4tYWNjZW50ICAgICB7IEBhcHBseSBiZy1nb2xkLTQwMCB0ZXh0LW5hdnktOTAwIHNoYWRvdy1zb2Z0LXNtIGhvdmVyOmJnLWdvbGQtNTAwIGZvY3VzLXZpc2libGU6cmluZy1nb2xkLTQwMDsgfVxuICAgIC8qIChObyBoYXkgYnRuLXhzOiBsYXMgYWNjaW9uZXMgZGVudHJvIGRlIHVuYSBmaWxhIGRlIHRhYmxhIHNvbiBib3RvbmVzIGRlIElDT05PIOKAlFxuICAgICAgIGBpY29uX2FjdGlvbmAgZW4gYWRtaW4vY2xpZW50ZXMvX21hY3Jvcy5odG1sLnR3aWfigJQsIG5vIGJvdG9uZXMgZGUgdGV4dG8gZW4gbWluaWF0dXJhLikgKi9cbiAgICAuYnRuLXNtICAgICAgICAgeyBAYXBwbHkgcHgtMyBweS0xLjUgdGV4dC14czsgfVxuICAgIC5idG4tbGcgICAgICAgICB7IEBhcHBseSBweC02IHB5LTMgdGV4dC1iYXNlOyB9XG4gICAgLmJ0bi1sb2FkaW5nICAgIHsgQGFwcGx5IHBvaW50ZXItZXZlbnRzLW5vbmUgb3BhY2l0eS03MDsgfVxuICAgIC5idG4tbG9hZGluZzo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMWVtO1xuICAgICAgICBoZWlnaHQ6IDFlbTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgY3VycmVudENvbG9yO1xuICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTk5cHg7XG4gICAgICAgIGFuaW1hdGlvbjogc3BpbiAwLjdzIGxpbmVhciBpbmZpbml0ZTtcbiAgICB9XG5cbiAgICAvKiAtLS0tIEJvdG9uIGRlIElDT05PIHNvYnJlIGZvbmRvIGJsYW5jbyAoY2FiZWNlcmFzIHkgYmFycmFzIGRlIGFjY2lvbmVzKSAtLS0tXG4gICAgICAgRGlzY3JldG86IHNpbiBjYWphIGVuIHJlcG9zbywgc29sbyBlbCBpY29ubzsgbGEgY2FqYSBhcGFyZWNlIGFsIHBhc2FyIHBvciBlbmNpbWEuXG4gICAgICAgRXMgZWwgcmVnaXN0cm8gY29ycmVjdG8gY3VhbmRvIHZhbiB2YXJpb3MgaWNvbm9zIHNlZ3VpZG9zIOKAlG1lZGlhIGRvY2VuYSBkZVxuICAgICAgIGBidG4tb3V0bGluZWAganVudG9zIHNlIGxlZW4gY29tbyB1bmEgaGlsZXJhIGRlIGNhamFzIGdyaXNlcyB5IHBlc2FuIG1hcyBxdWUgbGFcbiAgICAgICBhY2Npb24gcXVlIHJlcHJlc2VudGFu4oCULiBFbCBwcmltYXJpbyBkZSBsYSBmaWxhICh1bm8gc29sbywgeSBjb24gdGV4dG8pIHNpZ3VlXG4gICAgICAgc2llbmRvIHVuIGBidG4gYnRuLXByaW1hcnlgLlxuICAgICAgIChgaWNvbl9hY3Rpb25gIGRlIGFkbWluL2NsaWVudGVzL19tYWNyb3MuaHRtbC50d2lnIGVzIGVzdGUgbWlzbW8gZ2VzdG8gc29icmUgZm9uZG9cbiAgICAgICBzbGF0ZTogYWxsaSBlbCBob3ZlciBlcyB1bmEgdGFyamV0YSBibGFuY2EgZWxldmFkYTsgYXF1aSwgZ3Jpcy4pXG4gICAgICAgU2UgbGxhbWEgYGJ0bi1pY29uYCB5IG5vIGBpY29uLWJ0bmAgcG9ycXVlIGVzZSBub21icmUgeWEgbG8gb2N1cGEgdW4gYm90b24gY3VhZHJhZG9cbiAgICAgICBDT04gY2FqYSB5IGJvcmRlIGVuIGFzc2V0cy9jc3MvY2F0YWxvZ28uY3NzIChmaWNoYXMgZGUgY2F0YWxvZ28geSBDUlVEIGRlIHByb2ZpdCksXG4gICAgICAgcXVlIHZhIHNpbiBjYXBhIHkgZ2FuYXJpYSBhIGVzdGUuIE5vIHJldXRpbGl6YXIgZXNlIG5vbWJyZS4gKi9cbiAgICAuYnRuLWljb24ge1xuICAgICAgICBAYXBwbHkgaW5saW5lLWZsZXggaC04IHctOCBzaHJpbmstMCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1tZCBiZy10cmFuc3BhcmVudCB0ZXh0LXNsYXRlLTUwMFxuICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1jb2xvcnMgZHVyYXRpb24tMjAwIGhvdmVyOmJnLXNsYXRlLTEwMCBob3Zlcjp0ZXh0LXNsYXRlLTgwMFxuICAgICAgICAgICAgICAgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzLXZpc2libGU6cmluZy0yIGZvY3VzLXZpc2libGU6cmluZy1zbGF0ZS00MDBcbiAgICAgICAgICAgICAgIGRpc2FibGVkOm9wYWNpdHktNTAgZGlzYWJsZWQ6Y3Vyc29yLW5vdC1hbGxvd2VkO1xuICAgIH1cbiAgICAvKiBEZXN0cnVjdGl2bzogbWlzbW8gcGVzbyBxdWUgc3VzIHZlY2lub3MgZW4gcmVwb3NvLCBlbCByb2pvIHNvbG8gYWwgYXB1bnRhcmxvLiAqL1xuICAgIC5idG4taWNvbi1kYW5nZXIgeyBAYXBwbHkgaG92ZXI6YmctY29yYWwtNTAgaG92ZXI6dGV4dC1jb3JhbC02MDAgZm9jdXMtdmlzaWJsZTpyaW5nLWNvcmFsLTQwMDsgfVxuICAgIC8qIE1lbnUgYWJpZXJ0byAvIGVzdGFkbyBwdWxzYWRvOiBzZSBxdWVkYSBjb24gbGEgY2FqYSBkZWwgaG92ZXIuICovXG4gICAgLmJ0bi1pY29uLWFjdGl2ZSB7IEBhcHBseSBiZy1zbGF0ZS0xMDAgdGV4dC1zbGF0ZS04MDA7IH1cbiAgICAvKiBTZXBhcmFkb3IgZmlubyBlbnRyZSBncnVwb3MgZGUgaWNvbm9zIChwLiBlai4gYW50ZXMgZGVsIGRlc3RydWN0aXZvKS4gKi9cbiAgICAuYnRuLWljb24tc2VwICAgIHsgQGFwcGx5IG14LTEgaC01IHctcHggc2hyaW5rLTAgYmctc2xhdGUtMjAwOyB9XG5cbiAgICAvKiAtLS0tIENhcmRzIC8gc3VyZmFjZXMg4oCUIGJvcmRlcmxlc3MsIHNvbWJyYXMgc3VhdmVzIHBhcmEgZGFyIGVsZXZhY2lvbi4gLS0tLSAqL1xuICAgIC5jYXJkICAgICAgICB7IEBhcHBseSByb3VuZGVkLWxnIGJnLXdoaXRlIHNoYWRvdy1zb2Z0LW1kOyB9XG4gICAgLmNhcmQtcGFkZGVkIHsgQGFwcGx5IHAtNjsgfVxuICAgIC5jYXJkLWhlYWRlciB7IEBhcHBseSBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gcC01IHNtOnAtNiBib3JkZXItYiBib3JkZXItc2xhdGUtMTAwLzgwOyB9XG4gICAgLmNhcmQtYm9keSAgIHsgQGFwcGx5IHAtNSBzbTpwLTY7IH1cbiAgICAuY2FyZC1mb290ZXIgeyBAYXBwbHkgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1lbmQgZ2FwLTIgcC01IHNtOnAtNiBib3JkZXItdCBib3JkZXItc2xhdGUtMTAwLzgwOyB9XG5cbiAgICAvKiAtLS0tIEZvcm0gY29udHJvbHMg4oCUIHNpbiBib3JkZXMgZHVyb3MsIGZvbmRvIHN1dGlsIHF1ZSBzZSBhY2xhcmEgYWwgZm9jby4gLS0tLSAqL1xuICAgIC5pbnB1dCB7XG4gICAgICAgIEBhcHBseSBibG9jayB3LWZ1bGwgcm91bmRlZC1tZCBib3JkZXItMCBiZy1zbGF0ZS0xMDAvNzAgcHgtMy41IHB5LTIuNSB0ZXh0LXNtIHRleHQtc2xhdGUtOTAwIHRyYW5zaXRpb24tYWxsIHBsYWNlaG9sZGVyOnRleHQtc2xhdGUtNDAwXG4gICAgICAgICAgICAgICBmb2N1czpiZy13aGl0ZSBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6cmluZy0yIGZvY3VzOnJpbmctYmx1ZS01MDAvMzBcbiAgICAgICAgICAgICAgIGRpc2FibGVkOmJnLXNsYXRlLTEwMCBkaXNhYmxlZDp0ZXh0LXNsYXRlLTUwMDtcbiAgICB9XG4gICAgLmlucHV0LWxnICAgIHsgQGFwcGx5IHB4LTQgcHktMyB0ZXh0LWJhc2U7IH1cbiAgICAvKiBUYWxsYSBkZSBMSVNUQURPOiBiYXJyYXMgZGUgZmlsdHJvcyB5IHRvb2xiYXJzLCBkb25kZSB1biBjb250cm9sIGRlIDQyIHB4IGRlIGFsdG9cbiAgICAgICByZXBldGlkbyBvY2hvIHZlY2VzIHNlIGNvbWUgbGEgcGFudGFsbGEuIFNpZ3VlIHNpZW5kbyB1biBvYmpldGl2byBkZSB+MzIgcHg6IGxhXG4gICAgICAgdmVyc2nDs24gwqtwbGFuYcK7IHNpbiBmb25kbyBzZSBxdWVkYWJhIGVuIDE4IHB4IHkgaGFiw61hIHF1ZSBhY2VydGFyIHVuYSBsw61uZWFcbiAgICAgICBpbnZpc2libGUgcGFyYSBwb2RlciBlc2NyaWJpciBvIGRlc3BsZWdhci4gKi9cbiAgICAuaW5wdXQtc20gICAgeyBAYXBwbHkgcHgtMyBweS0xLjUgdGV4dC1bMTNweF07IH1cbiAgICAuaW5wdXQtZXJyb3IgeyBAYXBwbHkgcmluZy0yIHJpbmctY29yYWwtNDAwIGZvY3VzOnJpbmctY29yYWwtNTAwLzQwOyB9XG5cbiAgICAvKiBDYW1wbyBkZSBiw7pzcXVlZGE6IGVsIGljb25vIGRlbnRybywgc2luIHJvYmFybGUgZWwgY2xpYyBhbCBpbnB1dC4gKi9cbiAgICAuaW5wdXQtc2VhcmNoICAgICAgICB7IEBhcHBseSByZWxhdGl2ZTsgfVxuICAgIC5pbnB1dC1zZWFyY2ggPiBzdmcsXG4gICAgLmlucHV0LXNlYXJjaCA+IFtkYXRhLWx1Y2lkZV0ge1xuICAgICAgICBAYXBwbHkgcG9pbnRlci1ldmVudHMtbm9uZSBhYnNvbHV0ZSBsZWZ0LTMgdG9wLTEvMiBoLTQgdy00IC10cmFuc2xhdGUteS0xLzIgdGV4dC1zbGF0ZS00MDA7XG4gICAgfVxuICAgIC5pbnB1dC1zZWFyY2ggPiBpbnB1dCB7IEBhcHBseSBwbC05OyB9XG4gICAgLmxhYmVsICAgICAgIHsgQGFwcGx5IG1iLTEuNSBibG9jayB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtc2xhdGUtNjAwOyB9XG4gICAgLmhlbHAtdGV4dCAgIHsgQGFwcGx5IG10LTIgdGV4dC14cyB0ZXh0LXNsYXRlLTUwMDsgfVxuICAgIC5lcnJvci10ZXh0ICB7IEBhcHBseSBtdC0xIHRleHQteHMgdGV4dC1jb3JhbC02MDA7IH1cblxuICAgIC8qIC0tLS0gQmFkZ2VzICh1c2U6IGNsYXNzPVwiYmFkZ2UgYmFkZ2UtYmx1ZVwiKSAtLS0tICovXG4gICAgLmJhZGdlICAgICAgICB7IEBhcHBseSBpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTEgcm91bmRlZC1tZCBweC0yLjUgcHktMC41IHRleHQteHMgZm9udC1zZW1pYm9sZDsgfVxuICAgIC5iYWRnZS1ibHVlICAgeyBAYXBwbHkgYmctYmx1ZS0xMDAgdGV4dC1ibHVlLTgwMDsgfVxuICAgIC5iYWRnZS1uYXZ5ICAgeyBAYXBwbHkgYmctbmF2eS0xMDAgdGV4dC1uYXZ5LTgwMDsgfVxuICAgIC5iYWRnZS1nb2xkICAgeyBAYXBwbHkgYmctZ29sZC0xMDAgdGV4dC1nb2xkLTgwMDsgfVxuICAgIC5iYWRnZS1taW50ICAgeyBAYXBwbHkgYmctbWludC0xMDAgdGV4dC1taW50LTgwMDsgfVxuICAgIC5iYWRnZS1jb3JhbCAgeyBAYXBwbHkgYmctY29yYWwtMTAwIHRleHQtY29yYWwtNzAwOyB9XG4gICAgLmJhZGdlLXNsYXRlICB7IEBhcHBseSBiZy1zbGF0ZS0xMDAgdGV4dC1zbGF0ZS03MDA7IH1cbiAgICAvKiBWYXJpYW50ZSBzw7NsaWRhIHBhcmEgZWwgZXNjYWzDs24gbcOhcyBhbHRvIGRlIHVuYSBlc2NhbGEgb3JkaW5hbCAoZ3JhdmVkYWQgwqtNdXlcbiAgICAgICBncmF2ZcK7IGRlIGluY2lkZW5jaWFzKTogZW4gdW4gbGlzdGFkbyBkZW5zbyBlbCBjb3JhbCBjbGFybyBkZSDCq0dyYXZlwrsgeSBlbCBkZVxuICAgICAgIMKrTXV5IGdyYXZlwrsgc2UgY29uZnVuZMOtYW4gZGUgdW4gdmlzdGF6by4gKi9cbiAgICAuYmFkZ2UtY29yYWwtc29saWQgeyBAYXBwbHkgYmctY29yYWwtNzAwIHRleHQtd2hpdGU7IH1cbiAgICAvKiBCYWRnZSBkZSB0YWJsYSBjb21wYWN0YTogbGEgbWlzbWEgZXRpcXVldGEgc2luIGVuZ29yZGFyIGxhIGZpbGEuICovXG4gICAgLmJhZGdlLXNtICAgICB7IEBhcHBseSBweC0yIHB5LTAgdGV4dC1bMTFweF0gZm9udC1tZWRpdW07IH1cblxuICAgIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICAgICBJZGVudGlkYWQgZGUgdW5hIHBlcnNvbmEg4oCUIGVsIGNvbG9yIGRlIHBlcmZpbC5cblxuICAgICAgIENhZGEgdXN1YXJpbyBlbGlnZSBzdSBjb2xvciBlbiDCq01pIHBlcmZpbMK7IHkgZGVzZGUgYWjDrSBsbyBsbGV2YSBhIHRvZGFzIHBhcnRlczogZWwgY2hpcFxuICAgICAgIGNvbiBzdSBub21icmUgZW4gdW5hIGxpc3RhLCBlbCBwdW50byB5IGVsIGJvcmRlIGRlIHN1IGJ1cmJ1amEgZW4gZWwgc2VndWltaWVudG8gZGUgdW5hXG4gICAgICAgaW5jaWRlbmNpYSwgZWwgZGlzY28gZGUgc3VzIGluaWNpYWxlcyBjdWFuZG8gbm8gaGEgc3ViaWRvIGZvdG8uIFF1ZSBzZWEgU0lFTVBSRSBlbCBtaXNtb1xuICAgICAgIGVzIGxvIHF1ZSBsbyBoYWNlIMO6dGlsOiBlbCBjb2xvciBpZGVudGlmaWNhIHNpbiBvYmxpZ2FyIGEgbGVlciBlbCBub21icmUuXG5cbiAgICAgICBDdWF0cm8gdmFyaWFibGVzIHkgbm8gdW5hIHBvcnF1ZSBlbCBtaXNtbyBjb2xvciB0aWVuZSBxdWUgc2VydmlyIGRlIGZvbmRvIGNvbiB0ZXh0b1xuICAgICAgIGVuY2ltYSAoYHN1YXZlYCArIGB0ZXh0b2ApIHkgZGUgdGludGEgc29icmUgYmxhbmNvIG8gY29uIGJsYW5jbyBlbmNpbWEgKGBmdWVydGVgKS4gTG9zXG4gICAgICAgcGFyZXMgc2FsZW4gZGVsIGVudW0gYFVzdWFyaW9Db2xvcmAsIHF1ZSBlcyBkb25kZSBzZSBjb21wcm9iw7MgcXVlIGxvcyBkb3Mgc2VudGlkb3MgcGFzYW5cbiAgICAgICBBQTogdW4gY2hpcCBjdXlvIHRleHRvIG5vIHNlIGxlZSBlcyBwZW9yIHF1ZSB1biBjaGlwIGdyaXMuXG4gICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC51LWF6dWwgICAgIHsgLS11LWZ1ZXJ0ZTogIzAwNTJDQzsgLS11LXN1YXZlOiAjRTBFREZGOyAtLXUtYm9yZGU6ICNCQ0Q2RkY7IC0tdS10ZXh0bzogIzAwM0ZBMzsgfVxuICAgIC51LXR1cnF1ZXNhIHsgLS11LWZ1ZXJ0ZTogIzBGNzY2RTsgLS11LXN1YXZlOiAjQ0NGQkYxOyAtLXUtYm9yZGU6ICM5OUY2RTQ7IC0tdS10ZXh0bzogIzExNUU1OTsgfVxuICAgIC51LXZlcmRlICAgIHsgLS11LWZ1ZXJ0ZTogIzA0Nzg1NzsgLS11LXN1YXZlOiAjRDFGQUU1OyAtLXUtYm9yZGU6ICNBN0YzRDA7IC0tdS10ZXh0bzogIzA2NUY0NjsgfVxuICAgIC51LW9saXZhICAgIHsgLS11LWZ1ZXJ0ZTogIzREN0MwRjsgLS11LXN1YXZlOiAjRUNGQ0NCOyAtLXUtYm9yZGU6ICNEOUY5OUQ7IC0tdS10ZXh0bzogIzNGNjIxMjsgfVxuICAgIC51LWFtYmFyICAgIHsgLS11LWZ1ZXJ0ZTogIzhGNjgwOTsgLS11LXN1YXZlOiAjRjVFREQ2OyAtLXUtYm9yZGU6ICNFQ0RDQTQ7IC0tdS10ZXh0bzogIzZCNEUwNzsgfVxuICAgIC51LW5hcmFuamEgIHsgLS11LWZ1ZXJ0ZTogI0MyNDEwQzsgLS11LXN1YXZlOiAjRkZFREQ1OyAtLXUtYm9yZGU6ICNGRUQ3QUE7IC0tdS10ZXh0bzogIzlBMzQxMjsgfVxuICAgIC51LWNvcmFsICAgIHsgLS11LWZ1ZXJ0ZTogI0I4M0EyQjsgLS11LXN1YXZlOiAjRkZEOUQyOyAtLXUtYm9yZGU6ICNGRkIzQTg7IC0tdS10ZXh0bzogIzhDMkExRjsgfVxuICAgIC51LXJvc2EgICAgIHsgLS11LWZ1ZXJ0ZTogI0JFMTg1RDsgLS11LXN1YXZlOiAjRkNFN0YzOyAtLXUtYm9yZGU6ICNGQkNGRTg7IC0tdS10ZXh0bzogIzlEMTc0RDsgfVxuICAgIC51LXZpb2xldGEgIHsgLS11LWZ1ZXJ0ZTogIzZEMjhEOTsgLS11LXN1YXZlOiAjRURFOUZFOyAtLXUtYm9yZGU6ICNEREQ2RkU7IC0tdS10ZXh0bzogIzVCMjFCNjsgfVxuICAgIC51LW1hcmlubyAgIHsgLS11LWZ1ZXJ0ZTogIzFCM0E2ODsgLS11LXN1YXZlOiAjRThFREY1OyAtLXUtYm9yZGU6ICNDNUNGRTA7IC0tdS10ZXh0bzogIzBCMUY0RDsgfVxuXG4gICAgLyogQ2hpcCBjb24gZWwgbm9tYnJlIGRlIHVuYSBwZXJzb25hLiBNaXNtYSBmaWd1cmEgcXVlIGBiYWRnZWAg4oCUZXNxdWluYSBzdWF2ZSwgbm8gcMOtbGRvcmHigJRcbiAgICAgICBwYXJhIHF1ZSBlbiB1bmEgZmlsYSBubyBjb21waXRhIGNvbiBlbCBiYWRnZSBkZSBlc3RhZG8gcXVlIHN1ZWxlIHRlbmVyIGFsIGxhZG8uICovXG4gICAgLmNoaXAtdXN1YXJpbyB7XG4gICAgICAgIEBhcHBseSBpbmxpbmUtZmxleCBtYXgtdy1mdWxsIGl0ZW1zLWNlbnRlciBnYXAtMS41IHJvdW5kZWQtbWQgYm9yZGVyIHB4LTIgcHktMC41XG4gICAgICAgICAgICAgICB0ZXh0LXhzIGZvbnQtc2VtaWJvbGQgbGVhZGluZy01O1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS11LXN1YXZlLCB2YXIoLS1jb2xvci1zbGF0ZS0xMDApKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS11LWJvcmRlLCB2YXIoLS1jb2xvci1zbGF0ZS0yMDApKTtcbiAgICAgICAgY29sb3I6IHZhcigtLXUtdGV4dG8sIHZhcigtLWNvbG9yLXNsYXRlLTcwMCkpO1xuICAgIH1cbiAgICAuY2hpcC11c3VhcmlvLW5vbWJyZSB7IEBhcHBseSB0cnVuY2F0ZTsgfVxuICAgIC8qIEVsIHB1bnRvIG5vIGVzIGRlY29yYWNpw7NuOiBjb24gZG9zIGNvbG9yZXMgcGFyZWNpZG9zLCBlcyBsbyBxdWUgZW5zZcOxYSBsYSB0aW50YSBwbGVuYVxuICAgICAgIGRlbCBjb2xvciBqdW50byBhbCBmb25kbyBsYXZhZG8sIHF1ZSBlcyBsbyBxdWUgZGUgdmVyZGFkIGxvcyBzZXBhcmEuICovXG4gICAgLmNoaXAtdXN1YXJpby1wdW50byB7XG4gICAgICAgIEBhcHBseSBoLTEuNSB3LTEuNSBzaHJpbmstMCByb3VuZGVkLWZ1bGw7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXUtZnVlcnRlLCB2YXIoLS1jb2xvci1zbGF0ZS00MDApKTtcbiAgICB9XG5cbiAgICAvKiBEaXNjbyBkZSBpbmljaWFsZXM6IGxvIHF1ZSBzZSBwaW50YSBjdWFuZG8gbm8gaGF5IGZvdG8gZGUgcGVyZmlsLiBTaW4gw6lsIHRvZG9zIGxvc1xuICAgICAgIGRpc2NvcyBlcmFuIGRlbCBtaXNtbyBkZWdyYWRhZG8gYXp1bCB5IG5vIGRpc3Rpbmd1w61hbiBhIG5hZGllLiAqL1xuICAgIC5hdmF0YXItdXN1YXJpbyB7XG4gICAgICAgIEBhcHBseSBpbmxpbmUtZmxleCBzaHJpbmstMCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgb3ZlcmZsb3ctaGlkZGVuIHJvdW5kZWQtZnVsbFxuICAgICAgICAgICAgICAgZm9udC1zZW1pYm9sZCB1cHBlcmNhc2UgbGVhZGluZy1ub25lIHRleHQtd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXUtZnVlcnRlLCB2YXIoLS1jb2xvci1zbGF0ZS00MDApKTtcbiAgICB9XG4gICAgLmF2YXRhci11c3VhcmlvIGltZyB7IEBhcHBseSBoLWZ1bGwgdy1mdWxsIG9iamVjdC1jb3ZlcjsgfVxuICAgIC5hdmF0YXItdXN1YXJpby1zbSB7IEBhcHBseSBoLTYgdy02IHRleHQtWzEwcHhdOyB9XG4gICAgLmF2YXRhci11c3VhcmlvLW1kIHsgQGFwcGx5IGgtOCB3LTggdGV4dC14czsgfVxuICAgIC5hdmF0YXItdXN1YXJpby1sZyB7IEBhcHBseSBoLTEwIHctMTAgdGV4dC1zbTsgfVxuXG4gICAgLyogUXVpdGFyIGxhIGZvdG86IHVuIGVubGFjZSB0ZW51ZSBERUJBSk8gZGVsIGRpc2NvLiBDb21vIGJhZGdlIGZsb3RhbnRlIHNvYnJlIGxhIGZvdG8gcGVkaWFcbiAgICAgICBkZW1hc2lhZGEgYXRlbmNpb24gcGFyYSBhbGdvIHF1ZSBzZSB1c2EgdW5hIHZlei4gKi9cbiAgICAuYXZhdGFyLXF1aXRhciB7XG4gICAgICAgIC8qIGBtdC0zYCB5IG5vIG1lbm9zOiBlbCBib3RvbiBkZSBjYW1hcmEgc29icmVzYWxlIHBvciBkZWJham8gZGVsIGRpc2NvIHkgY29uIG1lbm9zIGFpcmUgZWxcbiAgICAgICAgICAgZW5sYWNlIGxlIHF1ZWRhYmEgYSBsYSBtaXNtYSBhbHR1cmEuICovXG4gICAgICAgIEBhcHBseSBtdC0zIGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBnYXAtMSB0ZXh0LVsxMXB4XSBmb250LW1lZGl1bSB0ZXh0LXNsYXRlLTQwMFxuICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1jb2xvcnM7XG4gICAgfVxuICAgIC5hdmF0YXItcXVpdGFyOmhvdmVyIHsgQGFwcGx5IHRleHQtY29yYWwtNjAwOyB9XG5cbiAgICAvKiBDYWJlY2VyYSBkZSDCq01pIHBlcmZpbMK7OiBlbCB0aW50ZSBzYWxlIGRlbCBjb2xvciBkZSBsYSBwZXJzb25hIChgLS11LXN1YXZlYCwgcXVlIHBvbmUgbGFcbiAgICAgICBjbGFzZSBgdS08Y29sb3I+YCBkZWwgcHJvcGlvIGhlYWRlciksIG5vIGRlIHVuIGF6dWwgZmlqby4gU2UgZGVzdmFuZWNlIGEgdHJhbnNwYXJlbnRlIHNvYnJlXG4gICAgICAgZWwgYmxhbmNvIGRlIGxhIHRhcmpldGE6IGNvbiB1bmEgcGFyYWRhIGRlIGNvbG9yIHNvbGlkbyBhIG1lZGlhIGJhbmRhIHNlIHZlaWEgbGEgY29zdHVyYS4gKi9cbiAgICAucGVyZmlsLWNhYmVjZXJhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDEwMGRlZyxcbiAgICAgICAgICAgIHZhcigtLXUtc3VhdmUsIHZhcigtLWNvbG9yLWJsdWUtNTApKSAwJSxcbiAgICAgICAgICAgIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS11LXN1YXZlLCB2YXIoLS1jb2xvci1ibHVlLTUwKSkgNDUlLCAjZmZmKSAzOCUsXG4gICAgICAgICAgICAjZmZmIDc4JSk7XG4gICAgfVxuXG4gICAgLyogTXVlc3RyYSBkZSBjb2xvciBlbiDCq01pIHBlcmZpbMK7LiBFbCBhcm8gZXh0ZXJpb3IgZXMgbG8gcXVlIG1hcmNhIGVsIGVsZWdpZG86IHVuIGJvcmRlXG4gICAgICAgbcOhcyBncnVlc28gc29icmUgZWwgcHJvcGlvIGNvbG9yIG5vIHNlIHZlLCB5IHVuYSBtYXJjYSBkZSBjaGVjayBkZW50cm8gc2UgcGllcmRlIGVuIDE4IHB4LiAqL1xuICAgIC5zd2F0Y2gge1xuICAgICAgICBAYXBwbHkgaW5saW5lLWJsb2NrIGgtNSB3LTUgY3Vyc29yLXBvaW50ZXIgcm91bmRlZC1mdWxsIHRyYW5zaXRpb24tdHJhbnNmb3JtIGhvdmVyOnNjYWxlLTExMDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tdS1mdWVydGUpO1xuICAgIH1cbiAgICAuc3dhdGNoLW9uIHsgQGFwcGx5IHNjYWxlLTExMDsgYm94LXNoYWRvdzogMCAwIDAgMnB4ICNmZmYsIDAgMCAwIDRweCB2YXIoLS11LWZ1ZXJ0ZSk7IH1cbiAgICAuc3dhdGNoOmZvY3VzLXdpdGhpbiB7IEBhcHBseSBzY2FsZS0xMTA7IGJveC1zaGFkb3c6IDAgMCAwIDJweCAjZmZmLCAwIDAgMCA0cHggdmFyKC0tY29sb3ItbmF2eS05MDApOyB9XG5cbiAgICAvKiAtLS0tIFRhYmxlcyAtLS0tICovXG4gICAgLnRhYmxlICAgICAgICAgICAgICB7IEBhcHBseSB3LWZ1bGwgdGV4dC1zbSB0ZXh0LWxlZnQgdGV4dC1zbGF0ZS03MDA7IH1cbiAgICAudGFibGUgdGhlYWQgICAgICAgIHsgQGFwcGx5IGJnLXNsYXRlLTUwIHRleHQteHMgZm9udC1zZW1pYm9sZCB1cHBlcmNhc2UgdHJhY2tpbmctd2lkZSB0ZXh0LXNsYXRlLTUwMDsgfVxuICAgIC50YWJsZSB0aCxcbiAgICAudGFibGUgdGQgICAgICAgICAgIHsgQGFwcGx5IHB4LTQgcHktMzsgfVxuICAgIC8qIERlbnNpZGFkIGRlIExJU1RBRE86IHZlciBtdWNobyBkZSB1biB2aXN0YXpvLiBFbCBwYWRkaW5nIGRlIGAudGFibGVgIGVzIGVsIGRlIHVuYVxuICAgICAgIHRhYmxhIGRlIGRldGFsbGU7IGVuIHVuIGxpc3RhZG8gZGUgZG9jdW1lbnRvcyBvIGV4cGVkaWVudGVzIHNvYnJhLiAqL1xuICAgIC50YWJsZS1jb21wYWN0IHRoLFxuICAgIC50YWJsZS1jb21wYWN0IHRkICAgeyBAYXBwbHkgcHgtMyBweS0yOyB9XG4gICAgLnRhYmxlIHRib2R5IHRyICAgICB7IEBhcHBseSBib3JkZXItdCBib3JkZXItc2xhdGUtMjAwOyB9XG4gICAgLnRhYmxlIHRib2R5IHRyOmhvdmVyIHsgQGFwcGx5IGJnLXNsYXRlLTUwOyB9XG4gICAgLnRhYmxlLXplYnJhIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7IEBhcHBseSBiZy1zbGF0ZS01MC80MDsgfVxuXG4gICAgLyogVGFibGEgU0lOIGNhamE6IGxhIHRhYmxhIEVTIGxhIHNlY2Npw7NuLCBubyBhbGdvIG1ldGlkbyBkZW50cm8gZGUgdW5hIHRhcmpldGEuXG4gICAgICAgU29icmUgZWwgZm9uZG8gYHNsYXRlLTUwYCBkZSBsYXMgcMOhZ2luYXMgZGVsIGFkbWluLCB1biBgZGl2YCBibGFuY28gY29uIGJvcmRlXG4gICAgICAgYWxyZWRlZG9yIGRlIGNhZGEgdGFibGEgY29udmllcnRlIGxhIHBhbnRhbGxhIGVuIHVuYSBwaWxhIGRlIHJlY3TDoW5ndWxvczsgY29uIGVzdG9cbiAgICAgICBsYSB0YWJsYSBzZSBhcG95YSBlbiBsYSBww6FnaW5hIHkgc29sbyBsYSBzb3N0aWVuZW4gbG9zIGZpbGV0ZXMuIEVsIGVudm9sdG9yaW8gc2VcbiAgICAgICBxdWVkYSBlbiBgb3ZlcmZsb3cteC1hdXRvYCBhIHNlY2FzLCBzaW4gYHJvdW5kZWQtbGcgYm9yZGVyIGJnLXdoaXRlYC5cblxuICAgICAgIFZhIFNPTEEsIHNpbiBgLnRhYmxlYCBhbCBsYWRvOiBgLnRhYmxlYCBlcyB0YW1iacOpbiB1bmEgY2xhc2UgZGUgQm9vdHN0cmFwLCB5IGVsXG4gICAgICAgQm9vdHN0cmFwIHF1ZSB0cmFlIEVhc3lBZG1pbiBwaW50YSBgLnRhYmxlID4gOm5vdChjYXB0aW9uKSA+ICogPiAqYCBjb24gZm9uZG9cbiAgICAgICBibGFuY28uIEFsIHBvbmVybGFzIGp1bnRhcyBsYSB0YWJsYSBwbGFuYSBzYWzDrWEgY29tbyB1bmEgYmFuZGEgYmxhbmNhIHNvYnJlIGVsIGdyaXNcbiAgICAgICBkZSBsYSBww6FnaW5hIHkgbm8gaGFiw61hIGZvcm1hIGxpbXBpYSBkZSBxdWl0YXJsbyBzaW4gYCFpbXBvcnRhbnRgLiBBc8OtIHF1ZSBlc3RhIHNlXG4gICAgICAgYmFzdGEgYSBzw60gbWlzbWE6IG5vIGxlIGHDsWFkYXMgYHRhYmxlYCBuaSBgdGFibGUtY29tcGFjdGAuICovXG4gICAgLnRhYmxlLXBsYWluICAgICAgICAgICAgICAgICAgICB7IEBhcHBseSB3LWZ1bGwgdGV4dC1sZWZ0IHRleHQtc20gdGV4dC1zbGF0ZS03MDA7IH1cbiAgICAudGFibGUtcGxhaW4gdGhlYWQgICAgICAgICAgICAgIHsgQGFwcGx5IGJnLXRyYW5zcGFyZW50IHRleHQteHMgZm9udC1zZW1pYm9sZCB1cHBlcmNhc2UgdHJhY2tpbmctd2lkZSB0ZXh0LXNsYXRlLTQwMDsgfVxuICAgIC50YWJsZS1wbGFpbiB0aGVhZCB0aCAgICAgICAgICAgeyBAYXBwbHkgYm9yZGVyLWIgYm9yZGVyLXNsYXRlLTIwMCBweC0zIHBiLTEuNSBmb250LXNlbWlib2xkOyB9XG4gICAgLnRhYmxlLXBsYWluIHRib2R5IHRkICAgICAgICAgICB7IEBhcHBseSBib3JkZXItdCBib3JkZXItc2xhdGUtMTAwIHB4LTMgcHktMiBhbGlnbi10b3A7IH1cbiAgICAudGFibGUtcGxhaW4gdGJvZHkgdHI6Zmlyc3QtY2hpbGQgPiB0ZCB7IEBhcHBseSBib3JkZXItdC0wOyB9XG4gICAgLyogQ2VicmEuIEVuIHVuYSB0YWJsYSBjb24gZmlsYXMgZGVzcGxlZ2FibGVzIGNhZGEgZG9jdW1lbnRvIG9jdXBhIGRvcyBgdHJgLiAqL1xuICAgIC50YWJsZS1wbGFpbiB0Ym9keSB0cjpudGgtb2YtdHlwZShldmVuKTpub3QoW2RhdGEtZGV0YWxsZS1jdWVycG9dKSxcbiAgICAudGFibGUtcGxhaW4gdGJvZHkgdHJbZGF0YS1kZXRhbGxlLWRvY106bnRoLW9mLXR5cGUoNG4rMykgeyBAYXBwbHkgYmctc2xhdGUtMTAwOyB9XG4gICAgLnRhYmxlLXBsYWluIHRib2R5IHRyW2RhdGEtZGV0YWxsZS1kb2NdOm50aC1vZi10eXBlKGV2ZW4pIHsgQGFwcGx5IGJnLXRyYW5zcGFyZW50OyB9XG5cbiAgICAvKiAtLS0tIFNlY3Rpb24gaGVhZGluZyAoV2ViLUlQUyBpbnNwaXJlZCB3aXRoIGdvbGQgdW5kZXJsaW5lKSAtLS0tICovXG4gICAgLnNlY3Rpb24taGVhZGluZyAgICAgICB7IEBhcHBseSB0ZXh0LTN4bCBzbTp0ZXh0LTR4bCBmb250LWJvbGQgdGV4dC1uYXZ5LTkwMCB0cmFja2luZy10aWdodDsgfVxuICAgIC5zZWN0aW9uLWhlYWRpbmctcnVsZSAgeyBAYXBwbHkgbXQtMyBpbmxpbmUtYmxvY2sgaC0xIHctMTYgcm91bmRlZCBiZy1ncmFkaWVudC10by1yIGZyb20tZ29sZC01MDAgdG8tZ29sZC0zMDA7IH1cbiAgICAuc2VjdGlvbi1zdWJ0aXRsZSAgICAgIHsgQGFwcGx5IG10LTMgbWF4LXctMnhsIHRleHQtYmFzZSB0ZXh0LXNsYXRlLTUwMDsgfVxuXG4gICAgLyogLS0tLSBTdGF0dXMgLyBhbGVydCAodXNlOiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWluZm9cIikgLS0tLSAqL1xuICAgIC5hbGVydCAgICAgICAgIHsgQGFwcGx5IGZsZXggaXRlbXMtc3RhcnQgZ2FwLTMgcm91bmRlZC1sZyBib3JkZXIgcC00IHRleHQtc207IH1cbiAgICAuYWxlcnQtaW5mbyAgICB7IEBhcHBseSBib3JkZXItYmx1ZS0yMDAgYmctYmx1ZS01MCB0ZXh0LWJsdWUtOTAwOyB9XG4gICAgLmFsZXJ0LXN1Y2Nlc3MgeyBAYXBwbHkgYm9yZGVyLW1pbnQtMjAwIGJnLW1pbnQtNTAgdGV4dC1taW50LTgwMDsgfVxuICAgIC5hbGVydC13YXJuaW5nIHsgQGFwcGx5IGJvcmRlci1nb2xkLTIwMCBiZy1nb2xkLTUwIHRleHQtZ29sZC04MDA7IH1cbiAgICAuYWxlcnQtZGFuZ2VyICB7IEBhcHBseSBib3JkZXItY29yYWwtMjAwIGJnLWNvcmFsLTUwIHRleHQtY29yYWwtNzAwOyB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgV2ViLUlQUyBmbG93IHByaW1pdGl2ZXMg4oCUIGZvciBzZWN0aW9ucyB0aGF0IGdyb3VwIGNvbnRlbnQgV0lUSE9VVFxuICAgICAgIGEgY2FyZCBib3JkZXIuIFBhaXIgd2l0aCAuY2FyZCBvbmx5IG9uIGVkaXRpb24gem9uZXMuXG4gICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4gICAgLyogRmx1aWQgc2VjdGlvbjogaGVhZGluZyArIGNvbnRlbnQgc2VwYXJhdGVkIGJ5IHNwYWNpbmcsIG5vIGJvcmRlci5cblxuICAgICAgIFZhIGNvbiBgZ2FwYCwgTk8gY29uIGBzcGFjZS15LSpgOiBUYWlsd2luZCA0IGNvbXBpbGEgYHNwYWNlLXlgIGNvbW9cbiAgICAgICBgOndoZXJlKCYgPiA6bm90KDpsYXN0LWNoaWxkKSlgLCBxdWUgdGllbmUgZXNwZWNpZmljaWRhZCBDRVJPLCBhc8OtIHF1ZSBjdWFscXVpZXJcbiAgICAgICByZWdsYSBjdWFsaWZpY2FkYSBwb3IgZWxlbWVudG8gbGEgZ2FuYS4gRW4gY29uY3JldG8gbGEgY29ycmVjY2nDs24gZGUgY2FzY2FkYSBkZSBtw6FzXG4gICAgICAgYWJham8gKGBoMi5zZWN0aW9uLWZsb3ctdGl0bGUgeyBtYXJnaW4tYm90dG9tOiAwIH1gLCBvYmxpZ2FkYSBwb3JxdWUgRWFzeUFkbWluIHRyYWVcbiAgICAgICBCb290c3RyYXAgdW5sYXllcmVkKSBsYSBhbnVsYWJhLCB5IGVsIHTDrXR1bG8gcXVlZGFiYSBwZWdhZG8gYSBzdSBjb250ZW5pZG8gZW4gdG9kb1xuICAgICAgIGVsIGFkbWluLiBFbCBgZ2FwYCBkZWwgY29udGVuZWRvciBubyBsbyBwdWVkZSBwaXNhciBuaW5nw7puIGhpam8uXG4gICAgICAgUGFyYSBjYW1iaWFyIGxhIHNlcGFyYWNpw7NuIGVuIHVuIHVzbyBjb25jcmV0bywgYcOxYWRlIGBnYXAtKmAsIG5vIGBzcGFjZS15LSpgLiAqL1xuICAgIC5zZWN0aW9uLWZsb3cgICAgICAgICB7IEBhcHBseSBmbGV4IGZsZXgtY29sIGdhcC00IHB5LTI7IH1cbiAgICAuc2VjdGlvbi1mbG93LXRpdGxlICAgeyBAYXBwbHkgdGV4dC14cyBmb250LWJvbGQgdXBwZXJjYXNlIHRyYWNraW5nLXdpZGUgdGV4dC1zbGF0ZS02MDAgZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTI7IH1cbiAgICAuc2VjdGlvbi1mbG93LXRpdGxlOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc2xhdGUtMjAwKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICB9XG5cbiAgICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgICAgQmFuZGEgZGUgZGF0b3Mg4oCUIGxhIGFsdGVybmF0aXZhIGEgbGEgY2FqYSBkZSBjaWZyYXMuXG5cbiAgICAgICBFcyBlbCBnZXN0byBkZWwgZG9zc2llciBpbXByZXNvIChgLnJlc3VtZW5gIGRlIGRvc3NpZXIuaHRtbC50d2lnKTogdW4gZmlsZXRlIGFycmliYSxcbiAgICAgICBvdHJvIGFiYWpvLCB5IGxhcyBjZWxkYXMgc2VwYXJhZGFzIHBvciBmaWxldGVzIHZlcnRpY2FsZXMuIE5pIGJvcmRlIGV4dGVyaW9yIG5pIGZvbmRvLFxuICAgICAgIGFzw60gcXVlIGxhIGZyYW5qYSBzZSBhcG95YSBlbiBsYSBww6FnaW5hIGVuIHZleiBkZSBmbG90YXIgY29tbyB1bmEgdGFyamV0YSBtw6FzLiBMYSBhcHBcbiAgICAgICB5IGVsIGRvc3NpZXIgYWNhYmFuIGxlecOpbmRvc2UgaWd1YWwsIHF1ZSBlcmEgbWVkaW8gcHJvYmxlbWEuXG5cbiAgICAgICBTaXJ2ZSBwYXJhIERPUyBjb3NhcyBjb24gZWwgbWlzbW8gbWFyY2FkbzpcbiAgICAgICAgwrcgY2lmcmFzIGRlIGNhYmVjZXJhICDihpIgYC5iYW5kLWxhYmVsYCArIGAuYmFuZC12YWx1ZWAgKyBgLmJhbmQtbm90ZWBcbiAgICAgICAgwrcgY2FtcG9zIGVkaXRhYmxlcyAgICDihpIgYC5iYW5kLWxhYmVsYCArIHVuIGBjb250cm9sLWZsYXRgICh2ZXIgwqtDYXNjYWRlIGZpeMK7KVxuICAgICAgIFVuIGZvcm11bGFyaW8gbW9udGFkbyBhc8OtIHNlIGxlZSBjb21vIHVuIHJlc3VtZW4geSBzZSBlZGl0YSBhbCBwdWxzYXJsbywgcXVlIGVzXG4gICAgICAganVzdG8gbG8gY29udHJhcmlvIGRlIHVuYSByZWppbGxhIGRlIHJlY3VhZHJvcyBjb24gdW4gYDxzZWxlY3Q+YCBkZW50cm8uXG4gICAgICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAgIC5iYW5kICAgICAgIHsgQGFwcGx5IGZsZXggZmxleC13cmFwIGl0ZW1zLXN0cmV0Y2ggYm9yZGVyLXkgYm9yZGVyLXNsYXRlLTIwMDsgfVxuICAgIC8qIFZhcmlhbnRlIGNvbiBzdXBlcmZpY2llLiBRdWl0YXIgbGFzIGNhamFzIGRlasOzIGxhIHBhbnRhbGxhIGVudGVyYSBkZWwgbWlzbW8gZ3JpcyB5XG4gICAgICAgc2luIGZpZ3VyYSBuaSBmb25kbzogbm8gaGFiw61hIG5hZGEgcXVlIG1pcmFyIHByaW1lcm8uIExhIGZyYW5qYSBkZSBjaWZyYXMgZXMgbG8gcXVlXG4gICAgICAgbWFuZGEgbGEgcGFudGFsbGEsIGFzw60gcXVlIHNlIGRlc3BlZ2EgZW4gYmxhbmNvLiBTaW4gZXNxdWluYXMgcmVkb25kZWFkYXMgbmkgYm9yZGVzXG4gICAgICAgbGF0ZXJhbGVzIGEgcHJvcMOzc2l0bzogZXMgdW5hIEJBTkRBLCBubyBvdHJhIHRhcmpldGEuICovXG4gICAgLmJhbmQtc3VyZmFjZSB7IEBhcHBseSBiZy13aGl0ZSBweC01OyB9XG4gICAgLmJhbmQtY2VsbCAgeyBAYXBwbHkgbWluLXctMCBmbGV4LTEgYm9yZGVyLWwgYm9yZGVyLXNsYXRlLTIwMCBweC01IHB5LTMuNTsgfVxuICAgIC8qIExhIHByaW1lcmEgY2VsZGEgcGVnYWRhIGFsIG1hcmdlbjogc3UgZmlsZXRlIGl6cXVpZXJkbyBzZXLDrWEgdW4gYm9yZGUgZGUgY2FqYS4gKi9cbiAgICAuYmFuZC1jZWxsOmZpcnN0LWNoaWxkIHsgQGFwcGx5IGJvcmRlci1sLTAgcGwtMDsgfVxuICAgIC5iYW5kLWxhYmVsIHsgQGFwcGx5IGZsZXggaXRlbXMtY2VudGVyIGdhcC0xLjUgdGV4dC1bMTFweF0gZm9udC1zZW1pYm9sZCB1cHBlcmNhc2UgdHJhY2tpbmctd2lkZXIgdGV4dC1zbGF0ZS01MDA7IH1cbiAgICAuYmFuZC12YWx1ZSB7IEBhcHBseSBtdC0xIGZvbnQtbW9ubyB0ZXh0LTJ4bCBmb250LWJvbGQgbGVhZGluZy10aWdodCB0ZXh0LW5hdnktOTAwOyB9XG4gICAgLmJhbmQtdmFsdWUtbXV0ZSB7IEBhcHBseSB0ZXh0LXNsYXRlLTMwMDsgfVxuICAgIC8qIFVuIGRhdG8gcXVlIGVzIHRleHRvICh1biBub21icmUsIHVuIGNvcnJlbykgZW4gbGEgbWlzbWEgZnJhbmphIHF1ZSBsYXMgY2lmcmFzLiAqL1xuICAgIC5iYW5kLXZhbHVlLXRleHRvIHsgQGFwcGx5IGZvbnQtc2FucyB0ZXh0LWJhc2UgZm9udC1zZW1pYm9sZDsgfVxuICAgIC5iYW5kLW5vdGUgIHsgQGFwcGx5IG10LTAuNSB0ZXh0LVsxMXB4XSBsZWFkaW5nLXJlbGF4ZWQgdGV4dC1zbGF0ZS01MDA7IH1cbiAgICAvKiBDZWxkYSBlZGl0YWJsZTogZWwgZm9uZG8gYXBhcmVjZSBhbCBhcHVudGFybGEsIHBhcmEgcXVlIHNlIG5vdGUgcXVlIHNlIHB1ZWRlIHRvY2FyXG4gICAgICAgc2luIHRlbmVyIHF1ZSBkaWJ1amFybGUgdW5hIGNhamEgcGVybWFuZW50ZS5cbiAgICAgICBTZXBhcmEgY29uIGBnYXBgIHkgbm8gY29uIG3DoXJnZW5lcyBlbiBsb3MgaGlqb3M6IGVsIFJlYm9vdCBkZSBCb290c3RyYXAgcXVlIHRyYWVcbiAgICAgICBFYXN5QWRtaW4gcG9uZSBgbWFyZ2luOiAwYCBhIGxvcyBjb250cm9sZXMgZGUgZm9ybXVsYXJpbyBzaW4gY2FwYSB5IHNlIGNvbWVyw61hXG4gICAgICAgY3VhbHF1aWVyIGBtdC0qYCBwdWVzdG8gZW4gZWwgYDxzZWxlY3Q+YC4gRWwgZ2FwIGRlbCBwYWRyZSBubyBsbyBwdWVkZSBwaXNhciBuYWRpZS4gKi9cbiAgICAuYmFuZC1jZWxsLWVkaXQgeyBAYXBwbHkgZmxleCBmbGV4LWNvbCBnYXAtMS41IHRyYW5zaXRpb24tY29sb3JzIGhvdmVyOmJnLXNsYXRlLTUwIGZvY3VzLXdpdGhpbjpiZy1zbGF0ZS01MDsgfVxuICAgIC8qIFB1bnRvIMOhbWJhciBqdW50byBhbCByw7N0dWxvID0gZXN0ZSBkYXRvIGZhbHRhLiBBbnRlcyBlcmEgdW4gYm9yZGUgZ29sZCBhbHJlZGVkb3IgZGVcbiAgICAgICBsYSBjZWxkYSwgcXVlIGVzIGV4YWN0YW1lbnRlIGxhIGNhamEgcXVlIHNvYnJhYmEuICovXG4gICAgLmJhbmQtZmFsdGEgeyBAYXBwbHkgaW5saW5lLWJsb2NrIGgtMS41IHctMS41IHNocmluay0wIHJvdW5kZWQtZnVsbCBiZy1nb2xkLTQwMDsgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEzDrW5lYSBkZSB0aWVtcG8g4oCUIG1lbnNhamVzIHkgZXZlbnRvcyBzaW4gdW5hIGNhamEgcG9yIGVudHJhZGEuXG5cbiAgICAgICBVbiBoaWxvIGRvbmRlIGNhZGEgbWVuc2FqZSB2YSBlbiBzdSByZWN1YWRybyBzZSBsZWUgY29tbyB1bmEgZXNjYWxlcmEgZGUgcmVjdMOhbmd1bG9zXG4gICAgICAgeSBoYWNlIGRpZsOtY2lsIHNlZ3VpciBlbCBvcmRlbi4gQXF1w60gbWFuZGEgdW4gcmHDrWwgdmVydGljYWw6IGxvcyBldmVudG9zIGRlbCBzaXN0ZW1hXG4gICAgICAgc29uIHVuIHB1bnRvIHkgdW5hIGzDrW5lYSBncmlzOyBsb3MgbWVuc2FqZXMsIHVuIHB1bnRvIHkgZWwgdGV4dG8uIExvIGludGVybm8gc2UgbWFyY2FcbiAgICAgICBjb24gdW4gZmlsZXRlIGdvbGQgYSBsYSBpenF1aWVyZGEgZGVsIHRleHRvLCBOTyBjb24gdW4gYmxvcXVlIMOhbWJhci5cbiAgICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gICAgLnRpbWVsaW5lICAgICAgeyBAYXBwbHkgcmVsYXRpdmUgZmxleCBmbGV4LWNvbCBnYXAtNSBwbC03OyB9XG4gICAgLnRpbWVsaW5lOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAYXBwbHkgYWJzb2x1dGUgYm90dG9tLTIgbGVmdC1bN3B4XSB0b3AtMiB3LXB4IGJnLXNsYXRlLTIwMDtcbiAgICB9XG4gICAgLnRpbWVsaW5lLWl0ZW0geyBAYXBwbHkgcmVsYXRpdmU7IH1cbiAgICAvKiBQdW50byBsbGVubyB5IHBlcXVlw7FvLCBubyB1biBhcm86IHVuIGPDrXJjdWxvIGh1ZWNvIGRlIDE0IHB4IGVuIHVuYSBjb2x1bW5hIHNlIGxlZVxuICAgICAgIGNvbW8gdW5hIGNhc2lsbGEgc2luIG1hcmNhci4gRWwgYW5pbGxvIGJsYW5jbyBlcyBsbyBxdWUgbG8gZGVzcGVnYSBkZWwgcmHDrWwuICovXG4gICAgLnRpbWVsaW5lLWRvdCAge1xuICAgICAgICBAYXBwbHkgYWJzb2x1dGUgLWxlZnQtWzI1cHhdIHRvcC0xLjUgaC0yIHctMiBzaHJpbmstMCByb3VuZGVkLWZ1bGwgcmluZy00IHJpbmctd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXUtZnVlcnRlLCB2YXIoLS1jb2xvci1zbGF0ZS00MDApKTtcbiAgICB9XG4gICAgLyogRWwgcHVudG8gZGUgdW4gZXZlbnRvIGRlbCBzaXN0ZW1hIGxsZXZhIGljb25vIHkgbmVjZXNpdGEgYWxnbyBtw6FzIGRlIGNhamEuICovXG4gICAgLnRpbWVsaW5lLWRvdC1sZyB7XG4gICAgICAgIEBhcHBseSBhYnNvbHV0ZSAtbGVmdC1bMS45cmVtXSB0b3AtMCBmbGV4IGgtNSB3LTUgc2hyaW5rLTAgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyXG4gICAgICAgICAgICAgICByb3VuZGVkLWZ1bGwgYmctc2xhdGUtMTAwIHRleHQtc2xhdGUtNTAwIHJpbmctNCByaW5nLXdoaXRlO1xuICAgIH1cbiAgICAudGltZWxpbmUtaGVhZCB7IEBhcHBseSBmbGV4IGZsZXgtd3JhcCBpdGVtcy1iYXNlbGluZSBnYXAtMiB0ZXh0LXhzOyB9XG4gICAgLnRpbWVsaW5lLXdobyAgeyBAYXBwbHkgZm9udC1zZW1pYm9sZDsgY29sb3I6IHZhcigtLXUtZnVlcnRlLCB2YXIoLS1jb2xvci1zbGF0ZS01MDApKTsgfVxuICAgIC50aW1lbGluZS13aGVuIHsgQGFwcGx5IHRleHQtc2xhdGUtNDAwOyB9XG4gICAgLyogTG8gcXVlIEVTQ1JJQkUgdW5hIHBlcnNvbmEgdmEgZW4gYnVyYnVqYTsgbG8gcXVlIGFub3RhIGVsIHNpc3RlbWEsIG5vLiBTaW4gYnVyYnVqYSBsb3NcbiAgICAgICBtZW5zYWplcyBzZSBjb25mdW5kw61hbiBjb24gbG9zIGV2ZW50b3MgeSBlbCBoaWxvIHNlIGxlw61hIGNvbW8gdW4gbG9nLlxuXG4gICAgICAgTGEgYnVyYnVqYSB2YSBlbiBCTEFOQ08geSBzZSBjb2xvcmVhIGVsIGJvcmRlLCBlbCBwdW50byBkZWwgcmHDrWwgeSBlbCBub21icmUgc2Vnw7puIHF1acOpblxuICAgICAgIGVzY3JpYmU6IGVuIHVuIGhpbG8gZGUgdHJlcyBvIGN1YXRybyBwZXJzb25hcywgZWwgY29sb3IgZGljZSBkZSB1biB2aXN0YXpvIHF1acOpbiBoYWJsYVxuICAgICAgIHNpbiB0ZW5lciBxdWUgbGVlciBlbCBub21icmUsIHkgZGVqYW5kbyBlbCBmb25kbyBibGFuY28gZWwgdGV4dG8gc2UgbGVlIGlndWFsIGRlIGJpZW5cbiAgICAgICBjb24gY3VhbHF1aWVyYS4gRWwgY29sb3IgZXMgZWwgZGVsIFBFUkZJTCBkZSBxdWllbiBlc2NyaWJlIChgdS08Y29sb3I+YCwgdmVyXG4gICAgICAgYFVzdWFyaW9Db2xvcmApLCBhc8OtIHF1ZSBlcyBlbCBtaXNtbyBhcXXDrSwgZW4gc3UgY2hpcCB5IGVuIHN1IGRpc2NvIGRlIGluaWNpYWxlcy4gKi9cbiAgICAudGltZWxpbmUtYm9keSB7XG4gICAgICAgIEBhcHBseSBtdC0xLjUgdy1maXQgbWF4LXctcHJvc2Ugd2hpdGVzcGFjZS1wcmUtbGluZSByb3VuZGVkLWxnIHJvdW5kZWQtdGwtc20gYm9yZGVyIGJnLXdoaXRlXG4gICAgICAgICAgICAgICBweC0zLjUgcHktMi41IHRleHQtc20gbGVhZGluZy1yZWxheGVkIHRleHQtc2xhdGUtNzAwIHNoYWRvdy1zb2Z0LXNtO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXUtYm9yZGUsIHZhcigtLWNvbG9yLXNsYXRlLTIwMCkpO1xuICAgIH1cbiAgICAudGltZWxpbmUtZXZlbnQgeyBAYXBwbHkgdGV4dC14cyBsZWFkaW5nLXJlbGF4ZWQgdGV4dC1zbGF0ZS01MDA7IH1cbiAgICAvKiBMYSBub3RhIGludGVybmEgbWFuZGEgc29icmUgZWwgY29sb3IgZGVsIGF1dG9yOiBxdWUgbm8gbGEgbGVhIGVsIGNsaWVudGUgaW1wb3J0YSBtw6FzXG4gICAgICAgcXVlIHF1acOpbiBsYSBlc2NyaWJpw7MuICovXG4gICAgLnRpbWVsaW5lLWJvZHktaW50ZXJuYSB7IEBhcHBseSBiZy1nb2xkLTUwOyBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWdvbGQtMzAwKTsgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIENvbXBvc2l0b3Ig4oCUIGxhIGNhamEgZGUgZXNjcmliaXIgU8ONIGVzIHVuYSBjYWphLlxuXG4gICAgICAgTmFjacOzIHNpbiBzdXBlcmZpY2llLCBjb21vIHVuYSBsw61uZWEgc29icmUgdW4gZmlsZXRlLCB5IG5vIHNlIGxlw61hIGNvbW8gdW4gc2l0aW8gZG9uZGVcbiAgICAgICBlc2NyaWJpcjogc2UgbWltZXRpemFiYSBjb24gZWwgZm9uZG8geSBoYWLDrWEgcXVlIGFkaXZpbmFybG8uIEFxdcOtIHVuYSBjYWphIGVzIGRlIGxhc1xuICAgICAgIHF1ZSBlbCBlc3TDoW5kYXIgcmVzZXJ2YSDigJR6b25hIGRlIGVkaWNpw7Nu4oCULCB5IGNvbiBlbCBoaWxvIGVuIGJ1cmJ1amFzIGVuY2ltYSBxdWVkYSBjbGFyb1xuICAgICAgIGRlIHVuIHZpc3Rhem8gcXVlIGVzdG8gZXMgbG8gcXVlIGxhcyBlc2NyaWJlLlxuICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAuY29tcG9zZXIge1xuICAgICAgICBAYXBwbHkgZmxleCBmbGV4LWNvbCBnYXAtMi41IHJvdW5kZWQtbGcgYm9yZGVyIGJvcmRlci1zbGF0ZS0yMDAgYmctd2hpdGUgcHgtMy41IHB5LTMgc2hhZG93LXNvZnQtc21cbiAgICAgICAgICAgICAgIHRyYW5zaXRpb24tYWxsIGZvY3VzLXdpdGhpbjpib3JkZXItYmx1ZS0zMDAgZm9jdXMtd2l0aGluOnNoYWRvdy1zb2Z0LW1kO1xuICAgIH1cbiAgICAuY29tcG9zZXItYWN0aW9ucyB7IEBhcHBseSBmbGV4IGZsZXgtd3JhcCBpdGVtcy1jZW50ZXIgZ2FwLTMgYm9yZGVyLXQgYm9yZGVyLXNsYXRlLTEwMCBwdC0yLjUgdGV4dC14cyB0ZXh0LXNsYXRlLTUwMDsgfVxuXG4gICAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgICAgIEJhcnJhIGRlIGZpbHRyb3M6IHNpbiBmcmFuamEgZ3JpcyBkZSBmb25kbywgcGVybyBjb24gbG9zIGNvbnRyb2xlcyBERUwgU0lTVEVNQVxuICAgICAgIChgaW5wdXQgaW5wdXQtc21gKSwgbm8gY29uIHRleHRvIHBsYW5vLlxuXG4gICAgICAgU2UgaW50ZW50w7MgY29uIGNvbnRyb2xlcyBzaW4gc3VwZXJmaWNpZSB5IG5vIHNlIHBvZMOtYSB1c2FyOiB1biBgPHNlbGVjdD5gIHNpblxuICAgICAgIGZvbmRvIG5pIHBhZGRpbmcgbWlkZSAxOCBweCBkZSBhbHRvLCBhc8OtIHF1ZSBoYWLDrWEgcXVlIGFjZXJ0YXIgdW5hIGzDrW5lYVxuICAgICAgIGludmlzaWJsZSBwYXJhIGRlc3BsZWdhcmxvIG8gcGFyYSBlc2NyaWJpciBlbiBlbCBidXNjYWRvci4gUXVpdGFyIGxhIGNhamEgbm9cbiAgICAgICBwdWVkZSBsbGVnYXIgaGFzdGEgcXVpdGFyIGVsIG9iamV0aXZvIGRlbCBjbGljLlxuICAgICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgICAuZmlsdGVyLWJhciB7IEBhcHBseSBmbGV4IGZsZXgtd3JhcCBpdGVtcy1jZW50ZXIgZ2FwLTIuNTsgfVxuXG4gICAgLyogQ2hpcCBwbGFubyBwYXJhIGVsZWdpciBlbnRyZSB2YXJpYXMgb3BjaW9uZXMgKHRpcG9zIGRlIGluY2lkZW5jaWEpLiBTaW4gYm9yZGUgZW5cbiAgICAgICByZXBvc286IGxvIHF1ZSBzZXBhcmEgdW5hIG9wY2nDs24gZGUgb3RyYSBlcyBlbCBlc3BhY2lvLCBubyB1biByZWN1YWRyby4gKi9cbiAgICAuY2hpcC1mbGF0IHtcbiAgICAgICAgQGFwcGx5IGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBnYXAtMS41IHdoaXRlc3BhY2Utbm93cmFwIHJvdW5kZWQtbWQgYmctc2xhdGUtMTAwLzgwIHB4LTIuNSBweS0yIHRleHQteHMgZm9udC1tZWRpdW0gdGV4dC1zbGF0ZS02MDBcbiAgICAgICAgICAgICAgIHRyYW5zaXRpb24tY29sb3JzIGhvdmVyOmJnLXNsYXRlLTIwMC84MCBob3Zlcjp0ZXh0LW5hdnktOTAwO1xuICAgIH1cbiAgICAuY2hpcC1mbGF0LW9uIHsgQGFwcGx5IGJnLWJsdWUtNjAwIHRleHQtd2hpdGUgaG92ZXI6YmctYmx1ZS02MDAgaG92ZXI6dGV4dC13aGl0ZTsgfVxuXG4gICAgLyogUGxlZ2FkbyBkaXNjcmV0byAowqtNw6FzIGZpbHRyb3PCuywgwqtVbmlkYWRlcywgY29zdGUgeSBxdWnDqW4gcmVzcG9uZGXCuyk6IHNpbiBlbCB0cmnDoW5ndWxvXG4gICAgICAgbmF0aXZvLCBjb24gZWwgY2hldnJvbiBnaXJhbmRvIGFsIGFicmlyLiBMYSBjbGFzZSB2YSBlbiBlbCBgPHNwYW4gZGF0YS1sdWNpZGU+YDsgTHVjaWRlXG4gICAgICAgdHJhc2xhZGEgbGFzIGNsYXNlcyBkZWwgaHVlY28gYWwgYDxzdmc+YCBxdWUgbG8gc3VzdGl0dXllLiAqL1xuICAgIC5mb2xkID4gc3VtbWFyeSB7IGxpc3Qtc3R5bGU6IG5vbmU7IGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5mb2xkID4gc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZm9sZC1jaGV2cm9uIHsgQGFwcGx5IHRyYW5zaXRpb24tdHJhbnNmb3JtIGR1cmF0aW9uLTIwMDsgfVxuICAgIC5mb2xkW29wZW5dID4gc3VtbWFyeSAuZm9sZC1jaGV2cm9uIHsgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuXG4gICAgLyogQ2hpcCBkZSB1biBkb2N1bWVudG8gaGVybWFubyBlbiBsYSBjYWJlY2VyYSBkZSBsb3MgZWRpdG9yZXMgKGBfZXhwZWRpZW50ZV9jYWJlY2VyYWApLlxuICAgICAgIEVsIGNvbG9yIGRlIHRpcG8gbG8gcG9uZSBsYSBwbGFudGlsbGEgY29tbyB1dGlsaXRpZXM7IGFxdcOtIHNvbG8gbGEgZm9ybWEsIHF1ZSBzZSByZXBldMOtYVxuICAgICAgIGVuIGRvcyByYW1hcyBkZSB1biBtYWNyby4gRWwgbm9tYnJlIGRlbCBkb2N1bWVudG8gbm8gY2FiZTogdmEgZW4gZWwgYHRpdGxlYC4gKi9cbiAgICAuZG9jLWNoaXAge1xuICAgICAgICBAYXBwbHkgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGdhcC0xLjUgaC02IHB4LTIgcm91bmRlZC1tZCBib3JkZXIgZm9udC1tZWRpdW1cbiAgICAgICAgICAgICAgIHRleHQtWzEwcHhdIHVwcGVyY2FzZSB0cmFja2luZy13aWRlciB3aGl0ZXNwYWNlLW5vd3JhcCB0cmFuc2l0aW9uLWNvbG9ycztcbiAgICB9XG4gICAgLmRvYy1jaGlwLWFjdHVhbCB7IEBhcHBseSBib3JkZXItMiBib3JkZXItYmx1ZS00MDAgYmctYmx1ZS01MCB0ZXh0LWJsdWUtOTAwOyB9XG5cbiAgICAuZGlzdHJpYnV0b3ItY2FsY3VsYXRvci1yYWlsIHtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLmRpc3RyaWJ1dG9yLWNhbGN1bGF0b3ItcmFpbCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICAgICAgdG9wOiA1cmVtO1xuICAgICAgICAgICAgei1pbmRleDogMjA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBTdWJzZWN0aW9uIHRpdGxlIGZvciBjb2xsYXBzaWJsZSBibG9ja3MgKGUuZy4gUDIgaW5zaWRlIFAxJ3MgY2FyZCkuICovXG4gICAgLnN1YnNlY3Rpb24tdGl0bGUgeyBAYXBwbHkgdGV4dC1zbSBmb250LXNlbWlib2xkIHRleHQtc2xhdGUtNzAwIGZsZXggaXRlbXMtY2VudGVyIGdhcC0yOyB9XG5cbiAgICAvKiBIZXJvIFBWUCDigJQgbWFpbiByZXN1bHQgYmxvY2suIEdyYWRpZW50IG5hdnnihpJibHVlLCB0ZXh0byBibGFuY28uXG4gICAgICAgTGF5b3V0IDItY29sOiB1bml0YXJpbyAoZ3JhbmRlLCAzIGRlY2ltYWxlcykgKyB0b3RhbCAoZ3JhbmRlLCAyIGRlY2ltYWxlcylcbiAgICAgICBjb21wYXJ0aWVuZG8gbGEgbWlzbWEgZnJhbmphIHBhcmEgbGxlbmFyIGVsIGFuY2hvIGRlbCBjYXJkLiAqL1xuICAgIC5oZXJvLXB2cCAgICAgICAge1xuICAgICAgICBAYXBwbHkgcm91bmRlZC0zeGwgcHgtNiBzbTpweC03IHB0LTUgc206cHQtNiBwYi00IHRleHQtd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWNvbG9yLW5hdnktODAwKSAwJSwgdmFyKC0tY29sb3ItYmx1ZS03MDApIDEwMCUpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDIwcHggNDBweCAtMTBweCByZ2JhKDE1LCAzNCwgNjQsIDAuMzUpO1xuICAgICAgICAvKiBFbCBncmlkIGRlbCBQVlAgcmVhY2Npb25hIGFsIGFuY2hvIFJFQUwgZGVsIGNhcmQgKG5vIGFsIGRlbCB2aWV3cG9ydCk6XG4gICAgICAgICAgIGVsIHBhbmVsIGRlcmVjaG8gZXMgZXN0cmVjaG8geSBsb3MgZG9zIGltcG9ydGVzIGdyYW5kZXMgc29sbyBjYWJlbiBlblxuICAgICAgICAgICB1bmEgbWlzbWEgZmlsYSBlbiBwYW50YWxsYXMgbXV5IGFuY2hhcy4gKi9cbiAgICAgICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplO1xuICAgIH1cbiAgICAvKiBQb3IgZGVmZWN0byAoY2FyZCBlc3RyZWNobyk6IHVuaXRhcmlvIHkgdG90YWwgQVBJTEFET1MgZW4gdW5hIHNvbGEgY29sdW1uYSxcbiAgICAgICBjYWRhIHVubyBjb24gdG9kbyBlbCBhbmNobyBkaXNwb25pYmxlIHkgc2VwYXJhZG9zIHBvciB1bmEgbMOtbmVhIGhvcml6b250YWwuXG4gICAgICAgQXPDrSBsb3MgaW1wb3J0ZXMgbnVuY2Egc2UgcmVjb3J0YW4gcG9yIGZhbHRhIGRlIHNpdGlvLiAqL1xuICAgIC5oZXJvLXB2cC1ncmlkICAge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuICAgICAgICBnYXA6IDAuODc1cmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG4gICAgLmhlcm8tcHZwLWNvbCAgICAgICAgeyBtaW4td2lkdGg6IDA7IH1cbiAgICAuaGVyby1wdnAtY29sLS10b3RhbCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAuaGVyby1wdnAtc2VwICAgIHtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE4KTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgfVxuICAgIC5oZXJvLXB2cC1leWVicm93eyBAYXBwbHkgZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTEuNSB0ZXh0LVsxMXB4XSBzbTp0ZXh0LXhzIGZvbnQtc2VtaWJvbGQgdXBwZXJjYXNlIHRyYWNraW5nLXdpZGUgdGV4dC1ibHVlLTIwMDsgfVxuICAgIC8qIFVuaXRhcmlvIHkgdG90YWwgY29tcGFydGVuIGplcmFycXXDrWEgdGlwb2dyw6FmaWNhLiBFbCB0YW1hw7FvIHNlIGFkYXB0YSBhbFxuICAgICAgIGFuY2hvIGRlbCBjYXJkIChjcWkpIHBhcmEgcXVlIGVsIGltcG9ydGUgcXVlcGEgaW5jbHVzbyBlbiBlbCBjYXJkIGVzdHJlY2hvLiAqL1xuICAgIC5oZXJvLXB2cC12YWx1ZSxcbiAgICAuaGVyby1wdnAtdG90YWwgIHtcbiAgICAgICAgQGFwcGx5IGZvbnQtc2FucyBmb250LWJvbGQgdGV4dC13aGl0ZSB0YWJ1bGFyLW51bXMgdHJhY2tpbmctbm9ybWFsIGxlYWRpbmctbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDE0Y3FpLCAyLjFyZW0pO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAgIC8qIGVsIGltcG9ydGUgbm8gcGFydGUgZWwgXCLigqxcIiBhIG90cmEgbMOtbmVhICovXG4gICAgfVxuICAgIC8qIFJlc2V0IGV4dHJhIHBhcmEgZWwgPGlucHV0PiBkZWwgUFZQIHVuaXRhcmlvOiBFYXN5QWRtaW4gY2FyZ2EgdW4gcmVib290IEJvb3RzdHJhcFxuICAgICAgIFVOTEFZRVJFRCAoYGlucHV0IHsgZm9udC1zaXplOiBpbmhlcml0OyBsaW5lLWhlaWdodDogaW5oZXJpdCB9YCkgcXVlIHZlbmNlIGEgZXN0YVxuICAgICAgIGNhcGEgQGNvbXBvbmVudHMgcG9yIG9yZGVuIGRlIEBsYXllciAoY3VhbHF1aWVyIHJlZ2xhIG5vLWxheWVyZWQgZ2FuYSBhIHVuYSBsYXllcmVkXG4gICAgICAgY29uIGxhIG1pc21hIG8gbWVub3IgZXNwZWNpZmljaWRhZCkuIE1hcmNhbW9zICFpbXBvcnRhbnQgcGFyYSBxdWUgZWwgQGxheWVyIGdhbmU6XG4gICAgICAgdW5hIGRlY2xhcmFjacOzbiAhaW1wb3J0YW50IGRlbnRybyBkZSB1biBsYXllciB2ZW5jZSBhIHVuYSBub3JtYWwgc2luIGxheWVyLiAqL1xuICAgIGlucHV0Lmhlcm8tcHZwLXZhbHVlIHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDE0Y3FpLCAyLjFyZW0pICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IC8qIGVsIHJlYm9vdCBCb290c3RyYXAgbWV0ZSBtYXJnaW46MCB5IG1hdGEgbXQtMi4gKi9cbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICB9XG4gICAgLyogQ2FyZCBsbyBiYXN0YW50ZSBhbmNobyBwYXJhIGxvcyBkb3MgaW1wb3J0ZXMgZW4gZmlsYTogbGF5b3V0IDItY29sIGNvblxuICAgICAgIHNlcGFyYWRvciB2ZXJ0aWNhbC4gQ2FkYSBpbXBvcnRlIGRpc3BvbmUgZGUgbWVkaWEgYW5jaHVyYSwgYXPDrSBxdWUgZW4gMi1jb2xcbiAgICAgICByZWR1Y2ltb3MgZWwgY3VlcnBvICg4Y3FpKSBwYXJhIHF1ZSBxdWVwYSBzaW4gcmVjb3J0YXJzZSBudW5jYS4gRWwgdW1icmFsXG4gICAgICAgYmFqbyBoYWNlIHF1ZSBwYXNlIGEgMiBjb2x1bW5hcyBlbiBjdWFudG8gaGF5IHVuIHBvY28gZGUgc2l0aW8uICovXG4gICAgQGNvbnRhaW5lciAobWluLXdpZHRoOiAzMjBweCkge1xuICAgICAgICAuaGVyby1wdnAtZ3JpZCAgIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgYXV0byBtaW5tYXgoMCwgMWZyKTtcbiAgICAgICAgICAgIGdhcDogMS4yNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAuaGVyby1wdnAtc2VwICAgICAgICB7IHdpZHRoOiAxcHg7IGhlaWdodDogYXV0bzsgfVxuICAgICAgICAuaGVyby1wdnAtY29sLS10b3RhbCB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgICAgIC5oZXJvLXB2cC1jb2wtLXRvdGFsIC5oZXJvLXB2cC1leWVicm93IHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAgICAgICAuaGVyby1wdnAtdmFsdWUsXG4gICAgICAgIC5oZXJvLXB2cC10b3RhbCAgICAgIHsgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDhjcWksIDIuMXJlbSk7IH1cbiAgICAgICAgaW5wdXQuaGVyby1wdnAtdmFsdWUgeyBmb250LXNpemU6IGNsYW1wKDEuNXJlbSwgOGNxaSwgMi4xcmVtKSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIC5oZXJvLXB2cC1tZXRhICAgeyBAYXBwbHkgbXQtMSB0ZXh0LVsxMXB4XSBzbTp0ZXh0LXhzIHRleHQtYmx1ZS0xMDAvOTA7IH1cbiAgICAvKiBGaW5lcHJpbnQ6IGxhIGJhamFtb3MgcmVzcGVjdG8gYSBsb3MgaW1wb3J0ZXMvc2VwYXJhZG9yIHkgZGVqYW1vcyBwb2NvIGFpcmVcbiAgICAgICBwb3IgZGViYWpvLCBwYXJhIHF1ZSBxdWVkZSBlcXVpbGlicmFkYSBkZW50cm8gZGVsIGNhcmQuICovXG4gICAgLmhlcm8tcHZwLWZpbmVwcmludCB7IEBhcHBseSB0ZXh0LVsxMXB4XSB0ZXh0LWJsdWUtMjAwLzcwOyBtYXJnaW4tdG9wOiAxLjc1cmVtOyB9XG5cbiAgICAvKiBCYXJyYSBjb21wYWN0YSBkZWwgUFZQLCBmaWphIGFsIHBpZSBkZWwgdmlld3BvcnQuIEVzcGVqYSBlbCBoZXJvIGRlbCByZXN1bHRhZG8geVxuICAgICAgIHNvbG8gc2UgbXVlc3RyYSAobW9kaWZpY2Fkb3IgLS12aXNpYmxlKSBjdWFuZG8gZWwgaGVybyBxdWVkYSBmdWVyYSBkZSBwYW50YWxsYSxcbiAgICAgICBwYXJhIGNvbnN1bHRhciBlbCBQVlAgc2luIHZvbHZlciBhcnJpYmEuIExhIGdvYmllcm5hIHB2cFN0aWNreUJhci5qcy4gKi9cbiAgICAucHZwLXN0aWNreS1iYXIge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHotaW5kZXg6IDYwO1xuICAgICAgICBwYWRkaW5nOiAwLjYyNXJlbSAxcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygwLjYyNXJlbSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1jb2xvci1uYXZ5LTgwMCkgMCUsIHZhcigtLWNvbG9yLWJsdWUtNzAwKSAxMDAlKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAtMTBweCAzMHB4IC0xMnB4IHJnYmEoMTUsIDM0LCA2NCwgMC40NSk7XG4gICAgICAgIC8qIE9jdWx0YSBwb3IgZGVmZWN0bzogZnVlcmEgZGVsIHZpZXdwb3J0LCBzaW4gY2FwdHVyYXIgY2xpY3MuICovXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMTAlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGVhc2U7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgICAucHZwLXN0aWNreS1iYXItLXZpc2libGUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBib2R5LmVhLXNpZGViYXItd2lkdGgtbm9ybWFsIC5wdnAtc3RpY2t5LWJhciB7XG4gICAgICAgICAgICBsZWZ0OiB2YXIoLS1lYS1zaWRlYmFyLWN1cnJlbnQtd2lkdGgsIHZhcigtLXNpZGViYXItbWF4LXdpZHRoLCAyODBweCkpO1xuICAgICAgICB9XG4gICAgICAgIGJvZHkuZWEtc2lkZWJhci13aWR0aC1jb21wYWN0IC5wdnAtc3RpY2t5LWJhciB7XG4gICAgICAgICAgICBsZWZ0OiB2YXIoLS1lYS1zaWRlYmFyLWN1cnJlbnQtd2lkdGgsIHZhcigtLXNpZGViYXItY29tcGFjdC13aWR0aCwgNjRweCkpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8qIFVuaXRhcmlvLCB0b3RhbCB5IGFjY2nDs24gcmVwYXJ0aWRvcyBhIGxvIGxhcmdvIGRlIGxhIGhvcml6b250YWwgKHNwYWNlLWJldHdlZW4pLlxuICAgICAgIEVsIGNhcCBkZSBhbmNobyBkZWphIGVsIGJvdMOzbiBhcHJveGltYWRhbWVudGUgYmFqbyBlbCBcIlJlc3VtZW5cIiBkZSBsYSBiYXJyYSBkZVxuICAgICAgIHBlc3Rhw7FhcyBzdXBlcmlvci4gKi9cbiAgICAucHZwLXN0aWNreS1iYXItaW5uZXIge1xuICAgICAgICBAYXBwbHkgbXgtYXV0byBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtNjtcbiAgICAgICAgbWF4LXdpZHRoOiA3MnJlbTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgICAucHZwLXN0aWNreS1iYXItZ3JvdXAgeyBAYXBwbHkgZmxleCBmbGV4LWNvbCBtaW4tdy0wOyBnYXA6IDAuMXJlbTsgfVxuICAgIC5wdnAtc3RpY2t5LWJhci1leWVicm93IHtcbiAgICAgICAgQGFwcGx5IGZsZXggaXRlbXMtY2VudGVyIGdhcC0xLjUgdGV4dC1bMTBweF0gZm9udC1zZW1pYm9sZCB1cHBlcmNhc2UgdHJhY2tpbmctd2lkZSB0ZXh0LWJsdWUtMjAwIHdoaXRlc3BhY2Utbm93cmFwO1xuICAgIH1cbiAgICAucHZwLXN0aWNreS1iYXItdmFsdWUsXG4gICAgLnB2cC1zdGlja3ktYmFyLXRvdGFsIHtcbiAgICAgICAgQGFwcGx5IGZvbnQtc2FucyBmb250LWJvbGQgdGFidWxhci1udW1zIGxlYWRpbmctbm9uZSB3aGl0ZXNwYWNlLW5vd3JhcDtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjFyZW0sIDV2dywgMS41cmVtKTtcbiAgICB9XG4gICAgLyogQWNjacOzbiBcIlJlc3VtZW5cIiBjb21vIGVubGFjZSAoc2luIGNhamEpOiB0ZXh0byArIGZsZWNoYSwgYWxpbmVhZG8gYSBsYSBkZXJlY2hhLiAqL1xuICAgIC5wdnAtc3RpY2t5LWJhci1hY3Rpb24ge1xuICAgICAgICBAYXBwbHkgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGdhcC0xLjUgc2hyaW5rLTAgdGV4dC14cyBmb250LXNlbWlib2xkIHdoaXRlc3BhY2Utbm93cmFwO1xuICAgICAgICBjb2xvcjogI2RiZWFmZTsgLyogYmx1ZS0xMDAgKi9cbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZTtcbiAgICB9XG4gICAgLnB2cC1zdGlja3ktYmFyLWFjdGlvbjpob3ZlciB7IGNvbG9yOiAjZmZmOyB9XG5cbiAgICAvKiBTb2Z0IHdhcm0gZ3JhZGllbnQgdXRpbGl0eSDigJQgYm9ycm93ZWQgZnJvbSBXZWItSVBTJ3MgLmJnLXdhcm0tY2FyZC4gKi9cbiAgICAuYmctd2FybS1jYXJkIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0NWRlZywgI0ZGRkZGRiAwJSwgI0Y5RkFGQiA2MCUsICNGM0Y0RjYgMTAwJSk7XG4gICAgfVxuXG4gICAgLyogTWV0cmljIHJvdyDigJQgbGFiZWwgwrcgdmFsdWUsIG5vIGJveCwganVzdCBzcGFjaW5nLiAqL1xuICAgIC5tZXRyaWMtcm93ICAgICAgIHsgQGFwcGx5IGZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktYmV0d2VlbiBnYXAtMyBweS0xLjUgdGV4dC1zbTsgfVxuICAgIC5tZXRyaWMtcm93LWxhYmVsIHsgQGFwcGx5IHRleHQtc2xhdGUtNTAwOyB9XG4gICAgLm1ldHJpYy1yb3ctdmFsdWUgeyBAYXBwbHkgZm9udC1zZW1pYm9sZCB0ZXh0LW5hdnktOTAwIHRhYnVsYXItbnVtczsgfVxuICAgIC8qIFN1YnRvdGFsIGFjdW11bGFkbzogbGlnZXJhbWVudGUgbWFzIHBlc2FkbyB5IGNvbiBmb25kbyBzdXRpbC4gKi9cbiAgICAubWV0cmljLXJvdy1zdWJ0b3RhbCB7IEBhcHBseSAtbXgtMiBweC0yIHJvdW5kZWQgYmctc2xhdGUtNTAvNzA7IH1cbiAgICAubWV0cmljLXJvdy1zdWJ0b3RhbCAubWV0cmljLXJvdy1sYWJlbCB7IEBhcHBseSB0ZXh0LXNsYXRlLTcwMCBmb250LW1lZGl1bTsgfVxuICAgIC8qIFN0ZXAgaGVhZGVyOiBudW1lcm8gKyB0aXR1bG8uIFNpbiBib3JkZXItYm90dG9tIOKAlCBzZXBhcmFjaW9uIHBvciBlc3BhY2lvLiAqL1xuICAgIC5zdGVwLXRpdGxlIHsgQGFwcGx5IGZsZXggaXRlbXMtY2VudGVyIGdhcC0yIHRleHQteHMgZm9udC1zZW1pYm9sZCB1cHBlcmNhc2UgdHJhY2tpbmctd2lkZSB0ZXh0LXNsYXRlLTcwMCBwYi0yIG1iLTE7IH1cbiAgICAuc3RlcC10aXRsZS1udW0geyBAYXBwbHkgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGgtNSB3LTUgcm91bmRlZC1mdWxsIGJnLWJsdWUtMTAwIHRleHQtYmx1ZS03MDAgdGV4dC1bMTBweF0gZm9udC1ib2xkOyB9XG5cbiAgICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgICBEZXNnbG9zZSAyLWNvbCAoVW5pZGFkIHwgVG90YWwpIOKAlCBmaWxhIGNvbXBvbmVudGUgdnMgc3VidG90YWxcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAvKiBDYWJlY2VyYSBkZSBjb2x1bW5hcyDigJQgbWlzbWFzIHRyYWNrcyBxdWUgLmJyZWFrZG93bi1yb3cgcGFyYSBhbGluZWFjaW9uIHZlcnRpY2FsLiAqL1xuICAgIC5icmVha2Rvd24tY29scy1oZWFkZXIge1xuICAgICAgICBAYXBwbHkgZ3JpZCBncmlkLWNvbHMtWzFmcl82cmVtXzZyZW1dIGdhcC0zIHRleHQtWzEwcHhdIHVwcGVyY2FzZSB0cmFja2luZy13aWRlIGZvbnQtc2VtaWJvbGQgdGV4dC1zbGF0ZS00MDAgcGItMTtcbiAgICB9XG4gICAgLmJyZWFrZG93bi1yb3cge1xuICAgICAgICBAYXBwbHkgZ3JpZCBncmlkLWNvbHMtWzFmcl82cmVtXzZyZW1dIGdhcC0zIGl0ZW1zLWNlbnRlciBweS0xLjUgdGV4dC1zbTtcbiAgICB9XG4gICAgLmJyZWFrZG93bi1yb3ctbGFiZWwgeyBAYXBwbHkgdGV4dC1zbGF0ZS01MDA7IH1cbiAgICAuYnJlYWtkb3duLXJvdy12YWx1ZSB7XG4gICAgICAgIEBhcHBseSB3LWZ1bGwgZm9udC1zZW1pYm9sZCB0ZXh0LW5hdnktOTAwIHRhYnVsYXItbnVtcyB0ZXh0LXJpZ2h0IGJnLXRyYW5zcGFyZW50IGJvcmRlci0wIHAtMCBmb2N1czpvdXRsaW5lLW5vbmU7XG4gICAgfVxuICAgIC8qIFN1YnRvdGFsOiBwaWxsIGRpc2NyZXRhIGNvbiBmb25kbyBzdXRpbC4gKi9cbiAgICAuYnJlYWtkb3duLXJvdy1zdWJ0b3RhbCB7XG4gICAgICAgIEBhcHBseSAtbXgtMyBweC0zIHJvdW5kZWQteGwgYmctc2xhdGUtMTAwLzcwIG15LTAuNTtcbiAgICB9XG4gICAgLmJyZWFrZG93bi1yb3ctc3VidG90YWwgLmJyZWFrZG93bi1yb3ctbGFiZWwgeyBAYXBwbHkgdGV4dC1zbGF0ZS03MDAgZm9udC1tZWRpdW07IH1cbiAgICAuYnJlYWtkb3duLXJvdy1zdWJ0b3RhbCAuYnJlYWtkb3duLXJvdy12YWx1ZSB7IEBhcHBseSB0ZXh0LWJsdWUtOTAwOyB9XG4gICAgLyogUGFzbyByZXNhbHRhZG8gKE1hcmdlbiB5IFBWUCkg4oCUIG1pc21vIGJsZWVkIC1teC9weCBxdWUgbGFzIHN1YnRvdGFsZXMgcGFyYSBxdWVcbiAgICAgICBlbCBjb250ZW5pZG8gcXVlZGUgYWxpbmVhZG8gY29uIGVsIHJlc3RvIGRlIHBhc29zOyBzb2xvIGNhbWJpYSBlbCBmb25kbyBhenVsLlxuICAgICAgIFbDrWEgQGFwcGx5IGxvcyB2YWxvcmVzIHNlIGlubGluZWFuIHkgZXNxdWl2YW4gZWwgLnB4LTMgIWltcG9ydGFudCBkZSBCb290c3RyYXAuICovXG4gICAgLnN0ZXAtaGlnaGxpZ2h0IHtcbiAgICAgICAgQGFwcGx5IC1teC0zIHB4LTMgcHktMyByb3VuZGVkLTJ4bCBiZy1ibHVlLTUwLzYwO1xuICAgIH1cblxuICAgIC8qIERpc2Nsb3N1cmUgKGRldGFpbHMvc3VtbWFyeSkg4oCUIGRyYXdlci1zdHlsZSB0b2dnbGUsIHNpbiBib3JkZXIuICovXG4gICAgLmRpc2Nsb3N1cmUgICAgICAgICAgICAgICAgICB7IEBhcHBseSByb3VuZGVkLXhsIGJnLXNsYXRlLTUwLzcwOyB9XG4gICAgLmRpc2Nsb3N1cmUgPiBzdW1tYXJ5ICAgICAgICB7XG4gICAgICAgIEBhcHBseSBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMiBjdXJzb3ItcG9pbnRlciBzZWxlY3Qtbm9uZSBweC00IHB5LTMgdGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LXNsYXRlLTcwMCBob3ZlcjpiZy1zbGF0ZS0xMDAvODAgcm91bmRlZC14bCB0cmFuc2l0aW9uLWNvbG9ycztcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gICAgLmRpc2Nsb3N1cmUgPiBzdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIC5kaXNjbG9zdXJlID4gc3VtbWFyeTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgd2lkdGg6IDAuNjVyZW07XG4gICAgICAgIGhlaWdodDogMC42NXJlbTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgY3VycmVudENvbG9yO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgY3VycmVudENvbG9yO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG4gICAgLmRpc2Nsb3N1cmVbb3Blbl0gPiBzdW1tYXJ5OjphZnRlciB7IHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpOyB9XG4gICAgLmRpc2Nsb3N1cmUtYm9keSB7IEBhcHBseSBweC00IHBiLTQgcHQtMjsgfVxuXG4gICAgLyogQ2FtcG8gZGUgZm9ybXVsYXJpbyBQTEVHQUJMRSDigJQgcGFyYSBsbyBxdWUgY2FzaSBudW5jYSBzZSB0b2NhIChub3RhcyBpbnRlcm5hcykgeVxuICAgICAgIHJvYmEgc2l0aW8gYWwgY2FtcG8gcXVlIHPDrSBpbXBvcnRhLiBBIGRpZmVyZW5jaWEgZGUgYC5kaXNjbG9zdXJlYCwgbm8gZGlidWphIGNhamE6XG4gICAgICAgZWwgPHN1bW1hcnk+IGltaXRhIGFsIHLDs3R1bG8gZGVsIHJlc3RvIGRlIGNhbXBvcyBwYXJhIHF1ZSBsYSBsw61uZWEgbm8gc2UgZGVzY3VhZHJlLlxuICAgICAgIEVsIGNoZXZyb24gdmEgREVMQU5URSBkZWwgdGV4dG8gYSBwcm9ww7NzaXRvOiBlbCBodWVjbyBkZSBsYSBkZXJlY2hhIGxvIG9jdXBhIGVsXG4gICAgICAgZGlzcGFyYWRvciBkZSBcImFicmlyIGVuIGdyYW5kZVwiIHF1ZSBpbnllY3RhIGBkZWNvcmF0ZUV4cGFuZGFibGVgLlxuXG4gICAgICAgQXF1w60gc29sbyB2YSBlc3RydWN0dXJhIHkgY2hldnJvbjogbGEgdGlwb2dyYWbDrWEgbGEgcG9uZSBjYWRhIHVzbyBjb24gbGFzIG1pc21hc1xuICAgICAgIGNsYXNlcyBxdWUgbGxldmFyw61hIHN1IDxsYWJlbD4sIHBhcmEgcXVlIGVsIHLDs3R1bG8gcGxlZ2FkbyBubyBkZXNlbnRvbmUgY29uIGxvcyBkZVxuICAgICAgIGFsIGxhZG8uIE9qbywgZWwgYGRpc3BsYXk6ZmxleGAgZGUgdmVyZGFkIGxvIGltcG9uZSBsYSBjb3JyZWNjacOzbiBkZSBjYXNjYWRhIGRlbFxuICAgICAgIGZpbmFsIGRlbCBmaWNoZXJvIOKAlCBkZXNkZSBlc3RhIGNhcGEgbG8gcGlzYSBlbCBDU1MgdW5sYXllcmVkIGRlIEVhc3lBZG1pbi5cblxuICAgICAgIEVsIGBzY3JvbGwtbWFyZ2luYCBsbyB1c2EgYGluaXRGaWVsZENvbGxhcHNlU2Nyb2xsYCAoYXNzZXRzL2pzL3NoYXJlZC9maWVsZENvbGxhcHNlLmpzKTpcbiAgICAgICBhbCBkZXNwbGVnYXIsIGVsIGJsb3F1ZSBzZSB0cmFlIGEgbGEgdmlzdGEgY29uIGBzY3JvbGxJbnRvVmlldyh7YmxvY2s6J25lYXJlc3QnfSlgLFxuICAgICAgIHkgZXN0ZSBtYXJnZW4gZXMgZWwgYWlyZSBxdWUgcXVlZGEgZW50cmUgZWwgY2FtcG8geSBlbCBib3JkZSBkZSBsYSB2ZW50YW5hLiAqL1xuICAgIC5maWVsZC1jb2xsYXBzZSB7XG4gICAgICAgIHNjcm9sbC1tYXJnaW4tYmxvY2s6IDEuNXJlbTtcbiAgICB9XG4gICAgLmZpZWxkLWNvbGxhcHNlID4gc3VtbWFyeSB7XG4gICAgICAgIEBhcHBseSBmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMS41IHctZnVsbCBjdXJzb3ItcG9pbnRlciBzZWxlY3Qtbm9uZSB0cmFuc2l0aW9uLWNvbG9ycztcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gICAgLmZpZWxkLWNvbGxhcHNlID4gc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZmllbGQtY29sbGFwc2UgPiBzdW1tYXJ5OjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBmbGV4OiBub25lO1xuICAgICAgICB3aWR0aDogMC41cmVtO1xuICAgICAgICBoZWlnaHQ6IDAuNXJlbTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgY3VycmVudENvbG9yO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgY3VycmVudENvbG9yO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgfVxuICAgIC5maWVsZC1jb2xsYXBzZVtvcGVuXSA+IHN1bW1hcnk6OmJlZm9yZSB7IHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuXG4gICAgLyogVmlzb3IgUERGIGRlbCBhc2lkZSBkZSBsb3MgZWRpdG9yZXMgZGUgZG9jdW1lbnRvcy4gTGEgYWx0dXJhIHZpdmUgYXF1w60geSBubyBlbiB1blxuICAgICAgIGBzdHlsZWAgaW5saW5lIHBvciBwbGFudGlsbGE6IGVyYW4gY2luY28gY29waWFzIGRlbCBtaXNtbyB2YWxvciB5IHVuYSB5YSBoYWLDrWFcbiAgICAgICBkZXJpdmFkbyAoZWwgZWRpdG9yIGRlIHBlZGlkbyB1c2FiYSBgODB2aGApLlxuXG4gICAgICAgTG8gcXVlIHNlIGRlc2N1ZW50YSBkZWwgdmlld3BvcnQgZXMgbG8gcXVlIGVsIHZpc29yIE5PIHB1ZWRlIG9jdXBhcjogZWwgMXJlbSBkZWxcbiAgICAgICBgbGc6c3RpY2t5IGxnOnRvcC00YCBkZWwgYXNpZGUsIHN1IGNhYmVjZXJhICh0w610dWxvICsgc3dpdGNoIEVTL0VOICsgUmVmcmVzY2FyKSB5XG4gICAgICAgZWwgcGllIGRlIHVuYSBsw61uZWEuIDhyZW0gY3VicmUgZXNvOyBjb24gMTJyZW0gc29icmFiYSBwYW50YWxsYSBlbiBibGFuY28gcG9yXG4gICAgICAgZGViYWpvIGVuIG1vbml0b3JlcyBhbHRvcy5cblxuICAgICAgIGBtaW4taGVpZ2h0YCBlcyBlbCBzdWVsbyBwYXJhIHF1ZSBlbCBQREYgc2lnYSBzaWVuZG8gbGVnaWJsZSBlbiB2ZW50YW5hcyBiYWphcy5cbiAgICAgICBPam86IHNpIHNlIHN1YmUgcG9yIGVuY2ltYSBkZSBsbyBxdWUgZGEgZWwgYGNhbGNgLCBlbCBhc2lkZSBwYXNhIGEgc2VyIG3DoXMgYWx0byBxdWVcbiAgICAgICBsYSB2ZW50YW5hIHkgZWwgc3RpY2t5IGRlamEgZGUgdGVuZXIgc2VudGlkbyDigJQgcXVlIGVyYSBqdXN0byBsbyBxdWUgcGFzYWJhIGNvbiBsb3NcbiAgICAgICA3MjBweCBkZSBhbnRlcyBlbiB1biBwb3J0w6F0aWwuICovXG4gICAgLnBkZi1wcmV2aWV3LXN0YWNrIHtcbiAgICAgICAgQGFwcGx5IHctZnVsbCByb3VuZGVkLWxnIGJvcmRlciBib3JkZXItc2xhdGUtMjAwIGJnLXdoaXRlO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA4cmVtKTtcbiAgICAgICAgbWluLWhlaWdodDogMzJyZW07XG4gICAgfVxuXG4gICAgLyogQ2FyZHMgY29sYXBzYWJsZXMg4oCUIGNoZXZyb24gcm90YSBjdWFuZG8gZGV0YWlsc1tvcGVuXS4gKi9cbiAgICAjYWp1c3Rlc0NhcmQgPiBzdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyLFxuICAgICNjYWxjdWxhZG9yYVRyYW5zcG9ydGUgPiBzdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIC5hanVzdGVzLWNoZXZyb24geyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlOyB9XG4gICAgZGV0YWlsc1tvcGVuXSA+IHN1bW1hcnkgLmFqdXN0ZXMtY2hldnJvbiB7IHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgICAvKiBPdmVycmlkZSBcInByaW1hcmlvXCI6IGVsIGNhbXBvIHNvYnJlIGVsIHF1ZSBlbCB1c3VhcmlvIGVzY3JpYmUgKHZzIGVsIGRlcml2YWRvKS5cbiAgICAgICBTZSBtYXJjYSBjb24gdW4gcmluZyBzdXRpbCBwYXJhIHF1ZSBzZXBhIGN1YWwgZXMgbGEgZnVlbnRlIGRlIHZlcmRhZC4gKi9cbiAgICAuYWp1c3Rlcy1wcmltYXJ5IHsgQGFwcGx5IHJpbmctMiByaW5nLWJsdWUtMzAwIHJpbmctb2Zmc2V0LTE7IH1cblxuICAgIC8qIEdyaWQgZGUgb3ZlcnJpZGVzOiBsYWJlbCArIFVuaWRhZCArIFRvdGFsIGNvbiBhbmNob3MgY29uc2lzdGVudGVzLiAqL1xuICAgIC5vdmVycmlkZXMtZ3JpZCB7IEBhcHBseSBncmlkIGdyaWQtY29scy1bMWZyXzdyZW1fN3JlbV0gZ2FwLTM7IH1cbiAgICAvKiBJbnB1dCBjb21wYWN0byBwYXJhIGNlbGRhcyBwZXF1ZcOxYXMgKG92ZXJyaWRlcywgY29uZmlndXJhY2lvbikuICovXG4gICAgLmlucHV0LWNvbXBhY3QgeyBAYXBwbHkgcHgtMiBweS0xIHRleHQtc207IH1cblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIENoaXBzIHRvZ2dsZWFibGVzIOKAlCBwYXJhIHNlbGVjY2lvbmVzIG11bHRpIChleHRyYXMsIGltcHJlc2lvbikuXG4gICAgICAgU3VzdGl0dXllbiBlbCA8c2VsZWN0IG11bHRpcGxlPi4gRWwgc2VsZWN0IHF1ZWRhIG9jdWx0byBwZXJvXG4gICAgICAgc2lndWUgc2llbmRvIGVsIHNvdXJjZSBvZiB0cnV0aC5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAuY2hpcHMtY29udGFpbmVyIHtcbiAgICAgICAgQGFwcGx5IGdyaWQgZ2FwLTEuNTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxM3JlbSwgMWZyKSk7XG4gICAgfVxuICAgIC8qIENvbiBjYXRlZ29yw61hcyAoY2hpcC1ncm91cCksIGNhZGEgY2F0ZWdvcsOtYSBvY3VwYSBTSUVNUFJFIGVsIGFuY2hvIGNvbXBsZXRvIGRlIGxhIHNlY2Npw7NuLFxuICAgICAgIGluY2x1aWRhcyBsYXMgZGUgdW5hIHNvbGEgb3BjacOzbiAocC5lai4gXCJQcmVzZW50YWNpw7NuIOKGkiBFbWJvbHNhZG8gaW5kaXZpZHVhbFwiKS4gQW50ZXMgZXNhc1xuICAgICAgIHNlIGVuY29nw61hbiBwYXJhIGNvbXBhcnRpciBmaWxhIGRlIGRvcyBlbiBkb3MsIHkgdW5hIHDDrWxkb3JhIGNvcnRhIHBlcmRpZGEgZW4gbWVkaWEgZmlsYVxuICAgICAgIHZhY8OtYSBzZSBsZcOtYSBjb21vIHVuIGh1ZWNvIGVuIHZleiBkZSBjb21vIHVuYSBvcGNpw7NuLiAqL1xuICAgIC5jaGlwcy1jb250YWluZXI6aGFzKC5jaGlwLWdyb3VwKSB7XG4gICAgICAgIEBhcHBseSBncmlkIGdhcC14LTQgZ2FwLXktMjtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxM3JlbSwgMWZyKSk7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICB9XG4gICAgLmNoaXBzLWNvbnRhaW5lcjpoYXMoLmNoaXAtZ3JvdXApID4gLmNoaXAtZ3JvdXAgeyBncmlkLWNvbHVtbjogMSAvIC0xOyB9XG4gICAgLmNoaXAge1xuICAgICAgICBAYXBwbHkgaW5saW5lLWZsZXggdy1mdWxsIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBnYXAtMSBweC0zIHB5LTEuNSByb3VuZGVkLWZ1bGwgdGV4dC14cyBmb250LW1lZGl1bSB0ZXh0LWNlbnRlciBsZWFkaW5nLXRpZ2h0XG4gICAgICAgICAgICAgICBiZy1zbGF0ZS0xMDAgdGV4dC1zbGF0ZS02MDAgY3Vyc29yLXBvaW50ZXIgdHJhbnNpdGlvbi1hbGwgc2VsZWN0LW5vbmVcbiAgICAgICAgICAgICAgIGhvdmVyOmJnLXNsYXRlLTIwMC84MCBob3Zlcjp0ZXh0LXNsYXRlLTcwMDtcbiAgICB9XG4gICAgLmNoaXAtYWN0aXZlIHtcbiAgICAgICAgQGFwcGx5IGJnLWJsdWUtNjAwIHRleHQtd2hpdGUgZm9udC1zZW1pYm9sZCBzaGFkb3ctc29mdC1zbSBob3ZlcjpiZy1ibHVlLTcwMCBob3Zlcjp0ZXh0LXdoaXRlO1xuICAgIH1cbiAgICAuY2hpcDpmb2N1cy12aXNpYmxlIHsgQGFwcGx5IG91dGxpbmUtbm9uZSByaW5nLTIgcmluZy1ibHVlLTUwMC8zMDsgfVxuICAgIC5jaGlwLWVtcHR5IHtcbiAgICAgICAgQGFwcGx5IHRleHQteHMgdGV4dC1zbGF0ZS00MDAgaXRhbGljIHB4LTE7XG4gICAgfVxuICAgIC5jaGlwLWdyb3VwIHsgQGFwcGx5IHAtMDsgfVxuICAgIC5jaGlwLWdyb3VwLWxhYmVsIHtcbiAgICAgICAgQGFwcGx5IG1iLTEuNSB0ZXh0LVswLjdyZW1dIGZvbnQtc2VtaWJvbGQgdXBwZXJjYXNlIHRyYWNraW5nLXdpZGUgdGV4dC1zbGF0ZS01MDA7XG4gICAgfVxuICAgIC5jaGlwLWdyb3VwLWJvZHkge1xuICAgICAgICBAYXBwbHkgZ3JpZCBnYXAtMS41O1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDEzcmVtLCAxZnIpKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICAvKiA0IG9wY2lvbmVzIHN1ZWx0YXMgZW4gdW5hIHNlY2Npw7NuOiAyeDIsIGxhIG1pc21hIGZvcm1hIHF1ZSB5YSB0aWVuZW4gbG9zIHNldHMgZXhjbHV5ZW50ZXMgZGVcbiAgICAgICA0ICguY2hpcC1leGNsdXNpdmUtc2V0W2RhdGEtY291bnQ9XCI0XCJdKS4gRW4gdW5hIHNvbGEgZmlsYSBsYXMgY3VhdHJvIHDDrWxkb3JhcyBzZSBsZWVuIGNvbW9cbiAgICAgICB1bmEgYmFycmEgY29udGludWEgeSBubyBjb21vIGN1YXRybyBvcGNpb25lcy4gRWouIGxvcyBBY2FiYWRvcyBkZSBBY3JlZGl0YWNpb25lcyBQVkMuXG4gICAgICAgTG8gcG9uZSBjaGlwcy5qcyAoQ09OVEVPU19DT05fUkVQQVJUT19GSUpPKS4gKi9cbiAgICAuY2hpcC1ncm91cC1ib2R5W2RhdGEtY291bnQ9XCI0XCJdIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICAgIH1cbiAgICAvKiA1IG9wY2lvbmVzIHN1ZWx0YXMgZW4gdW5hIHNlY2Npw7NuOiAyIGFycmliYSB5IDMgYWJham8sIGVuIHZleiBkZWwgXCI0ICsgMSBodcOpcmZhbm9cIiBxdWUgZGVqYVxuICAgICAgIGF1dG8tZml0LiBSZWppbGxhIGRlIDYgcGlzdGFzIHkgc3BhbnMgMy8zICsgMi8yLzIsIGFzw60gZWwgY29ydGUgc2UgbWFudGllbmUgYSBjdWFscXVpZXJcbiAgICAgICBhbmNoby4gRWwgb3JkZW4gZGUgbGFzIG9wY2lvbmVzIGVzIGVsIHF1ZSBhZ3J1cGE6IHByaW1lcm8gbG9zIGFjYWJhZG9zIGRlbCBzb3BvcnRlLCBkZWJham9cbiAgICAgICBsbyBxdWUgc2UgbWFyY2Egc29icmUgw6lsLiBMbyBwb25lIGNoaXBzLmpzIChDT05URU9TX0NPTl9SRVBBUlRPX0ZJSk8pLCBxdWUgdGFtYmnDqW4gZGVqYVxuICAgICAgIGFwcGx5Um93RmlsbCBmdWVyYSBkZSBlc3RhcyBzZWNjaW9uZXMuICovXG4gICAgLmNoaXAtZ3JvdXAtYm9keVtkYXRhLWNvdW50PVwiNVwiXSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIG1pbm1heCgwLCAxZnIpKTtcbiAgICB9XG4gICAgLmNoaXAtZ3JvdXAtYm9keVtkYXRhLWNvdW50PVwiNVwiXSA+IDpudGgtY2hpbGQoLW4rMikgeyBncmlkLWNvbHVtbjogc3BhbiAzOyB9XG4gICAgLmNoaXAtZ3JvdXAtYm9keVtkYXRhLWNvdW50PVwiNVwiXSA+IDpudGgtY2hpbGQobiszKSB7IGdyaWQtY29sdW1uOiBzcGFuIDI7IH1cblxuICAgIC5jaGlwLWdyb3VwLWJvZHktZXhjbHVzaXZlOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDAuNzVyZW07XG4gICAgICAgIHJpZ2h0OiAwLjc1cmVtO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXNsYXRlLTMwMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICB9XG4gICAgLmNoaXAtZ3JvdXAtYm9keS1leGNsdXNpdmUgLmNoaXAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2IoMjQ4IDI1MCAyNTIpO1xuICAgIH1cblxuICAgIC8qIEdydXBvIEVYQ0xVWUVOVEUgZGVudHJvIGRlIHVuYSBzZWNjacOzbjogc3ViLWZpbGEgcHJvcGlhIGNvbiBzdSBjb25lY3Rvciwgc2luIGNydXphclxuICAgICAgIGxhIGzDrW5lYSBwb3IgbG9zIGNoaXBzIHZlY2lub3MgZGUgbGEgbWlzbWEgY2F0ZWdvcsOtYSAoYnVnIGRlIGxhIGzDrW5lYSBob3Jpem9udGFsKS4gKi9cbiAgICAuY2hpcC1leGNsdXNpdmUtc2V0IHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgQGFwcGx5IGdyaWQgZ2FwLTEuNTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxM3JlbSwgMWZyKSk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgLyogNCBvcGNpb25lcyBleGNsdXllbnRlcyAocC5lai4gbG9zIDQgVUlEIGRlIG1hcmNhamUsIG8gbG9zIDQgaGlsb3MpOiAyeDIgZW4gdmV6IGRlIGRlamFyXG4gICAgICAgdW4gY2hpcCBzdWVsdG8gZW4gbGEgbMOtbmVhIGRlIGFiYWpvLiBFbCBjb25lY3RvciBob3Jpem9udGFsIGNhZSBlbiBlbCBodWVjbyBlbnRyZSBmaWxhcy4gKi9cbiAgICAuY2hpcC1leGNsdXNpdmUtc2V0W2RhdGEtY291bnQ9XCI0XCJdIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICAgIH1cbiAgICAuY2hpcC1leGNsdXNpdmUtc2V0OjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDAuNzVyZW07XG4gICAgICAgIHJpZ2h0OiAwLjc1cmVtO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXNsYXRlLTMwMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICB9XG4gICAgLmNoaXAtZXhjbHVzaXZlLXNldCAuY2hpcCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYigyNDggMjUwIDI1Mik7XG4gICAgfVxuXG4gICAgLyogRmlsYSBjb3J0YSAoMisgY2hpcHMgcXVlIG5vIGxsZWdhbiBhIGxsZW5hciBlbCByZW5nbMOzbiDigJQgdmVyIGFwcGx5Um93RmlsbCBlblxuICAgICAgIGNoaXBzLmpzKTogcmVuZ2zDs24gZW50ZXJvIHJlcGFydGlkbyBhIHBhcnRlcyBpZ3VhbGVzLiBgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zYCBsbyBwb25lIGVsIEpTXG4gICAgICAgaW5saW5lLCBxdWUgZXMgcXVpZW4gc2FiZSBjdcOhbnRvcyBjaGlwcyBoYW4gY2HDrWRvIGVuIGxhIGZpbGEuICovXG4gICAgLmNoaXBzLWNvbnRhaW5lciAuY2hpcC1yb3ctZmlsbCxcbiAgICAuY2hpcC1ncm91cC1ib2R5IC5jaGlwLXJvdy1maWxsIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgQGFwcGx5IGdyaWQgZ2FwLTEuNTtcbiAgICB9XG5cbiAgICAvKiBFeHRyYSBlbiBGSUxBIFBST1BJQSAocC5lai4gTG9nbyBVViBjb24gZG9zIGNvbnRhZG9yZXMsIG8gZWwgcXVlIHF1ZWRhIGh1w6lyZmFubyBlbiBzdSBmaWxhXG4gICAgICAg4oCUIHZlciBhcHBseVJvd0ZpbGwgZW4gY2hpcHMuanMpOiBvY3VwYSB0b2RvIGVsIGFuY2hvIGRlIGxhIHNlY2Npw7NuLiAqL1xuICAgIC5jaGlwcy1jb250YWluZXIgLmNoaXAtcm93LWZ1bGwsXG4gICAgLmNoaXAtZ3JvdXAtYm9keSAuY2hpcC1yb3ctZnVsbCB7IGdyaWQtY29sdW1uOiAxIC8gLTE7IH1cbiAgICAuY2hpcC1yb3ctZnVsbC5jaGlwLXdpdGgtZGVzaWduIHsgZGlzcGxheTogZmxleDsgZmxleC13cmFwOiB3cmFwOyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLyogTGEgcMOtbGRvcmEgbGxlbmEgbGEgZmlsYSB5LCBhbCBzZWxlY2Npb25hcmxhLCBjZWRlIFNPTE8gbG8gcXVlIG9jdXBhbiBsb3MgY29udGFkb3JlcyBxdWVcbiAgICAgICBhcGFyZWNlbiBhbCBsYWRvIChMb2dvIFVWOiBuwrogZGUgcG9zaWNpb25lcyB5IG7CuiBkZSBsb2dvcykuIEVsIGNvbmp1bnRvIHNpZ3VlIG1pZGllbmRvIGxvXG4gICAgICAgbWlzbW8sIGlndWFsIHF1ZSBcIlBpbnRhciBicm9jaGVcIiBkZW50cm8gZGUgc3UgY2VsZGEuICovXG4gICAgLmNoaXAtcm93LWZ1bGwuY2hpcC13aXRoLWRlc2lnbiA+IC5jaGlwIHsgZmxleDogMSAxIGF1dG87IHdpZHRoOiBhdXRvOyBtaW4td2lkdGg6IDA7IH1cblxuICAgIC8qIEV4dHJhIFwicG9yIG7CuiBkZSBkaXNlw7Fvc1wiOiBjZWxkYSBpbmxpbmUganVudG8gYWwgY2hpcCwgdmlzaWJsZSBzb2xvIGN1YW5kbyBlc3TDoSBhY3Rpdm8uICovXG4gICAgLmNoaXAtd2l0aC1kZXNpZ24geyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiA2cHg7IH1cbiAgICAuY2hpcC13aXRoLWRlc2lnbiAuY2hpcC1kaXNlbm9zLWxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgZm9udC1zaXplOiAxMnB4OyBjb2xvcjogdmFyKC0tY29sb3Itc2xhdGUtNTAwLCAjNkI3MjgwKTsgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gICAgLmNoaXAtd2l0aC1kZXNpZ24gLmNoaXAtZGlzZW5vcyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IHdpZHRoOiA1NnB4OyBwYWRkaW5nOiA0cHggNnB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1zbGF0ZS0zMDAsICNDQkQ1RTEpOyBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDsgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcbiAgICB9XG4gICAgLmNoaXAtd2l0aC1kZXNpZ246aGFzKC5jaGlwLmNoaXAtYWN0aXZlKSAuY2hpcC1kaXNlbm9zLWxhYmVsLFxuICAgIC5jaGlwLXdpdGgtZGVzaWduOmhhcyguY2hpcC5jaGlwLWFjdGl2ZSkgLmNoaXAtZGlzZW5vcyB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC8qIENvbiB1biBjb250YWRvciBkZW50cm8sIGVsIGNvbmVjdG9yIGRlbCBncnVwbyBxdWVkYSBhbCBhaXJlIGVudHJlIGVsIGNoaXAgeSBsYSBjZWxkYS4gKi9cbiAgICAuY2hpcC1leGNsdXNpdmUtc2V0OmhhcyguY2hpcC13aXRoLWRlc2lnbik6OmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAgIC8qIEFkdmVydGVuY2lhIGNvbWVyY2lhbCBkZWwgZXh0cmEgKHAuZWouIHNlcmlncmFmw61hIGEgMisgY29sb3JlcykuIE1pc21hIGdlb21ldHLDrWEgcXVlXG4gICAgICAgLnBpY2tlci1pdGVtLWF2aXNvIHBlcm8gZW4gw6FtYmFyLCBubyBlbiByb2pvOiBubyBlcyB1biBlcnJvciwgZXMgXCJoYXkgYWxnbyBtZWpvclwiLiBTZSB2ZSBzb2xvXG4gICAgICAgY29uIGVsIGNoaXAgYWN0aXZvIChDU1MpIFkgY29uIGVsIGNvbnRhZG9yIHBvciBlbmNpbWEgZGVsIHVtYnJhbCAoZGF0YS12aXNpYmxlLCBkZXNkZSBKUykuICovXG4gICAgLmNoaXAtd2l0aC1kZXNpZ24gLmNoaXAtYXZpc28ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyBmbGV4LWJhc2lzOiAxMDAlOyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgZ2FwOiAwLjM3NXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4OyBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0ZDRDM0RDsgYm9yZGVyLXJhZGl1czogOHB4OyBiYWNrZ3JvdW5kOiAjRkZGQkVCO1xuICAgICAgICBmb250LXNpemU6IDEycHg7IGxpbmUtaGVpZ2h0OiAxLjQ7IGNvbG9yOiAjOTI0MDBFO1xuICAgIH1cbiAgICAuY2hpcC13aXRoLWRlc2lnbjpoYXMoLmNoaXAuY2hpcC1hY3RpdmUpIC5jaGlwLWF2aXNvW2RhdGEtdmlzaWJsZT1cIjFcIl0geyBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmNoaXAtYXZpc28tZXh0ZXJubyB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7IGRpc3BsYXk6IG5vbmU7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyBnYXA6IDAuMzc1cmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7IHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRkNEMzREOyBib3JkZXItcmFkaXVzOiA4cHg7IGJhY2tncm91bmQ6ICNGRkZCRUI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDsgbGluZS1oZWlnaHQ6IDEuNDsgY29sb3I6ICM5MjQwMEU7XG4gICAgfVxuICAgIC5jaGlwLWF2aXNvLWV4dGVybm9bZGF0YS1hY3Rpdm89XCIxXCJdW2RhdGEtdmlzaWJsZT1cIjFcIl0geyBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmNoaXAtYXZpc28taWNvbiB7IGZsZXg6IG5vbmU7IH1cblxuICAgIC5jaGlwW2RhdGEtcHJpY2UtdG9vbHRpcF0ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIC5jaGlwW2RhdGEtcHJpY2UtdG9vbHRpcF06OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogYXR0cihkYXRhLXByaWNlLXRvb2x0aXApO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgYm90dG9tOiBjYWxjKDEwMCUgKyAwLjU1cmVtKTtcbiAgICAgICAgei1pbmRleDogODA7XG4gICAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgLyogQW5jaG8gcGVuc2FkbyBwYXJhIHF1ZSB1biB0b29sdGlwIGRlIHByZWNpbyBxdWVwYSBlbiBET1MgbMOtbmVhcyBjb21vIG11Y2hvOiBlbiBlbCBjYXJydXNlbFxuICAgICAgICAgICBlbCB0b29sdGlwIHZpdmUgZGVudHJvIGRlbCBodWVjbyByZXNlcnZhZG8gYmFqbyBsYSBwaXN0YSB5IHVuYSB0ZXJjZXJhIGzDrW5lYSBzZSBjb3J0YWJhLiAqL1xuICAgICAgICBtYXgtd2lkdGg6IG1pbigxNXJlbSwgODV2dyk7XG4gICAgICAgIHBhZGRpbmc6IDAuNDVyZW0gMC42NXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1jb2xvci1uYXZ5LTkwMCkgMCUsIHZhcigtLWNvbG9yLXNsYXRlLTkwMCkgMTAwJSk7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggMjRweCByZ2JhKDEwLCAyMiwgNDAsIDAuMjIpLCAwIDJweCA2cHggcmdiYSgxMCwgMjIsIDQwLCAwLjE4KTtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtc2Fucyk7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDRweCkgc2NhbGUoMC45OCk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNHMgZWFzZSwgdHJhbnNmb3JtIDAuMTRzIGVhc2U7XG4gICAgfVxuICAgIC5jaGlwW2RhdGEtcHJpY2UtdG9vbHRpcF06OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBib3R0b206IGNhbGMoMTAwJSArIDAuMjVyZW0pO1xuICAgICAgICB6LWluZGV4OiA4MTtcbiAgICAgICAgd2lkdGg6IDAuNTVyZW07XG4gICAgICAgIGhlaWdodDogMC41NXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc2xhdGUtOTAwKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDRweCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjk4KTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE0cyBlYXNlLCB0cmFuc2Zvcm0gMC4xNHMgZWFzZTtcbiAgICB9XG4gICAgLmNoaXBbZGF0YS1wcmljZS10b29sdGlwXTpob3Zlcjo6YmVmb3JlLFxuICAgIC5jaGlwW2RhdGEtcHJpY2UtdG9vbHRpcF06aG92ZXI6OmFmdGVyLFxuICAgIC5jaGlwW2RhdGEtcHJpY2UtdG9vbHRpcF06Zm9jdXMtdmlzaWJsZTo6YmVmb3JlLFxuICAgIC5jaGlwW2RhdGEtcHJpY2UtdG9vbHRpcF06Zm9jdXMtdmlzaWJsZTo6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKSBzY2FsZSgxKTtcbiAgICB9XG4gICAgLmNoaXBbZGF0YS1wcmljZS10b29sdGlwXTpob3Zlcjo6YmVmb3JlLFxuICAgIC5jaGlwW2RhdGEtcHJpY2UtdG9vbHRpcF06Zm9jdXMtdmlzaWJsZTo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgxKTtcbiAgICB9XG5cbiAgICAvKiBUb29sdGlwIGdlbsOpcmljbyBjZW50cmFkbyBTT0JSRSBlbCBlbGVtZW50byAoYXRyaWJ1dG8gZGF0YS10aXApLiBTdXN0aXR1eWUgYWwgdGl0bGU9XG4gICAgICAgbmF0aXZvLCBxdWUgZWwgbmF2ZWdhZG9yIGNvbG9jYSBwZWdhZG8gYWwgY3Vyc29yIHkgZGVzY29sb2NhZG8gZGVsIHRleHRvLiAqL1xuICAgIC50aXAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIC50aXA6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogYXR0cihkYXRhLXRpcCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBib3R0b206IGNhbGMoMTAwJSArIDAuNXJlbSk7XG4gICAgICAgIHotaW5kZXg6IDgwO1xuICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICAgIG1heC13aWR0aDogbWluKDE0cmVtLCA4MHZ3KTtcbiAgICAgICAgcGFkZGluZzogMC4zNXJlbSAwLjZyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbmF2eS05MDApO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtc2Fucyk7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43MnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNHB4KTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE0cyBlYXNlLCB0cmFuc2Zvcm0gMC4xNHMgZWFzZTtcbiAgICB9XG4gICAgLnRpcDo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIGJvdHRvbTogY2FsYygxMDAlICsgMC4ycmVtKTtcbiAgICAgICAgei1pbmRleDogODE7XG4gICAgICAgIHdpZHRoOiAwLjVyZW07XG4gICAgICAgIGhlaWdodDogMC41cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1uYXZ5LTkwMCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA0cHgpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNHMgZWFzZSwgdHJhbnNmb3JtIDAuMTRzIGVhc2U7XG4gICAgfVxuICAgIC50aXA6aG92ZXI6OmFmdGVyLFxuICAgIC50aXA6Zm9jdXMtdmlzaWJsZTo6YWZ0ZXIsXG4gICAgLnRpcDpob3Zlcjo6YmVmb3JlLFxuICAgIC50aXA6Zm9jdXMtdmlzaWJsZTo6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgLnRpcDpob3Zlcjo6YWZ0ZXIsXG4gICAgLnRpcDpmb2N1cy12aXNpYmxlOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgIH1cbiAgICAudGlwOmhvdmVyOjpiZWZvcmUsXG4gICAgLnRpcDpmb2N1cy12aXNpYmxlOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgIH1cblxuICAgIC8qIEV4cGxpY2FjaW9uZXMgbGFyZ2FzIChwYXJhIHF1w6kgc2lydmUgdW5hIHNlY2Npw7NuLCBxdcOpIGhhY2UgdW4gYm90w7NuKTogMTRyZW0gbGFzIHBhcnRlIGVuXG4gICAgICAgc2VpcyBsw61uZWFzLiBTZSB1c2EganVudG8gYSBgLmluZm8tdGlwYCwgbm8gZW4gdG9vbHRpcHMgZGUgdW5hIHBhbGFicmEuICovXG4gICAgLnRpcC50aXAtd2lkZTo6YWZ0ZXIge1xuICAgICAgICBtYXgtd2lkdGg6IG1pbigyNHJlbSwgODh2dyk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgICAvKiBKdW50byBhbCBib3JkZSBpenF1aWVyZG8gKHByaW1lcmEgY29sdW1uYSBkZWwgZWRpdG9yKTogZWwgZ2xvYm8gYXJyYW5jYSBlbiBsYSAoaSkgeSBjcmVjZVxuICAgICAgIGhhY2lhIGxhIGRlcmVjaGE7IGNlbnRyYWRvIHNlIG1ldMOtYSBkZWJham8gZGUgbGEgYmFycmEgbGF0ZXJhbC4gKi9cbiAgICAudGlwLnRpcC1zdGFydDo6YWZ0ZXIgeyBsZWZ0OiAtMC41cmVtOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA0cHgpOyB9XG4gICAgLnRpcC50aXAtc3RhcnQ6aG92ZXI6OmFmdGVyLFxuICAgIC50aXAudGlwLXN0YXJ0OmZvY3VzLXZpc2libGU6OmFmdGVyIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgICAvKiBVbmEgbMOtbmVhIHBvciBvcGNpw7NuICjCq1dlYjog4oCmwrssIMKrRmVyaWE6IOKApsK7KTogcmVzcGV0YSBsb3Mgc2FsdG9zIGRlbCBkYXRhLXRpcC4gKi9cbiAgICAudGlwLnRpcC1saW5lczo6YWZ0ZXIgeyB3aGl0ZS1zcGFjZTogcHJlLWxpbmU7IH1cblxuICAgIC8qIExhIChpKSBxdWUgYWJyZSB1biB0b29sdGlwLiBTdXN0aXR1eWUgYSBsb3MgcMOhcnJhZm9zIGRlIGF5dWRhIHNpZW1wcmUgdmlzaWJsZXMgZGViYWpvIGRlXG4gICAgICAgY2FkYSB0w610dWxvOiBleHBsaWNhYmFuIGJpZW4gcGVybyBsbGVuYWJhbiBsYSBwYW50YWxsYSBkZSB0ZXh0byBxdWUgeWEgbmFkaWUgbGVlLlxuICAgICAgIEVzIHVuIDxidXR0b24+IChvIGxsZXZhIHRhYmluZGV4KSBwYXJhIHF1ZSBlbCB0b29sdGlwIHRhbWJpw6luIHNhbGdhIGNvbiBlbCB0ZWNsYWRvLiAqL1xuICAgIC5pbmZvLXRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEuMTI1cmVtO1xuICAgICAgICBoZWlnaHQ6IDEuMTI1cmVtO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDk5OTlweDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zbGF0ZS00MDApO1xuICAgICAgICBjdXJzb3I6IGhlbHA7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnMsIGJhY2tncm91bmQtY29sb3IgMC4ycztcbiAgICB9XG4gICAgLmluZm8tdGlwOmhvdmVyLFxuICAgIC5pbmZvLXRpcDpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc2xhdGUtMTAwKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJsdWUtNjAwKTtcbiAgICB9XG5cbiAgICAvKiBDb250ZW5lZG9yIGRlIG9wY2lvbmVzIGRlbCBjYXTDoWxvZ286IG5vIGdlbmVyYSBjYWphIHByb3BpYSwgc3VzIGhpam9zIHBhcnRpY2lwYW4gZW4gZWwgZ3JpZFxuICAgICAgIHBhZHJlIChlbCBkZSBmYW1pbGlhL21vZGVsbykuIEFzw60gbGEgMcKqIG9wY2nDs24gY2FlIGVuIGxhIGNlbGRhIGNvbnRpZ3VhIGEgXCJGYW1pbGlhXCIgY3VhbmRvIGVsXG4gICAgICAgc2VsZWN0b3IgZGUgbW9kZWxvIGVzdMOhIG9jdWx0bywgeSBsb3MgcGFuZWxlcyBmdWxsLXdpZHRoIChjaWVycmUvc3RvY2spIGNvbnNlcnZhbiBzdSBncmlkLWNvbHVtbi4gKi9cbiAgICAuY2F0YWxvZ28tb3BjaW9uZXMtc3ViZ3JpZCB7XG4gICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgIH1cblxuICAgIC8qIENpZXJyZTogc2VsZWN0b3Igc2VnbWVudGFkbyBsaWdhZG8gYWwgc2VsZWN0b3IgZGUgYnJvY2hlcy4gKi9cbiAgICAuY2xvc3VyZS1zZWxlY3Rvci1wYW5lbCB7XG4gICAgICAgIEBhcHBseSByb3VuZGVkLXhsIGJnLXNsYXRlLTUwLzcwIHAtMztcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICB9XG4gICAgLmNsb3N1cmUtc2VsZWN0b3ItcGFuZWwgPiAubGFiZWwge1xuICAgICAgICBAYXBwbHkgdGV4dC1zbSBmb250LXNlbWlib2xkIHRleHQtc2xhdGUtNzAwO1xuICAgIH1cblxuICAgIC8qIFN0b2NrICh2aW5pbG8vdHl2ZWspOiBhbG1hY8OpbiArIHJlY2FyZ29zIG9jdXBhbiB0b2RvIGVsIGFuY2hvIGRlbCBncmlkLCBjb21vIGVsIHBhbmVsIGRlXG4gICAgICAgY2llcnJlIOKAlCBldml0YSBxdWUgbGEgdGFibGEgZGUgZGlzcG9uaWJpbGlkYWQgc2Ugcm9tcGEgZW4gdmVudGFuYXMgZXN0cmVjaGFzLiAqL1xuICAgIC5zdG9jay13YXJlaG91c2UtcGFuZWwsXG4gICAgLnN0b2NrLXJlY2FyZ29zLXBhbmVsIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICB9XG4gICAgLyogQXZpc28gTk8gYmxvcXVlYW50ZSBkZSBzdG9jay4gw4FtYmFyID0gZmFsdGEgbWF0ZXJpYWwgcGFyYSBsbyBxdWUgc2UgcGlkZSAobyBubyBxdWVkYVxuICAgICAgIG5hZGEpOyBhenVsID0gc29sbyBlc3RhbW9zIHBvciBkZWJham8gZGVsIHVtYnJhbCBkZSByZXBvc2ljacOzbiwgcXVlIGVzIHVuIGRhdG8gw7p0aWxcbiAgICAgICBwZXJvIG5vIHVuIHByb2JsZW1hIHBhcmEgZXN0YSBjb3RpemFjacOzbi4gKi9cbiAgICAuc3RvY2stYXZpc28ge1xuICAgICAgICBAYXBwbHkgbXQtMiBmbGV4IGl0ZW1zLXN0YXJ0IGdhcC0xLjUgcm91bmRlZC1sZyBib3JkZXIgYm9yZGVyLWFtYmVyLTIwMCBiZy1hbWJlci01MCBweC0zIHB5LTIgdGV4dC14cyBmb250LW1lZGl1bSB0ZXh0LWFtYmVyLTcwMDtcbiAgICB9XG4gICAgLnN0b2NrLWF2aXNvLnN0b2NrLWF2aXNvLWxldmUge1xuICAgICAgICBAYXBwbHkgYm9yZGVyLWJsdWUtMjAwIGJnLWJsdWUtNTAgdGV4dC1ibHVlLTcwMDtcbiAgICB9XG4gICAgLnN0b2NrLWF2aXNvIC5zdG9jay1hdmlzby1pY29uIHtcbiAgICAgICAgQGFwcGx5IGxlYWRpbmctbm9uZTtcbiAgICB9XG4gICAgLyogUmVjb3JkYXRvcmlvIGRlbCBjaWNsbyBkZSBhbG1hY8Opbi4gQ2VycmFkbyBlcyB1bmEgbMOtbmVhIGdyaXMgcXVlIG5vIGNvbXBpdGUgY29uIG5hZGE7IHNlXG4gICAgICAgYWJyZSBkZSB1biBjbGljLiBObyBlcyB1biB0b29sdGlwIGEgcHJvcMOzc2l0bzogc29uIHNlaXMgcmVnbGFzLCB5IHVuIGB0aXRsZWAgZGUgc2VpcyBsw61uZWFzXG4gICAgICAgbm8gc2UgbGVlIGNvbiBjYWxtYSBuaSBleGlzdGUgZW4gdW5hIHRhYmxldC4gKi9cbiAgICAuc3RvY2stcmVnbGFzIHtcbiAgICAgICAgQGFwcGx5IG10LTI7XG4gICAgfVxuICAgIC8qIEVsIGBkaXNwbGF5YCBOTyB2YSBhcXXDrTogbG8gcGlzYSB1biBgc3VtbWFyeSB7IGRpc3BsYXk6IGxpc3QtaXRlbSB9YCBzaW4gY2FwYSBkZSBhcHAuY3NzLlxuICAgICAgIFZlciBlbCBibG9xdWUgwqtDYXNjYWRlIGZpeDogZWwgPHN1bW1hcnk+IGRlbCByZWNvcmRhdG9yaW8gZGUgc3RvY2vCuyBtw6FzIGFiYWpvLiAqL1xuICAgIC5zdG9jay1yZWdsYXMtc3VtbWFyeSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMC4zNzVyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgQGFwcGx5IHRleHQteHMgZm9udC1tZWRpdW0gdGV4dC1zbGF0ZS01MDAgdHJhbnNpdGlvbi1jb2xvcnMgaG92ZXI6dGV4dC1ibHVlLTcwMDtcbiAgICB9XG4gICAgLnN0b2NrLXJlZ2xhcy1zdW1tYXJ5ID4gc3ZnIHsgZmxleDogbm9uZTsgfVxuICAgIC5zdG9jay1yZWdsYXMtc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuc3RvY2stcmVnbGFzW29wZW5dIC5zdG9jay1yZWdsYXMtc3VtbWFyeSB7XG4gICAgICAgIEBhcHBseSBtYi0xLjUgdGV4dC1zbGF0ZS03MDA7XG4gICAgfVxuICAgIC5zdG9jay1yZWdsYXMtbGlzdGEge1xuICAgICAgICBAYXBwbHkgc3BhY2UteS0xIHJvdW5kZWQtbGcgYm9yZGVyIGJvcmRlci1zbGF0ZS0yMDAgYmctc2xhdGUtNTAgcHgtMyBweS0yIHRleHQteHNcbiAgICAgICAgICAgICAgIGxlYWRpbmctcmVsYXhlZCB0ZXh0LXNsYXRlLTYwMDtcbiAgICAgICAgbGlzdC1zdHlsZTogZGlzYztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgIH1cbiAgICAuc3RvY2stcmVnbGFzLWxpc3RhIHN0cm9uZyB7XG4gICAgICAgIEBhcHBseSBmb250LXNlbWlib2xkIHRleHQtc2xhdGUtODAwO1xuICAgIH1cbiAgICAvKiBMb3MgcmVjYXJnb3MgZGUgc3RvY2sgc2UgcGludGFuIGNvbiBsb3MgTUlTTU9TIGNvbXBvbmVudGVzIHF1ZSBsb3MgZXh0cmFzIGRlbCByZXN0byBkZVxuICAgICAgIHByb2R1Y3RvczogY2hpcCArIGNlbGRhIGRlIG7CuiBpbmxpbmUgKGBjaGlwLXdpdGgtZGVzaWduYC9gY2hpcC1kaXNlbm9zYCkuIEFxdcOtIHNvbG8gcXVlZGFcbiAgICAgICBlbCBjb250ZW5lZG9yOyBlbCBzdGVwcGVyIHByb3BpbyAo4oiSIE4gKykgcXVlIHRlbsOtYW4gYW50ZXMgc2UgcmV0aXLDsyBwb3IgaW5jb25zaXN0ZW50ZS4gKi9cbiAgICAuc3RvY2stcmVjYXJnb3MtcGFuZWwge1xuICAgICAgICBAYXBwbHkgYmxvY2sgc3BhY2UteS0zO1xuICAgIH1cbiAgICAvKiBJbnB1dCBkZW50cm8gZGUgdW5hIGNlbGRhIGRlIGxhIG1hdHJpeiBkZSBhbG1hY8OpbjogZXN0cmVjaG8geSBhbGluZWFkbyBhIGxhIGRlcmVjaGEsIHBlcm9cbiAgICAgICBjb24gbGEgbWlzbWEgdGlwb2dyYWbDrWEgcXVlIGVsIHJlc3RvIGRlIGxhIHRhYmxhIChsb3MgbsO6bWVyb3MgZGVsIGFsbWFjw6luIHNlIGxlZW4gbXVjaG8sXG4gICAgICAgeSBhIDEyIHB4IGN1ZXN0YSBkaXN0aW5ndWlyIDg1LjAwMCBkZSA4LjUwMCkuICovXG4gICAgLmlucHV0LWNlbGRhIHtcbiAgICAgICAgQGFwcGx5IHctMjggcHgtMiBweS0xIHRleHQtc207XG4gICAgfVxuXG4gICAgLnNlZ21lbnRlZC1jb250cm9sIHtcbiAgICAgICAgQGFwcGx5IGdyaWQgZ2FwLTEgcm91bmRlZC14bCBiZy1zbGF0ZS0xMDAgcC0xO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCh2YXIoLS1zZWdtZW50ZWQtY291bnQsIDQpLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAvKiBFbCBjb250ZW5lZG9yIHNlIGNyZWEgc2llbXByZSBjb24gZWwgZWplIGRlIGNpZXJyZSB5IHNlIHZhY8OtYSBjdWFuZG8gZXNlIGVqZSBzZSBwaW50YSBjb21vXG4gICAgICAgZGVzcGxlZ2FibGUgbm9ybWFsLiBWYWPDrW8gc2VndcOtYSBvY3VwYW5kbzogc3UgZm9uZG8gZ3JpcyArIHBhZGRpbmcgZGVqYWJhbiB1bmEgYmFuZGFcbiAgICAgICBzb21icmVhZGEgYmFqbyBsYSBjZWxkYSwgc2luIG5hZGEgZGVudHJvLiAqL1xuICAgIC5zZWdtZW50ZWQtY29udHJvbDplbXB0eSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5zZWdtZW50ZWQtb3B0aW9uIHtcbiAgICAgICAgQGFwcGx5IGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciBtaW4taC0xMCByb3VuZGVkLWxnIHB4LTIgcHktMiB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRleHQtc2xhdGUtNjAwIHRyYW5zaXRpb24tYWxsXG4gICAgICAgICAgICAgICBob3ZlcjpiZy13aGl0ZSBob3Zlcjp0ZXh0LXNsYXRlLTkwMCBmb2N1cy12aXNpYmxlOm91dGxpbmUtbm9uZSBmb2N1cy12aXNpYmxlOnJpbmctMiBmb2N1cy12aXNpYmxlOnJpbmctYmx1ZS01MDAvMzA7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAuc2VnbWVudGVkLW9wdGlvbi1hY3RpdmUge1xuICAgICAgICBAYXBwbHkgYmctd2hpdGUgdGV4dC1ibHVlLTgwMCBzaGFkb3ctc29mdC1zbTtcbiAgICB9XG4gICAgLyogQ29ubXV0YWRvciBkZSB2aXN0YSBlbiB1bmEgY2FiZWNlcmE6IHNlIGFqdXN0YSBhIHN1IGNvbnRlbmlkbyBlbiB2ZXogZGUgb2N1cGFyIGVsIGFuY2hvLiAqL1xuICAgIC5zZWdtZW50ZWQtY29udHJvbC1pbmxpbmUge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQodmFyKC0tc2VnbWVudGVkLWNvdW50LCAyKSwgYXV0byk7XG4gICAgfVxuICAgIC5jYXRhbG9nby1yZWFkb25seS12YWx1ZSB7XG4gICAgICAgIEBhcHBseSBtaW4taC0xMCByb3VuZGVkLXhsIGJnLXNsYXRlLTEwMC83MCBweC0zLjUgcHktMi41IHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1zbGF0ZS03MDA7XG4gICAgfVxuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgUGlja2VyIGRlIG1vZGVsb3Mg4oCUIGZpbGEgY29tcGFjdGEgZW4gZWwgcGFuZWwgKyByZWppbGxhIGVuIDxkaWFsb2c+LlxuICAgICAgIEFsdGVybmF0aXZhIGFsIGNhcnJ1c2VsIHBhcmEgY2F0w6Fsb2dvcyBsYXJnb3M6IGVuIGVsIHBhbmVsIHNvbG8gc2UgdmUgZWxcbiAgICAgICBtb2RlbG8gRUxFR0lETywgeSBlbCBjYXTDoWxvZ28gZW50ZXJvIHNlIGFicmUgYSB0YW1hw7FvIGdyYW5kZSBiYWpvIGRlbWFuZGEuXG4gICAgICAgKEVsIGRpw6Fsb2dvIGVuIHPDrSB2aXZlIGZ1ZXJhIGRlIEBsYXllciwganVudG8gYWwgaW1hZ2UtZGlhbG9nLilcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAvKiBDYW1wbyBxdWUgc2UgZWxpZ2UgZW4gZGnDoWxvZ28gKERpbWVuc2lvbmVzLCBDb3Jkw7NuLCBCcm9jaGUsIEFjY2Vzb3Jpb+KApik6IFJFTkdMw5NOIFBST1BJTyBhXG4gICAgICAgdG9kbyBlbCBhbmNobywgZnVlcmEgZGVsIHBhdHLDs24gZGUgZG9zIGNvbHVtbmFzIGRlbCBwYW5lbC4gU3UgY29udHJvbCBubyBlcyB1biBkZXNwbGVnYWJsZVxuICAgICAgIHNpbm8gdW5hIHRhcmpldGEgY29uIG1pbmlhdHVyYSwgbm9tYnJlIGRlbCBtb2RlbG8geSBib3TDs246IGEgbWVkaWEgY29sdW1uYSBlbCBub21icmUgc2VcbiAgICAgICBwYXJ0ZSBlbiB0cmVzIGzDrW5lYXMgeSBlbCBjb25qdW50byBzZSBsZWUgYXByZXRhZG8uIExhIGNsYXNlIGxhIHBvbmUvcXVpdGEgcGlja2VyLmpzIHNvYnJlXG4gICAgICAgZWwgd3JhcHBlciBkZWwgY2FtcG8sIGFzw60gcXVlIGxhIHJlZ2xhIHZhbGUgaWd1YWwgcGFyYSBsb3MgZWplcyBkZWwgc3ViZ3JpZCB5IHBhcmEgbG9zXG4gICAgICAgYmxvcXVlcyBzdWVsdG9zIChjb3Jkw7NuKS4gRW4gdW4gY29udGVuZWRvciBxdWUgbm8gc2VhIGdyaWQsIGBncmlkLWNvbHVtbmAgc2UgaWdub3JhLiAqL1xuICAgIC5waWNrZXItZmllbGQge1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgIH1cbiAgICAucGlja2VyLXRyaWdnZXItd3JhcCB7XG4gICAgICAgIEBhcHBseSBtbC0yIG10LTEuNTtcbiAgICB9XG4gICAgLnBpY2tlci1lbXB0eSB7XG4gICAgICAgIEBhcHBseSB0ZXh0LXhzIHRleHQtc2xhdGUtNDAwIGl0YWxpYyBweC0xO1xuICAgIH1cbiAgICAucGlja2VyLXRyaWdnZXIge1xuICAgICAgICBAYXBwbHkgZmxleCB3LWZ1bGwgaXRlbXMtY2VudGVyIGdhcC0zIHJvdW5kZWQtbGcgYm9yZGVyIGJvcmRlci1zbGF0ZS0yMDAgYmctd2hpdGVcbiAgICAgICAgICAgICAgIHAtMiBwci0yLjUgdGV4dC1sZWZ0IHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTIwMFxuICAgICAgICAgICAgICAgaG92ZXI6Ym9yZGVyLWJsdWUtMzAwIGhvdmVyOnNoYWRvdy1zb2Z0LXNtXG4gICAgICAgICAgICAgICBmb2N1cy12aXNpYmxlOm91dGxpbmUtbm9uZSBmb2N1cy12aXNpYmxlOnJpbmctMiBmb2N1cy12aXNpYmxlOnJpbmctYmx1ZS01MDAvMzA7XG4gICAgfVxuICAgIC8qIFNpbiBlbGVnaXI6IGJvcmRlIHB1bnRlYWRvIOKAlCBzZSBsZWUgY29tbyBodWVjbyBwb3IgcmVsbGVuYXIsIG5vIGNvbW8gZGF0by4gKi9cbiAgICAucGlja2VyLXRyaWdnZXItZW1wdHkge1xuICAgICAgICBAYXBwbHkgYm9yZGVyLWRhc2hlZDtcbiAgICB9XG4gICAgLnBpY2tlci10cmlnZ2VyLWltZyB7XG4gICAgICAgIEBhcHBseSBoLTEyIHctMTIgc2hyaW5rLTAgcm91bmRlZC1tZCBiZy1zbGF0ZS01MCBvYmplY3QtY29udGFpbjtcbiAgICB9XG4gICAgLnBpY2tlci10cmlnZ2VyLWltZy1lbXB0eSB7XG4gICAgICAgIEBhcHBseSBmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlcjtcbiAgICB9XG4gICAgLnBpY2tlci10cmlnZ2VyLWJvZHkge1xuICAgICAgICBAYXBwbHkgZmxleCBtaW4tdy0wIGZsZXgtMSBmbGV4LWNvbCBnYXAtMC41O1xuICAgIH1cbiAgICAvKiBTaW4gYHRydW5jYXRlYDogZWwgbm9tYnJlIGRlbCBtb2RlbG8gRVMgZWwgZGF0byBkZWwgY29udHJvbCwgeSBsYSB0YXJpZmEgMjAyNiB0cmFlIG5vbWJyZXMgZGVcbiAgICAgICA2MCBjYXJhY3RlcmVzIChcIkNvcmTDs24gUG9sacOpc3RlciA5LTEwIG51ZG9zIGhpbG8gZGUgbWVyY2FkbyAtIE51ZG8gY29ycmVkaXpvXCIpIHF1ZSBlbCBlbGxpcHNpc1xuICAgICAgIGRlamFiYSBlbiBcIkNvcmTDs24gUG9sacOpc3RlciA5LTEwIG51ZG9zIGhpbG/igKZcIiDigJQgaXJyZWNvbm9jaWJsZSBqdXN0byBlbnRyZSBsYXMgdmFyaWFudGVzIHF1ZVxuICAgICAgIG3DoXMgc2UgcGFyZWNlbi4gRWwgY2FtcG8geWEgdGllbmUgcmVuZ2zDs24gcHJvcGlvICgucGlja2VyLWZpZWxkKSwgYXPDrSBxdWUgZW52b2x2ZXIgY3Vlc3RhIGNvbW9cbiAgICAgICBtdWNobyB1bmEgc2VndW5kYSBsw61uZWEuICovXG4gICAgLnBpY2tlci10cmlnZ2VyLW5hbWUge1xuICAgICAgICBAYXBwbHkgdGV4dC1zbSBmb250LXNlbWlib2xkIHRleHQtbmF2eS05MDA7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgfVxuICAgIC5waWNrZXItdHJpZ2dlci1lbXB0eSAucGlja2VyLXRyaWdnZXItbmFtZSB7XG4gICAgICAgIEBhcHBseSBmb250LW1lZGl1bSB0ZXh0LXNsYXRlLTQwMDtcbiAgICB9XG4gICAgLnBpY2tlci10cmlnZ2VyLW1ldGEge1xuICAgICAgICBAYXBwbHkgdGV4dC14cyBmb250LW1lZGl1bSB0YWJ1bGFyLW51bXMgdGV4dC1zbGF0ZS01MDA7XG4gICAgfVxuICAgIC5waWNrZXItdHJpZ2dlci1jdGEge1xuICAgICAgICBAYXBwbHkgaW5saW5lLWZsZXggc2hyaW5rLTAgaXRlbXMtY2VudGVyIGdhcC0xLjUgcm91bmRlZC1tZCBiZy1zbGF0ZS0xMDAgcHgtMi41IHB5LTEuNVxuICAgICAgICAgICAgICAgdGV4dC14cyBmb250LW1lZGl1bSB0ZXh0LXNsYXRlLTYwMCB0cmFuc2l0aW9uLWNvbG9ycztcbiAgICB9XG4gICAgLnBpY2tlci10cmlnZ2VyOmhvdmVyIC5waWNrZXItdHJpZ2dlci1jdGEge1xuICAgICAgICBAYXBwbHkgYmctYmx1ZS01MCB0ZXh0LWJsdWUtNzAwO1xuICAgIH1cblxuICAgIFtkYXRhLWNhdGFsb2dvLWJyb2NoZS1maWVsZF0ge1xuICAgICAgICBAYXBwbHkgcm91bmRlZC14bCBiZy1zbGF0ZS01MC83MCBwLTM7XG4gICAgfVxuICAgIC5jbG9zdXJlLWJyb2NoZS1wYW5lbCB7XG4gICAgICAgIEBhcHBseSBtdC0zIGJnLXdoaXRlLzcwIHAtMztcbiAgICB9XG4gICAgLmNsb3N1cmUtYnJvY2hlLXBhbmVsID4gLmxhYmVsIHtcbiAgICAgICAgQGFwcGx5IHRleHQteHMgZm9udC1zZW1pYm9sZCB1cHBlcmNhc2UgdHJhY2tpbmctd2lkZSB0ZXh0LXNsYXRlLTUwMDtcbiAgICB9XG4gICAgLyogQnJvY2hlIGF1dMOzbm9tbyAobMOtbmVhIGJvcmRhZGEsIHNpbiBjaWVycmVfdGlwbyk6IHBhbmVsIHByb3BpbyBxdWUgb2N1cGEgdG9kbyBlbCBhbmNobyBkZWxcbiAgICAgICBzdWJncmlkIGRlIG9wY2lvbmVzLCBjb24gc3UgZXRpcXVldGEgXCJCcm9jaGVcIi4gKi9cbiAgICAuYnJvY2hlLXN0YW5kYWxvbmUtcGFuZWwge1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgIH1cbiAgICAuYnJvY2hlLXN0YW5kYWxvbmUtcGFuZWwgPiAuYnJvY2hlLXN0YW5kYWxvbmUtbGFiZWwge1xuICAgICAgICBAYXBwbHkgdGV4dC14cyBmb250LXNlbWlib2xkIHVwcGVyY2FzZSB0cmFja2luZy13aWRlIHRleHQtc2xhdGUtNTAwIG1iLTEgYmxvY2s7XG4gICAgfVxuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgVGFicyBkZSBwcm9kdWN0byDigJQgZXN0aWxvIE1hdGVyaWFsIFVJIChraWthLWFwcCdzIFVuaWZpZWQgUGxvdHRlcikuXG4gICAgICAgVW5kZXJsaW5lIGFuaW1hZG8gcGFyYSBsYSBhY3RpdmEsIHNlcGFyYWRvcmVzXG4gICAgICAgdmVydGljYWxlcyAxcHgsIGFjY2lvbmVzIGNvbnRleHR1YWxlcyAoZHVwbGljYXIgLyBjZXJyYXIpIHZpc2libGVzXG4gICAgICAgc29sbyBlbiBhY3RpdmEgbyBhbCBob3Zlci4gRGVuc2lkYWQgY29tcGFjdGEgNDJweC5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAucHJvZHVjdC10YWJzLWJhciB7XG4gICAgICAgIEBhcHBseSBmbGV4IGZsZXgtd3JhcCBpdGVtcy1jZW50ZXIgZ2FwLXktMSBtaW4taC1bNDJweF0gYm9yZGVyLWIgYm9yZGVyLXNsYXRlLTIwMC83MDtcbiAgICB9XG4gICAgLnByb2R1Y3QtdGFiIHtcbiAgICAgICAgQGFwcGx5IHJlbGF0aXZlIGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBnYXAtMS41IHB4LTNcbiAgICAgICAgICAgICAgIHRleHQtWzEzcHhdIGZvbnQtbWVkaXVtIGxlYWRpbmctdGlnaHQgd2hpdGVzcGFjZS1ub3dyYXBcbiAgICAgICAgICAgICAgIHRleHQtc2xhdGUtNTAwIGN1cnNvci1wb2ludGVyIHNlbGVjdC1ub25lXG4gICAgICAgICAgICAgICB0cmFuc2l0aW9uLWNvbG9ycyBkdXJhdGlvbi0xNTBcbiAgICAgICAgICAgICAgIGJvcmRlci1yIGJvcmRlci1zbGF0ZS0yMDAvNDBcbiAgICAgICAgICAgICAgIGhvdmVyOnRleHQtbmF2eS05MDBcbiAgICAgICAgICAgICAgIGZvY3VzLXZpc2libGU6b3V0bGluZS1ub25lIGZvY3VzLXZpc2libGU6cmluZy0yIGZvY3VzLXZpc2libGU6cmluZy1ibHVlLTUwMC8zMCBmb2N1cy12aXNpYmxlOnJpbmctaW5zZXQ7XG4gICAgICAgIGhlaWdodDogNDJweDtcbiAgICB9XG4gICAgLnByb2R1Y3QtdGFiLWFjdGl2ZSB7XG4gICAgICAgIEBhcHBseSB0ZXh0LW5hdnktOTAwIGZvbnQtc2VtaWJvbGQ7XG4gICAgfVxuICAgIC8qIEluZGljYWRvciB1bmRlcmxpbmUgYW5pbWFkby4gKi9cbiAgICAucHJvZHVjdC10YWI6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmx1ZS02MDApO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICAgIH1cbiAgICAucHJvZHVjdC10YWItYWN0aXZlOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgIH1cbiAgICAucHJvZHVjdC10YWItaWNvbiB7XG4gICAgICAgIEBhcHBseSB0ZXh0LXNsYXRlLTQwMCB0cmFuc2l0aW9uLWNvbG9ycyBkdXJhdGlvbi0xNTA7XG4gICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cbiAgICAucHJvZHVjdC10YWItYWN0aXZlIC5wcm9kdWN0LXRhYi1pY29uIHsgY29sb3I6IHZhcigtLWNvbG9yLWJsdWUtNjAwKTsgfVxuICAgIC5wcm9kdWN0LXRhYi1sYWJlbCB7XG4gICAgICAgIEBhcHBseSB0cnVuY2F0ZTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMXJlbTtcbiAgICB9XG4gICAgLyogQWNjaW9uZXMgcG9yIHRhYiAoZHVwbGljYXIsIGNlcnJhcikg4oCUIHZpc2libGVzIGVuIGFjdGl2YSBvIGFsIGhvdmVyLiAqL1xuICAgIC5wcm9kdWN0LXRhYi1hY3Rpb25zIHtcbiAgICAgICAgQGFwcGx5IGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBnYXAtMCBtbC0xIG9wYWNpdHktMCB0cmFuc2l0aW9uLW9wYWNpdHkgZHVyYXRpb24tMTUwO1xuICAgIH1cbiAgICAucHJvZHVjdC10YWI6aG92ZXIgLnByb2R1Y3QtdGFiLWFjdGlvbnMsXG4gICAgLnByb2R1Y3QtdGFiLWFjdGl2ZSAucHJvZHVjdC10YWItYWN0aW9ucyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIC5wcm9kdWN0LXRhYi1hY3Rpb24ge1xuICAgICAgICBAYXBwbHkgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGgtNSB3LTUgcm91bmRlZFxuICAgICAgICAgICAgICAgdGV4dC1zbGF0ZS00MDAgdHJhbnNpdGlvbi1jb2xvcnMgZHVyYXRpb24tMTUwXG4gICAgICAgICAgICAgICBob3ZlcjpiZy1zbGF0ZS0zMDAvNDAgaG92ZXI6dGV4dC1uYXZ5LTkwMFxuICAgICAgICAgICAgICAgZm9jdXMtdmlzaWJsZTpvdXRsaW5lLW5vbmUgZm9jdXMtdmlzaWJsZTpyaW5nLTIgZm9jdXMtdmlzaWJsZTpyaW5nLWJsdWUtNTAwLzMwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICAgIC5wcm9kdWN0LXRhYi1hY3Rpb25bZGF0YS1hY3Rpb249XCJjbG9zZVwiXTpob3ZlcixcbiAgICAucHJvZHVjdC10YWItYWN0aW9uW2RhdGEtYWN0aW9uPVwiZGVsZXRlXCJdOmhvdmVyIHtcbiAgICAgICAgQGFwcGx5IGJnLWNvcmFsLTUwIHRleHQtY29yYWwtNjAwO1xuICAgIH1cbiAgICAvKiBCb3TDs24gYcOxYWRpciArIGVuIGxhIGJhcnJhLiAqL1xuICAgIC5wcm9kdWN0LXRhYi1hZGQge1xuICAgICAgICBAYXBwbHkgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIGgtWzI4cHhdIHB4LTIgbWwtMiBtci0xIHJvdW5kZWQtbWRcbiAgICAgICAgICAgICAgIHRleHQtc2xhdGUtNTAwIHRyYW5zaXRpb24tY29sb3JzIGR1cmF0aW9uLTE1MFxuICAgICAgICAgICAgICAgaG92ZXI6dGV4dC1ibHVlLTYwMFxuICAgICAgICAgICAgICAgZm9jdXMtdmlzaWJsZTpvdXRsaW5lLW5vbmUgZm9jdXMtdmlzaWJsZTpyaW5nLTIgZm9jdXMtdmlzaWJsZTpyaW5nLWJsdWUtNTAwLzMwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICAgIC8qIEJvdMOzbiBSZXN1bWVuIOKAlCBzZXBhcmFkbyBhIGxhIGRlcmVjaGEuICovXG4gICAgLnByb2R1Y3QtdGFiLXN1bW1hcnkge1xuICAgICAgICBAYXBwbHkgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGdhcC0xLjUgaC1bNDJweF0gcHgtM1xuICAgICAgICAgICAgICAgdGV4dC1bMTNweF0gZm9udC1zZW1pYm9sZCB0ZXh0LWdvbGQtNzAwXG4gICAgICAgICAgICAgICB0cmFuc2l0aW9uLWNvbG9ycyBkdXJhdGlvbi0xNTBcbiAgICAgICAgICAgICAgIGhvdmVyOnRleHQtZ29sZC04MDBcbiAgICAgICAgICAgICAgIGZvY3VzLXZpc2libGU6b3V0bGluZS1ub25lIGZvY3VzLXZpc2libGU6cmluZy0yIGZvY3VzLXZpc2libGU6cmluZy1nb2xkLTQwMC8zMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICAucHJvZHVjdC10YWItc3VtbWFyeS1hY3RpdmUge1xuICAgICAgICBAYXBwbHkgdGV4dC1nb2xkLTgwMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICAucHJvZHVjdC10YWItc3VtbWFyeS1hY3RpdmU6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ29sZC01MDApO1xuICAgIH1cbiAgICAuZ2xvYmFsLWNvbmZpZy1iYXIge1xuICAgICAgICBAYXBwbHkgZmxleCBmbGV4LXdyYXAgaXRlbXMtY2VudGVyIGdhcC0zIGJvcmRlci1iIGJvcmRlci1zbGF0ZS0yMDAvNzAgcHktMjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICAuZ2xvYmFsLWNvbmZpZy1sYWJlbCB7XG4gICAgICAgIEBhcHBseSBpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTEuNSBoLTEwIHByLTIgdGV4dC1zbSB1cHBlcmNhc2UgdHJhY2tpbmctd2lkZSBmb250LXNlbWlib2xkIHRleHQtc2xhdGUtNTAwIGxlYWRpbmctbm9uZTtcbiAgICB9XG4gICAgLmdsb2JhbC1jb25maWctZmllbGQge1xuICAgICAgICBAYXBwbHkgaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGdhcC0yIGgtMTAgYm9yZGVyLWIgYm9yZGVyLXNsYXRlLTMwMCBweC0yIHRleHQtc20gdGV4dC1zbGF0ZS01MDAgdHJhbnNpdGlvbi1jb2xvcnMgaG92ZXI6Ym9yZGVyLWJsdWUtNDAwIGZvY3VzLXdpdGhpbjpib3JkZXItYmx1ZS02MDAgZm9jdXMtd2l0aGluOmJnLWJsdWUtNTAvNDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjE4NzVyZW07XG4gICAgfVxuICAgIC5nbG9iYWwtY29uZmlnLWZpZWxkIHNwYW4ge1xuICAgICAgICBAYXBwbHkgd2hpdGVzcGFjZS1ub3dyYXAgZm9udC1tZWRpdW0gbGVhZGluZy1ub25lO1xuICAgIH1cbiAgICAuZ2xvYmFsLWNvbmZpZy1pbnB1dCB7XG4gICAgICAgIEBhcHBseSBoLTggdy0yNCBib3JkZXItMCBiZy10cmFuc3BhcmVudCBwLTAgdGV4dC1yaWdodCB0ZXh0LWJhc2UgZm9udC1tb25vIGZvbnQtc2VtaWJvbGQgdGV4dC1uYXZ5LTkwMCBzaGFkb3ctbm9uZSBvdXRsaW5lLW5vbmUgZm9jdXM6cmluZy0wIGxlYWRpbmctbm9uZTtcbiAgICB9XG4gICAgLmdsb2JhbC1jb25maWctZmllbGQtc2VsZWN0IHtcbiAgICAgICAgQGFwcGx5IG1pbi13LTgwO1xuICAgIH1cbiAgICAuZ2xvYmFsLWNvbmZpZy1zZWxlY3Qge1xuICAgICAgICBAYXBwbHkgaC04IG1pbi13LTYwIGJvcmRlci0wIGJnLXRyYW5zcGFyZW50IHAtMCB0ZXh0LXNtIGZvbnQtc2VtaWJvbGQgdGV4dC1uYXZ5LTkwMCBzaGFkb3ctbm9uZSBvdXRsaW5lLW5vbmUgZm9jdXM6cmluZy0wIGxlYWRpbmctbm9uZTtcbiAgICB9XG4gICAgLmdsb2JhbC1jb25maWctbWFya2V0IHtcbiAgICAgICAgQGFwcGx5IGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBnYXAtMS41IGgtMTAgcHgtMiB0ZXh0LXNtIHRleHQtc2xhdGUtNTAwIGxlYWRpbmctbm9uZTtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuMTg3NXJlbTtcbiAgICB9XG4gICAgLmdsb2JhbC1jb25maWctYnV0dG9uIHtcbiAgICAgICAgQGFwcGx5IGlubGluZS1mbGV4IGl0ZW1zLWNlbnRlciBnYXAtMS41IGgtMTAgcm91bmRlZC1tZCBweC0yLjUgdGV4dC1zbSBmb250LW1lZGl1bSB0ZXh0LXNsYXRlLTUwMCB0cmFuc2l0aW9uLWNvbG9ycyBob3ZlcjpiZy1zbGF0ZS0xMDAgaG92ZXI6dGV4dC1ibHVlLTcwMCBkaXNhYmxlZDpjdXJzb3Itbm90LWFsbG93ZWQgZGlzYWJsZWQ6b3BhY2l0eS00NSBkaXNhYmxlZDpob3ZlcjpiZy10cmFuc3BhcmVudCBkaXNhYmxlZDpob3Zlcjp0ZXh0LXNsYXRlLTUwMCBsZWFkaW5nLW5vbmU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuMTg3NXJlbTtcbiAgICB9XG4gICAgLmdsb2JhbC1jb25maWctc3RhdHVzIHtcbiAgICAgICAgQGFwcGx5IHRleHQteHMgdGV4dC1zbGF0ZS00MDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogLTEuMXJlbTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgICAgQWN0aW9uIHJvdyAoVHJhbnNwb3J0aXN0YSB8IENhbnRpZGFkIHwgQ2FsY3VsYXIgfCBCb3JyYXIpXG4gICAgICAgTm9ybWFsaXphIGFsdHVyYSBkZWwgVG9tU2VsZWN0IHBhcmEgYWxpbmVhcmxvIGNvbiAuaW5wdXQgeVxuICAgICAgIGNvbiBsb3MgYnRuLWxnLiBTaW4gZXN0bywgZWwgdHMtY29udHJvbCBxdWVkYSB+NHB4IG1hcyBhbHRvXG4gICAgICAgcXVlIGVsIGlucHV0IChib3JkZXIgMXB4ICsgcGFkZGluZyBkaXN0aW50byksIHJvbXBpZW5kb1xuICAgICAgIGVsIGl0ZW1zLWVuZCBkZWwgZ3JpZC5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgICAuY2FsYy1hY3Rpb24tcm93IC50cy13cmFwcGVyIC50cy1jb250cm9sIHtcbiAgICAgICAgQGFwcGx5IHJvdW5kZWQteGwgYm9yZGVyLTAgYmctc2xhdGUtMTAwLzcwIHB4LTMuNSBweS0yLjUgdGV4dC1zbSBzaGFkb3ctbm9uZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgIH1cbiAgICAuY2FsYy1hY3Rpb24tcm93IC50cy13cmFwcGVyLmZvY3VzIC50cy1jb250cm9sIHtcbiAgICAgICAgQGFwcGx5IGJnLXdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSg1MSwgMTMzLCAyNTUsIDAuMzApO1xuICAgIH1cbiAgICAuY2FsYy1hY3Rpb24tcm93IC50cy13cmFwcGVyIC50cy1jb250cm9sID4gaW5wdXQge1xuICAgICAgICBAYXBwbHkgdGV4dC1zbTtcbiAgICB9XG4gICAgLmNhbGMtYWN0aW9uLXJvdyAuaW5wdXQsXG4gICAgLmNhbGMtYWN0aW9uLXJvdyAudHMtd3JhcHBlciAudHMtY29udHJvbCxcbiAgICAuY2FsYy1hY3Rpb24tcm93IC5idG4ge1xuICAgICAgICBtaW4taGVpZ2h0OiAyLjI1cmVtO1xuICAgIH1cbiAgICAuY2FsYy1hY3Rpb24tcm93IC5idG4ge1xuICAgICAgICBwYWRkaW5nLXRvcDogMC40cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC40cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIH1cbiAgICAuY2FsYy1hY3Rpb24tcm93IC5pbnB1dCB7IHBhZGRpbmctdG9wOiAwLjRyZW07IHBhZGRpbmctYm90dG9tOiAwLjRyZW07IH1cblxuICAgIC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAgIFRhYmxhIGNvbXBhY3RhIOKAlCBwYXJhIHRhYmxhcyBkZW5zYXMgY29uIG11Y2hvcyBpbnB1dHMgcG9yIGZpbGFcbiAgICAgICAoZS5nLiB0YWJsYSAjdHJhbnNwb3J0ZXMpLiBSZWR1Y2UgcGFkZGluZyB5IG5vcm1hbGl6YSBhbHR1cmFzXG4gICAgICAgZGUgaW5wdXRzIGFuaWRhZG9zICguZm9ybS13aWRnZXQgaW5wdXQpLiBTY3JvbGwgaG9yaXpvbnRhbCB2aWFcbiAgICAgICAudGFibGUtY29tcGFjdC13cmFwLlxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICAgIC50YWJsZS1jb21wYWN0LXdyYXAge1xuICAgICAgICBAYXBwbHkgb3ZlcmZsb3cteC1hdXRvO1xuICAgICAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XG4gICAgfVxuICAgIC50YWJsZS1jb21wYWN0IHtcbiAgICAgICAgQGFwcGx5IHRleHQteHM7XG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gICAgICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgIH1cbiAgICAudGFibGUtY29tcGFjdCB0aGVhZCB0aCB7XG4gICAgICAgIEBhcHBseSBweC0yIHB5LTEuNSB0ZXh0LVsxMHB4XSB1cHBlcmNhc2UgdHJhY2tpbmctd2lkZSBmb250LXNlbWlib2xkIHRleHQtc2xhdGUtNTAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLXNsYXRlLTIwMCk7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICAgIC50YWJsZS1jb21wYWN0IHRib2R5IHRkIHtcbiAgICAgICAgQGFwcGx5IHB4LTIgcHktMSBhbGlnbi1taWRkbGU7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICAgIC50YWJsZS1jb21wYWN0IHRib2R5IHRyIHtcbiAgICAgICAgQGFwcGx5IGJvcmRlci10IGJvcmRlci1zbGF0ZS0xMDA7XG4gICAgfVxuICAgIC50YWJsZS1jb21wYWN0IHRib2R5IHRyOmhvdmVyIHsgQGFwcGx5IGJnLXNsYXRlLTUwLzcwOyB9XG4gICAgLnRhYmxlLWNvbXBhY3QgLmZvcm0td2lkZ2V0IGlucHV0LFxuICAgIC50YWJsZS1jb21wYWN0IC5mb3JtLXdpZGdldCBzZWxlY3QsXG4gICAgLnRhYmxlLWNvbXBhY3QgLmZvcm0td2lkZ2V0IHRleHRhcmVhIHtcbiAgICAgICAgQGFwcGx5IHctZnVsbCB0ZXh0LXhzIHJvdW5kZWQtbWQgYmctc2xhdGUtNTAvNzAgYm9yZGVyLTAgcHgtMiBweS0xIGxlYWRpbmctdGlnaHQ7XG4gICAgfVxuICAgIC50YWJsZS1jb21wYWN0IC5mb3JtLXdpZGdldCBpbnB1dDpmb2N1cyxcbiAgICAudGFibGUtY29tcGFjdCAuZm9ybS13aWRnZXQgc2VsZWN0OmZvY3VzLFxuICAgIC50YWJsZS1jb21wYWN0IC5mb3JtLXdpZGdldCB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgICAgIEBhcHBseSBvdXRsaW5lLW5vbmUgcmluZy0yIHJpbmctYmx1ZS01MDAvMzAgYmctd2hpdGU7XG4gICAgfVxuICAgIC50YWJsZS1jb21wYWN0IC5mb3JtLXdpZGdldCBpbnB1dFtyZWFkb25seV0sXG4gICAgLnRhYmxlLWNvbXBhY3QgLmZvcm0td2lkZ2V0IGlucHV0OmRpc2FibGVkIHtcbiAgICAgICAgQGFwcGx5IGJnLXRyYW5zcGFyZW50IHRleHQtc2xhdGUtNzAwIGZvbnQtbWVkaXVtO1xuICAgIH1cblxuICAgIC8qIENvbXBhY3QgbGlzdCByb3dzIChlLmcuIHNlc3Npb24gaGlzdG9yeSBpbiBzdGlja3kgc2lkZWJhcikuICovXG4gICAgLmxpc3Qtcm93ICAgICAgICAgICAgICB7IEBhcHBseSBmbGV4IGl0ZW1zLXN0YXJ0IGdhcC0yIHB4LTMgcHktMi41IHJvdW5kZWQteGwgYmctc2xhdGUtNTAvNjAgdHJhbnNpdGlvbi1jb2xvcnM7IH1cbiAgICAubGlzdC1yb3c6aG92ZXIgICAgICAgIHsgQGFwcGx5IGJnLXNsYXRlLTEwMC84MDsgfVxuICAgIC5saXN0LXJvdy1tYWluICAgICAgICAgeyBAYXBwbHkgZmxleC0xIG1pbi13LTA7IH1cbiAgICAubGlzdC1yb3ctdGl0bGUgICAgICAgIHsgQGFwcGx5IHRleHQtc20gZm9udC1tZWRpdW0gdGV4dC1uYXZ5LTkwMCB0cnVuY2F0ZTsgfVxuICAgIC5saXN0LXJvdy1tZXRhICAgICAgICAgeyBAYXBwbHkgdGV4dC14cyB0ZXh0LXNsYXRlLTUwMCBtdC0wLjU7IH1cbiAgICAubGlzdC1yb3ctdmFsdWUgICAgICAgIHsgQGFwcGx5IHRleHQtc20gZm9udC1tb25vIGZvbnQtc2VtaWJvbGQgdGV4dC1uYXZ5LTkwMCB0YWJ1bGFyLW51bXMgd2hpdGVzcGFjZS1ub3dyYXA7IH1cbiAgICAubGlzdC1yb3ctYWN0aW9ucyAgICAgIHsgQGFwcGx5IGZsZXggaXRlbXMtY2VudGVyIGdhcC0xIHNocmluay0wOyB9XG5cbiAgICAvKiBUYXJqZXRhIGRlIGFjY2VzbyByw6FwaWRvIGRlIGxhIGhvbWUgKC9hZG1pbi9pbmljaW8pLiBFcyBsYSDDum5pY2Egc3VwZXJmaWNpZSBkZSBlc2FcbiAgICAgICBwYW50YWxsYTogbG9zIGdydXBvcyBzb24gc2VjY2lvbmVzIHBsYW5hcywgbm8gY2FyZHMgcXVlIGNvbnRlbmdhbiBjYXJkcy4gKi9cbiAgICAudGlsZS1hY2Nlc28gICAgICAgIHsgQGFwcGx5IHJlbGF0aXZlIGZsZXggaXRlbXMtY2VudGVyIGdhcC0zLjUgcm91bmRlZC1sZyBiZy13aGl0ZSBwLTQgc2hhZG93LXNvZnQtc21cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTIwMCBob3ZlcjpzaGFkb3ctc29mdC1tZCBob3ZlcjotdHJhbnNsYXRlLXktMC41OyB9XG4gICAgLnRpbGUtYWNjZXNvLWljb24gICB7IEBhcHBseSBpbmxpbmUtZmxleCBoLTEwIHctMTAgc2hyaW5rLTAgaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHJvdW5kZWQtbGc7IH1cbiAgICAudGlsZS1hY2Nlc28tYm9keSAgIHsgQGFwcGx5IG1pbi13LTAgZmxleC0xOyB9XG4gICAgLnRpbGUtYWNjZXNvLXRpdGxlICB7IEBhcHBseSBibG9jayB0ZXh0LXNtIGZvbnQtc2VtaWJvbGQgdGV4dC1uYXZ5LTkwMCB0cnVuY2F0ZTsgfVxuICAgIC8qIFNpbiB0cnVuY2F0ZTogbGEgZGVzY3JpcGNpw7NuIGVzIGNvcnRhIHkgcHJlZmllcmUgcGFydGlyIGVuIGRvcyBsw61uZWFzIGFudGVzIHF1ZSBjb3J0YXJzZVxuICAgICAgIGNvbiBwdW50b3Mgc3VzcGVuc2l2b3MuIExhcyB0YXJqZXRhcyBkZSB1bmEgbWlzbWEgZmlsYSBpZ3VhbGFuIGFsdHVyYSBzb2xhcy4gKi9cbiAgICAudGlsZS1hY2Nlc28tZGVzYyAgIHsgQGFwcGx5IGJsb2NrIHRleHQteHMgdGV4dC1zbGF0ZS01MDAgbXQtMC41OyB9XG4gICAgLyogTGEgZmxlY2hhIHNvbG8gYXBhcmVjZSBhbCBwYXNhciBwb3IgZW5jaW1hOiBlbiByZXBvc28gbGEgcmVqaWxsYSBxdWVkYSBtw6FzIGxpbXBpYS4gKi9cbiAgICAudGlsZS1hY2Nlc28tYXJyb3cgIHsgQGFwcGx5IHNocmluay0wIHRleHQtc2xhdGUtMzAwIG9wYWNpdHktMCAtdHJhbnNsYXRlLXgtMSB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0yMDA7IH1cbiAgICAudGlsZS1hY2Nlc286aG92ZXIgLnRpbGUtYWNjZXNvLWFycm93IHsgQGFwcGx5IG9wYWNpdHktMTAwIHRyYW5zbGF0ZS14LTAgdGV4dC1ibHVlLTUwMDsgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEltYWdlIGRpYWxvZyDigJQgdmlzdGEgYW1wbGlhZGEgZGUgbGEgaW1hZ2VuIGRlbCBwcm9kdWN0by5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuZGlhbG9nLmltYWdlLWRpYWxvZyB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBpbnNldDogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBtYXgtd2lkdGg6IDkwdnc7XG4gICAgbWF4LWhlaWdodDogOTB2aDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi8qIEVsIGxpZ2h0Ym94IGVzIHVuIEVTQ0VOQVJJTyBkZSB0YW1hw7FvIEZJSk8sIG5vIHNlIGVuY29nZSBhIGxhIGltYWdlbi5cbiAgIEFudGVzIGVsIGRpYWxvZyB0b21hYmEgZWwgdGFtYcOxbyBpbnRyw61uc2VjbyBkZSBjYWRhIGZvdG8geSBsYXMgZmxlY2hhcyBwcmV2L25leHQg4oCUYW5jbGFkYXNcbiAgIGEgc3VzIGJvcmRlc+KAlCBjYW1iaWFiYW4gZGUgc2l0aW8gZW4gY2FkYSBicm9jaGUgc2Vnw7puIGxvIGFuY2hhIG8gYWx0YSBxdWUgZnVlcmEgbGEgaW1hZ2VuLlxuICAgQ29uIGVsIGVzY2VuYXJpbyBmaWpvIGxhIGZvdG8gc2UgY2VudHJhIGRlbnRybyB5IGxvcyBjb250cm9sZXMgbm8gc2UgbXVldmVuIG51bmNhLlxuICAgQWNvdGFkbyBwb3IgaWQ6IGxvcyBvdHJvcyBkb3MgbGlnaHRib3ggKGFkanVudG9zLCBmaWNoYSBkZSBwcm9kdWN0bykgbm8gbmF2ZWdhbiBlbnRyZVxuICAgaW3DoWdlbmVzIHkgc2lndWVuIGFqdXN0w6FuZG9zZSBhIHN1IGNvbnRlbmlkby4gKi9cbmRpYWxvZyNzbGlkZXJJbWFnZURpYWxvZy5pbWFnZS1kaWFsb2cge1xuICAgIHdpZHRoOiBtaW4oOTB2dywgNTZyZW0pO1xuICAgIGhlaWdodDogbWluKDg1dmgsIDQwcmVtKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5kaWFsb2cjc2xpZGVySW1hZ2VEaWFsb2cuaW1hZ2UtZGlhbG9nOm5vdChbb3Blbl0pIHsgZGlzcGxheTogbm9uZTsgfVxuZGlhbG9nLmltYWdlLWRpYWxvZzo6YmFja2Ryb3Age1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMTEsIDMxLCA3NywgMC43KTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNHB4KTtcbn1cbmRpYWxvZy5pbWFnZS1kaWFsb2cgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IDkwdnc7XG4gICAgbWF4LWhlaWdodDogODV2aDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDIwcHggNjBweCAtMTBweCByZ2JhKDExLCAzMSwgNzcsIDAuNSk7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cbi8qIERlbnRybyBkZWwgZXNjZW5hcmlvIGZpam8gbGEgZm90byBzZSBjb250aWVuZSwgZGVqYW5kbyBsaWJyZXMgbG9zIHBhc2lsbG9zIGxhdGVyYWxlc1xuICAgZG9uZGUgdml2ZW4gbGFzIGZsZWNoYXMgKGRlIGFow60gZWwgMTAwJSAtIDhyZW0gZGUgYW5jaG8gw7p0aWwpLiAqL1xuZGlhbG9nI3NsaWRlckltYWdlRGlhbG9nLmltYWdlLWRpYWxvZyBpbWcge1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gOHJlbSk7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbn1cbi5pbWFnZS1kaWFsb2ctY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0yLjVyZW07XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDJyZW07XG4gICAgaGVpZ2h0OiAycmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OTlweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuMTUpO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBib3JkZXI6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXM7XG59XG4uaW1hZ2UtZGlhbG9nLWNsb3NlOmhvdmVyIHsgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjMpOyB9XG5cbi8qIFByZXYgLyBuZXh0IG92ZXJsYXkgYnV0dG9ucyDigJQgc29sbyB2aXNpYmxlcyBjdWFuZG8gZWwgZ3J1cG8gdGllbmUgbWFzIGRlIHVuYSBpbWFnZW4uICovXG4uaW1hZ2UtZGlhbG9nLXByZXYsXG4uaW1hZ2UtZGlhbG9nLW5leHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgd2lkdGg6IDIuNzVyZW07XG4gICAgaGVpZ2h0OiAyLjc1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OTlweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDExLCAzMSwgNzcsIDAuNTUpO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgYm9yZGVyOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cywgdHJhbnNmb3JtIDAuMTVzO1xuICAgIHotaW5kZXg6IDE7XG59XG4uaW1hZ2UtZGlhbG9nLXByZXYgeyBsZWZ0OiAwLjVyZW07IH1cbi5pbWFnZS1kaWFsb2ctbmV4dCB7IHJpZ2h0OiAwLjVyZW07IH1cbi5pbWFnZS1kaWFsb2ctcHJldjpob3Zlcixcbi5pbWFnZS1kaWFsb2ctbmV4dDpob3ZlciB7IGJhY2tncm91bmQ6IHJnYmEoMTEsIDMxLCA3NywgMC44NSk7IH1cbi5pbWFnZS1kaWFsb2ctcHJldltoaWRkZW5dLFxuLmltYWdlLWRpYWxvZy1uZXh0W2hpZGRlbl0geyBkaXNwbGF5OiBub25lOyB9XG5cbi8qIEV0aXF1ZXRhIGRlbCBpdGVtIGJham8gbGEgaW1hZ2VuIOKAlCB0ZXh0byBwZXF1ZcOxbyBzb2JyZSBlbCBiYWNrZHJvcC4gKi9cbi5pbWFnZS1kaWFsb2ctbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0yLjVyZW07XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LXNoYWRvdzogMCAxcHggNHB4IHJnYmEoMCwwLDAsMC40KTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBQaWNrZXIgZGlhbG9nIOKAlCByZWppbGxhIGRlIG1vZGVsb3MgYSB0YW1hw7FvIGdyYW5kZS5cbiAgIENTUyBwbGFubyAobm8gQGFwcGx5KTogZWwgZGnDoWxvZ28gdml2ZSBmdWVyYSBkZSBAbGF5ZXIgY29tcG9uZW50cyBpZ3VhbCBxdWUgZWxcbiAgIGltYWdlLWRpYWxvZywgeSBhc8OtIGV2aXRhbW9zIGRlcGVuZGVyIGRlIGxhIGVtaXNpw7NuIGRlIHV0aWxpdGllcyBkZWwgcGlwZWxpbmUuXG4gICBTZSBwdWVkZSBhYnJpciBlbCBpbWFnZS1kaWFsb2cgRU5DSU1BIGRlIGVzdGU6IGVsIHRvcCBsYXllciBsb3MgYXBpbGEuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmRpYWxvZy5waWNrZXItZGlhbG9nIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGluc2V0OiAwO1xuICAgIHdpZHRoOiBtaW4oOTJ2dywgNjRyZW0pO1xuICAgIG1heC1oZWlnaHQ6IDg4dmg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBib3gtc2hhZG93OiAwIDI0cHggNzBweCAtMTJweCByZ2JhKDExLCAzMSwgNzcsIDAuNDUpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuZGlhbG9nLnBpY2tlci1kaWFsb2c6bm90KFtvcGVuXSkgeyBkaXNwbGF5OiBub25lOyB9XG5kaWFsb2cucGlja2VyLWRpYWxvZzo6YmFja2Ryb3Age1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMTEsIDMxLCA3NywgMC41NSk7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDRweCk7XG59XG5cbi8qIGBwb3NpdGlvbjogcmVsYXRpdmVgICsgei1pbmRleCBOTyBzb24gZGVjb3JhdGl2b3M6IGVsIGVuY2FiZXphZG8gdGllbmUgcXVlIHBpbnRhcnNlIHBvciBlbmNpbWFcbiAgIGRlIHRvZG8gbG8gcXVlIHZpdmEgZW4gZWwgY3VlcnBvIGNvbiBzY3JvbGwuIFNpbiBlbGxvcywgbGEgY2FiZWNlcmEgZGUgc2VjY2nDs24gKHN0aWNreSwgY29uIHN1XG4gICBwcm9waW8gei1pbmRleCkgc2UgbGUgbW9udGFiYSBlbmNpbWEgYWwgbGxlZ2FyIGFycmliYSB5IGxlIGNvbcOtYSBlbCBib3JkZSBpbmZlcmlvci4gYGZsZXg6IDAgMFxuICAgYXV0b2AgcGFyYSBxdWUgdW5hIHJlamlsbGEgbGFyZ2Egbm8gbG8gZW5jb2phLCB5IGBiYWNrZ3JvdW5kYCBvcGFjbyBwYXJhIHF1ZSBlbCBjb250ZW5pZG8gcXVlXG4gICBwYXNhIHBvciBkZWJham8gbm8gc2UgdHJhbnNwYXJlbnRlLlxuICAgT2pvOiBlbiBkZXYgZXN0YSBjYWphIGVzIHVuIDxkaXY+IHkgbm8gdW4gPGhlYWRlcj4gYSBwcm9ww7NzaXRvIOKAlCB2ZXIgZWwgY29tZW50YXJpbyBkZVxuICAgYGVuc3VyZURpYWxvZ2AgZW4gcGlja2VyLmpzLiAqL1xuLnBpY2tlci1kaWFsb2ctaGVhZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IDFyZW07XG4gICAgcGFkZGluZzogMS4yNXJlbSAxLjVyZW0gMXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0UyRThGMDtcbn1cbi5waWNrZXItZGlhbG9nLWhlYWRpbmcgeyBmbGV4OiAxIDEgYXV0bzsgbWluLXdpZHRoOiAwOyB9XG4ucGlja2VyLWRpYWxvZy10aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBjb2xvcjogIzBCMUY0RDtcbn1cbi5waWNrZXItZGlhbG9nLXN1YiB7XG4gICAgbWFyZ2luOiAwLjEyNXJlbSAwIDA7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgY29sb3I6ICM2NDc0OEI7XG59XG4ucGlja2VyLWRpYWxvZy10b29scyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICAgIGZsZXg6IDAgMCBhdXRvO1xufVxuLnBpY2tlci1kaWFsb2ctc2VhcmNoIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICAgIHBhZGRpbmc6IDAuNDM3NXJlbSAwLjc1cmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNFMkU4RjA7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJhY2tncm91bmQ6ICNGOEZBRkM7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMsIGJhY2tncm91bmQgMC4ycztcbn1cbi5waWNrZXItZGlhbG9nLXNlYXJjaDpmb2N1cy13aXRoaW4ge1xuICAgIGJvcmRlci1jb2xvcjogIzg1QjhGRjtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cbi5waWNrZXItZGlhbG9nLXNlYXJjaFtoaWRkZW5dIHsgZGlzcGxheTogbm9uZTsgfVxuLnBpY2tlci1kaWFsb2ctc2VhcmNoLWlucHV0IHtcbiAgICBib3JkZXI6IDA7XG4gICAgb3V0bGluZTogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICBjb2xvcjogIzMzNDE1NTtcbiAgICAvKiBCYXNlIGRlIDExIHJlbSBwYXJhIHF1ZSBlbCBidXNjYWRvciBzdWVsdG8gc2lnYSBtaWRpZW5kbyBsbyBtaXNtbywgcGVybyBxdWUgQ1JFWkNBIGNvbiBzdVxuICAgICAgIGNhamE6IGNvbiB1biBhbmNobyBmaWpvLCBkb25kZSBsYSBjYWJlY2VyYSBsZSBkYSAyMiByZW0gKGVsIHBhbmVsIGRlIGNvbmRpY2lvbmVzKSBtZWRpYSBjYWphXG4gICAgICAgcXVlZGFiYSBlbiBibGFuY28geSBlbCBjbGljIGVuIGVzYSBtaXRhZCBubyBlbmZvY2FiYSBuYWRhLiAqL1xuICAgIGZsZXg6IDEgMSAxMXJlbTtcbiAgICBtaW4td2lkdGg6IDA7XG59XG4ucGlja2VyLWRpYWxvZy1zZWFyY2gtaW5wdXQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24geyBjdXJzb3I6IHBvaW50ZXI7IH1cbi5waWNrZXItZGlhbG9nLWNsb3NlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAycmVtO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJhY2tncm91bmQ6ICNGMUY1Rjk7XG4gICAgY29sb3I6ICM0NzU1Njk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycywgY29sb3IgMC4ycztcbn1cbi5waWNrZXItZGlhbG9nLWNsb3NlOmhvdmVyIHsgYmFja2dyb3VuZDogI0UyRThGMDsgY29sb3I6ICMwQjFGNEQ7IH1cblxuLyogRWwgc2Nyb2xsZXIgZXMgZWwgY3VlcnBvOyBkZW50cm8gdmFuIHVuYSBvIHZhcmlhcyBzZWNjaW9uZXMsIGNhZGEgdW5hIGNvbiBzdSByZWppbGxhLiAqL1xuLnBpY2tlci1kaWFsb2ctYm9keSB7XG4gICAgcGFkZGluZzogMS4yNXJlbSAxLjVyZW0gMS41cmVtO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xufVxuLnBpY2tlci1kaWFsb2ctZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCg5LjVyZW0sIDFmcikpO1xuICAgIGdhcDogMC43NXJlbTtcbn1cbi5waWNrZXItc2VjdGlvbiArIC5waWNrZXItc2VjdGlvbiB7IG1hcmdpbi10b3A6IDEuNXJlbTsgfVxuLnBpY2tlci1zZWN0aW9uW2hpZGRlbl0geyBkaXNwbGF5OiBub25lOyB9XG4vKiBDYWJlY2VyYSBkZSBtYXRlcmlhbCDigJQgZGlzY3JldGEgeSBwZWdhZGEgYWwgc2Nyb2xsIHBhcmEgbm8gcGVyZGVyIGRlIHZpc3RhIGVuIHF1w6lcbiAgIHNlY2Npw7NuIGVzdMOhcyBjdWFuZG8gbGEgbGlzdGEgZXMgbGFyZ2EuXG4gICBgdG9wOiAtMS4yNXJlbWAgbm8gZXMgdW4gYWp1c3RlIGZpbm86IGVsIG9mZnNldCBkZSBzdGlja3kgc2UgbWlkZSBkZXNkZSBlbCBDT05URU5UIGJveCBkZWxcbiAgIHNjcm9sbGVyLCBhc8OtIHF1ZSBoYXkgcXVlIGRlc2NvbnRhciBlbCBwYWRkaW5nLXRvcCBkZWwgY3VlcnBvIHBhcmEgcXVlIGVsIHLDs3R1bG8gc2UgY2xhdmVcbiAgIGV4YWN0YW1lbnRlIGVuIGVsIGJvcmRlIHZpc2libGUgeSBubyAyMHB4IG3DoXMgYWJham8uICovXG4ucGlja2VyLXNlY3Rpb24tdGl0bGUge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAtMS4yNXJlbTtcbiAgICB6LWluZGV4OiAyO1xuICAgIG1hcmdpbjogMCAwIDAuNjI1cmVtO1xuICAgIC8qIEVsIHBhZGRpbmcgdmVydGljYWwgZXMgbG8gw7puaWNvIHF1ZSBzZXBhcmEgZWwgcsOzdHVsbyBkZSBsYXMgdGFyamV0YXMgcXVlIGxlIHBhc2FuIHBvclxuICAgICAgIGRlYmFqbzogY29uIGxvcyAwLjI1cmVtIGRlIGFudGVzIGFzb21hYmFuIHJlY29ydGFkYXMgYSBsYSBhbHR1cmEgbWlzbWEgZGVsIHRleHRvIHkgZWxcbiAgICAgICBub21icmUgZGUgbGEgc2VjY2nDs24gcXVlZGFiYSBpbGVnaWJsZSBlbnRyZSB0cm96b3MgZGUgaW1hZ2VuLiAqL1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMCAwLjVyZW07XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNmVtO1xuICAgIGNvbG9yOiAjNjQ3NDhCO1xufVxuLyogQ29sYSBkaWZ1bWluYWRhIGJham8gZWwgcsOzdHVsbzogc2luIGVsbGEsIGVsIGJvcmRlIHN1cGVyaW9yIGRlIGxhcyB0YXJqZXRhcyBxdWUgc2UgZGVzbGl6YW5cbiAgIHBvciBkZXRyw6FzIGFwYXJlY2UgZGUgZ29scGUgeSBzZSBsZWUgY29tbyB1bmEgbMOtbmVhIHBlZ2FkYSBhbCBub21icmUgZGUgbGEgc2VjY2nDs24uICovXG4ucGlja2VyLXNlY3Rpb24tdGl0bGU6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMTAwJTtcbiAgICBoZWlnaHQ6IDAuNjI1cmVtO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHdoaXRlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5waWNrZXItc2VjdGlvbi1jb3VudCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtaW4td2lkdGg6IDEuMjVyZW07XG4gICAgcGFkZGluZzogMCAwLjM3NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogI0YxRjVGOTtcbiAgICBjb2xvcjogIzk0QTNCODtcbiAgICBmb250LXNpemU6IDAuNjI1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xufVxuLnBpY2tlci1kaWFsb2ctZW1wdHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMCAxcmVtO1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIGNvbG9yOiAjOTRBM0I4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi5waWNrZXItZGlhbG9nLWVtcHR5W2hpZGRlbl0geyBkaXNwbGF5OiBub25lOyB9XG5cbi5waWNrZXItaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjVyZW07XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC41cmVtIDAuNzVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMThzLCBib3gtc2hhZG93IDAuMThzLCB0cmFuc2Zvcm0gMC4xOHM7XG59XG4ucGlja2VyLWl0ZW1baGlkZGVuXSB7IGRpc3BsYXk6IG5vbmU7IH1cbi5waWNrZXItaXRlbTpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjODVCOEZGO1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDIwcHggLTEwcHggcmdiYSgxMSwgMzEsIDc3LCAwLjQpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbn1cbi5waWNrZXItaXRlbTpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJvcmRlci1jb2xvcjogIzMzODVGRjtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSg1MSwgMTMzLCAyNTUsIDAuMjUpO1xufVxuLnBpY2tlci1pdGVtLWFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDA2NkZGO1xuICAgIGJhY2tncm91bmQ6ICNGNkZBRkY7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4ICMwMDY2RkY7XG59XG4vKiBNdWVzdHJhcmlvIGRlbCBwcm92ZWVkb3I6IGN1YW5kbyBlbCB2YWxvciBubyB0aWVuZSBmb3RvIHByb3BpYSAobG9zIDQwIG1vZGVsb3MgZGUgdGVsYSBib2hlbWlhXG4gICBsbGVnYW4gY29tbyBkb3MgaG9qYXMgbnVtZXJhZGFzLCBubyBjb21vIDQwIGltw6FnZW5lcykgbGFzIGzDoW1pbmFzIHByZXNpZGVuIGVsIGRpw6Fsb2dvIHkgbG9zXG4gICB2YWxvcmVzIGJhamFuIGEgcGFzdGlsbGFzIGNvbiBlbCBuw7ptZXJvLiBMYSBob2phIHNlIGxlZSBlbnRlcmE7IHVuIHJlY29ydGUgZGUgNzAgcHgsIG5vLiAqL1xuLnBpY2tlci1sYW1pbmFzLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMnJlbSwgMWZyKSk7XG4gICAgZ2FwOiAwLjc1cmVtO1xufVxuLnBpY2tlci1sYW1pbmEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNFMkU4RjA7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAjRjhGQUZDO1xuICAgIGN1cnNvcjogem9vbS1pbjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE4cywgYm94LXNoYWRvdyAwLjE4cztcbn1cbi5waWNrZXItbGFtaW5hOmhvdmVyLFxuLnBpY2tlci1sYW1pbmE6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3JkZXItY29sb3I6ICM4NUI4RkY7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMjBweCAtMTBweCByZ2JhKDExLCAzMSwgNzcsIDAuNCk7XG59XG4ucGlja2VyLWxhbWluYS1pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cbi5waWNrZXItbGFtaW5hLXpvb20ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuMzc1cmVtO1xuICAgIHJpZ2h0OiAwLjM3NXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxLjVyZW07XG4gICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogOTk5OXB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45Mik7XG4gICAgY29sb3I6ICMzMzQxNTU7XG4gICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMTEsIDMxLCA3NywgMC4yNSk7XG59XG4vKiBUaXJhIGRlIG7Dum1lcm9zLiBgbWlubWF4KDZyZW0sIOKApilgIHkgbm8gdW5hIHJlamlsbGEgZGUgdGFyamV0YXM6IGFxdcOtIHNvbG8gaGF5IHVuYSBldGlxdWV0YVxuICAgY29ydGEsIHkgYSA5LDVyZW0gbG9zIDQwIG1vZGVsb3Mgb2N1cGFiYW4gdHJlcyBwYW50YWxsYXMgZGUgYWlyZS4gKi9cbi5waWNrZXItZGlhbG9nLWdyaWQtY29tcGFjdGEge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDZyZW0sIDFmcikpO1xuICAgIGdhcDogMC41cmVtO1xufVxuLnBpY2tlci1pdGVtLWNvbXBhY3RvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC4zNzVyZW07XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogIzFFMjkzQjtcbn1cblxuLnBpY2tlci1pdGVtLW1lZGlhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYXNwZWN0LXJhdGlvOiA0IC8gMztcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogI0Y4RkFGQztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnBpY2tlci1pdGVtLWltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4ucGlja2VyLWl0ZW0taW1nLWVtcHR5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4vKiBMdXBhIOKAlCBzb2xvIGVuIGhvdmVyL2ZvY28sIGFicmUgZWwgbGlnaHRib3ggZW5jaW1hIHNpbiBlbGVnaXIgZWwgbW9kZWxvLiAqL1xuLnBpY2tlci1pdGVtLXpvb20ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuMjVyZW07XG4gICAgcmlnaHQ6IDAuMjVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMS41cmVtO1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OTlweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gICAgY29sb3I6ICM0NzU1Njk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzLCBjb2xvciAwLjE1cztcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMnB4KTtcbn1cbi5waWNrZXItaXRlbTpob3ZlciAucGlja2VyLWl0ZW0tem9vbSxcbi5waWNrZXItaXRlbTpmb2N1cy12aXNpYmxlIC5waWNrZXItaXRlbS16b29tIHsgb3BhY2l0eTogMTsgfVxuLnBpY2tlci1pdGVtLXpvb206aG92ZXIgeyBjb2xvcjogIzAwNTJDQzsgfVxuLyogTWFyY2EgZGVsIGVsZWdpZG8g4oCUIHNvbG8gdmlzaWJsZSBlbiBsYSB0YXJqZXRhIGFjdGl2YS4gKi9cbi5waWNrZXItaXRlbS1jaGVjayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC4yNXJlbTtcbiAgICBsZWZ0OiAwLjI1cmVtO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMS4zNzVyZW07XG4gICAgaGVpZ2h0OiAxLjM3NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA5OTk5cHg7XG4gICAgYmFja2dyb3VuZDogIzAwNjZGRjtcbiAgICBjb2xvcjogd2hpdGU7XG59XG4ucGlja2VyLWl0ZW0tYWN0aXZlIC5waWNrZXItaXRlbS1jaGVjayB7IGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XG4vKiBFbCBub21icmUgc2UgcGludGEgRU5URVJPLiBFc3R1dm8gcmVjb3J0YWRvIGEgMiBsw61uZWFzIGNvbiAtd2Via2l0LWxpbmUtY2xhbXAgeSBlbiBsYSByZWppbGxhIGRlXG4gICA5LDVyZW0gZXNvIHNvbiB+NTAgY2FyYWN0ZXJlczogbGFzIHRhcmpldGFzIHF1ZSBoYXkgcXVlIGNvbXBhcmFyIGVudHJlIHPDrSBzb24ganVzdGFtZW50ZSBsYXMgcXVlXG4gICBzZSBkaWZlcmVuY2lhbiBhbCBmaW5hbCBkZWwgbm9tYnJlIChcIuKApmhpbG8gZGUgbWVyY2Fkb1wiIHZzIFwi4oCmaGlsbyBkZSBmw6FicmljYVwiLCBcIuKApkF1dG9hanVzdGFibGVcbiAgIFBMOTE1XCIgdnMgXCJQTDkzMlwiKSwgYXPDrSBxdWUgZWwgcmVjb3J0ZSBzZSBjb23DrWEgbGEgw7puaWNhIGRpZmVyZW5jaWEuIGBmbGV4OiAxIDEgYXV0b2AgaGFjZSBxdWUgZWxcbiAgIG5vbWJyZSBhYnNvcmJhIGVsIGh1ZWNvIHNvYnJhbnRlIGRlIGxhIHRhcmpldGEsIGRlIG1vZG8gcXVlIGVsIHByZWNpbyB5IGxhcyBwYXN0aWxsYXMgZGUgdmFyaWFudGVcbiAgIHNpZ3VlbiBhbGluZWFkb3MgYWJham8gYXVucXVlIGxhcyB0YXJqZXRhcyBkZSB1bmEgZmlsYSB0ZW5nYW4gbm9tYnJlcyBkZSBkaXN0aW50byBsYXJnby4gKi9cbi5waWNrZXItaXRlbS1uYW1lIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICBjb2xvcjogIzMzNDE1NTtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cbi5waWNrZXItaXRlbS1hY3RpdmUgLnBpY2tlci1pdGVtLW5hbWUgeyBjb2xvcjogIzAwMkM3MzsgZm9udC13ZWlnaHQ6IDYwMDsgfVxuLnBpY2tlci1pdGVtLXByaWNlIHtcbiAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XG4gICAgY29sb3I6ICM2NDc0OEI7XG59XG5cbi8qIE1vZGVsbyBzaW4gdGFyaWZhIGRlbCBwcm92ZWVkb3I6IHNlIG1hcmNhIGxhIFRBUkpFVEEgRU5URVJBLCBubyBzb2xvIGxhIGV0aXF1ZXRhIGRlIGFiYWpvLiBFbnRyZVxuICAgdHJlaW50YSB0YXJqZXRhcyBjb24gc3UgaW1wb3J0ZSwgdW4gZGlzdGludGl2byBwZXF1ZcOxbyBhbCBwaWUgc2UgcGllcmRlLCB5IGVsZWdpciBlc3RhIGNvdGl6YSBhXG4gICAwIOKCrCBzaW4gbcOhcyBhdmlzby4gKi9cbi5waWNrZXItaXRlbS1zaW4tcHJlY2lvIHtcbiAgICBib3JkZXItY29sb3I6ICNGQ0E1QTU7XG4gICAgYmFja2dyb3VuZDogI0ZGRkJGQjtcbn1cbi5waWNrZXItaXRlbS1zaW4tcHJlY2lvOmhvdmVyIHsgYm9yZGVyLWNvbG9yOiAjRUY0NDQ0OyB9XG4ucGlja2VyLWl0ZW0tc2luLXByZWNpby5waWNrZXItaXRlbS1hY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogI0RDMjYyNjtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgyMjAsIDM4LCAzOCwgMC4xNSk7XG59XG4ucGlja2VyLWl0ZW0tc2luLXByZWNpbyAucGlja2VyLWl0ZW0tbmFtZSB7IGNvbG9yOiAjN0YxRDFEOyB9XG5cbi8qIFZhbG9yIHF1ZSBleGlzdGUgZW4gZWwgY2F0w6Fsb2dvIHBlcm8gTk8gZW4gbGEgcmFtYSBlbGVnaWRhIGRlIGxhIGNhc2NhZGEgKHVuIGNvbG9yIGRlIHRva2VuIHF1ZSBub1xuICAgc2UgZmFicmljYSBlbiBlc2UgZGnDoW1ldHJvKS4gU2UgZW5zZcOxYSBlbiB2ZXogZGUgZXNjb25kZXJzZSBwb3JxdWUgYWwgY29tZXJjaWFsIGxlIHNpcnZlIHNhYmVyIHF1ZVxuICAgZWwgY29sb3IgZXhpc3RlIOKAlHkgZW4gcXXDqSB0YW1hw7Fv4oCULCBwZXJvIHRpZW5lIHF1ZSBxdWVkYXIgY2xhcm8gZGUgdW4gdmlzdGF6byBxdWUgbm8gZXMgZWxlZ2libGU6XG4gICBmb3RvIGRlc2F0dXJhZGEgeSBhIG1lZGlhIG9wYWNpZGFkLCBjdXJzb3IgZGUgXCJub1wiLiBMYSBMVVBBIHNpZ3VlIHZpdmEsIGRlIGFow60gcXVlIHNlIGxlIGRldnVlbHZhblxuICAgbG9zIGV2ZW50b3MgZGUgcHVudGVybzogdmVybG8gZ3JhbmRlIGF5dWRhIGEgcHJvcG9uZXIgZWwgY2FtYmlvIGRlIHRhbWHDsW8uICovXG4ucGlja2VyLWl0ZW0tZGVzaGFiaWxpdGFkbyB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBib3JkZXItY29sb3I6ICNFMkU4RjA7XG4gICAgYmFja2dyb3VuZDogI0Y4RkFGQztcbn1cbi5waWNrZXItaXRlbS1kZXNoYWJpbGl0YWRvOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICNFMkU4RjA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi8qIExhIGF0ZW51YWNpw7NuIHZhIGVuIGxhIElNQUdFTiB5IGVsIG5vbWJyZSwgbm8gZW4gYC5waWNrZXItaXRlbS1tZWRpYWA6IGBvcGFjaXR5YCBubyBzZSBwdWVkZVxuICAgZGVzaGFjZXIgZW4gdW4gaGlqbywgeSBsYSBsdXBhIHZpdmUgZGVudHJvIGRlIGVzZSBjb250ZW5lZG9yLiAqL1xuLnBpY2tlci1pdGVtLWRlc2hhYmlsaXRhZG8gLnBpY2tlci1pdGVtLWltZyxcbi5waWNrZXItaXRlbS1kZXNoYWJpbGl0YWRvIC5waWNrZXItaXRlbS1uYW1lIHtcbiAgICBvcGFjaXR5OiAwLjQ1O1xuICAgIGZpbHRlcjogZ3JheXNjYWxlKDAuNik7XG59XG4ucGlja2VyLWl0ZW0tZGVzaGFiaWxpdGFkbyAucGlja2VyLWl0ZW0tem9vbSB7IGN1cnNvcjogem9vbS1pbjsgfVxuLnBpY2tlci1pdGVtLWRlc2hhYmlsaXRhZG8gLnBpY2tlci1pdGVtLWNoZWNrIHsgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBPY3VwYSBlbCBzaXRpbyBkZWwgcHJlY2lvIGN1YW5kbyBlbCBtb2RlbG8gbm8gdGllbmUgdGFyaWZhLiAqL1xuLnBpY2tlci1pdGVtLWF2aXNvLFxuLnBpY2tlci1tZXRhLWF2aXNvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC4yNXJlbTtcbiAgICBwYWRkaW5nOiAwLjA2MjVyZW0gMC4zNzVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0ZDQTVBNTtcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBiYWNrZ3JvdW5kOiAjRkVGMkYyO1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBjb2xvcjogI0I5MUMxQztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnBpY2tlci1pdGVtLWFjdGl2ZSAucGlja2VyLWl0ZW0tYXZpc28geyBib3JkZXItY29sb3I6ICNFRjQ0NDQ7IH1cbi8qIEVuIGxhIGZpbGEgY29tcGFjdGEgZGVsIHBhbmVsIGVsIGh1ZWNvIGVzIGVsIGRlbCByZWNhcmdvLCBxdWUgZXMgdGV4dG8gc3VlbHRvOiBzZSBhbGluZWEgYSBsYVxuICAgaXpxdWllcmRhIHkgbm8gc2UgZXN0aXJhLiAqL1xuLnBpY2tlci1tZXRhLWF2aXNvIHsgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4vKiDilIDilIAgTXVlc3RyYSBkZSBjb2xvciDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgIExvcyBjb2xvcmVzIGRlIHN0b2NrIGRlbCB2aW5pbG8vdHl2ZWsgbm8gdGllbmVuIGZvdG8geSBudW5jYSBsYSB2YW4gYSB0ZW5lcjogZWwgcHJvZHVjdG8gRVMgZWxcbiAgIGNvbG9yLiBMYSBtdWVzdHJhIG9jdXBhIGVsIGh1ZWNvIGRlIGxhIGltYWdlbiAobWlzbWEgY2xhc2UsIGBwaWNrZXItaXRlbS1pbWdgIG9cbiAgIGBwaWNrZXItdHJpZ2dlci1pbWdgKSwgYXPDrSBxdWUgaGVyZWRhIHRhbWHDsW8geSByYWRpbyB5IG5vIGhhY2UgZmFsdGEgdG9jYXIgbGEgcmVqaWxsYS5cblxuICAgRWwgYGJhY2tncm91bmQtY29sb3JgIGxvIHBvbmUgZWwgSlMgcG9yIGBzdHlsZWAgZGVzZGUgZWwgY2F0w6Fsb2dvOyBhcXXDrSBzb2xvIHZhIGxvIGVzdHJ1Y3R1cmFsLlxuICAgRWwgYm9yZGUgaW50ZXJpb3IgZXMgb2JsaWdhdG9yaW86IHNpbiDDqWwsIMKrQmxhbmNvwrsgeSDCq1RyYW5zcGFyZW50ZcK7IHNvbiB1biByZWN0w6FuZ3VsbyBpbnZpc2libGVcbiAgIHNvYnJlIGxhIHRhcmpldGEgYmxhbmNhLiAqL1xuLnBpY2tlci1zd2F0Y2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6ICNGOEZBRkM7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHJnYmEoMTUsIDIzLCA0MiwgMC4xNik7XG59XG4ucGlja2VyLXN3YXRjaC10b25vIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4vKiBUcmFuc2zDumNpZG86IGVsIGRhbWVybyBzZSB2ZSBBIFRSQVbDiVMgZGVsIHRvbm8sIHF1ZSBiYWphIGEgNTUgJSBkZSBvcGFjaWRhZC4gRXMgbGEgw7puaWNhIGZvcm1hXG4gICBkZSBkaXN0aW5ndWlyIMKrQW1hcmlsbG8gVHJhbnNsw7pjaWRvwrsgZGUgwqtBbWFyaWxsbyBDbGFybyBOZcOzbsK7LCBxdWUgY29tbyB0aW50YSBwbGFuYSBzb24gbGFcbiAgIG1pc21hIG11ZXN0cmEgeSBzb24gZG9zIHB1bHNlcmFzIGRpc3RpbnRhcy4gKi9cbi5waWNrZXItc3dhdGNoLXRyYW5zbHVjaWRvIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOlxuICAgICAgICBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNFMkU4RjAgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDc1JSwgI0UyRThGMCA3NSUpLFxuICAgICAgICBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNFMkU4RjAgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDc1JSwgI0UyRThGMCA3NSUpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCAxMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMCwgNnB4IDZweDtcbn1cbi5waWNrZXItc3dhdGNoLXRyYW5zbHVjaWRvIC5waWNrZXItc3dhdGNoLXRvbm8geyBvcGFjaXR5OiAwLjU1OyB9XG4vKiBDb2xvciBzaW4gdG9ubyBlbiBsYSBwYWxldGE6IHJheWFkbyBuZXV0cm8sIHF1ZSBzZSBsZWUgY29tbyDCq25vIGxvIHNhYmVtb3PCuyB5IG5vIGNvbW8gdW4gZ3Jpc1xuICAgcmVhbCBkZWwgY2F0w6Fsb2dvLiBFbCBub21icmUgZGUgbGEgdGFyamV0YSBzaWd1ZSBzaWVuZG8gZWwgZGF0by4gKi9cbi5waWNrZXItc3dhdGNoLWRlc2Nvbm9jaWRvIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuICAgICAgICA0NWRlZywgI0UyRThGMCAwIDZweCwgI0Y4RkFGQyA2cHggMTJweFxuICAgICk7XG59XG5cbi8qIExhcyB1bmlkYWRlcyBxdWUgcXVlZGFuIGRlIHVuIGNvbG9yLiBEZWxpYmVyYWRhbWVudGUgTcOBUyBHUkFOREUgcXVlIGVsIHJlY2FyZ29cbiAgICgucGlja2VyLWl0ZW0tcHJpY2UsIDExIHB4KTogZW4gZWwgcGlja2VyIGRlIGNvcmRvbmVzIGVsIGltcG9ydGUgZXMgdW4gYXB1bnRlIGFsIG1hcmdlbiB5IGVsXG4gICBkYXRvIGVzIGxhIGZvdG8sIHBlcm8gYXF1w60gbGEgbXVlc3RyYSBkZSBjb2xvciBzZSBkaXN0aW5ndWUgZGUgdW4gdmlzdGF6byB5IGxvIHF1ZSBkZSB2ZXJkYWRcbiAgIGRlY2lkZSBlbnRyZSBkb3MgY29sb3JlcyBlcyBjdcOhbnRvIHF1ZWRhLiBBIDExIHB4IGhhYsOtYSBxdWUgYWNlcmNhcnNlIGEgbGVlcmxvLiAqL1xuLnBpY2tlci1pdGVtLXN0b2NrIHtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBjb2xvcjogIzMzNDE1NTtcbn1cbi5waWNrZXItaXRlbS1hY3RpdmUgLnBpY2tlci1pdGVtLXN0b2NrIHsgY29sb3I6ICMwMDJDNzM7IH1cbi8qIEVuIGxhIGZpbGEgY29tcGFjdGEgdmEgY29uIGVsIG1pc21vIHBlc28sIHF1ZSBhaMOtIGNvbXBpdGUgY29uIGVsIG5vbWJyZSBkZWwgY29sb3IuICovXG4ucGlja2VyLXRyaWdnZXItc3RvY2sge1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMzMzQxNTU7XG59XG5cbi8qIEFnb3RhZG86IG1pc21vIHRyYXRhbWllbnRvIHF1ZSDCq3NpbiB0YXJpZmHCuyBwZXJvIGVuIMOhbWJhciwgcG9ycXVlIG5vIGVzIHVuIGVycm9yIOKAlCBzZSB2ZW5kZVxuICAgY29udHJhIHJlcG9zaWNpw7NuLiBQb3IgZXNvIGVsIGNvbG9yIGFnb3RhZG8gTk8gc2UgZXNjb25kZSBkZSBsYSByZWppbGxhOiBlc2NvbmRlcmxvIGhhcsOtYSBjcmVlclxuICAgcXVlIG5vIGV4aXN0ZSwgeSBsbyBxdWUgaGFjZSBmYWx0YSBlcyB2ZXJsbyB5IHNhYmVyIHF1ZSBubyBoYXkuICovXG4ucGlja2VyLW1ldGEtYWdvdGFkbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0ZDRDM0RDtcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGQkVCO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgY29sb3I6ICNCNDUzMDk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5waWNrZXItdHJpZ2dlci1tZXRhLnBpY2tlci1tZXRhLWFnb3RhZG8geyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG5cbi8qIFZhcmlhbnRlcyBkZW50cm8gZGUgbGEgdGFyamV0YSAod2VuZ3XDqSAxNy8xOC8yMCBib2xpdGFzLCBoaWxvIGRlIG1lcmNhZG8vZsOhYnJpY2EpOiB1biBncnVwb1xuICAgZGUgZmlsYXMgcXVlIHNvbG8gc2UgZGlmZXJlbmNpYW4gZW4gdW4gZGV0YWxsZSB5IGNvbXBhcnRlbiBmb3RvLiBTZSBlbGlnZW4gYXF1w60gbWlzbW8sIHNpblxuICAgc2VndW5kbyBkZXNwbGVnYWJsZS4gU29uIDxzcGFuIHJvbGU9XCJidXR0b25cIj4geSBubyA8YnV0dG9uPjogbGEgdGFyamV0YSBZQSBlcyB1biA8YnV0dG9uPiB5XG4gICBhbmlkYXJsb3MgZXMgSFRNTCBpbnbDoWxpZG8gKG1pc21vIG1vdGl2byBxdWUgbGEgbHVwYSBkZSBhbXBsaWFyKS4gKi9cbi5waWNrZXItaXRlbS12YXJpYW50ZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogMC4yNXJlbTtcbn1cbi5waWNrZXItdmFyaWFudGUge1xuICAgIHBhZGRpbmc6IDAuMDYyNXJlbSAwLjM3NXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRTJFOEYwO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGJhY2tncm91bmQ6ICNGOEZBRkM7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIGNvbG9yOiAjNDc1NTY5O1xuICAgIC8qIFNpbiBgbm93cmFwYDogXCJIaWxvIGRlIG1lcmNhZG8gwrcgOS0xMCBudWRvc1wiIG5vIGNhYmUgZW4gdW5hIHRhcmpldGEgZGUgOSw1cmVtIHkgbGEgcGFzdGlsbGEgc2VcbiAgICAgICBzYWzDrWEgcG9yIGVsIGJvcmRlIChmbGV4LXdyYXAgc29sbyBzZXBhcmEgcGFzdGlsbGFzLCBubyBwYXJ0ZSB1bmEpLiAqL1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cywgYmFja2dyb3VuZC1jb2xvciAwLjE1cywgY29sb3IgMC4xNXM7XG59XG4ucGlja2VyLXZhcmlhbnRlOmhvdmVyIHsgYm9yZGVyLWNvbG9yOiAjOTRBM0I4OyBiYWNrZ3JvdW5kOiAjRjFGNUY5OyB9XG4ucGlja2VyLXZhcmlhbnRlLWFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAyQzczO1xuICAgIGJhY2tncm91bmQ6ICMwMDJDNzM7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIExlZ2FjeSBjb21wYXQg4oCUIHV0aWxpdGllcyB1c2VkIGJ5IEpTIG1vZHVsZXMgYW5kIHRlbXBsYXRlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uZC1ub25lIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUmVzcG9uc2l2ZSB2YXJpYW50cyBmb3IgdGhlIGNhbGN1bGF0b3IgbGF5b3V0LlxuICAgVGFpbHdpbmQgNCArIHdlYnBhY2stZW5jb3JlICsgUG9zdENTUyBwaXBlbGluZSBvbiBXaW5kb3dzIGlzIG5vdFxuICAgcmVsaWFibHkgZW1pdHRpbmcgYG1kOipgL2BsZzoqYCB2YXJpYW50cyBmcm9tIEBzb3VyY2Ugc2Nhbm5pbmcsXG4gICBzbyB3ZSBhdXRob3IgdGhlIG1lZGlhLXF1ZXJ5IHJ1bGVzIGV4cGxpY2l0bHkgaGVyZS5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm1kXFw6Z3JpZC1jb2xzLTIgIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpOyB9XG4gICAgLm1kXFw6Z3JpZC1jb2xzLTMgIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgbWlubWF4KDAsIDFmcikpOyB9XG4gICAgLm1kXFw6Z3JpZC1jb2xzLTQgIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDAsIDFmcikpOyB9XG4gICAgLm1kXFw6Z3JpZC1jb2xzLTUgIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgbWlubWF4KDAsIDFmcikpOyB9XG4gICAgLm1kXFw6Z3JpZC1jb2xzLTEyIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIG1pbm1heCgwLCAxZnIpKTsgfVxuICAgIC5tZFxcOmNvbC1zcGFuLTEgIHsgZ3JpZC1jb2x1bW46IHNwYW4gMSAvIHNwYW4gMTsgfVxuICAgIC5tZFxcOmNvbC1zcGFuLTIgIHsgZ3JpZC1jb2x1bW46IHNwYW4gMiAvIHNwYW4gMjsgfVxuICAgIC5tZFxcOmNvbC1zcGFuLTMgIHsgZ3JpZC1jb2x1bW46IHNwYW4gMyAvIHNwYW4gMzsgfVxuICAgIC5tZFxcOmNvbC1zcGFuLTQgIHsgZ3JpZC1jb2x1bW46IHNwYW4gNCAvIHNwYW4gNDsgfVxuICAgIC5tZFxcOmNvbC1zcGFuLTUgIHsgZ3JpZC1jb2x1bW46IHNwYW4gNSAvIHNwYW4gNTsgfVxuICAgIC5tZFxcOmNvbC1zcGFuLTYgIHsgZ3JpZC1jb2x1bW46IHNwYW4gNiAvIHNwYW4gNjsgfVxuICAgIC5tZFxcOmNvbC1zcGFuLTcgIHsgZ3JpZC1jb2x1bW46IHNwYW4gNyAvIHNwYW4gNzsgfVxuICAgIC5tZFxcOmNvbC1zcGFuLTggIHsgZ3JpZC1jb2x1bW46IHNwYW4gOCAvIHNwYW4gODsgfVxuICAgIC5tZFxcOmNvbC1zcGFuLTkgIHsgZ3JpZC1jb2x1bW46IHNwYW4gOSAvIHNwYW4gOTsgfVxuICAgIC5tZFxcOmNvbC1zcGFuLTEwIHsgZ3JpZC1jb2x1bW46IHNwYW4gMTAgLyBzcGFuIDEwOyB9XG4gICAgLm1kXFw6Y29sLXNwYW4tMTEgeyBncmlkLWNvbHVtbjogc3BhbiAxMSAvIHNwYW4gMTE7IH1cbiAgICAubWRcXDpjb2wtc3Bhbi0xMiB7IGdyaWQtY29sdW1uOiBzcGFuIDEyIC8gc3BhbiAxMjsgfVxuICAgIC5tZFxcOnN0aWNreSAgICAgIHsgcG9zaXRpb246IHN0aWNreTsgfVxuICAgIC5tZFxcOnRvcC02ICAgICAgIHsgdG9wOiAxLjVyZW07IH1cbiAgICAubWRcXDpnYXAtNCAgICAgICB7IGdhcDogMXJlbTsgfVxuICAgIC5tZFxcOmdhcC02ICAgICAgIHsgZ2FwOiAxLjVyZW07IH1cbiAgICAubWRcXDpnYXAtOCAgICAgICB7IGdhcDogMnJlbTsgfVxuICAgIC5tZFxcOmZsZXgtcm93ICAgIHsgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZFxcOmZsZXgtMSAgICAgIHsgZmxleDogMSAxIDAlOyB9XG4gICAgLm1kXFw6ZmxleC1ub25lICAgeyBmbGV4OiBub25lOyB9XG4gICAgLm1kXFw6aGlkZGVuICAgICAgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgLm1kXFw6YmxvY2sgICAgICAgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5tZFxcOnctMzIgICAgICAgIHsgd2lkdGg6IDhyZW07IH1cbiAgICAubWRcXDpwLTggICAgICAgICB7IHBhZGRpbmc6IDJyZW07IH1cbiAgICAubWRcXDptYXgtaC0xODAgICB7IG1heC1oZWlnaHQ6IDE4MHB4OyB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5zbVxcOmdyaWQtY29scy0yIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpOyB9XG4gICAgLnNtXFw6Z3JpZC1jb2xzLTQgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCBtaW5tYXgoMCwgMWZyKSk7IH1cbiAgICAuc21cXDpmbGV4LXJvdyAgICB7IGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAuc21cXDpmbGV4LW5vbmUgICB7IGZsZXg6IG5vbmU7IH1cbiAgICAuc21cXDppdGVtcy1jZW50ZXIgICB7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAuc21cXDppdGVtcy1zdGFydCAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gICAgLnNtXFw6anVzdGlmeS1iZXR3ZWVuIHsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgLnNtXFw6c2VsZi1zdGFydCAgICAgeyBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG4gICAgLnNtXFw6dy0zMiAgICAgICAgeyB3aWR0aDogOHJlbTsgfVxuICAgIC5zbVxcOnAtOCAgICAgICAgIHsgcGFkZGluZzogMnJlbTsgfVxuICAgIC5zbVxcOnB5LTI4ICAgICAgIHsgcGFkZGluZy10b3A6IDdyZW07IHBhZGRpbmctYm90dG9tOiA3cmVtOyB9XG4gICAgLnNtXFw6dGV4dC00eGwgICAgeyBmb250LXNpemU6IDIuMjVyZW07IGxpbmUtaGVpZ2h0OiAyLjVyZW07IH1cbiAgICAuc21cXDp0ZXh0LTV4bCAgICB7IGZvbnQtc2l6ZTogM3JlbTsgbGluZS1oZWlnaHQ6IDE7IH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIC5sZ1xcOmdyaWQtY29scy0xICB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIG1pbm1heCgwLCAxZnIpKTsgfVxuICAgIC5sZ1xcOmdyaWQtY29scy0yICB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTsgfVxuICAgIC5sZ1xcOmdyaWQtY29scy0zICB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgwLCAxZnIpKTsgfVxuICAgIC5sZ1xcOmdyaWQtY29scy00ICB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIG1pbm1heCgwLCAxZnIpKTsgfVxuICAgIC5sZ1xcOmdyaWQtY29scy01ICB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIG1pbm1heCgwLCAxZnIpKTsgfVxuICAgIC5sZ1xcOmdyaWQtY29scy02ICB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIG1pbm1heCgwLCAxZnIpKTsgfVxuICAgIC5sZ1xcOmdyaWQtY29scy0xMSB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDExLCBtaW5tYXgoMCwgMWZyKSk7IH1cbiAgICAubGdcXDpncmlkLWNvbHMtMTIgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgbWlubWF4KDAsIDFmcikpOyB9XG4gICAgLyogRWwgcmFuZ28gZW50ZXJvLCBubyBzb2xvIGxvcyBxdWUgc2UgdXNhbiBob3k6IGN1YW5kbyBmYWx0YSB1bm8gbm8gZGEgZXJyb3IsIHNpbXBsZW1lbnRlIGVsXG4gICAgICAgaGlqbyBvY3VwYSBVTkEgY29sdW1uYSB5IGxhIGZpbGEgc2FsZSBhcGVsb3RvbmFkYSBhIGxhIGl6cXVpZXJkYS4gKi9cbiAgICAubGdcXDpjb2wtc3Bhbi0xICAgeyBncmlkLWNvbHVtbjogc3BhbiAxIC8gc3BhbiAxOyB9XG4gICAgLmxnXFw6Y29sLXNwYW4tMiAgIHsgZ3JpZC1jb2x1bW46IHNwYW4gMiAvIHNwYW4gMjsgfVxuICAgIC5sZ1xcOmNvbC1zcGFuLTMgICB7IGdyaWQtY29sdW1uOiBzcGFuIDMgLyBzcGFuIDM7IH1cbiAgICAubGdcXDpjb2wtc3Bhbi00ICAgeyBncmlkLWNvbHVtbjogc3BhbiA0IC8gc3BhbiA0OyB9XG4gICAgLmxnXFw6Y29sLXNwYW4tNSAgIHsgZ3JpZC1jb2x1bW46IHNwYW4gNSAvIHNwYW4gNTsgfVxuICAgIC5sZ1xcOmNvbC1zcGFuLTYgICB7IGdyaWQtY29sdW1uOiBzcGFuIDYgLyBzcGFuIDY7IH1cbiAgICAubGdcXDpjb2wtc3Bhbi03ICAgeyBncmlkLWNvbHVtbjogc3BhbiA3IC8gc3BhbiA3OyB9XG4gICAgLmxnXFw6Y29sLXNwYW4tOCAgIHsgZ3JpZC1jb2x1bW46IHNwYW4gOCAvIHNwYW4gODsgfVxuICAgIC5sZ1xcOmNvbC1zcGFuLTkgICB7IGdyaWQtY29sdW1uOiBzcGFuIDkgLyBzcGFuIDk7IH1cbiAgICAubGdcXDpjb2wtc3Bhbi0xMCAgeyBncmlkLWNvbHVtbjogc3BhbiAxMCAvIHNwYW4gMTA7IH1cbiAgICAubGdcXDpjb2wtc3Bhbi0xMSAgeyBncmlkLWNvbHVtbjogc3BhbiAxMSAvIHNwYW4gMTE7IH1cbiAgICAubGdcXDpjb2wtc3Bhbi0xMiAgeyBncmlkLWNvbHVtbjogc3BhbiAxMiAvIHNwYW4gMTI7IH1cbiAgICAubGdcXDpzdGlja3kgICAgICAgeyBwb3NpdGlvbjogc3RpY2t5OyB9XG4gICAgLmxnXFw6dG9wLTQgICAgICAgIHsgdG9wOiAxcmVtOyB9XG4gICAgLmxnXFw6dG9wLTYgICAgICAgIHsgdG9wOiAxLjVyZW07IH1cbiAgICAubGdcXDpnYXAtOCAgICAgICAgeyBnYXA6IDJyZW07IH1cbn1cblxuLyogTG9zIGB4bDoqYCB2YW4gREVTUFVFUyBkZSBsb3MgYHNtOipgL2BtZDoqYC9gbGc6KmAgZGUgYXJyaWJhIGEgcHJvcG9zaXRvOiBhbCByZWRlY2xhcmFybG9zIGFxdWlcbiAgIGEgbWFubyBzZSBwaWVyZGUgZWwgb3JkZW4gcG9yIGJyZWFrcG9pbnQgcXVlIGRhIFRhaWx3aW5kLCB5IHVuIGBzbVxcOmdyaWQtY29scy0yYCBlc2NyaXRvIG1hc1xuICAgYWJham8gbGUgZ2FuYWJhIGEgdW4gYHhsXFw6Z3JpZC1jb2xzLTNgIGNvbiBsYXMgZG9zIG1lZGlhIHF1ZXJpZXMgYWN0aXZhcy4gKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgICAueGxcXDpncmlkLWNvbHMtMiB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTsgfVxuICAgIC54bFxcOmdyaWQtY29scy0zIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgbWlubWF4KDAsIDFmcikpOyB9XG4gICAgLnhsXFw6Z3JpZC1jb2xzLTQgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCBtaW5tYXgoMCwgMWZyKSk7IH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIb21lOiBsYSBmaWxhIMKrdHJhYmFqbyBlbiBjdXJzb8K7LlxuICAgQWx0byBGSUpPIHkgY29tdW4gcGFyYSBsYXMgZG9zIGNvbHVtbmFzOyBkZW50cm8sIGNhZGEgbGlzdGEgc2UgcmVwYXJ0ZSBsbyBxdWUgaGF5LiBWYSBhcXVpIHkgbm9cbiAgIGVuIHV0aWxpdGllcyBgbGc6KmAgcG9ycXVlIGVzdGUgcGlwZWxpbmUgbm8gbGFzIGVtaXRlIGZpYWJsZSAodmVyIGVsIGJsb3F1ZSBkZSBhcnJpYmEpLiBTaW5cbiAgIGBAbGF5ZXJgOiBhc2kgZ2FuYSBhIGxvcyBgbWF4LWgtKmAgZGUgVGFpbHdpbmQsIHF1ZSBzb2xvIGFjb3RhbiBsYSB2ZXJzaW9uIG1vdmlsLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmhvbWUtcm93ICB7IGhlaWdodDogNDJyZW07IH1cbiAgICAuaG9tZS1maWxsIHsgZmxleDogMSAxIDAlOyBtaW4taGVpZ2h0OiAwOyBtYXgtaGVpZ2h0OiBub25lOyB9XG4gICAgLmhvbWUtaGFsZiB7IG1heC1oZWlnaHQ6IDUwJTsgbWluLWhlaWdodDogMDsgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEtleWZyYW1lc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5Aa2V5ZnJhbWVzIHNwaW4ge1xuICAgIHRvIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtdXAge1xuICAgIGZyb20geyBvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCk7IH1cbiAgICB0byAgIHsgb3BhY2l0eTogMTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG59XG5cbkBsYXllciB1dGlsaXRpZXMge1xuICAgIC5hbmltYXRlLWZhZGUtdXAgeyBhbmltYXRpb246IGZhZGUtdXAgMC40cyBlYXNlLW91dCBib3RoOyB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ2FzY2FkZSBmaXg6IHJlLWVuYWJsZSBUYWlsd2luZCB1dGlsaXRpZXMgb24gZm9ybSBlbGVtZW50c1xuICAgdGhhdCBFYXN5QWRtaW4ncyBidW5kbGVkIEJvb3RzdHJhcCByZXNldCB3b3VsZCBvdGhlcndpc2UgY2xvYmJlci5cblxuICAgYnVuZGxlcy9lYXN5YWRtaW4vYXBwLmNzcyBzaGlwcyB1bmxheWVyZWQgQm9vdHN0cmFwLWRlcml2ZWQgcnVsZXNcbiAgIHN1Y2ggYXMgYGxhYmVsIHsgZGlzcGxheTogaW5saW5lLWJsb2NrIH1gIGFuZFxuICAgYHRleHRhcmVhIHsgcmVzaXplOiB2ZXJ0aWNhbCB9YC4gSW4gVGFpbHdpbmQgNCBhbGwgdXRpbGl0aWVzIGxpdmVcbiAgIGluc2lkZSBgQGxheWVyIHV0aWxpdGllc2AsIGFuZCBpbiB0aGUgQ1NTIGNhc2NhZGUgQU5ZIHVubGF5ZXJlZFxuICAgcnVsZSB3aW5zIG92ZXIgQU5ZIEBsYXllciBydWxlIHJlZ2FyZGxlc3Mgb2Ygc3BlY2lmaWNpdHkuIFNvXG4gICBgY2xhc3M9XCJibG9ja1wiYCBvbiBhIGxhYmVsIGFuZCBgY2xhc3M9XCJyZXNpemUtbm9uZVwiYCBvbiBhIHRleHRhcmVhXG4gICBzaWxlbnRseSBsb3NlLlxuXG4gICBUaGVzZSBlbGVtZW50K2NsYXNzIGR1cGxpY2F0ZXMgbGl2ZSBPVVRTSURFIGFueSBAbGF5ZXIgc28gdGhleVxuICAgY29tcGV0ZSB3aXRoIEVhc3lBZG1pbidzIHJlc2V0IGF0IHRoZSBzYW1lIGNhc2NhZGUgbGV2ZWwsIGFuZFxuICAgdGhlaXIgaGlnaGVyIHNwZWNpZmljaXR5IChlbGVtZW50ICsgY2xhc3MgPiBlbGVtZW50IGFsb25lKSBtYWtlc1xuICAgdGhlbSB3aW4uIEFkZCBuZXcgb25lcyBoZXJlIGlmIHlvdSBmaW5kIGFub3RoZXIgdXRpbGl0eSB0aGF0XG4gICBnZXRzIGVhdGVuIGJ5IEJvb3RzdHJhcCdzIHJlc2V0IG9uIGEgZm9ybSBlbGVtZW50LlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5sYWJlbC5ibG9jayAgICAgICB7IGRpc3BsYXk6IGJsb2NrOyB9XG5sYWJlbC5pbmxpbmUtYmxvY2t7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxubGFiZWwuZmxleCAgICAgICAgeyBkaXNwbGF5OiBmbGV4OyB9XG5sYWJlbC5pbmxpbmUtZmxleCB7IGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XG5sYWJlbC5ncmlkICAgICAgICB7IGRpc3BsYXk6IGdyaWQ7IH1cbmxhYmVsLmlubGluZS1ncmlkIHsgZGlzcGxheTogaW5saW5lLWdyaWQ7IH1cbmxhYmVsLmhpZGRlbiAgICAgIHsgZGlzcGxheTogbm9uZTsgfVxubGFiZWwuY29udGVudHMgICAgeyBkaXNwbGF5OiBjb250ZW50czsgfVxuXG4vKiBFbCBSZWJvb3QgZGUgQm9vdHN0cmFwIHRyYWUgYHN1bW1hcnkgeyBkaXNwbGF5OiBsaXN0LWl0ZW0gfWAsIGFzw60gcXVlIHVuIGA8c3VtbWFyeT5gIGNvblxuICAgYGlubGluZS1mbGV4YCAoZWwgcGxlZ2FkbyBkZSDCq03DoXMgZmlsdHJvc8K7KSBzZSBwaW50YWJhIGVuIHRyZXMgbMOtbmVhczogaWNvbm8sIHRleHRvIHlcbiAgIGNoZXZyb24gdW5vIGRlYmFqbyBkZSBvdHJvLiAqL1xuc3VtbWFyeS5mbGV4ICAgICAgICB7IGRpc3BsYXk6IGZsZXg7IH1cbnN1bW1hcnkuaW5saW5lLWZsZXggeyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxuXG4vKiBNaXNtbyBtb3Rpdm8gY29uIGBsYWJlbCB7IGRpc3BsYXk6IGlubGluZS1ibG9jayB9YDogZWwgcsOzdHVsbyBkZSB1bmEgY2VsZGEgZGUgYmFuZGEgZXNcbiAgIHVuIGA8bGFiZWw+YCAodGllbmUgcXVlIHNlcmxvLCBhcHVudGEgYSBzdSBjb250cm9sKSB5IHNpbiBlc3RvIGVsIHB1bnRvIMOhbWJhciBkZSDCq2VzdG9cbiAgIGZhbHRhwrsgc2Fsw61hIHBlZ2FkbyBhbCB0ZXh0bywgc2luIGVsIGh1ZWNvIGRlbCBgZ2FwYC4gKi9cbmxhYmVsLmJhbmQtbGFiZWwgeyBkaXNwbGF5OiBmbGV4OyB9XG5cbnRleHRhcmVhLnJlc2l6ZS1ub25lIHsgcmVzaXplOiBub25lOyB9XG50ZXh0YXJlYS5yZXNpemUteSAgICB7IHJlc2l6ZTogdmVydGljYWw7IH1cbnRleHRhcmVhLnJlc2l6ZS14ICAgIHsgcmVzaXplOiBob3Jpem9udGFsOyB9XG50ZXh0YXJlYS5yZXNpemUgICAgICB7IHJlc2l6ZTogYm90aDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbnRyb2wgUExBTk86IGVsIGRhdG8gcXVlIHNlIGVkaXRhIGFsIHB1bHNhcmxvLlxuXG4gICBVbiBgPHNlbGVjdD5gIG8gdW4gYDxpbnB1dD5gIGNvbiBzdSByZWN1YWRybyBvYmxpZ2EgYSBkaWJ1amFyIHVuYSBjYWphIHBvciBjYWRhIGNhbXBvLCB5XG4gICBzZWlzIGNhbXBvcyBzZWd1aWRvcyBzb24gc2VpcyByZWN0w6FuZ3Vsb3MuIENvbiBlc3RvIGVsIHZhbG9yIHNlIHBpbnRhIGNvbW8gdGV4dG8g4oCUaGVyZWRhXG4gICBsYSB0aXBvZ3JhZsOtYSBkZSBzdSBjZWxkYeKAlCB5IGxhIMO6bmljYSBwaXN0YSBkZSBxdWUgc2UgcHVlZGUgdG9jYXIgZXMgZWwgZm9uZG8gcXVlIGFwYXJlY2VcbiAgIGFsIGFwdW50YXJsbyAobG8gcG9uZSBgLmJhbmQtY2VsbC1lZGl0YCkuIEVsIGNoZXZyb24gbmF0aXZvIGRlbCBgc2VsZWN0YCBzZSBjb25zZXJ2YSBhXG4gICBwcm9ww7NzaXRvOiBlcyBsYSBhZm9yZGFuY2lhIHF1ZSBxdWVkYS5cblxuICAgVmEgYXF1w60sIFVOTEFZRVJFRCB5IGNvbiBzZWxlY3RvciBlbGVtZW50bytjbGFzZSwgeSBubyBlbiBgQGxheWVyIGNvbXBvbmVudHNgLCBwb3JxdWUgZWxcbiAgIEJvb3RzdHJhcCBxdWUgdHJhZSBFYXN5QWRtaW4gZGVmaW5lIGBzZWxlY3RgL2BpbnB1dGAvYHRleHRhcmVhYCBzaW4gY2FwYSB5IGVuIGxhIGNhc2NhZGFcbiAgIGN1YWxxdWllciByZWdsYSBzaW4gY2FwYSBnYW5hIGEgY3VhbHF1aWVyIGBAbGF5ZXJgLiBEZW50cm8gZGUgbGEgY2FwYSBlc3RvIHNlIHZlcsOtYSBjb25cbiAgIGVsIGJvcmRlIHkgZWwgZm9uZG8gZGUgQm9vdHN0cmFwLCBxdWUgZXMganVzdG8gbG8gcXVlIHZpZW5lIGEgcXVpdGFyLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5zZWxlY3QuY29udHJvbC1mbGF0LFxuaW5wdXQuY29udHJvbC1mbGF0LFxudGV4dGFyZWEuY29udHJvbC1mbGF0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIC8qIFRhbWHDsW8gZXhwbMOtY2l0byB5IG5vIGBmb250OiBpbmhlcml0YDogZWwgc2hvcnRoYW5kIGVzIHVuYSByZWdsYSBzaW4gY2FwYSB5IHNlXG4gICAgICAgY29tZXLDrWEgY3VhbHF1aWVyIGB0ZXh0LSpgIHB1ZXN0byBlbiBsYSBwbGFudGlsbGEsIGFzw60gcXVlIG5vIGhhYnLDrWEgZm9ybWEgZGVcbiAgICAgICBhanVzdGFybG8gY2FzbyBhIGNhc28uIENvbiBlc3RvIG1hbmRhIGxhIHZhcmlhbnRlIChgLXNtYCwgYC1tb25vYCkgeSBzZSBzYWJlIGN1w6FsLiAqL1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1uYXZ5LTkwMCk7XG59XG5zZWxlY3QuY29udHJvbC1mbGF0IHsgcGFkZGluZy1yaWdodDogMS4yNXJlbTsgY3Vyc29yOiBwb2ludGVyOyB9XG5zZWxlY3QuY29udHJvbC1mbGF0OmZvY3VzLFxuaW5wdXQuY29udHJvbC1mbGF0OmZvY3VzLFxudGV4dGFyZWEuY29udHJvbC1mbGF0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuaW5wdXQuY29udHJvbC1mbGF0OjpwbGFjZWhvbGRlcixcbnRleHRhcmVhLmNvbnRyb2wtZmxhdDo6cGxhY2Vob2xkZXIgeyBjb2xvcjogdmFyKC0tY29sb3Itc2xhdGUtNDAwKTsgfVxudGV4dGFyZWEuY29udHJvbC1mbGF0IHsgcmVzaXplOiB2ZXJ0aWNhbDsgfVxuLyogVmFyaWFudGVzIGRlIHRhbWHDsW8vY29sb3IgcGFyYSBjdWFuZG8gZWwgZGF0byBtYW5kYSAoaW1wb3J0ZXMsIHVuaWRhZGVzKSBvIGVzIHNlY3VuZGFyaW8uICovXG5pbnB1dC5jb250cm9sLWZsYXQtbW9ubyxcbnNlbGVjdC5jb250cm9sLWZsYXQtbW9ubyB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXdlaWdodDogNjAwOyB9XG5zZWxlY3QuY29udHJvbC1mbGF0LXNtLFxuaW5wdXQuY29udHJvbC1mbGF0LXNtLFxudGV4dGFyZWEuY29udHJvbC1mbGF0LXNtIHsgZm9udC1zaXplOiAwLjgxMjVyZW07IGZvbnQtd2VpZ2h0OiA0MDA7IH1cbi8qIFRleHRvIGNvcnJpZG8gKGRlc2NyaXBjaW9uZXMsIGNvbWVudGFyaW9zKTogcGVzbyBub3JtYWwgeSBjb2xvciBkZSBjdWVycG8sIG5vIGRlIGRhdG8uICovXG50ZXh0YXJlYS5jb250cm9sLWZsYXQtdGV4dG8sXG5pbnB1dC5jb250cm9sLWZsYXQtdGV4dG8ge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2xhdGUtNzAwKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDYXNjYWRlIGZpeDogY29sb3JlcyBkZSBsb3MgYm90b25lcyBkZWwgc2lzdGVtYSBlbiBww6FnaW5hcyBFQS5cblxuICAgRWFzeUFkbWluL0Jvb3RzdHJhcCAodW5sYXllcmVkKSBkZWZpbmUgYC5idG5gLCBgLmJ0bi1wcmltYXJ5YCxcbiAgIGAuYnRuLXNlY29uZGFyeWAsIGV0Yy47IGFsIHNlciB1bmxheWVyZWQgZ2FuYW4gYSBudWVzdHJhc1xuICAgdmFyaWFudGVzIGRlIGBAbGF5ZXIgY29tcG9uZW50c2AsIGRlamFuZG8gbG9zIGJvdG9uZXMgc2luIHN1XG4gICBjb2xvciAocC5lai4gwqtTb2xvIGNhbGN1bGFkb3JhwrsgZW4gYmxhbmNvIGVuIHZleiBkZSBnb2xkLCBvXG4gICDCq0dlbmVyYXIgcHJvZm9ybWHCuyBpbmRpc3Rpbmd1aWJsZSBkZSDCq0HDsWFkaXIgbMOtbmVhwrspLiBSZS1hZmlybWFtb3NcbiAgIGZvbmRvL2NvbG9yIGFxdcOtLCB1bmxheWVyZWQgeSBjb24gc2VsZWN0b3IgZWxlbWVudG8rY2xhc2UgKG1heW9yXG4gICBlc3BlY2lmaWNpZGFkKSBwYXJhIGdhbmFyIGVsIGNydWNlLiBBw7FhZGUgdmFyaWFudGVzIG51ZXZhcyBhcXXDrSBzaVxuICAgZGV0ZWN0YXMgb3RybyBib3TDs24gc2luIGNvbG9yIGVuIGVsIGFkbWluLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBGaWphbW9zIHRhbWJpw6luIGVsIGBjb2xvcmAgZW4gOmhvdmVyIOKAlCBlbCBCb290c3RyYXAgdW5sYXllcmVkIGRlIEVBIHRyYWUgcmVnbGFzXG4gICBgYTpob3ZlcmAvYGJ1dHRvbjpob3ZlcmAgcXVlLCBzaSBubywgdnVlbHZlbiBlbCB0ZXh0byBvc2N1cm8gc29icmUgZWwgZm9uZG8gZGVsIGJvdMOzbi4gKi9cbmEuYnRuLXByaW1hcnksIGJ1dHRvbi5idG4tcHJpbWFyeSAgICAgICAgICAgICB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWUtNjAwKTsgY29sb3I6ICNmZmY7IH1cbmEuYnRuLXByaW1hcnk6aG92ZXIsIGJ1dHRvbi5idG4tcHJpbWFyeTpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWUtNzAwKTsgY29sb3I6ICNmZmY7IH1cbmEuYnRuLXNlY29uZGFyeSwgYnV0dG9uLmJ0bi1zZWNvbmRhcnkgICAgICAgICAgICAgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1uYXZ5LTkwMCk7IGNvbG9yOiAjZmZmOyB9XG5hLmJ0bi1zZWNvbmRhcnk6aG92ZXIsIGJ1dHRvbi5idG4tc2Vjb25kYXJ5OmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmF2eS04MDApOyBjb2xvcjogI2ZmZjsgfVxuYS5idG4tYWNjZW50LCBidXR0b24uYnRuLWFjY2VudCAgICAgICAgICAgICB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdvbGQtNDAwKTsgY29sb3I6IHZhcigtLWNvbG9yLW5hdnktOTAwKTsgfVxuYS5idG4tYWNjZW50OmhvdmVyLCBidXR0b24uYnRuLWFjY2VudDpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdvbGQtNTAwKTsgY29sb3I6IHZhcigtLWNvbG9yLW5hdnktOTAwKTsgfVxuYS5idG4tb3V0bGluZSwgYnV0dG9uLmJ0bi1vdXRsaW5lICAgICAgICAgICAgIHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc2xhdGUtMTAwKTsgY29sb3I6IHZhcigtLWNvbG9yLXNsYXRlLTcwMCk7IH1cbmEuYnRuLW91dGxpbmU6aG92ZXIsIGJ1dHRvbi5idG4tb3V0bGluZTpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNsYXRlLTIwMCk7IGNvbG9yOiB2YXIoLS1jb2xvci1zbGF0ZS03MDApOyB9XG5hLmJ0bi1lc3RhZG8tYW1iYXIsIGJ1dHRvbi5idG4tZXN0YWRvLWFtYmFyICAgICAgICAgICAgIHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYW1iZXItMTAwKTsgY29sb3I6IHZhcigtLWNvbG9yLWFtYmVyLTgwMCk7IH1cbmEuYnRuLWVzdGFkby1hbWJhcjpob3ZlciwgYnV0dG9uLmJ0bi1lc3RhZG8tYW1iYXI6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1hbWJlci0yMDApOyBjb2xvcjogdmFyKC0tY29sb3ItYW1iZXItOTAwKTsgfVxuYS5idG4tZXN0YWRvLW1pbnQsIGJ1dHRvbi5idG4tZXN0YWRvLW1pbnQgICAgICAgICAgICAgICB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW1pbnQtMTAwKTsgY29sb3I6IHZhcigtLWNvbG9yLW1pbnQtODAwKTsgfVxuYS5idG4tZXN0YWRvLW1pbnQ6aG92ZXIsIGJ1dHRvbi5idG4tZXN0YWRvLW1pbnQ6aG92ZXIgICB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW1pbnQtMjAwKTsgY29sb3I6IHZhcigtLWNvbG9yLW1pbnQtOTAwKTsgfVxuYS5idG4tZGFuZ2VyLCBidXR0b24uYnRuLWRhbmdlciAgICAgICAgICAgICB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWNvcmFsLTUwMCk7IGNvbG9yOiAjZmZmOyB9XG5hLmJ0bi1kYW5nZXI6aG92ZXIsIGJ1dHRvbi5idG4tZGFuZ2VyOmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItY29yYWwtNjAwKTsgY29sb3I6ICNmZmY7IH1cbi8qIEVsIGZhbnRhc21hIGVzIGVsIHF1ZSBtw6FzIHNlIG5vdGFiYTogc2Fsw61hIGNvbiBmb25kbyBibGFuY28sIGFzw60gcXVlIHNvYnJlIHVuYSBww6FnaW5hXG4gICBzaW4gY2FqYXMgwqtDYW5jZWxhcsK7IG8gwqtBbm90YXIgcmVjbGFtYWNpw7Nuwrsgc2UgbGXDrWFuIGNvbW8gdW5hIGNhaml0YSBtw6FzLiAqL1xuYS5idG4tZ2hvc3QsIGJ1dHRvbi5idG4tZ2hvc3QgICAgICAgICAgICAgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgY29sb3I6IHZhcigtLWNvbG9yLXNsYXRlLTYwMCk7IGJveC1zaGFkb3c6IG5vbmU7IH1cbmEuYnRuLWdob3N0OmhvdmVyLCBidXR0b24uYnRuLWdob3N0OmhvdmVyIHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc2xhdGUtMTAwKTsgY29sb3I6IHZhcigtLWNvbG9yLXNsYXRlLTgwMCk7IH1cbmEuYnRuLWdob3N0LWRhbmdlciwgYnV0dG9uLmJ0bi1naG9zdC1kYW5nZXIgICAgICAgICAgICAgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgY29sb3I6IHZhcigtLWNvbG9yLWNvcmFsLTYwMCk7IGJveC1zaGFkb3c6IG5vbmU7IH1cbmEuYnRuLWdob3N0LWRhbmdlcjpob3ZlciwgYnV0dG9uLmJ0bi1naG9zdC1kYW5nZXI6aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1jb3JhbC01MCk7IGNvbG9yOiB2YXIoLS1jb2xvci1jb3JhbC03MDApOyB9XG5cbi8qIEVsIGRlIGljb25vIGVzIHRyYW5zcGFyZW50ZSBlbiByZXBvc286IGFxdcOtIGxvIHF1ZSBoYXkgcXVlIGRlZmVuZGVyIGRlbCBCb290c3RyYXAgZGVcbiAgIEVBIGVzIGp1c3RhbWVudGUgZXNvIChmb25kbyB5IGJvcmRlIGEgY2VybykgeSBlbCBjb2xvciBkZWwgdGV4dG8gZW4gOmhvdmVyLiAqL1xuYS5idG4taWNvbiwgYnV0dG9uLmJ0bi1pY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAycmVtOyB3aWR0aDogMnJlbTsgYm9yZGVyOiAwOyBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBjb2xvcjogdmFyKC0tY29sb3Itc2xhdGUtNTAwKTtcbn1cbmEuYnRuLWljb246aG92ZXIsIGJ1dHRvbi5idG4taWNvbjpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNsYXRlLTEwMCk7IGNvbG9yOiB2YXIoLS1jb2xvci1zbGF0ZS04MDApOyB9XG5hLmJ0bi1pY29uLmJ0bi1pY29uLWRhbmdlcjpob3ZlciwgYnV0dG9uLmJ0bi1pY29uLmJ0bi1pY29uLWRhbmdlcjpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWNvcmFsLTUwKTsgY29sb3I6IHZhcigtLWNvbG9yLWNvcmFsLTYwMCk7IH1cbmEuYnRuLWljb24uYnRuLWljb24tYWN0aXZlLCBidXR0b24uYnRuLWljb24uYnRuLWljb24tYWN0aXZlIHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc2xhdGUtMTAwKTsgY29sb3I6IHZhcigtLWNvbG9yLXNsYXRlLTgwMCk7IH1cblxuLyogRW50cmFkYSBkZSB1biBtZW7DuiBkZXNwbGVnYWJsZSBlc2NyaXRhIGNvbW8gPGE+IChsYXMgZXNjcml0YXMgY29tbyA8YnV0dG9uPiBubyBsb1xuICAgbmVjZXNpdGFuKTogZWwgQm9vdHN0cmFwIGRlIEVBIGxlIG1ldGUgc3UgYXp1bCBkZSBlbmxhY2UgeSBlbCBtZW7DuiBzYWzDrWEgY29uIHVuYXNcbiAgIGVudHJhZGFzIGF6dWxlcyB5IG90cmFzIHNsYXRlLiAqL1xuLyogRW50cmFkYSBkZSB1biBkZXNwbGVnYWJsZSBkZSBsYXMgYmFycmFzIGRlIGFjY2lvbmVzLCBzZWEgPGE+IG8gPGJ1dHRvbj4uIFNpbiBjYXBhOiBlbCBCb290c3RyYXBcbiAgIGRlIEVBIGxlIHBvbmRyw61hIHN1IGF6dWwgZGUgZW5sYWNlIHkgc3UgZm9uZG8gZGUgYm90w7NuLiAqL1xuYS5tZW51LWFjY2lvbiwgYnV0dG9uLm1lbnUtYWNjaW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB3aWR0aDogMTAwJTsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiAwLjVyZW07IHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICAgIGJvcmRlcjogMDsgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2xhdGUtNzAwKTsgZm9udC1zaXplOiAwLjc1cmVtOyBmb250LXdlaWdodDogNTAwOyB0ZXh0LWFsaWduOiBsZWZ0OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5hLm1lbnUtYWNjaW9uOmhvdmVyLCBidXR0b24ubWVudS1hY2Npb246aG92ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zbGF0ZS0xMDApOyBjb2xvcjogdmFyKC0tY29sb3Itc2xhdGUtOTAwKTsgfVxuYnV0dG9uLm1lbnUtYWNjaW9uOmRpc2FibGVkIHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IGNvbG9yOiB2YXIoLS1jb2xvci1zbGF0ZS0zMDApOyBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5hLm1lbnUtYWNjaW9uLWRhbmdlciwgYnV0dG9uLm1lbnUtYWNjaW9uLWRhbmdlciB7IGNvbG9yOiB2YXIoLS1jb2xvci1jb3JhbC02MDApOyB9XG5hLm1lbnUtYWNjaW9uLWRhbmdlcjpob3ZlciwgYnV0dG9uLm1lbnUtYWNjaW9uLWRhbmdlcjpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWNvcmFsLTUwKTsgY29sb3I6IHZhcigtLWNvbG9yLWNvcmFsLTcwMCk7IH1cblxuYS5tZW51LWl0ZW0gICAgICAgIHsgY29sb3I6IHZhcigtLWNvbG9yLXNsYXRlLTcwMCk7IH1cbmEubWVudS1pdGVtOmhvdmVyICB7IGNvbG9yOiB2YXIoLS1jb2xvci1zbGF0ZS05MDApOyB9XG5cbi8qIE1pc21vIG1vdGl2byBwYXJhIGxhcyB0YXJqZXRhcyBkZSBsYSBob21lIHkgbGFzIGZpbGFzIGRlIGFjdGl2aWRhZDogc29uIDxhPiwgeSBlbCBCb290c3RyYXBcbiAgIHVubGF5ZXJlZCBkZSBFQSBsZXMgbWV0ZSBzdSBgY29sb3JgIGRlIGVubGFjZSB5IGVsIHN1YnJheWFkbyBhbCBwYXNhciBwb3IgZW5jaW1hLiAqL1xuYS50aWxlLWFjY2VzbywgYS50aWxlLWFjY2Vzbzpob3ZlciB7IGNvbG9yOiBpbmhlcml0OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbmEudGlsZS1hY2Nlc28gLnRpbGUtYWNjZXNvLXRpdGxlICAgeyBjb2xvcjogdmFyKC0tY29sb3ItbmF2eS05MDApOyB9XG5hLnRpbGUtYWNjZXNvIC50aWxlLWFjY2Vzby1kZXNjICAgIHsgY29sb3I6IHZhcigtLWNvbG9yLXNsYXRlLTUwMCk7IH1cbmEubGlzdC1yb3csIGEubGlzdC1yb3c6aG92ZXIgICAgICAgeyBjb2xvcjogaW5oZXJpdDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5hLmxpc3Qtcm93IC5saXN0LXJvdy10aXRsZSAgICAgICAgIHsgY29sb3I6IHZhcigtLWNvbG9yLW5hdnktOTAwKTsgfVxuXG4vKiBDb250ZW5lZG9yIGFuY2hvIGRlIGxhIGhvbWU6IGFwcm92ZWNoYSBsYXMgcGFudGFsbGFzIGdyYW5kZXMsIGRvbmRlIG1heC13LTd4bCAoODByZW0pIGRlamFiYVxuICAgZGVtYXNpYWRvIG1hcmdlbiBtdWVydG8gYSBsb3MgbGFkb3MuIEVsIHZhbG9yIGFyYml0cmFyaW8gYG1heC13LVs5NnJlbV1gIG5vIGxvIGVtaXRlIGVsIHBpcGVsaW5lXG4gICBkZSBlbmNvcmUrcG9zdGNzcyBlbiBXaW5kb3dzIChtaXNtbyBjYXNvIHF1ZSBsYXMgdmFyaWFudGVzIHJlc3BvbnNpdmUpLCBhc8OtIHF1ZSB2YSBhIG1hbm8uICovXG4ubWF4LXctXFxbOTZyZW1cXF0geyBtYXgtd2lkdGg6IDk2cmVtOyB9XG5cbi8qIE1pc21vIGNhc28sIHBlcm8gY29uIGxvcyA8YnV0dG9uPjogZWwgcmVzZXQgdW5sYXllcmVkIGRlIEVhc3lBZG1pbiBkZWNsYXJhXG4gICBgYnV0dG9uLCBpbnB1dCwgb3B0Z3JvdXAsIHNlbGVjdCwgdGV4dGFyZWEgeyBmb250LXNpemU6IGluaGVyaXQgfWAsIHkgZXNvIGdhbmEgYSBsYXNcbiAgIHV0aWxpdGllcyBkZSB0YW1hw7FvIGRlIFRhaWx3aW5kLCBxdWUgdml2ZW4gZW4gYEBsYXllciB1dGlsaXRpZXNgLiBFcyBkZWNpcjogcG9uZXIgdW5hXG4gICBjbGFzZSBkZSB0YW1hw7FvIGRlIGxldHJhIHNvYnJlIHVuIDxidXR0b24+IE5PIGhhY2UgbmFkYSwgZWwgYm90w7NuIHNhbGUgc2llbXByZSBhbFxuICAgdGFtYcOxbyBkZWwgdGV4dG8gcXVlIGxvIHJvZGVhLlxuXG4gICBTb2xvIHNlIHJlc2NhdGEgYHRleHQtWzExcHhdYCwgcXVlIGhveSB1c2EgdW4gw7puaWNvIGJvdMOzbiDigJRlbCBcIkNvcGlhciBkZWwgY29udGFjdG9cIiBkZWxcbiAgIGJsb3F1ZSBkZSBlbnRyZWdh4oCULiBgdGV4dC14c2AgZXN0w6EgaWd1YWwgZGUgcm90bywgcGVybyBsbyBsbGV2YW4gMzYgYm90b25lcyBxdWUgbGxldmFuXG4gICBhw7FvcyB2acOpbmRvc2UgYWwgdGFtYcOxbyBoZXJlZGFkbzogYXJyZWdsYXJsbyBhcXXDrSBsb3MgZW5jb2dlcsOtYSB0b2RvcyBkZSBnb2xwZS4gKi9cbmJ1dHRvbi50ZXh0LVxcWzExcHhcXF0geyBmb250LXNpemU6IDExcHg7IH1cblxuLyogVEFNQcORT1MgREUgQk9Uw5NOLiBgLmJ0bi1zbWAgeSBgLmJ0bi1sZ2Agdml2ZW4gZW4gYEBsYXllciBjb21wb25lbnRzYCB5IGxvcyBwaXNhYmFuIFRSRVNcbiAgIHJlZ2xhcyBzaW4gY2FwYSBhIGxhIHZlejogZWwgYC5idG5gIHkgZWwgYC5idG4tZ3JvdXAtc20gPiAuYnRuLCAuYnRuLXNtYCBkZSBCb290c3RyYXBcbiAgIHF1ZSBzaXJ2ZSBFYXN5QWRtaW4sIHkgZWwgYC5idG5gIGRlIG51ZXN0cm8gYGFzc2V0cy9jc3MvYWRtaW4uY3NzOjExNjJgXG4gICAoYHBhZGRpbmc6IDhweCAxNHB4OyBmb250LXNpemU6IDE0cHhgKS5cblxuICAgRWZlY3RvOiBlbiBUT0RBIHBhbnRhbGxhIHF1ZSBjYXJnYSBhZG1pbi5jc3Mg4oCUbyBzZWEsIHRvZGFzIG1lbm9zIGVsIHNob3djYXNlXG4gICBgL2FkbWluL2Rlc2lnbi1zeXN0ZW1gLCBxdWUgZXMgdW5hIHDDoWdpbmEgc3VlbHRhIHkgc29sbyBlbmxhemEgZGVzaWduLXN5c3RlbS5jc3PigJQgdW5cbiAgIGBidG4tc21gIHNhbMOtYSBleGFjdGFtZW50ZSBpZ3VhbCBkZSBncmFuZGUgcXVlIHVuIGJvdMOzbiBub3JtYWwuIEVsIGVzY2Fsb25hZG8gMjgvMzYvNDhcbiAgIHF1ZSBzZSB2ZSBlbiBsYSB2aXRyaW5hIG5vIGxvIHByb2R1Y8OtYSBuaW5ndW5hIHBhbnRhbGxhIHJlYWw7IGVyYW4gMTMyIGJvdG9uZXNcbiAgIChFZGl0YXIvT2N1bHRhci9SZXRpcmFyL0VsaW1pbmFyIGRlIGxhIGZpY2hhIGRlIHByb2R1Y3RvLCBGaWx0cmFyL0xpbXBpYXIgZGUgbG9zIGh1YnMsXG4gICBBw7FhZGlyIHBlcnNvbmEvZGlyZWNjacOzbiBkZWwgZm9ybSBkZSBjbGllbnRlLCBNb3ZlciBhIGNhcnBldGEgZGUgYWRqdW50b3PigKYpLlxuXG4gICBDdWFsaWZpY2FkbyBwb3IgZWxlbWVudG8gcGFyYSBnYW5hciBlbiBlc3BlY2lmaWNpZGFkIGEgYC5idG5gICgwLDEsMSA+IDAsMSwwKS4gVmFcbiAgIGBsYWJlbGAgYWRlbcOhcyBkZSBgYWAvYGJ1dHRvbmAgcG9ycXVlIGhheSBib3RvbmVzIHF1ZSBzb24gYDxsYWJlbD5gIGVudm9sdmllbmRvIHVuIGlucHV0XG4gICBkZSBmaWNoZXJvIChsYSBzdWJpZGEgZGUgaW1hZ2VuIGRlIGxhIGZpY2hhIGRlIHByb2R1Y3RvKS4gTG9zIHZhbG9yZXMgc29uIGxvcyBtaXNtb3MgcXVlXG4gICBkZWNsYXJhIGVsIGNvbXBvbmVudGU6IGAuYnRuLXNtYCA9IHB4LTMgcHktMS41IHRleHQteHMsIGAuYnRuLWxnYCA9IHB4LTYgcHktMyB0ZXh0LWJhc2UuXG5cbiAgIE9qbyBzaSBhbGfDum4gZMOtYSBzZSB0b2NhOiBxdWllbiBxdWllcmEgdW4gdGFtYcOxbyBkaXN0aW50byBkZWwgZGUgZXN0YXMgY2xhc2VzIHRpZW5lIHF1ZVxuICAgc3ViaXIgZXNwZWNpZmljaWRhZCAocG9yIGVqZW1wbG8gYC5wcm9kdWN0LWltYWdlLWFjdGlvbnMgLmJ0bmAsIGVuIGNhdGFsb2dvLmNzcywgcXVlXG4gICBkZWphIGxvcyBib3RvbmVzIGRlIGxhIG1pbmlhdHVyYSBlbiAxMXB4IHkgc2lndWUgZ2FuYW5kbyBhIGVzdG8pLiAqL1xuYS5idG4tc20sIGJ1dHRvbi5idG4tc20sIGxhYmVsLmJ0bi1zbSB7IHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07IGZvbnQtc2l6ZTogdmFyKC0tdGV4dC14cyk7IH1cbmEuYnRuLWxnLCBidXR0b24uYnRuLWxnLCBsYWJlbC5idG4tbGcgeyBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTsgICBmb250LXNpemU6IHZhcigtLXRleHQtYmFzZSk7IH1cblxuLyogUsOzdHVsbyBkZSBwYW5lbDogY29tbyBgLnNlY3Rpb24tZmxvdy10aXRsZWAgcGVybyBTSU4gbGEgbMOtbmVhIHF1ZSBlc3RlIGRpYnVqYSBjb24gOjphZnRlciwgcXVlXG4gICBwZWdhZGEgYWwgdGV4dG8gcXVlZGFiYSBhcHJldGFkYS4gVmEgc2luIGxheWVyIHkgY3VhbGlmaWNhZG8gcG9yIGVsZW1lbnRvIHBvcnF1ZSBlbCBCb290c3RyYXBcbiAgIHVubGF5ZXJlZCBkZSBFYXN5QWRtaW4gaW1wb25lIHN1IGZvbnQtc2l6ZSBhIGxvcyA8aDI+LzxoMz4geSBzYWzDrWFuIGNvbW8gdGl0dWxhcmVzLiAqL1xuaDIucGFuZWwtdGl0bGUsIGgzLnBhbmVsLXRpdGxlLCBoNC5wYW5lbC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDI1ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2xhdGUtNjAwKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRhYmxhcyBmaWx0cmFibGVzL29yZGVuYWJsZXMgcG9yIEpTIChhc3NldHMvanMvc2hhcmVkL2NhdGFsb2dUYWJsZS5qcykuXG5cbiAgIGBjcmVhdGVDYXRhbG9nVGFibGVgIG1hcmNhIGxhcyBmaWxhcyBxdWUgbm8gY2FzYW4gY29uIGB0ci5pcy1oaWRkZW5gIHkgbGFcbiAgIGNvbHVtbmEgYWN0aXZhIGNvbiBgdGhbYXJpYS1zb3J0XWAuIEhhc3RhIGFob3JhIGxhcyBkb3MgcmVnbGFzIHZpdsOtYW5cbiAgIGN1YWxpZmljYWRhcyBwb3IgYC5jdGwtdGFibGVgIGVuIGNhdGFsb2dvLmNzcywgYXPDrSBxdWUgY3VhbHF1aWVyIHRhYmxhIHF1ZVxuICAgTk8gZnVlc2UgbGEgZGVsIGNhdMOhbG9nbyB2aWVqbyBzZSBxdWVkYWJhIHNpbiBlbGxhczogZWwgY29udGFkb3IgYmFqYWJhIHBlcm9cbiAgIGxhcyBmaWxhcyBzZWd1w61hbiBhIGxhIHZpc3RhLCB5IG9yZGVuYXIgbm8gbWFyY2FiYSBsYSBjb2x1bW5hLlxuXG4gICBWYW4gYXF1w60sIHVubGF5ZXJlZCB5IHBvciBlbGVtZW50bytjbGFzZSwgcG9ycXVlIGVsIEJvb3RzdHJhcCBkZSBFYXN5QWRtaW5cbiAgIGRlZmluZSBgdHJgL2B0aGAgc2luIGNhcGEgeSBsZSBnYW5hIGEgY3VhbHF1aWVyIHV0aWxpdHkgZGUgVGFpbHdpbmQgNC5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xudHIuaXMtaGlkZGVuIHsgZGlzcGxheTogbm9uZTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIGA8ZGlhbG9nPmAgbW9kYWwgY2VudHJhZG8uXG5cbiAgIEVsIG5hdmVnYWRvciBjZW50cmEgdW4gZGlhbG9nIG1vZGFsIGNvbiBgbWFyZ2luOiBhdXRvYCwgcGVybyBlbCBwcmVmbGlnaHQgZGVcbiAgIFRhaWx3aW5kIHBvbmUgYG1hcmdpbjogMGAgYSBUT0RPUyBsb3MgZWxlbWVudG9zIHkgc2UgbG8gY29tZTogZWwgZGnDoWxvZ29cbiAgIGFwYXJlY2UgcGVnYWRvIGEgbGEgZXNxdWluYSBzdXBlcmlvciBpenF1aWVyZGEuXG5cbiAgIGA6bW9kYWxgIGNhc2Egc29sbyBjb24gbG9zIGFiaWVydG9zIHBvciBgc2hvd01vZGFsKClgLCBxdWUgc29uIGp1c3RvIGxvcyBxdWVcbiAgIGVsIG5hdmVnYWRvciBjZW50cmE6IGxvcyBkZSBgc2hvdygpYCBzZSBxdWVkYW4gZG9uZGUgbG9zIGRlamUgc3UgbWFxdWV0YWNpw7NuLlxuICAgVmEgdW5sYXllcmVkIHBhcmEgZ2FuYXJsZSBhbCBwcmVmbGlnaHQuIGAuZGlhbG9nLWNlbnRyYWRvYCBzZSBjb25zZXJ2YSBwb3JxdWVcbiAgIHlhIGxhIGxsZXZhbiB2YXJpYXMgcGxhbnRpbGxhcy5cbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuZGlhbG9nOm1vZGFsLFxuZGlhbG9nLmRpYWxvZy1jZW50cmFkbyB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGluc2V0OiAwO1xufVxuXG50aC50aC1zb3J0YWJsZSwgc3Bhbi50aC1zb3J0YWJsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbnRoLnRoLXNvcnRhYmxlOjphZnRlciwgc3Bhbi50aC1zb3J0YWJsZTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdcXDIxOTUnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc2xhdGUtMzAwKTtcbiAgICBvcGFjaXR5OiAwLjY7XG59XG5cbnNwYW4udGgtc29ydGFibGU6aG92ZXI6OmFmdGVyLFxudGgudGgtc29ydGFibGU6aG92ZXI6OmFmdGVyICAgICAgICAgICAgICAgIHsgY29sb3I6IHZhcigtLWNvbG9yLXNsYXRlLTUwMCk7IG9wYWNpdHk6IDE7IH1cbnNwYW4udGgtc29ydGFibGVbYXJpYS1zb3J0PVwiYXNjZW5kaW5nXCJdOjphZnRlcixcbnRoLnRoLXNvcnRhYmxlW2FyaWEtc29ydD1cImFzY2VuZGluZ1wiXTo6YWZ0ZXIgIHsgY29udGVudDogJ1xcMjE5MSc7IGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlLTYwMCk7IG9wYWNpdHk6IDE7IH1cbnNwYW4udGgtc29ydGFibGVbYXJpYS1zb3J0PVwiZGVzY2VuZGluZ1wiXTo6YWZ0ZXIsXG50aC50aC1zb3J0YWJsZVthcmlhLXNvcnQ9XCJkZXNjZW5kaW5nXCJdOjphZnRlciB7IGNvbnRlbnQ6ICdcXDIxOTMnOyBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZS02MDApOyBvcGFjaXR5OiAxOyB9XG5cbi8qIEVsIGBzdW1tYXJ5YCBkZSBgLmZpZWxkLWNvbGxhcHNlYCBuZWNlc2l0YSBgZGlzcGxheTpmbGV4YCBwYXJhIGFsaW5lYXIgcsOzdHVsbywgaWNvbm8g4pOYIHkgZWxcbiAgIGRpc3BhcmFkb3IgZGUgXCJhYnJpciBlbiBncmFuZGVcIiBlbiB1bmEgZmlsYS4gRWwgQ1NTIHVubGF5ZXJlZCBkZSBFYXN5QWRtaW4gaW1wb25lXG4gICBgc3VtbWFyeSB7IGRpc3BsYXk6IGxpc3QtaXRlbSB9YCwgcXVlIGdhbmEgdGFudG8gYSBsYSBjYXBhIGRlIGNvbXBvbmVudGVzIGNvbW8gYSBsYSB1dGlsaXR5XG4gICBgZmxleGAgcXVlIGlueWVjdGEgZWwgSlMg4oCUIGVsIHLDs3R1bG8gc2Fsw61hIGVuIHRyZXMgbMOtbmVhcy4gQXF1w60sIHNpbiBsYXllciB5IGN1YWxpZmljYWRvIHBvclxuICAgZWxlbWVudG8sIG1hbmRhbW9zIG5vc290cm9zLiAqL1xuZGV0YWlscy5maWVsZC1jb2xsYXBzZSA+IHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKiBFbCByw7N0dWxvIGVudGVybyBlcyBlbCBkaXNwYXJhZG9yLCBhc8OtIHF1ZSB0aWVuZSBxdWUgcGFyZWNlcmxvOiBhbCBwYXNhciBwb3IgZW5jaW1hIHNlIHRpw7FlXG4gICBkZSBhenVsLCB5IGNvbiDDqWwgZWwgY2hldnJvbiwgcXVlIGhlcmVkYSBlbCBjb2xvci4gKi9cbmRldGFpbHMuZmllbGQtY29sbGFwc2UgPiBzdW1tYXJ5OmhvdmVyIHsgY29sb3I6IHZhcigtLWNvbG9yLWJsdWUtNzAwKTsgfVxuXG4vKiBgLnNlY3Rpb24tZmxvdy10aXRsZWAgZXN0w6EgcGVuc2FkYSBjb21vIHLDs3R1bG8gcGVxdWXDsW8gZW4gdmVyc2FsaXRhcywgcGVybyBzZSB1c2Egc29icmVcbiAgIDxoMj4vPGgzPiB5IGVsIEJvb3RzdHJhcCB1bmxheWVyZWQgZGUgRUEgbGVzIGltcG9uZSBzdSBmb250LXNpemU6IHNhbMOtYSBjb21vIHVuIHRpdHVsYXIuICovXG5oMi5zZWN0aW9uLWZsb3ctdGl0bGUsIGgzLnNlY3Rpb24tZmxvdy10aXRsZSwgaDQuc2VjdGlvbi1mbG93LXRpdGxlLFxubGFiZWwuc2VjdGlvbi1mbG93LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiBTb2JyZSB1biA8bGFiZWw+LCBlbCBSZWJvb3QgZGUgQm9vdHN0cmFwIGltcG9uZSBgZGlzcGxheTogaW5saW5lLWJsb2NrYCB5IHNlIGxsZXZhIHBvclxuICAgZGVsYW50ZSBlbCBgZmxleGAgZGUgbGEgY2xhc2U6IHNpbiDDqWwsIGVsIDo6YWZ0ZXIgcXVlIGRpYnVqYSBlbCBmaWxldGUgbm8gc2UgZXN0aXJhLiAqL1xubGFiZWwuc2VjdGlvbi1mbG93LXRpdGxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjVyZW07XG59XG5cbi8qIExvIG1pc21vIGNvbiB1biA8c3VtbWFyeT4sIHF1ZSBuYWNlIGBkaXNwbGF5OiBsaXN0LWl0ZW1gOiBzaW4gZXN0byBlbCBmaWxldGUgZGVsIDo6YWZ0ZXIgbm9cbiAgIHNlIGVzdGlyYSB5IGVsIHRyaWFuZ3VsaXRvIGRlbCBuYXZlZ2Fkb3Igc2UgY3VlbGEgZGVsYW50ZSBkZWwgY2hldnJvbi4gRXMgbG8gcXVlIHBlcm1pdGVcbiAgIHVzYXIgdW4gcsOzdHVsbyBkZSBzZWNjacOzbiBjb3JyaWVudGUgY29tbyBjYWJlY2VyYSBkZSB1biBgLmZvbGRgLiAqL1xuc3VtbWFyeS5zZWN0aW9uLWZsb3ctdGl0bGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNXJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbnN1bW1hcnkuc2VjdGlvbi1mbG93LXRpdGxlOjotd2Via2l0LWRldGFpbHMtbWFya2VyIHsgZGlzcGxheTogbm9uZTsgfVxuc3VtbWFyeS5zZWN0aW9uLWZsb3ctdGl0bGU6aG92ZXIgeyBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZS03MDApOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRWFzeUFkbWluIGRhdGFncmlkOiBib3TDs24gZGUgYWNjaW9uZXMgKHRyZXMgcHVudG9zKS5cblxuICAgRWwgdG9nZ2xlIGVzIHVuIDxhPiBpbmxpbmUtYnktZGVmYXVsdC4gQ29uIGVsIFNWRyBkZW50cm8sXG4gICBlbCBib3JkZXIgZGUgaG92ZXIgZW52dWVsdmUgZWwgY29udGVuaWRvIGNvbW8gdW5hIGNhamEgZGVcbiAgIGzDrW5lYSBpbmxpbmUsIGRlamFuZG8gdHJhem9zIHZpc2libGVzIHNvbG8gYXJyaWJhL2FiYWpvXG4gICBkZWwgaWNvbm8gY3VhbmRvIGhheSB3aGl0ZXNwYWNlIGFkeWFjZW50ZS4gRm9yemFtb3NcbiAgIGlubGluZS1mbGV4IGNvbiBkaW1lbnNpb25lcyBmaWphcyBwYXJhIHF1ZSBlbCBib3JkZXIgZGVcbiAgIGhvdmVyIHNlYSB1biByZWN0w6FuZ3VsbyBsaW1waW8gYWxyZWRlZG9yIGRlbCBpY29uby5cblxuICAgVGFtYmnDqW4gY29sb2NhbW9zIGVsIG1lbsO6IGRlc3BsZWdhYmxlIGEgbGEgaXpxdWllcmRhIGRlbFxuICAgYm90w7NuIChlbiBsdWdhciBkZSBiYWpvIMOpbCkgcG9ycXVlIGxhIGNvbHVtbmEgZGUgYWNjaW9uZXNcbiAgIHN1ZWxlIGVzdGFyIHBlZ2FkYSBhbCBib3JkZSBkZXJlY2hvIGRlIGxhIHRhYmxhLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uZGF0YWdyaWQgdGQuYWN0aW9ucy1hcy1kcm9wZG93biAuZHJvcGRvd24tYWN0aW9ucyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRhdGFncmlkIC5kcm9wZG93bi1hY3Rpb25zIC5kcm9wZG93bi10b2dnbGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMzJweDtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbn1cbi5kYXRhZ3JpZCAuZHJvcGRvd24tYWN0aW9ucyAuZHJvcGRvd24tdG9nZ2xlIHN2ZyB7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uZGF0YWdyaWQgdGQuYWN0aW9ucy1hcy1kcm9wZG93biAuZHJvcGRvd24tYWN0aW9ucyAuZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgaW5zZXQ6IDAgY2FsYygxMDAlICsgNnB4KSBhdXRvIGF1dG8gIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBFYXN5QWRtaW4gQm9vdHN0cmFwIHNoaXBzIHVubGF5ZXJlZCBgYTpob3ZlcnsuLi59YCBydWxlc1xuICAgKGJhY2tncm91bmQ6dmFyKC0tZ3JheS0xMDApOyBjb2xvcjp2YXIoLS1kcm9wZG93bi1saW5rLWNvbG9yKTsgLi4uKS5cbiAgIFRhaWx3aW5kIGhvdmVyIHV0aWxpdGllcyBsaXZlIGluc2lkZSBgQGxheWVyIHV0aWxpdGllc2Agc28gdGhlXG4gICB1bmxheWVyZWQgcnVsZXMgd2luLiBSZS1hc3NlcnQgdGhlIGZpbGxlZC1ob3ZlciB1dGlsaXRpZXMgaGVyZSxcbiAgIHVubGF5ZXJlZCwgd2l0aCAhaW1wb3J0YW50IG9uIGBjb2xvcmAgc28gdGhlIEx1Y2lkZSBTVkcgaW5zaWRlXG4gICAod2hpY2ggdXNlcyBzdHJva2U9Y3VycmVudENvbG9yKSBpcyBndWFyYW50ZWVkIHRvIGluaGVyaXQgd2hpdGUuXG4gICBQYXR0ZXJuOiBhZGQgbmV3IGNvbWJpbmF0aW9ucyBhcyB0aGUgZGVzaWduIHVzZXMgdGhlbS5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuYS5ob3ZlclxcOmJnLW5hdnktOTAwOmhvdmVyLFxuYnV0dG9uLmhvdmVyXFw6YmctbmF2eS05MDA6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLW5hdnktOTAwKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5hLmhvdmVyXFw6YmctbmF2eS04MDA6aG92ZXIsXG5idXR0b24uaG92ZXJcXDpiZy1uYXZ5LTgwMDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmF2eS04MDApICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cbmEuaG92ZXJcXDpiZy1ibHVlLTYwMDpob3ZlcixcbmJ1dHRvbi5ob3ZlclxcOmJnLWJsdWUtNjAwOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ibHVlLTYwMCkgIWltcG9ydGFudDtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuYS5ob3ZlclxcOmJnLWJsdWUtNzAwOmhvdmVyLFxuYnV0dG9uLmhvdmVyXFw6YmctYmx1ZS03MDA6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWUtNzAwKSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5hLmhvdmVyXFw6YmctY29yYWwtNjAwOmhvdmVyLFxuYnV0dG9uLmhvdmVyXFw6YmctY29yYWwtNjAwOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1jb3JhbC02MDApICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cbmEuaG92ZXJcXDpiZy1uYXZ5LTkwMDpob3ZlciBzdmcsXG5hLmhvdmVyXFw6YmctbmF2eS04MDA6aG92ZXIgc3ZnLFxuYS5ob3ZlclxcOmJnLWJsdWUtNjAwOmhvdmVyIHN2ZyxcbmEuaG92ZXJcXDpiZy1ibHVlLTcwMDpob3ZlciBzdmcsXG5hLmhvdmVyXFw6YmctY29yYWwtNjAwOmhvdmVyIHN2ZyxcbmJ1dHRvbi5ob3ZlclxcOmJnLW5hdnktOTAwOmhvdmVyIHN2ZyxcbmJ1dHRvbi5ob3ZlclxcOmJnLW5hdnktODAwOmhvdmVyIHN2ZyxcbmJ1dHRvbi5ob3ZlclxcOmJnLWJsdWUtNjAwOmhvdmVyIHN2ZyxcbmJ1dHRvbi5ob3ZlclxcOmJnLWJsdWUtNzAwOmhvdmVyIHN2ZyxcbmJ1dHRvbi5ob3ZlclxcOmJnLWNvcmFsLTYwMDpob3ZlciBzdmcge1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgc3Ryb2tlOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbmEuaG92ZXJcXDpib3JkZXItbmF2eS05MDA6aG92ZXIsXG5idXR0b24uaG92ZXJcXDpib3JkZXItbmF2eS05MDA6aG92ZXIgIHsgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1uYXZ5LTkwMCkgIWltcG9ydGFudDsgfVxuYS5ob3ZlclxcOmJvcmRlci1ibHVlLTYwMDpob3ZlcixcbmJ1dHRvbi5ob3ZlclxcOmJvcmRlci1ibHVlLTYwMDpob3ZlciAgeyBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJsdWUtNjAwKSAhaW1wb3J0YW50OyB9XG5hLmhvdmVyXFw6Ym9yZGVyLWNvcmFsLTYwMDpob3ZlcixcbmJ1dHRvbi5ob3ZlclxcOmJvcmRlci1jb3JhbC02MDA6aG92ZXIgeyBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWNvcmFsLTYwMCkgIWltcG9ydGFudDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGA8YT46aG92ZXJgIHRleHQtY29sb3IgdXRpbGl0aWVzLlxuICAgQm9vdHN0cmFwICh1bmxheWVyZWQpOiBgYTpob3ZlciB7IGNvbG9yOiB2YXIoLS1saW5rLWhvdmVyLWNvbG9yKSB9YFxuICAgZ2FuYSBzb2JyZSBgQGxheWVyIHV0aWxpdGllcyAuaG92ZXJcXDp0ZXh0LSo6aG92ZXJgLiBSZS1hc3NlcmFtb3NcbiAgIGxhcyBjb21iaW5hY2lvbmVzIHVzYWRhcyBlbiBhZG1pbiAoc29ydF90aCwgbGlua3MgZGUgc2VjY2lvbmVzLFxuICAgZXRjLikuIEHDsWFkaXIgYXF1w60gY3VhbmRvIHNlIHVzZSB1biBgaG92ZXI6dGV4dC1YLVlgIG51ZXZvIGVuIHVuIGA8YT5gLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5hLmhvdmVyXFw6dGV4dC1uYXZ5LTkwMDpob3ZlciAgeyBjb2xvcjogdmFyKC0tY29sb3ItbmF2eS05MDApOyB9XG5hLmhvdmVyXFw6dGV4dC1ibHVlLTUwMDpob3ZlciAgeyBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZS01MDApOyB9XG5hLmhvdmVyXFw6dGV4dC1ibHVlLTYwMDpob3ZlciAgeyBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZS02MDApOyB9XG5hLmhvdmVyXFw6dGV4dC1ibHVlLTcwMDpob3ZlciAgeyBjb2xvcjogdmFyKC0tY29sb3ItYmx1ZS03MDApOyB9XG5hLmhvdmVyXFw6dGV4dC1jb3JhbC02MDA6aG92ZXIgeyBjb2xvcjogdmFyKC0tY29sb3ItY29yYWwtNjAwKTsgfVxuYS5ob3ZlclxcOnRleHQtY29yYWwtNzAwOmhvdmVyIHsgY29sb3I6IHZhcigtLWNvbG9yLWNvcmFsLTcwMCk7IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBVdGlsaXRpZXMgZW4gZm9ybSBlbGVtZW50cy5cbiAgIEJvb3RzdHJhcCAodW5sYXllcmVkKTogYGJ1dHRvbiwgaW5wdXQsIG9wdGdyb3VwLCBzZWxlY3QsIHRleHRhcmVhXG4gICB7IGZvbnQtZmFtaWx5OiBpbmhlcml0OyBmb250LXNpemU6IGluaGVyaXQ7IGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICBtYXJnaW46IDAgfWAuIE1hdGEgYG10LSpgLCBgdGV4dC0qYCAoc2l6ZSksIGBmb250LSpgIHkgYGxlYWRpbmctKmBcbiAgIHNpbGVuY2lvc2FtZW50ZS4gUmUtYXNlcmFtb3MgbGFzIGNvbWJpbmFjaW9uZXMgdXNhZGFzIGVuIGFkbWluLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIG1hcmdpbi10b3AgKi9cbmlucHV0Lm10LTEsICAgIHNlbGVjdC5tdC0xLCAgICB0ZXh0YXJlYS5tdC0xLCAgICBidXR0b24ubXQtMSAgICB7IG1hcmdpbi10b3A6IDAuMjVyZW07IH1cbmlucHV0Lm10LTFcXC41LCBzZWxlY3QubXQtMVxcLjUsIHRleHRhcmVhLm10LTFcXC41LCBidXR0b24ubXQtMVxcLjUgeyBtYXJnaW4tdG9wOiAwLjM3NXJlbTsgfVxuaW5wdXQubXQtMiwgICAgc2VsZWN0Lm10LTIsICAgIHRleHRhcmVhLm10LTIsICAgIGJ1dHRvbi5tdC0yICAgIHsgbWFyZ2luLXRvcDogMC41cmVtOyB9XG5cbi8qIGZvbnQtc2l6ZSArIGxpbmUtaGVpZ2h0IChtaXNtbyBwYXIgcXVlIGxhcyB1dGlsaXRpZXMgVGFpbHdpbmQgNCkgKi9cbmlucHV0LnRleHQteHMsICAgc2VsZWN0LnRleHQteHMsICAgdGV4dGFyZWEudGV4dC14cywgICBidXR0b24udGV4dC14cyAgIHsgZm9udC1zaXplOiAwLjc1cmVtOyAgbGluZS1oZWlnaHQ6IDFyZW07IH1cbmlucHV0LnRleHQtc20sICAgc2VsZWN0LnRleHQtc20sICAgdGV4dGFyZWEudGV4dC1zbSwgICBidXR0b24udGV4dC1zbSAgIHsgZm9udC1zaXplOiAwLjg3NXJlbTsgbGluZS1oZWlnaHQ6IDEuMjVyZW07IH1cbmlucHV0LnRleHQtYmFzZSwgc2VsZWN0LnRleHQtYmFzZSwgdGV4dGFyZWEudGV4dC1iYXNlLCBidXR0b24udGV4dC1iYXNlIHsgZm9udC1zaXplOiAxcmVtOyAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTsgfVxuXG4vKiBmb250LWZhbWlseSAqL1xuaW5wdXQuZm9udC1tb25vLCBzZWxlY3QuZm9udC1tb25vLCB0ZXh0YXJlYS5mb250LW1vbm8sIGJ1dHRvbi5mb250LW1vbm8geyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgfVxuXG4vKiBmb250LXdlaWdodCAqL1xuaW5wdXQuZm9udC1tZWRpdW0sICAgc2VsZWN0LmZvbnQtbWVkaXVtLCAgIHRleHRhcmVhLmZvbnQtbWVkaXVtLCAgIGJ1dHRvbi5mb250LW1lZGl1bSAgIHsgZm9udC13ZWlnaHQ6IDUwMDsgfVxuaW5wdXQuZm9udC1zZW1pYm9sZCwgc2VsZWN0LmZvbnQtc2VtaWJvbGQsIHRleHRhcmVhLmZvbnQtc2VtaWJvbGQsIGJ1dHRvbi5mb250LXNlbWlib2xkIHsgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGA8ZmllbGRzZXQ+YCBkZWZhdWx0IEVBIGJhY2tncm91bmQuXG4gICBFQSBhcHAuY3NzICh1bmxheWVyZWQpOiBgZmllbGRzZXQgeyBiYWNrZ3JvdW5kOiB2YXIoLS1maWVsZHNldC1iZyk7IC4uLiB9YFxuICAgKC0tZmllbGRzZXQtYmcgPSAjZjVmN2ZhKSBnYW5hIHNvYnJlIEBsYXllciB1dGlsaXRpZXMgYC5iZy10cmFuc3BhcmVudGAuXG4gICBSZS1hc2VyYW1vcyBwYXJhIHF1ZSBgYmctdHJhbnNwYXJlbnRgIGZ1bmNpb25lIGVuIGZpZWxkc2V0cyBkZSBlZGl0b3Jlcy5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuZmllbGRzZXQuYmctdHJhbnNwYXJlbnQgeyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJhZGdlOiBCb290c3RyYXAgKEVhc3lBZG1pbiwgdW5sYXllcmVkKSB0cmFlIGAuYmFkZ2V7ZGlzcGxheTppbmxpbmUtYmxvY2t9YFxuICAgcXVlIHZlbmNlIGEgbnVlc3RybyBgQGxheWVyIGNvbXBvbmVudHMgLmJhZGdle2Rpc3BsYXk6aW5saW5lLWZsZXh9YCAoY3VhbHF1aWVyXG4gICByZWdsYSBzaW4gY2FwYSBnYW5hIGEgdW5hIGNvbiBjYXBhKS4gQ29tbyBlbCBpY29ubyBMdWNpZGUgZXMgdW4gPHN2Zz4gZW4gYmxvcXVlLFxuICAgc2luIGVsIGlubGluZS1mbGV4IGVsIGljb25vIHkgZWwgdGV4dG8gY2FlbiBlbiBsw61uZWFzIGRpc3RpbnRhcy4gUmVhZmlybWFtb3MgZWxcbiAgIGxheW91dCBjb24gTUFZT1IgZXNwZWNpZmljaWRhZCAoYHNwYW4uYmFkZ2VgID4gYC5iYWRnZWApIHBhcmEgZ2FuYXIgcGFzZSBsbyBxdWVcbiAgIHBhc2UgY29uIGVsIG9yZGVuIGRlIGNhcmdhLiBUb2RvcyBudWVzdHJvcyBiYWRnZXMgc29uIDxzcGFuIGNsYXNzPVwiYmFkZ2VcIj4uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbnNwYW4uYmFkZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjI1cmVtO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPYnNlcnZhY2lvbmVzIGRlIHRyYW5zcG9ydGU6IGxhIHJlZ2xhIGAudGFibGUtY29tcGFjdCB0Ym9keSB0ZGBcbiAgIChlbiBAbGF5ZXIgY29tcG9uZW50cykgZnVlcnphIHdoaXRlLXNwYWNlOiBub3dyYXAsIGxvIHF1ZSBlc3RpcmFiYSBsYVxuICAgY29sdW1uYSB5IG9ibGlnYWJhIGEgc2Nyb2xsIGhvcml6b250YWwuIEVzdGEgcmVnbGEgU0lOIGxheWVyIGdhbmEgc29icmVcbiAgIGN1YWxxdWllciBAbGF5ZXIsIHBlcm1pdGllbmRvIHF1ZSBsYSBjZWxkYSBwYXJ0YSBlbiB2YXJpYXMgbMOtbmVhcyBjb24gdW5cbiAgIGFuY2hvIG3DoXhpbW8uIEFwbGljYXIgbGEgY2xhc2UgYG9icy13cmFwYCBhIGxhIGNlbGRhIGRlIG9ic2VydmFjaW9uZXMuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi50YWJsZS1jb21wYWN0IHRib2R5IHRkLm9icy13cmFwIHtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgIG1heC13aWR0aDogMjYwcHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVG9tU2VsZWN0OiBkZXNwbGVnYWJsZSBxdWUgc2UgYWJyZSBIQUNJQSBBUlJJQkEgY3VhbmRvIG5vIGhheSBzaXRpb1xuICAgZGViYWpvIChjbGFzZSBhw7FhZGlkYSBwb3Igc2hhcmVkL3RvbXNlbGVjdERyb3Bkb3duRml4LmpzKS4gVmEgU0lOIEBsYXllclxuICAgcGFyYSBnYW5hciBhIGxhIHJlZ2xhIGJhc2UgYC50cy1kcm9wZG93bmAgZGUgdG9tLXNlbGVjdCwgcXVlIGVzIHVubGF5ZXJlZDpcbiAgIHVuYSByZWdsYSBkZW50cm8gZGUgQGxheWVyIHBlcmRlcsOtYSBlbCBjYXNjYWRlIGF1bnF1ZSB0dXZpZXJhIG3DoXNcbiAgIGVzcGVjaWZpY2lkYWQuIEVsIEpTIGFkZW3DoXMgbGltaXRhIGxhIGFsdHVyYSBwYXJhIHF1ZSBsYSBsaXN0YSBxdWVwYSBlblxuICAgcGFudGFsbGEgeSBoYWdhIHNjcm9sbCBpbnRlcm5vLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udHMtZHJvcGRvd24udHMtZHJvcGRvd24tLXVwIHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbjogMCAwIDAuMjVyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkMGQwZDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMCBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gMC4yNXJlbSAwIDA7XG59XG5cbi8qIEFtcGxpYW1vcyBlbCBhbHRvIHBvciBkZWZlY3RvIGRlbCBwb3B1cCBkZSBUb21TZWxlY3QgKGxhIGJhc2UgYm9vdHN0cmFwNCBsb1xuICAgZGVqYSBlbiAyMDBweCwgfjcgb3BjaW9uZXMpIHBhcmEgcXVlIGRlIHByaW1lcmFzIHNlIHZlYSB1bmEgbGlzdGEgbcOhcyBsYXJnYVxuICAgKH4xMCBvcGNpb25lcykgeSBoYWdhIGZhbHRhIG1lbm9zIHNjcm9sbC4gVXNhbW9zIERPUyBjbGFzZXMgYSBwcm9ww7NzaXRvOiBsYVxuICAgcmVnbGEgYmFzZSBkZSB0b20tc2VsZWN0IGVzIGAudHMtZHJvcGRvd24tY29udGVudGAgKHVuYSBzb2xhIGNsYXNlKSB5IHN1IGhvamFcbiAgIHNlIGNhcmdhIERFU1BVw4lTIHF1ZSBkZXNpZ24tc3lzdGVtLmNzcywgYXPDrSBxdWUgY29uIHVuIMO6bmljbyBgLnRzLWRyb3Bkb3duLWNvbnRlbnRgXG4gICBwZXJkZXLDrWFtb3MgcG9yIG9yZGVuIGRlIGNhc2NhZGE7IGNvbiBgLnRzLWRyb3Bkb3duIC50cy1kcm9wZG93bi1jb250ZW50YCBnYW5hbW9zXG4gICBwb3IgZXNwZWNpZmljaWRhZCwgaWd1YWwgcXVlIGhhY2UgbGEgcmVnbGEgYC50cy1kcm9wZG93bi0tdXBgIGRlIGFycmliYS5cbiAgIHRvbXNlbGVjdERyb3Bkb3duRml4LmpzIGxlZSBlc3RlIHZhbG9yIGNvbW8gdG9wZSB5IHNvbG8gbG8gcmVjb3J0YSBzaSBubyBjYWJlIGVuXG4gICBlbCB2aWV3cG9ydCwgYXPDrSBxdWUgbnVuY2Egc2Ugc2FsZSBkZSBwYW50YWxsYS4gKi9cbi50cy1kcm9wZG93biAudHMtZHJvcGRvd24tY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogMzAwcHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ2hpcCBkZSBhcmNoaXZvIOKAlCBsYSBmaWxhIGRlIFVOQSBsaXN0YSBkZSBhZGp1bnRvcy5cbiAgIExhIHBpbnRhIHNoYXJlZC9maWxlQ2hpcC5qcyB5IGxhIGNvbXBhcnRlbiBlbCByZWRhY3RvciBmbG90YW50ZSwgbGEgbGlzdGEgZGVcbiAgIGFkanVudG9zIGF1dG9tw6F0aWNvcyBkZSB1biBkb2N1bWVudG8sIGVsIHNlbGVjdG9yIGRlIGFyY2hpdm9zIGRlIGxhIGFwcCB5IGVsXG4gICBwYW5lbCBkZSBhZGp1bnRvcyBkZSB1biBjb3JyZW8gcmVjaWJpZG8uXG5cbiAgIENTUyBwbGFubyB5IHNpbiBAbGF5ZXIgYSBwcm9ww7NzaXRvLCBwb3IgZG9zIG1vdGl2b3M6XG4gICAgIDEuIEVsIGVzY8OhbmVyIGRlIFRhaWx3aW5kIDQgbm8gdmUgY2xhc2VzIGNvbnN0cnVpZGFzIGRlc2RlIEpTLCBhc8OtIHF1ZSBsYXNcbiAgICAgICAgdXRpbGl0aWVzIGVxdWl2YWxlbnRlcyBwb2Ryw61hbiBubyBlbWl0aXJzZSAodmVyIGVsIGJsb3F1ZSBgQHNvdXJjZSBpbmxpbmVgXG4gICAgICAgIGRlIGxhIGNhYmVjZXJhIGRlIGVzdGUgYXJjaGl2bykuXG4gICAgIDIuIEJvb3RzdHJhcCBkZSBFYXN5QWRtaW4gdmllbmUgc2luIGNhcGEgeSBnYW5hcsOtYSBhIHVuIEBsYXllciBjb21wb25lbnRzLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uZmlsZS1jaGlwLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuMzc1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uZmlsZS1jaGlwLWxpc3QuaXMtZW1wdHkgeyBnYXA6IDA7IH1cblxuLmZpbGUtY2hpcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBwYWRkaW5nOiAwLjM3NXJlbSAwLjYyNXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRTJFOEYwO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDsgICAgICAgICAgICAgICAvKiByb3VuZGVkLW1kOiBsZW5ndWFqZSBkZSBib3JkZXMgZGVsIHNpc3RlbWEgKi9cbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG4uZmlsZS1jaGlwLWNsaWNrYWJsZSB7IGN1cnNvcjogcG9pbnRlcjsgfVxuLmZpbGUtY2hpcC1jbGlja2FibGU6aG92ZXIgeyBib3JkZXItY29sb3I6ICM5M0M1RkQ7IGJhY2tncm91bmQ6ICNGOEZBRkM7IH1cblxuLmZpbGUtY2hpcC1pY29uIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDFyZW07XG4gICAgY29sb3I6ICM5NEEzQjg7XG59XG4uZmlsZS1jaGlwLW5hbWUge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgY29sb3I6ICMzMzQxNTU7XG59XG4uZmlsZS1jaGlwLW1ldGEge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBjb2xvcjogIzY0NzQ4Qjtcbn1cbi5maWxlLWNoaXAtYnRuIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxLjVyZW07XG4gICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogIzk0QTNCODtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzLCBjb2xvciAwLjJzO1xufVxuLmZpbGUtY2hpcC1idG46aG92ZXIgeyBiYWNrZ3JvdW5kOiAjRjFGNUY5OyBjb2xvcjogI0MyNDEwQzsgfVxuLmZpbGUtY2hpcC1idG4tcmVzdG9yZTpob3ZlciB7IGJhY2tncm91bmQ6ICNFMkU4RjA7IGNvbG9yOiAjMUQ0RUQ4OyB9XG5cbi8qIFF1aXRhZG8gZGUgRVNURSBlbnbDrW86IHNpZ3VlIGV4aXN0aWVuZG8gZW4gZWwgZXhwZWRpZW50ZSwgc29sbyBubyB2aWFqYS4gKi9cbi5maWxlLWNoaXAtb2ZmIHsgYmFja2dyb3VuZDogI0Y4RkFGQzsgb3BhY2l0eTogMC42OyB9XG4uZmlsZS1jaGlwLW9mZiAuZmlsZS1jaGlwLW5hbWUgeyB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDsgfVxuLmZpbGUtY2hpcC1vZmYgLmZpbGUtY2hpcC1tZXRhIHsgY29sb3I6ICM5NEEzQjg7IH1cblxuLmZpbGUtY2hpcC1wZW5kaW5nIHsgb3BhY2l0eTogMC42OyB9XG4uZmlsZS1jaGlwLWVycm9yIHsgYm9yZGVyLWNvbG9yOiAjRkNBNUE1OyBiYWNrZ3JvdW5kOiAjRkVGMkYyOyB9XG4uZmlsZS1jaGlwLWVycm9yIC5maWxlLWNoaXAtaWNvbiB7IGNvbG9yOiAjREMyNjI2OyB9XG5cbi5maWxlLWNoaXAtbm90ZSB7XG4gICAgcGFkZGluZzogMCAwLjEyNXJlbTtcbiAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICBjb2xvcjogIzk0QTNCODtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmZpbGUtY2hpcC1ub3RlLmlzLWVycm9yIHsgY29sb3I6ICNEQzI2MjY7IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBBZGp1bnRvcyBkZSB1biBtZW5zYWplIHJlY2liaWRvIOKAlCBwaWUgZXN0aWxvIEdtYWlsLlxuICAgTG8gcGludGEgc2hhcmVkL3RocmVhZE1lc3NhZ2UuanMgYWwgRklOQUwgZGUgY2FkYSBtZW5zYWplOiByZWppbGxhIGRlIHRhcmpldGFzXG4gICBjb24gcHJldmlzdWFsaXphY2nDs24gcmVhbCAobWluaWF0dXJhIHBhcmEgaW3DoWdlbmVzLCBwcmltZXJhIHDDoWdpbmEgcGFyYSBQREYpLFxuICAgZW4gdmV6IGRlIGxhIHRpcmEgZGUgY2hpcHMgY3VhZHJhZG9zIHF1ZSBoYWLDrWEgYW50ZXMuXG4gICBDU1MgcGxhbm8gcG9yIGxvIG1pc21vIHF1ZSBlbCBjaGlwIGRlIGFyY2hpdm8gKHZlciBibG9xdWUgYW50ZXJpb3IpLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ubXNnLWF0dHMge1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMC44NzVyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNGMUY1Rjk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNDgsIDI1MCwgMjUyLCAwLjYpO1xufVxuLm1zZy1hdHRzLWhlYWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuMzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICAgIGNvbG9yOiAjOTRBM0I4O1xufVxuLm1zZy1hdHRzLWhlYWQtaWNvbiB7IHdpZHRoOiAwLjg3NXJlbTsgaGVpZ2h0OiAwLjg3NXJlbTsgfVxuXG4ubXNnLWF0dHMtZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgxMXJlbSwgMWZyKSk7XG4gICAgZ2FwOiAwLjYyNXJlbTtcbn1cblxuLm1zZy1hdHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRTJFOEYwO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7ICAgICAgICAgICAgICAvKiByb3VuZGVkLWxnOiBlcyB1bmEgdGFyamV0YSwgbm8gdW4gY29udHJvbCAqL1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMsIGJveC1zaGFkb3cgMC4ycztcbn1cbmJ1dHRvbi5tc2ctYXR0IHsgY3Vyc29yOiBwb2ludGVyOyBmb250OiBpbmhlcml0OyB9XG5idXR0b24ubXNnLWF0dDpob3ZlcixcbmJ1dHRvbi5tc2ctYXR0OmZvY3VzLXZpc2libGUge1xuICAgIGJvcmRlci1jb2xvcjogIzkzQzVGRDtcbiAgICBib3gtc2hhZG93OiAwIDRweCAxNHB4IC00cHggcmdiYSgxMSwgMzEsIDc3LCAwLjE4KTtcbn1cblxuLm1zZy1hdHQtdGh1bWIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYXNwZWN0LXJhdGlvOiA0IC8gMztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6ICNGOEZBRkM7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGMUY1Rjk7XG59XG4ubXNnLWF0dC10aHVtYiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi8qIE1pZW50cmFzIGJhamEgbGEgbWluaWF0dXJhOiBiYXJyaWRvIHN1YXZlIGVuIHZleiBkZSB1biByZWN0w6FuZ3VsbyBncmlzIHF1ZVxuICAgcGFyZWNlIHVuIGFkanVudG8gcm90by4gVW4gYWRqdW50byBkZSB2YXJpb3MgTUIgdGFyZGEgbG8gc3V5by4gKi9cbi5tc2ctYXR0LXRodW1iLmlzLWxvYWRpbmcge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMDBkZWcsICNGMUY1RjkgMzAlLCAjRTJFOEYwIDUwJSwgI0YxRjVGOSA3MCUpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjIwJSAxMDAlO1xuICAgIGFuaW1hdGlvbjogbXNnLWF0dC1zaGltbWVyIDEuNHMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG4ubXNnLWF0dC10aHVtYi5pcy1sb2FkaW5nIGltZyB7IG9wYWNpdHk6IDA7IH1cbkBrZXlmcmFtZXMgbXNnLWF0dC1zaGltbWVyIHtcbiAgICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMTIwJSAwOyB9XG4gICAgdG8geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwJSAwOyB9XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgIC5tc2ctYXR0LXRodW1iLmlzLWxvYWRpbmcgeyBhbmltYXRpb246IG5vbmU7IH1cbn1cbi5tc2ctYXR0LXRodW1iIGlmcmFtZSB7XG4gICAgLyogTcOhcyBhbmNobyBxdWUgZWwgaHVlY28gYSBwcm9ww7NzaXRvOiBlbCB2aXNvciBkZSBQREYgZGUgQ2hyb21lIHBpbnRhIHN1IGJhcnJhXG4gICAgICAgZGUgc2Nyb2xsIGlnbm9yYW5kbyBgc2Nyb2xsYmFyPTBgLCB5IGFzw60gcXVlZGEgcmVjb3J0YWRhIHBvciBlbCBvdmVyZmxvdyBkZWxcbiAgICAgICBjb250ZW5lZG9yIGVuIHZleiBkZSBhZmVhciBsYSBtaW5pYXR1cmEuICovXG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7ICAgICAgICAgICAgIC8qIGxhIHRhcmpldGEgZW50ZXJhIGVzIGVsIGNsaWMsIG5vIGVsIHZpc29yICovXG59XG4vKiBDYXBhIHRyYW5zcGFyZW50ZSBzb2JyZSBlbCBpZnJhbWUgZGVsIFBERjogc2luIGVsbGEsIGVsIHZpc29yIHNlIHRyYWdhIGVsIGNsaWNcbiAgIGVuIGFsZ3Vub3MgbmF2ZWdhZG9yZXMgYXVucXVlIGVsIGlmcmFtZSB0ZW5nYSBwb2ludGVyLWV2ZW50czpub25lLiAqL1xuLm1zZy1hdHQtdGh1bWItc2hpZWxkIHsgcG9zaXRpb246IGFic29sdXRlOyBpbnNldDogMDsgfVxuLm1zZy1hdHQtaWNvbiB7IHdpZHRoOiAycmVtOyBoZWlnaHQ6IDJyZW07IGNvbG9yOiAjQ0JENUUxOyB9XG5cbi5tc2ctYXR0LWZvb3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIGdhcDogMC4zNzVyZW07XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIHBhZGRpbmc6IDAuNDM3NXJlbSAwLjU2MjVyZW07XG59XG4ubXNnLWF0dC1uYW1lIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBjb2xvcjogIzMzNDE1NTtcbn1cbi5tc2ctYXR0LXNpemUge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGNvbG9yOiAjOTRBM0I4O1xufVxuXG4ubXNnLWF0dC1kb3dubG9hZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC4zNzVyZW07XG4gICAgcmlnaHQ6IDAuMzc1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEuNzVyZW07XG4gICAgaGVpZ2h0OiAxLjc1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTIpO1xuICAgIGNvbG9yOiAjNDc1NTY5O1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDRweCByZ2JhKDE1LCAyMywgNDIsIDAuMTQpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG4ubXNnLWF0dC1kb3dubG9hZCBzdmcgeyB3aWR0aDogMC44NzVyZW07IGhlaWdodDogMC44NzVyZW07IH1cbi5tc2ctYXR0OmhvdmVyIC5tc2ctYXR0LWRvd25sb2FkLFxuLm1zZy1hdHQ6Zm9jdXMtd2l0aGluIC5tc2ctYXR0LWRvd25sb2FkIHsgb3BhY2l0eTogMTsgfVxuLm1zZy1hdHQtZG93bmxvYWQ6aG92ZXIgeyBiYWNrZ3JvdW5kOiB3aGl0ZTsgY29sb3I6ICMxRDRFRDg7IH1cbi8qIFNpbiBob3ZlciAodMOhY3RpbCkgZWwgYm90w7NuIHNlcsOtYSBpbmFsY2FuemFibGU6IGFow60gc2UgZGVqYSBzaWVtcHJlIHZpc2libGUuICovXG5AbWVkaWEgKGhvdmVyOiBub25lKSB7XG4gICAgLm1zZy1hdHQtZG93bmxvYWQgeyBvcGFjaXR5OiAxOyB9XG59XG5cbi8qIFZhcmlhbnRlIGNvbXBhY3RhOiBlbCBsZWN0b3IgZGVsIGVkaXRvciBkZSBkb2N1bWVudG8gdGllbmUgcG9jbyBhbHRvLCBhc8OtIHF1ZVxuICAgYWjDrSBsb3MgYWRqdW50b3Mgc2lndWVuIHNpZW5kbyBjaGlwcyBlbiBsw61uZWEuICovXG4ubXNnLWF0dHMtY29tcGFjdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAwLjM3NXJlbTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbn1cbi5tc2ctYXR0LWNoaXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjI1cmVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgY29sb3I6ICM0NzU1Njk7XG59XG5hLm1zZy1hdHQtY2hpcDpob3ZlciB7IGJvcmRlci1jb2xvcjogIzkzQzVGRDsgY29sb3I6ICMxRDRFRDg7IH1cbi5tc2ctYXR0LWNoaXAtbmFtZSB7IG92ZXJmbG93OiBoaWRkZW47IHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4ubXNnLWF0dC1jaGlwLXNpemUgeyBjb2xvcjogIzk0QTNCODsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFZpc3RhIHByZXZpYSBkZSB1biBhZGp1bnRvICg8ZGlhbG9nPiBkZWwgdG9wIGxheWVyLCBzb2JyZSBlbCBkb2NrIGZsb3RhbnRlKS5cbiAgIGBtYXJnaW46YXV0bzsgaW5zZXQ6MGAgcG9ycXVlIGVsIHByZWZsaWdodCBkZSBUYWlsd2luZCBwb25lIG1hcmdpbjowIGEgdG9kbyB5XG4gICB1biA8ZGlhbG9nPiBtb2RhbCBhY2FiYXLDrWEgcGVnYWRvIGFycmliYSBhIGxhIGl6cXVpZXJkYS5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuZGlhbG9nLmF0dC1kaWFsb2cge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBpbnNldDogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IG1pbig5NHZ3LCA2OHJlbSk7XG4gICAgbWF4LWhlaWdodDogOTJ2aDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgMjRweCA3MHB4IC0xMnB4IHJnYmEoMTEsIDMxLCA3NywgMC40NSk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5kaWFsb2cuYXR0LWRpYWxvZzpub3QoW29wZW5dKSB7IGRpc3BsYXk6IG5vbmU7IH1cbmRpYWxvZy5hdHQtZGlhbG9nOjpiYWNrZHJvcCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxMSwgMzEsIDc3LCAwLjU1KTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNHB4KTtcbn1cbi5hdHQtZGlhbG9nLWhlYWQge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNzVyZW07XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC44NzVyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFMkU4RjA7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG59XG4uYXR0LWRpYWxvZy10aXRsZSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMwQjFGNEQ7XG59XG4uYXR0LWRpYWxvZy1jb3VudCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGNvbG9yOiAjOTRBM0I4O1xufVxuLmF0dC1kaWFsb2ctdG9vbHMge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjM3NXJlbTtcbn1cbi5hdHQtZGlhbG9nLW5hdixcbi5hdHQtZGlhbG9nLWNsb3NlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAycmVtO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjNjQ3NDhCO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMsIGNvbG9yIDAuMnM7XG59XG4uYXR0LWRpYWxvZy1uYXYgc3ZnLFxuLmF0dC1kaWFsb2ctY2xvc2Ugc3ZnIHsgd2lkdGg6IDFyZW07IGhlaWdodDogMXJlbTsgfVxuLmF0dC1kaWFsb2ctbmF2OmhvdmVyLFxuLmF0dC1kaWFsb2ctY2xvc2U6aG92ZXIgeyBiYWNrZ3JvdW5kOiAjRTJFOEYwOyBjb2xvcjogIzBCMUY0RDsgfVxuLmF0dC1kaWFsb2ctbmF2LmlzLWhpZGRlbiB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLmF0dC1kaWFsb2ctYm9keSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiAjRjhGQUZDO1xufVxuLmF0dC1kaWFsb2ctaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxcmVtO1xufVxuLmF0dC1kaWFsb2ctaW1hZ2UgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogNzh2aDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYm94LXNoYWRvdzogMCAycHggMTBweCByZ2JhKDE1LCAyMywgNDIsIDAuMTIpO1xufVxuLmF0dC1kaWFsb2ctZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogODB2aDtcbiAgICBib3JkZXI6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4uYXR0LWRpYWxvZy1lbXB0eSB7XG4gICAgcGFkZGluZzogM3JlbSAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGNvbG9yOiAjNjQ3NDhCO1xufVxuLmF0dC1kaWFsb2ctZW1wdHktaWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDIuNXJlbTtcbiAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0byAwLjc1cmVtO1xuICAgIGNvbG9yOiAjQ0JENUUxO1xufVxuLmF0dC1kaWFsb2ctZW1wdHkgcCB7IG1hcmdpbjogMCAwIDFyZW07IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBWaXN0YSBwcmV2aWEgZGUgRXhjZWwgeSBXb3JkIChzaGFyZWQvb2ZmaWNlUHJldmlldy5qcykuXG4gICBTb2xvIGVsIGh1ZWNvOiBlbCBkb2N1bWVudG8gY29udmVydGlkbyBzZSBwaW50YSBERU5UUk8gZGVsIGlmcmFtZSwgY29uIHN1IHByb3BpYVxuICAgaG9qYSBkZSBlc3RpbG8sIHBvcnF1ZSB2YSBlbiB1biBgc3JjZG9jYCBlbiBzYW5kYm94IHkgbm8gaGVyZWRhIG5hZGEgZGUgYXF1w60uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5vcC1mcmFtZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cbi5hdHQtZGlhbG9nLWJvZHkgLm9wLWZyYW1lIHsgaGVpZ2h0OiA4MHZoOyB9XG4vKiBFbCBodWVjbyBkZWwgZG9jayBjZW50cmEgc3UgY29udGVuaWRvOyBlbCBpZnJhbWUgdGllbmUgcXVlIGVzdGlyYXJzZSBpZ3VhbG1lbnRlLiAqL1xuLmRvY2stcHJldmlldy1ib2R5IC5vcC1mcmFtZSB7IGZsZXg6IDEgMSBhdXRvOyBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG4ub3AtbXNnIHtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgY29sb3I6ICM2NDc0OEI7XG59XG4ub3AtbXNnIHAgeyBtYXJnaW46IDA7IH1cbi5vcC1tc2ctbGluayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogIzFENEVEODtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTZWxlY3RvciBcIkFkanVudGFyIGRlc2RlIGxhIGFwcFwiIChzaGFyZWQvYXBwRmlsZXNEaWFsb2cuanMpLlxuICAgU2UgYXBveWEgZW4gZWwgY2hhc2lzIGRlIGBkaWFsb2cucGlja2VyLWRpYWxvZ2AgKGNhYmVjZXJhICsgY3VlcnBvIGNvbiBzY3JvbGwpIHlcbiAgIGHDsWFkZSBiYXJyYSBkZSBjb250ZXh0bywgcGVzdGHDsWFzLCBsaXN0YSB5IHBpZS4gQ1NTIHBsYW5vOiBsbyBwaW50YSBKUy5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuZGlhbG9nLmFwcC1maWxlcy1kaWFsb2cgeyB3aWR0aDogbWluKDkydncsIDQ2cmVtKTsgfVxuXG4uYXBwLWZpbGVzLWNvbnRleHQge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxLjRmciAxZnI7XG4gICAgZ2FwOiAwLjc1cmVtO1xuICAgIHBhZGRpbmc6IDAuODc1cmVtIDEuNXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBiYWNrZ3JvdW5kOiAjRjhGQUZDO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgLmFwcC1maWxlcy1jb250ZXh0IHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbn1cbi5hcHAtZmlsZXMtY3R4LWZpZWxkIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAwLjI1cmVtOyBtaW4td2lkdGg6IDA7IH1cbi5hcHAtZmlsZXMtY3R4LWxhYmVsIHtcbiAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgICBjb2xvcjogIzY0NzQ4Qjtcbn1cbi5hcHAtZmlsZXMtY3R4LWlucHV0IHsgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jazsgfVxuLmFwcC1maWxlcy1kaWFsb2cgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi5hcHAtZmlsZXMtZGlhbG9nIHNlbGVjdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAyLjI1cmVtO1xuICAgIHBhZGRpbmc6IDAgMC42MjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0NCRDVFMTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBjb2xvcjogIzBGMTcyQTtcbn1cbi5hcHAtZmlsZXMtZGlhbG9nIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXG4uYXBwLWZpbGVzLWRpYWxvZyBzZWxlY3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjM0I4MkY2O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDU5LCAxMzAsIDI0NiwgMC4xOCk7XG59XG4uYXBwLWZpbGVzLWRpYWxvZyBzZWxlY3Q6ZGlzYWJsZWQgeyBiYWNrZ3JvdW5kOiAjRjFGNUY5OyBjb2xvcjogIzk0QTNCODsgfVxuXG4uYXBwLWZpbGVzLXN1Z2dlc3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA1O1xuICAgIHRvcDogY2FsYygxMDAlICsgMC4yNXJlbSk7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXgtaGVpZ2h0OiAxNXJlbTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjI1cmVtO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggLThweCByZ2JhKDE1LCAyMywgNDIsIDAuMjUpO1xufVxuLmFwcC1maWxlcy1zdWdnZXN0W2hpZGRlbl0geyBkaXNwbGF5OiBub25lOyB9XG4uYXBwLWZpbGVzLXN1Z2dlc3QtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgZ2FwOiAwLjVyZW07XG4gICAgcGFkZGluZzogMC4zNzVyZW0gMC41cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICBjb2xvcjogIzMzNDE1NTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uYXBwLWZpbGVzLXN1Z2dlc3QtaXRlbTpob3ZlciB7IGJhY2tncm91bmQ6ICNFRkY2RkY7IH1cbi5hcHAtZmlsZXMtc3VnZ2VzdC1uYW1lIHsgZmxleDogMSAxIGF1dG87IG1pbi13aWR0aDogMDsgb3ZlcmZsb3c6IGhpZGRlbjsgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbi5hcHAtZmlsZXMtc3VnZ2VzdC1tZXRhIHsgZmxleDogMCAwIGF1dG87IGZvbnQtc2l6ZTogMC42ODc1cmVtOyBjb2xvcjogIzk0QTNCODsgfVxuXG4uYXBwLWZpbGVzLXRhYnMge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAwLjI1cmVtO1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDEuNXJlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTJFOEYwO1xufVxuLmFwcC1maWxlcy10YWIge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjM3NXJlbTtcbiAgICBwYWRkaW5nOiAwLjQzNzVyZW0gMC43NXJlbTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6ICM2NDc0OEI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnMsIGJvcmRlci1jb2xvciAwLjJzO1xufVxuLmFwcC1maWxlcy10YWI6aG92ZXIgeyBjb2xvcjogIzBCMUY0RDsgfVxuLmFwcC1maWxlcy10YWIuaXMtYWN0aXZlIHsgY29sb3I6ICMxRDRFRDg7IGJvcmRlci1ib3R0b20tY29sb3I6ICMxRDRFRDg7IGZvbnQtd2VpZ2h0OiA2MDA7IH1cbi5hcHAtZmlsZXMtY291bnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtaW4td2lkdGg6IDEuMTI1cmVtO1xuICAgIHBhZGRpbmc6IDAgMC4yNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogI0UyRThGMDtcbiAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xMjVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjNDc1NTY5O1xufVxuLmFwcC1maWxlcy10YWIuaXMtYWN0aXZlIC5hcHAtZmlsZXMtY291bnQgeyBiYWNrZ3JvdW5kOiAjREJFQUZFOyBjb2xvcjogIzFENEVEODsgfVxuXG4uYXBwLWZpbGVzLWJvZHkgeyBwYWRkaW5nOiAwLjVyZW0gMXJlbTsgfVxuLmFwcC1maWxlcy1saXN0IHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBsaXN0LXN0eWxlOiBub25lOyB9XG4uYXBwLWZpbGVzLXJvdyB7IGJvcmRlci1yYWRpdXM6IDhweDsgfVxuLmFwcC1maWxlcy1yb3cuaXMtZGlzYWJsZWQgeyBvcGFjaXR5OiAwLjU1OyB9XG4uYXBwLWZpbGVzLXJvdy1pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBwYWRkaW5nOiAwLjQzNzVyZW0gMC41cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uYXBwLWZpbGVzLXJvdy1pbm5lcjpob3ZlciB7IGJhY2tncm91bmQ6ICNGOEZBRkM7IH1cbi5hcHAtZmlsZXMtcm93LmlzLWRpc2FibGVkIC5hcHAtZmlsZXMtcm93LWlubmVyIHsgY3Vyc29yOiBkZWZhdWx0OyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuLmFwcC1maWxlcy1jaGVjayB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogMC45Mzc1cmVtOyBoZWlnaHQ6IDAuOTM3NXJlbTsgYWNjZW50LWNvbG9yOiAjMUQ0RUQ4OyB9XG4uYXBwLWZpbGVzLXJvdy1pY29uIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAxcmVtOyBoZWlnaHQ6IDFyZW07IGNvbG9yOiAjOTRBM0I4OyB9XG4uYXBwLWZpbGVzLXJvdy1uYW1lIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6ICMzMzQxNTU7XG59XG4uYXBwLWZpbGVzLXJvdy1tZXRhIHsgZmxleDogMCAwIGF1dG87IGZvbnQtc2l6ZTogMC43NXJlbTsgY29sb3I6ICM5NEEzQjg7IH1cbi5hcHAtZmlsZXMtZW1wdHkge1xuICAgIHBhZGRpbmc6IDJyZW0gMC41cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICBjb2xvcjogIzk0QTNCODtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uYXBwLWZpbGVzLWZvb3Qge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNXJlbTtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cbi5hcHAtZmlsZXMtc3VtbWFyeSB7IGZsZXg6IDEgMSBhdXRvOyBtaW4td2lkdGg6IDA7IGZvbnQtc2l6ZTogMC44MTI1cmVtOyBjb2xvcjogIzY0NzQ4QjsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIERvY2sgZGUgY29ycmVvIOKAlCBwaWxhIGRlIHZlbnRhbmFzIGRlIHJlZGFjY2nDs24gZmxvdGFudGVzLlxuICAgVml2w61hIGVuIHVuIDxzdHlsZT4gZGVudHJvIGRlIF9jb21wb3NlX2RvY2suaHRtbC50d2lnOyBzZSB0cmFlIGFxdcOtIHBhcmEgcXVlXG4gICBjb252aXZhbiBjb24gZWwgcmVzdG8gZGUgYXJyZWdsb3MgZGUgY2FzY2FkYSB5IG5vIHNlIHBpZXJkYSBkZSB2aXN0YS5cblxuICAgTGEgdGFyamV0YSBlcyB1bmEgcmVqaWxsYSBkZSBUUkVTIGZpbGFzOiBjYWJlY2VyYSBmaWphIC8gY3VlcnBvIGNvbiBzY3JvbGwgLyBwaWVcbiAgIGZpam8uIEFudGVzIGVsIHBpZSBkZSBhY2Npb25lcyBlc3RhYmEgREVOVFJPIGRlbCBjdWVycG8gY29uIHNjcm9sbCwgcXVlIGVzIGxvIHF1ZVxuICAgZGVqYWJhIGxvcyBib3RvbmVzIGZsb3RhbmRvIGEgbWVkaWEgYWx0dXJhIGFsIGFncmFuZGFyIGxhIHZlbnRhbmEuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiNjb21wb3NlLWRvY2ssXG4jYXNpc3RlbnRlLWRvY2sge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgei1pbmRleDogMzAwMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIGdhcDogMC42cmVtO1xufVxuLmRvY2std2luZG93IHsgd2lkdGg6IG1pbigzOHJlbSwgY2FsYygxMDB2dyAtIDJyZW0pKTsgZmxleDogMCAwIGF1dG87IH1cbi5kb2NrLXdpbmRvdy5kb2NrLWhpZGRlbiB7IGRpc3BsYXk6IG5vbmU7IH1cblxuLyogRWwgY2hhdCBkZWwgYXNpc3RlbnRlIGVzIHVuYSB2ZW50YW5hIG3DoXMgZGVsIGRvY2ssIG3DoXMgZXN0cmVjaGE6IHZhIGEgbGEgaXpxdWllcmRhIGRlIGxvcyBjb3JyZW9zLiAqL1xuLmRvY2std2luZG93LmRvY2stY2hhdCB7IHdpZHRoOiBtaW4oMjdyZW0sIGNhbGMoMTAwdncgLSAycmVtKSk7IH1cbi5kb2NrLXdpbmRvdy5kb2NrLWNoYXQgW2RhdGEtZG9jaz1cImNhcmRcIl0ge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcik7XG4gICAgaGVpZ2h0OiBtaW4oNDByZW0sIGNhbGMoMTAwdmggLSA0LjVyZW0pKTtcbn1cbi5kb2NrLWNoYXQtaGlsbyB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIG92ZXJzY3JvbGwtYmVoYXZpb3I6IGNvbnRhaW47XG59XG4uZG9jay1jaGF0LWhpbG8gdGFibGUgeyB3aWR0aDogMTAwJTsgfVxuLmRvY2stY2hhdC1waWUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuNjI1cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRjFGNUY5O1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbn1cbi5kb2NrLXdpbmRvdy5kb2NrLWxhcmdlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgaW5zZXQ6IGNsYW1wKDAuNXJlbSwgMnZ3LCAxLjVyZW0pO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHotaW5kZXg6IDMwMDE7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGZsZXg6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLmRvY2std2luZG93IFtkYXRhLWRvY2s9XCJiYXJcIl0geyBkaXNwbGF5OiBub25lOyB9XG4uZG9jay13aW5kb3cuZG9jay1taW5pbWl6ZWQgeyB3aWR0aDogMTVyZW07IH1cbi5kb2NrLXdpbmRvdy5kb2NrLW1pbmltaXplZCBbZGF0YS1kb2NrPVwiY2FyZFwiXSB7IGRpc3BsYXk6IG5vbmU7IH1cbi5kb2NrLXdpbmRvdy5kb2NrLW1pbmltaXplZCBbZGF0YS1kb2NrPVwiYmFyXCJdIHsgZGlzcGxheTogZmxleDsgfVxuXG4vKiBSZWQgZGUgc2VndXJpZGFkOiBtaW5pbWl6YXIgbWFuZGEgU0lFTVBSRSBhbCByaW5jw7NuIGluZmVyaW9yIGRlcmVjaG8uXG4gICBjb21wb3NlRG9jay5qcyB5YSBubyBkZWphIGNvbnZpdmlyIGBkb2NrLWxhcmdlYCBjb24gYGRvY2stbWluaW1pemVkYCwgcGVybyB1bmFcbiAgIHNlc2nDs24gZ3VhcmRhZGEgcG9yIHVuYSB2ZXJzacOzbiBhbnRlcmlvciBzw60gcHVlZGUgcmVoaWRyYXRhcmxhcyBqdW50YXMsIHkgZW50b25jZXNcbiAgIGVsIGBwb3NpdGlvbjogZml4ZWQ7IGluc2V0OiDigKZgIGRlIGRvY2stbGFyZ2Ugc2FjYWJhIGxhIGJhcnJhIGRlbCBzdGFjayBkZSAjY29tcG9zZS1kb2NrXG4gICB5IGxhIHBsYW50YWJhIGFycmliYSBhIGxhIGl6cXVpZXJkYSwgY29tbyBzaSBsYSB2ZW50YW5hIGh1YmllcmEgZGVzYXBhcmVjaWRvLiAqL1xuLmRvY2std2luZG93LmRvY2stbGFyZ2UuZG9jay1taW5pbWl6ZWQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgaW5zZXQ6IGF1dG87XG4gICAgd2lkdGg6IDE1cmVtO1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZG9jay1iYW5kIHsgYmFja2dyb3VuZDogIzFFMjkzQjsgY29sb3I6ICNmZmY7IH1cblxuLyogRW52aWFuZG86IGxhIHZlbnRhbmEgZW50ZXJhIHF1ZWRhIGluZXJ0ZSB5IGF0ZW51YWRhIHNhbHZvIGVsIGJvdMOzbiwgcXVlIGxsZXZhIHN1XG4gICBwcm9waW8gc3Bpbm5lci4gQW50ZXMgc29sbyBzZSBhcGFnYWJhIGVsIGJvdMOzbiB5IGVsIHJlc3RvIHNlZ3XDrWEgcmVzcG9uZGllbmRvLCBhc8OtXG4gICBxdWUgbG9zIHNlZ3VuZG9zIHF1ZSB0YXJkYSBHbWFpbCBwYXJlY8OtYW4gdW4gY3VlbGd1ZS4gKi9cbi5kb2NrLXdpbmRvdy5kb2NrLXNlbmRpbmcgW2RhdGEtZG9jaz1cImRvY2stYm9keVwiXSxcbi5kb2NrLXdpbmRvdy5kb2NrLXNlbmRpbmcgLmRvY2staGVhZCB7IHBvaW50ZXItZXZlbnRzOiBub25lOyBvcGFjaXR5OiAwLjY7IH1cbi5kb2NrLXdpbmRvdy5kb2NrLXNlbmRpbmcgW2RhdGEtZG9jaz1cImNhbmNlbFwiXSB7IHBvaW50ZXItZXZlbnRzOiBub25lOyBvcGFjaXR5OiAwLjU7IH1cblxuLmRvY2stYmFyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBnYXA6IDAuNXJlbTtcbiAgICBoZWlnaHQ6IDIuMjVyZW07XG4gICAgcGFkZGluZzogMCAwLjc1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweCA4cHggMCAwO1xuICAgIGJveC1zaGFkb3c6IDAgLTRweCAxNnB4IHJnYmEoMTUsIDIzLCA0MiwgMC4xOCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuLmRvY2stYmFyLXRpdGxlIHsgZm9udC1zaXplOiAwLjgxMjVyZW07IGZvbnQtd2VpZ2h0OiA1MDA7IG92ZXJmbG93OiBoaWRkZW47IHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4uZG9jay1iYXItdG9vbHMgeyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiAwLjEyNXJlbTsgZmxleDogMCAwIGF1dG87IH1cblxuLmRvY2std2luZG93IFtkYXRhLWRvY2s9XCJjYXJkXCJdIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBtaW5tYXgoMCwgMWZyKSBhdXRvO1xuICAgIC8qIEFsdG8gRklKTyAobm8gc29sbyB1biB0b3BlKTogc2luIMOpbCBsYSB0YXJqZXRhIHZhbMOtYSBsbyBxdWUgbWlkaWVyYSBzdSBjb250ZW5pZG9cbiAgICAgICB5IGVsIGVkaXRvciBhcnJhbmNhYmEgZW4gc3UgbcOtbmltbywgY29uIHVuIGN1YWRybyBkZSBlc2NyaWJpciByaWTDrWN1bG8gcXVlIGhhYsOtYVxuICAgICAgIHF1ZSBsbGVuYXIgcGFyYSBxdWUgY3JlY2llcmEuIENvbiB1bmEgYWx0dXJhIGRlZmluaWRhLCBlbCBtZW5zYWplIHNlIHF1ZWRhIGNvblxuICAgICAgIHRvZG8gZWwgaHVlY28gcXVlIHNvYnJhIGRlc2RlIGVsIHByaW1lciBtb21lbnRvLiAqL1xuICAgIGhlaWdodDogbWluKDQ2cmVtLCBjYWxjKDEwMHZoIC0gNC41cmVtKSk7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDQuNXJlbSk7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRTJFOEYwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweCAxMnB4IDAgMDtcbiAgICBib3gtc2hhZG93OiAwIC04cHggMzBweCByZ2JhKDE1LCAyMywgNDIsIDAuMTgpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4uZG9jay13aW5kb3cuZG9jay1sYXJnZSBbZGF0YS1kb2NrPVwiY2FyZFwiXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFMkU4RjA7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBib3gtc2hhZG93OiAwIDE4cHggNjBweCByZ2JhKDE1LCAyMywgNDIsIDAuMjgpO1xufVxuXG4uZG9jay1oZWFkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGdhcDogMC41cmVtO1xuICAgIGhlaWdodDogMi43NXJlbTtcbiAgICBwYWRkaW5nOiAwIDAuNXJlbSAwIDFyZW07XG59XG4uZG9jay1oZWFkLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uZG9jay1oZWFkLXRvb2xzIHsgZGlzcGxheTogaW5saW5lLWZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogMC4xMjVyZW07IGZsZXg6IDAgMCBhdXRvOyB9XG4uZG9jay1oZWFkLWJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMS43NXJlbTtcbiAgICBoZWlnaHQ6IDEuNzVyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xufVxuLmRvY2staGVhZC1idG46aG92ZXIgeyBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpOyB9XG5cbi8qIEVsIGN1ZXJwbyBOTyBoYWNlIHNjcm9sbDogbG8gaGFjZSBlbCBlZGl0b3IgZGVsIG1lbnNhamUgKHkgbGEgY2FqYSBkZSBhZGp1bnRvcykuXG4gICBDdWFuZG8gZWwgc2Nyb2xsIGVyYSBkZSBhcXXDrSwgdW4gbWVuc2FqZSBsYXJnbyBlc3RpcmFiYSBlbCBlZGl0b3IsIGVtcHVqYWJhIGxvc1xuICAgYWRqdW50b3MgZnVlcmEgZGUgbGEgdmlzdGEgeSBlbCBjdXJzb3IgYWNhYmFiYSBlc2NyaWJpZW5kbyBwb3IgZGViYWpvIGRlbCBwbGllZ3VlLiAqL1xuLmRvY2std2luZG93IFtkYXRhLWRvY2s9XCJkb2NrLWJvZHlcIl0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuNzVyZW07XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIC0tLS0gVmVudGFuYSBhZ3JhbmRhZGE6IGRvcyBjb2x1bW5hcyAtLS0tXG4gICBBbnRlcyBvY3VwYWJhIHRvZGEgbGEgcGFudGFsbGEgcGVybyBlbmNham9uYWJhIGVsIGNvbnRlbmlkbyBlbiB1bmEgY29sdW1uYSBjZW50cmFkYVxuICAgZGUgNjJyZW0sIGRlamFuZG8gZG9zIGZyYW5qYXMgdmFjw61hcyBlbm9ybWVzLiBBaG9yYSBlbCBhbmNobyBzZSBhcHJvdmVjaGE6IGVsIGNvcnJlb1xuICAgYSBsYSBpenF1aWVyZGEgeSBsb3MgYWRqdW50b3MgZW4gc3UgcHJvcGlhIGNvbHVtbmEgYSBsYSBkZXJlY2hhLCBxdWUgZXMgZG9uZGUgc2VcbiAgIG1pcmFuIG1pZW50cmFzIHNlIGVzY3JpYmUuXG4gICBgLmRvY2stY29tcG9zZS1wYXJ0YCBlcyBgZGlzcGxheTogY29udGVudHNgLCBhc8OtIHF1ZSBlc3RvcyBoaWpvcyBzb24gY2VsZGFzIGRlIGxhXG4gICByZWppbGxhIGRpcmVjdGFtZW50ZS4gRW4gbW9kbyBsZWN0b3Igbm8gYXBsaWNhOiBhaMOtIG1hbmRhIGAuZG9jay1yZWFkZXJgLiAqL1xuLmRvY2std2luZG93LmRvY2stbGFyZ2U6bm90KC5kb2NrLW1vZGUtcmVhZGVyKSBbZGF0YS1kb2NrPVwiZG9jay1ib2R5XCJdIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgY2xhbXAoMThyZW0sIDI2JSwgMjhyZW0pO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIGF1dG8gYXV0byBtaW5tYXgoMCwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgICBcInRvICAgICAgYWRqdW50b3NcIlxuICAgICAgICBcImNjICAgICAgYWRqdW50b3NcIlxuICAgICAgICBcInN1YmplY3QgYWRqdW50b3NcIlxuICAgICAgICBcInRocmVhZCAgYWRqdW50b3NcIlxuICAgICAgICBcIm1lc3NhZ2UgYWRqdW50b3NcIjtcbiAgICBnYXA6IDAuNzVyZW0gMS4yNXJlbTtcbn1cbi5kb2NrLXdpbmRvdy5kb2NrLWxhcmdlIFtkYXRhLWRvY2stc2VjdGlvbj1cInRvXCJdIHsgZ3JpZC1hcmVhOiB0bzsgfVxuLmRvY2std2luZG93LmRvY2stbGFyZ2UgW2RhdGEtZG9jay1zZWN0aW9uPVwiY2NcIl0geyBncmlkLWFyZWE6IGNjOyB9XG4uZG9jay13aW5kb3cuZG9jay1sYXJnZSBbZGF0YS1kb2NrLXNlY3Rpb249XCJzdWJqZWN0XCJdIHsgZ3JpZC1hcmVhOiBzdWJqZWN0OyB9XG4uZG9jay13aW5kb3cuZG9jay1sYXJnZSBbZGF0YS1kb2NrLXNlY3Rpb249XCJ0aHJlYWRcIl0geyBncmlkLWFyZWE6IHRocmVhZDsgfVxuLmRvY2std2luZG93LmRvY2stbGFyZ2UgW2RhdGEtZG9jay1zZWN0aW9uPVwibWVzc2FnZVwiXSB7IGdyaWQtYXJlYTogbWVzc2FnZTsgfVxuLmRvY2std2luZG93LmRvY2stbGFyZ2UgW2RhdGEtZG9jay1zZWN0aW9uPVwiYXR0YWNobWVudHNcIl0ge1xuICAgIGdyaWQtYXJlYTogYWRqdW50b3M7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLyogRW4gc3UgcHJvcGlhIGNvbHVtbmEgbG9zIGFkanVudG9zIHRpZW5lbiBzaXRpbyBkZSBzb2JyYTogZWwgdG9wZSBsbyBwb25lIGxhIGNvbHVtbmEsXG4gICBxdWUgeWEgaGFjZSBzY3JvbGwsIHkgbm8gdW4gbsO6bWVybyBpbnZlbnRhZG8uICovXG4uZG9jay13aW5kb3cuZG9jay1sYXJnZSAuZG9jay1hdHRhY2htZW50cy1zY3JvbGwgeyBtYXgtaGVpZ2h0OiBub25lOyBvdmVyZmxvdy15OiB2aXNpYmxlOyB9XG5cbi8qIEVzdHJlY2hvIGRlIHZlcmRhZCAobyBhbHRvIGRlIHNvYnJhIHBvY28pOiBzaW4gZG9zIGNvbHVtbmFzLCBlbiB1bmEgc29sYS4gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA2MHJlbSkge1xuICAgIC5kb2NrLXdpbmRvdy5kb2NrLWxhcmdlOm5vdCguZG9jay1tb2RlLXJlYWRlcikgW2RhdGEtZG9jaz1cImRvY2stYm9keVwiXSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxufVxuXG4uZG9jay1mb290IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBnYXA6IDAuNXJlbTtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFMkU4RjA7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG59XG5cbi8qIC0tLS0gQ2FtcG9zIC0tLS0gKi9cbi8qIFRvZG8gbG8gcXVlIG5vIGVzIGVsIG1lbnNhamUgY29uc2VydmEgc3UgYWx0byBuYXR1cmFsIChmbGV4OiAwIDAgYXV0byk6IHNpIHB1ZGllcmFuXG4gICBlbmNvZ2Vyc2UsIGFsIGVzY3JpYmlyIG11Y2hvIHNlIGFwbGFzdGFiYW4gZWwgYXN1bnRvIHkgbGEgYmFycmEgZGUgY29udmVyc2FjacOzbi4gKi9cbi5kb2NrLWZpZWxkIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAwLjI1cmVtOyBtaW4td2lkdGg6IDA7IGZsZXg6IDAgMCBhdXRvOyB9XG4vKiBFbCBtZW5zYWplIHNlIGNvbWUgZWwgZXNwYWNpbyBzb2JyYW50ZTogYXPDrSBhbCBhZ3JhbmRhciBubyBxdWVkYW4gaHVlY29zIG11ZXJ0b3MuXG4gICBFbCBzdWVsbyBkZSA5cmVtIGVzIGxvIHF1ZSBpbXBpZGUgcXVlIGxhIGNhamEgZGUgYWRqdW50b3MgbG8gYXBsYXN0ZTogc2luIMOpbCwgZWxcbiAgIGBmbGV4OiAxIDEgYXV0b2AgY2Vkw61hIGhhc3RhIGRlamFyIHVuIGN1YWRybyBkZSBlc2NyaWJpciBkZSBkb3MgbMOtbmVhcy4gRW4gbGEgdmVudGFuYVxuICAgYWdyYW5kYWRhIG5vIGhhY2UgZmFsdGEsIHF1ZSBhbGzDrSBlbCBtZW5zYWplIHRpZW5lIGNvbHVtbmEgcHJvcGlhLiAqL1xuLmRvY2stZmllbGQtZ3JvdyB7IGZsZXg6IDEgMSBhdXRvOyBtaW4taGVpZ2h0OiAwOyB9XG4uZG9jay13aW5kb3c6bm90KC5kb2NrLWxhcmdlKSBbZGF0YS1kb2NrLXNlY3Rpb249XCJtZXNzYWdlXCJdIHsgbWluLWhlaWdodDogOXJlbTsgfVxuLyogRWwgZWRpdG9yIHNlIG1vbnRhIERFTlRSTyBkZSBlc3RlIGRpdiwgcXVlIGhhc3RhIGFob3JhIGVyYSB1biBzaW1wbGUgaHVlY28gc2luXG4gICBlc3RpbG86IGNvcnRhYmEgbGEgY2FkZW5hIGRlIGFsdHVyYXMgeSBlbCBjdWFkcm8gZGUgZXNjcmliaXIgc2UgcXVlZGFiYSBlbiBzdSBtw61uaW1vXG4gICBjb24gdW4gcGFzdGl6YWwgZGUgZXNwYWNpbyB2YWPDrW8gZGViYWpvLiAqL1xuLmRvY2std2luZG93IFtkYXRhLWRvY2s9XCJib2R5XCJdIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZmxleDogMSAxIGF1dG87IG1pbi1oZWlnaHQ6IDA7IH1cbi5kb2NrLWxhYmVsIHsgZm9udC1zaXplOiAwLjc1cmVtOyBmb250LXdlaWdodDogNjAwOyBjb2xvcjogIzY0NzQ4QjsgfVxuLmRvY2stbGFiZWwtaGludCB7IGZvbnQtd2VpZ2h0OiA0MDA7IGNvbG9yOiAjOTRBM0I4OyB9XG4uZG9jay1yZXEgeyBjb2xvcjogI0RDMjYyNjsgfVxuLmRvY2std2luZG93IGlucHV0LmRvY2staW5wdXQsXG4uZG9jay13aW5kb3cgc2VsZWN0LmRvY2staW5wdXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMi41cmVtO1xuICAgIHBhZGRpbmc6IDAgMC43NXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRTJFOEYwO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGNvbG9yOiAjMEYxNzJBO1xufVxuLmRvY2std2luZG93IGlucHV0LmRvY2staW5wdXQ6Zm9jdXMsXG4uZG9jay13aW5kb3cgc2VsZWN0LmRvY2staW5wdXQ6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjM0I4MkY2O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDU5LCAxMzAsIDI0NiwgMC4xOCk7XG59XG4uZG9jay1jYy10b2dnbGVzIHsgZGlzcGxheTogZmxleDsgZ2FwOiAwLjc1cmVtOyB9XG4uZG9jay1saW5rLWJ0biB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMxRDRFRDg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmRvY2stbGluay1idG46aG92ZXIgeyBjb2xvcjogIzFFNDBBRjsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbi5kb2NrLWxpbmstYnRuLmlzLWFjdGl2ZSB7IGNvbG9yOiAjNjQ3NDhCOyB9XG5cbi8qIC0tLS0gwqtDb250YWN0b3MgZGVsIGNsaWVudGXCuzogZW5sYWNlIHkgYXZpc28gZGVsIGNhbXBvIMKrUGFyYcK7IC0tLS1cbiAgIExhIGxpc3RhIGVuIHPDrSB2aXZlIGVuIHVuIDxkaWFsb2c+IChkZXN0aW5hdGFyaW9zRGlhbG9nLmpzKTogZGVudHJvIGRlIGxhIHZlbnRhbmEgZGVcbiAgIHJlZGFjY2nDs24gc29sbyBjYWJlbiAyMHJlbSB5IGxvcyBidXpvbmVzIGNvcnBvcmF0aXZvcyBzYWzDrWFuIGNvcnRhZG9zLiAqL1xuLmRvY2stdG8taGVhZCB7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgZ2FwOiAwLjVyZW07IH1cbi5kb2NrLXRvLWhlYWQgLmRvY2stbGluay1idG4geyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiAwLjI1cmVtOyB9XG5cbi8qIC0tLS0gQmFycmEgZGUgY29udmVyc2FjacOzbiAtLS0tICovXG4uZG9jay10aHJlYWRiYXIge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNXJlbTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogI0Y4RkFGQztcbn1cbi5kb2NrLXRocmVhZGJhci5pcy1yZXBseWluZyB7IGJvcmRlci1jb2xvcjogI0JGREJGRTsgYmFja2dyb3VuZDogI0VGRjZGRjsgfVxuLyogQ29udmVyc2FjacOzbiB2aWVqYSBvIGlsZWdpYmxlOiByZXNwb25kZXIgYWjDrSBjYXNpIG51bmNhIGVzIGxvIHF1ZSBzZSBxdWllcmUsIGFzw61cbiAgIHF1ZSBsYSBiYXJyYSBkZWphIGRlIHNlciBpbmZvcm1hdGl2YSB5IHBhc2EgYSBhdmlzYXIuICovXG4uZG9jay10aHJlYWRiYXIuaXMtcmFuY2lvIHsgYm9yZGVyLWNvbG9yOiAjRkRCQTc0OyBiYWNrZ3JvdW5kOiAjRkZGN0VEOyB9XG4uZG9jay10aHJlYWRiYXIuaXMtcmFuY2lvIC5kb2NrLXRocmVhZGJhci1sYWJlbCxcbi5kb2NrLXRocmVhZGJhci5pcy1yYW5jaW8gLmRvY2stdGhyZWFkYmFyLW1ldGEgeyBjb2xvcjogIzlBMzQxMjsgfVxuLmRvY2stdGhyZWFkYmFyLWljb24geyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDFyZW07IGhlaWdodDogMXJlbTsgY29sb3I6ICM5NEEzQjg7IH1cbi5kb2NrLXRocmVhZGJhci5pcy1yZXBseWluZyAuZG9jay10aHJlYWRiYXItaWNvbiB7IGNvbG9yOiAjMjU2M0VCOyB9XG4uZG9jay10aHJlYWRiYXIuaXMtcmFuY2lvIC5kb2NrLXRocmVhZGJhci1pY29uIHsgY29sb3I6ICNFQTU4MEM7IH1cbi5kb2NrLXRocmVhZGJhci10ZXh0IHsgZmxleDogMSAxIGF1dG87IG1pbi13aWR0aDogMDsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuLmRvY2stdGhyZWFkYmFyLWxhYmVsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMzMzQxNTU7XG59XG4uZG9jay10aHJlYWRiYXItbWV0YSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGNvbG9yOiAjNjQ3NDhCO1xufVxuLmRvY2stdGhyZWFkYmFyLW1ldGE6ZW1wdHkgeyBkaXNwbGF5OiBub25lOyB9XG4uZG9jay10aHJlYWRiYXItYWN0aW9ucyB7IGZsZXg6IDAgMCBhdXRvOyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiAwLjEyNXJlbTsgfVxuLmRvY2stdGhyZWFkYmFyLWNsZWFyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxLjc1cmVtO1xuICAgIGhlaWdodDogMS43NXJlbTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjOTRBM0I4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kb2NrLXRocmVhZGJhci1jbGVhcjpob3ZlciB7IGJhY2tncm91bmQ6ICNFMkU4RjA7IGNvbG9yOiAjQzI0MTBDOyB9XG5cbi8qIC0tLS0gQWRqdW50b3MgLS0tLSAqL1xuLmRvY2stYXR0YWNobWVudHMge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuNXJlbTtcbiAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNFMkU4RjA7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjQ4LCAyNTAsIDI1MiwgMC42KTtcbn1cbi5kb2NrLWF0dGFjaG1lbnRzLWhlYWQgeyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IGdhcDogMC41cmVtOyB9XG4uZG9jay1hdHRhY2htZW50cy10aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuMzc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjNjQ3NDhCO1xufVxuLmRvY2stYXR0YWNobWVudHMtdG90YWwgeyBmb250LXNpemU6IDAuNzVyZW07IGNvbG9yOiAjNjQ3NDhCOyB9XG4vKiBNdWNob3MgYWRqdW50b3Mgbm8gZGViZW4gZW1wdWphciBhbCByZXN0byBkZWwgZm9ybXVsYXJpbyBmdWVyYSBkZSBsYSB2aXN0YS5cbiAgIEVsIHRvcGUgdmEgZW4gbGEgem9uYSBxdWUgYWdydXBhIGEgbGFzIERPUyBsaXN0YXMgKGF1dG8tYWRqdW50b3MgZGVsIGRvY3VtZW50byB5XG4gICBhcmNoaXZvcyBlbGVnaWRvcyBhIG1hbm8pOiBlc3RhbmRvIHNvbG8gZW4gbGEgc2VndW5kYSwgdW4gZXhwZWRpZW50ZSBjb24gbXVjaG9zXG4gICBkaXNlw7FvcyBsbGVuYWJhIGxhIHByaW1lcmEgc2luIGzDrW1pdGUgeSBlbCBtZW5zYWplIHNlIHF1ZWRhYmEgZW4gc3UgbcOtbmltby4gKi9cbi5kb2NrLWF0dGFjaG1lbnRzLXNjcm9sbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC41cmVtO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgbWF4LWhlaWdodDogOXJlbTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLmRvY2stYXR0YWNobWVudHMtYWN0aW9ucyB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtd3JhcDogd3JhcDsgZ2FwOiAwLjVyZW07IH1cblxuLyogLS0tLSBWaXN0YSBwcmV2aWEgZGUgdW4gYWRqdW50byAoc29sbyBjb24gbGEgdmVudGFuYSBhZ3JhbmRhZGEpIC0tLS0gKi9cbi5kb2NrLXByZXZpZXcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuNXJlbTtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRTJFOEYwO1xufVxuLmRvY2stcHJldmlldy1oZWFkIHsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyBnYXA6IDAuNXJlbTsgfVxuLmRvY2stcHJldmlldy1uYW1lIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogIzMzNDE1NTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uZG9jay1wcmV2aWV3LXRvb2xzIHsgZGlzcGxheTogaW5saW5lLWZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogMC4xMjVyZW07IGZsZXg6IDAgMCBhdXRvOyB9XG4uZG9jay1wcmV2aWV3LWJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMS41cmVtO1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICM5NEEzQjg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmRvY2stcHJldmlldy1idG46aG92ZXIgeyBiYWNrZ3JvdW5kOiAjRTJFOEYwOyBjb2xvcjogIzMzNDE1NTsgfVxuLmRvY2stcHJldmlldy1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBoZWlnaHQ6IGNsYW1wKDEycmVtLCAzMnZoLCAyNnJlbSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogI0Y4RkFGQztcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cbi5kb2NrLXByZXZpZXctaW1nIHsgbWF4LXdpZHRoOiAxMDAlOyBtYXgtaGVpZ2h0OiAxMDAlOyBvYmplY3QtZml0OiBjb250YWluOyB9XG4uZG9jay1wcmV2aWV3LWZyYW1lIHsgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgYm9yZGVyOiAwOyB9XG4uZG9jay1wcmV2aWV3LWVtcHR5IHsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwIDFyZW07IGZvbnQtc2l6ZTogMC43NXJlbTsgY29sb3I6ICM2NDc0OEI7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuLmRvY2stYXR0YWNoLWJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNXJlbTtcbiAgICBoZWlnaHQ6IDIuMjVyZW07XG4gICAgcGFkZGluZzogMCAwLjc1cmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNFMkU4RjA7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6ICMzMzQxNTU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycztcbn1cbi5kb2NrLWF0dGFjaC1idG46aG92ZXIgeyBiYWNrZ3JvdW5kOiAjRjFGNUY5OyB9XG5cbi8qIC0tLS0gTW9kbyBsZWN0b3I6IGNvcnJlbyBhbmNsYWRvIHF1ZSBzaWd1ZSBhbCB1c3VhcmlvIHBvciBlbCBhZG1pbiAtLS0tXG4gICBVbiBzb2xvIDx0ZW1wbGF0ZT4gc2lydmUgcGFyYSByZWRhY3RhciB5IHBhcmEgbGVlcjsgc2UgYWx0ZXJuYW4gbGFzIGRvcyBtaXRhZGVzXG4gICBwb3IgY2xhc2UsIGVsIG1pc21vIHBhdHLDs24gcXVlIHlhIHVzYWJhbiBkb2NrLW1vZGUtZG9jdW1lbnQvLWNsaWVudC4gQXPDrSBlbFxuICAgbGVjdG9yIGhlcmVkYSBncmF0aXMgbWluaW1pemFyLCBhZ3JhbmRhciwgYXBpbGFyc2UgeSBzb2JyZXZpdmlyIGEgbGEgbmF2ZWdhY2nDs24uICovXG4uZG9jay1jb21wb3NlLXBhcnQgeyBkaXNwbGF5OiBjb250ZW50czsgfVxuLmRvY2stcmVhZGVyIHsgZGlzcGxheTogbm9uZTsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgbWluLWhlaWdodDogMDsgZmxleDogMSAxIGF1dG87IGdhcDogMC43NXJlbTsgfVxuLmRvY2std2luZG93LmRvY2stbW9kZS1yZWFkZXIgLmRvY2stY29tcG9zZS1wYXJ0IHsgZGlzcGxheTogbm9uZTsgfVxuLmRvY2std2luZG93LmRvY2stbW9kZS1yZWFkZXIgLmRvY2stcmVhZGVyIHsgZGlzcGxheTogZmxleDsgfVxuLyogTGVlciBubyBlcyByZWRhY3Rhcjogc2luIGRlc3RpbmF0YXJpb3MgcXVlIHJlbGxlbmFyLCBlbCBwaWUgZGUgRW52aWFyIHNvYnJhLiAqL1xuLmRvY2std2luZG93LmRvY2stbW9kZS1yZWFkZXIgW2RhdGEtZG9jaz1cImZvb3RcIl0geyBkaXNwbGF5OiBub25lOyB9XG4uZG9jay13aW5kb3cuZG9jay1tb2RlLXJlYWRlciBbZGF0YS1kb2NrPVwiZG9jay1ib2R5XCJdIHsgcGFkZGluZzogMC43NXJlbTsgfVxuXG4uZG9jay1yZWFkZXItaGVhZCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNXJlbTtcbn1cbi5kb2NrLXJlYWRlci1tZXRhIHsgZmxleDogMSAxIGF1dG87IG1pbi13aWR0aDogMDsgZm9udC1zaXplOiAwLjc1cmVtOyBjb2xvcjogIzY0NzQ4QjsgfVxuLmRvY2stcmVhZGVyLWFjdGlvbnMgeyBmbGV4OiAwIDAgYXV0bzsgZGlzcGxheTogaW5saW5lLWZsZXg7IGZsZXgtd3JhcDogd3JhcDsgZ2FwOiAwLjM3NXJlbTsgfVxuLmRvY2stcmVhZGVyLWJvZHkge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgbWF4LWhlaWdodDogNjB2aDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNFMkU4RjA7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuLmRvY2std2luZG93LmRvY2stbGFyZ2UgLmRvY2stcmVhZGVyLWJvZHkgeyBtYXgtaGVpZ2h0OiBub25lOyB9XG5cbi8qIC0tLS0gUmVzcHVlc3RhIGlubGluZSBkZWwgYnV6w7NuIC0tLS1cbiAgIE1pc21vIGNyaXRlcmlvIHF1ZSBlbCBkb2NrOiBlbCBlZGl0b3IgaGFjZSBzdSBwcm9waW8gc2Nyb2xsIHkgZWwgYmxvcXVlIGVudGVybyBzZVxuICAgcXVlZGEgY29uIHVuIHRlY2hvLCBwYXJhIHF1ZSByZXNwb25kZXIgbm8gc2UgY29tYSBlbCBwYW5lbCBkZSBsZWN0dXJhLiAqL1xuI21haWxib3gtaW5saW5lLWNvbXBvc2UgeyBtYXgtaGVpZ2h0OiA2MCU7IG92ZXJmbG93LXk6IGF1dG87IH1cbiNtYWlsYm94LWlubGluZS1jb21wb3NlIC5ydGUtYXJlYSB7IG1pbi1oZWlnaHQ6IDVyZW07IG1heC1oZWlnaHQ6IDE2cmVtOyB9XG5cbi8qIC0tLS0gQ29uZmlybWFjacOzbiBkZSBkZXNjYXJ0ZSAtLS0tICovXG5kaWFsb2cuZG9jay1kaXNjYXJkIHsgd2lkdGg6IG1pbig5MnZ3LCAyNHJlbSk7IHBhZGRpbmc6IDEuMjVyZW07IGJvcmRlcjogMDsgYm9yZGVyLXJhZGl1czogMTJweDsgfVxuZGlhbG9nLmRvY2stZGlzY2FyZDpub3QoW29wZW5dKSB7IGRpc3BsYXk6IG5vbmU7IH1cbmRpYWxvZy5kb2NrLWRpc2NhcmQ6OmJhY2tkcm9wIHsgYmFja2dyb3VuZDogcmdiYSgxMSwgMzEsIDc3LCAwLjU1KTsgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDRweCk7IH1cbi5kb2NrLWRpc2NhcmQtYm9keSB7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyBnYXA6IDAuNzVyZW07IH1cbi5kb2NrLWRpc2NhcmQtaWNvbiB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogMS4yNXJlbTsgaGVpZ2h0OiAxLjI1cmVtOyBtYXJnaW4tdG9wOiAwLjEyNXJlbTsgY29sb3I6ICMyNTYzRUI7IH1cbi5kb2NrLWRpc2NhcmQtdGl0bGUgeyBtYXJnaW46IDA7IGZvbnQtc2l6ZTogMC44NzVyZW07IGZvbnQtd2VpZ2h0OiA2MDA7IGNvbG9yOiAjMUUyOTNCOyB9XG4uZG9jay1kaXNjYXJkLXN1YiB7IG1hcmdpbjogMC4yNXJlbSAwIDA7IGZvbnQtc2l6ZTogMC43NXJlbTsgY29sb3I6ICM2NDc0OEI7IH1cbi5kb2NrLWRpc2NhcmQtYWN0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGdhcDogMC41cmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgICNjb21wb3NlLWRvY2sgeyByaWdodDogMC41cmVtOyBsZWZ0OiAwLjVyZW07IH1cbiAgICAuZG9jay13aW5kb3cgeyB3aWR0aDogMTAwJTsgfVxuICAgIC5kb2NrLXdpbmRvdy5kb2NrLWxhcmdlIHsgaW5zZXQ6IDAuNXJlbTsgd2lkdGg6IGF1dG87IH1cbiAgICAuZG9jay13aW5kb3cuZG9jay1taW5pbWl6ZWQgeyB3aWR0aDogMTJyZW07IH1cbiAgICAuZG9jay13aW5kb3cuZG9jay1sYXJnZS5kb2NrLW1pbmltaXplZCB7IGluc2V0OiBhdXRvOyB3aWR0aDogMTJyZW07IH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDYXNjYWRlIGZpeDogYC5oaWRkZW5gIHNvYnJlIGNvbXBvbmVudGVzIGNvbiBkaXNwbGF5IHByb3Bpby5cblxuICAgTGEgdXRpbGl0eSBgLmhpZGRlbmAgZGUgVGFpbHdpbmQgdml2ZSBlbiBAbGF5ZXIgdXRpbGl0aWVzIHkgUElFUkRFIGZyZW50ZSBhXG4gICBjdWFscXVpZXIgcmVnbGEgc2luIGNhcGEgZGUgbGEgbWlzbWEgZXNwZWNpZmljaWRhZCDigJQgeSB0b2RvcyBsb3MgY29tcG9uZW50ZXMgZGVcbiAgIGFxdcOtIGFiYWpvICguYnRuLCAuZG9jay1maWVsZCwgLmRvY2stcmVhZGVy4oCmKSBzb24gQ1NTIHBsYW5vIHNpbiBjYXBhLCBwb3JxdWUgZWxcbiAgIGVzY8OhbmVyIGRlIFRhaWx3aW5kIG5vIHZlIGxhcyBjbGFzZXMgcXVlIGdlbmVyYSBlbCBKUy4gUmVzdWx0YWRvOiB1blxuICAgYDxkaXYgY2xhc3M9XCJkb2NrLWZpZWxkIGhpZGRlblwiPmAgc2VndcOtYSB2acOpbmRvc2UsIHF1ZSBlcyBsbyBxdWUgaGFjw61hIHF1ZSBsb3NcbiAgIGNhbXBvcyBDQyB5IENDTyBzYWxpZXJhbiBzaWVtcHJlIGFiaWVydG9zIGVuIHZleiBkZSB0cmFzIHN1IGV4cGFuZGlibGUuXG5cbiAgIFNlIGFycmVnbGEgcG9yIMOBTUJJVE8geSBubyBlbnVtZXJhbmRvIGNvbXBvbmVudGVzLCBwYXJhIHF1ZSB2YWxnYSB0YW1iacOpbiBwYXJhXG4gICBsbyBxdWUgc2UgYcOxYWRhIG1hw7FhbmEgZGVudHJvIGRlbCBkb2NrIG8gZGUgc3VzIGRpw6Fsb2dvcy5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmJ0bi5oaWRkZW4geyBkaXNwbGF5OiBub25lOyB9XG4jY29tcG9zZS1kb2NrIC5oaWRkZW4sXG5kaWFsb2cuYXBwLWZpbGVzLWRpYWxvZyAuaGlkZGVuLFxuZGlhbG9nLnRocmVhZC1kaWFsb2cgLmhpZGRlbixcbmRpYWxvZy5hdHQtZGlhbG9nIC5oaWRkZW4geyBkaXNwbGF5OiBub25lOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ2FzY2FkZSBmaXg6IGVsIDxzdW1tYXJ5PiBkZWwgcmVjb3JkYXRvcmlvIGRlIHN0b2NrLlxuXG4gICBgYXBwLmNzc2AgdHJhZSB1biBgc3VtbWFyeSB7IGRpc3BsYXk6IGxpc3QtaXRlbSB9YCBTSU4gQ0FQQSwgeSBsbyBzaW4gY2FwYSBnYW5hIGEgdG9kb1xuICAgYEBsYXllciBjb21wb25lbnRzYCBwb3IgbXVjaGEgZXNwZWNpZmljaWRhZCBxdWUgc2UgbGUgZWNoZSBlbmNpbWEuIENvbiBlbCBzdW1tYXJ5IGVuXG4gICBgbGlzdC1pdGVtYCwgZWwgaWNvbm8g4pOYIOKAlHF1ZSBlbCBwcmVmbGlnaHQgZGUgVGFpbHdpbmQgcG9uZSBlbiBgZGlzcGxheTogYmxvY2tg4oCUIHNlIGliYSBhIHN1XG4gICBwcm9waWEgbMOtbmVhIGVuY2ltYSBkZWwgdGV4dG8uXG5cbiAgIFZhIGFxdcOtLCBzaW4gY2FwYSwgcXVlIGVzIGVsIG1pc21vIHJlbWVkaW8gcXVlIHlhIHVzYW4gYHRyLmlzLWhpZGRlbmAgeSBgdGgudGgtc29ydGFibGVgLiBMb1xuICAgZGVtw6FzIGRlbCBjb21wb25lbnRlIChjb2xvciwgdGFtYcOxbywgaHVlY28pIHPDrSBwdWVkZSB2aXZpciBlbiBAbGF5ZXIgY29tcG9uZW50czogc29sbyBlbFxuICAgYGRpc3BsYXlgIGVzdMOhIGVuIGRpc3B1dGEuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5zdG9jay1yZWdsYXMtc3VtbWFyeSB7IGRpc3BsYXk6IGZsZXg7IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDYW1wbyBkZSBkZXN0aW5hdGFyaW9zIGNvbiBmaWNoYXMgKHNoYXJlZC9yZWNpcGllbnRzRmllbGQuanMpLlxuICAgQ2FkYSBkaXJlY2Npw7NuIGVzIHVuYSBmaWNoYSBjb24gc3UgWDsgbGEgaW52w6FsaWRhIHNhbGUgZW4gY29yYWwgeSBzZSBwdWVkZVxuICAgY2xpY2FyIHBhcmEgY29ycmVnaXJsYS4gU3VzdGl0dXllIGFsIGlucHV0IGRlIHRleHRvIGNvbiBsYSBwaXN0YSBcIihjb21hKVwiLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ucmNwdC1maWVsZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuMjVyZW07XG4gICAgbWluLWhlaWdodDogMi41cmVtO1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gMC4zNzVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgY3Vyc29yOiB0ZXh0O1xufVxuLnJjcHQtZmllbGQ6Zm9jdXMtd2l0aGluIHtcbiAgICBib3JkZXItY29sb3I6ICMzQjgyRjY7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoNTksIDEzMCwgMjQ2LCAwLjE4KTtcbn1cbi5yY3B0LWNoaXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjI1cmVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjI1cmVtIDAuMTI1cmVtIDAuNXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRTJFOEYwO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kOiAjRjFGNUY5O1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIGNvbG9yOiAjMzM0MTU1O1xufVxuLnJjcHQtY2hpcC10ZXh0IHsgb3ZlcmZsb3c6IGhpZGRlbjsgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbi5yY3B0LWNoaXAtZWRpdGFibGUgeyBjdXJzb3I6IHBvaW50ZXI7IH1cbi5yY3B0LWNoaXAtYmFkIHtcbiAgICBib3JkZXItY29sb3I6ICNGQ0E1QTU7XG4gICAgYmFja2dyb3VuZDogI0ZFRjJGMjtcbiAgICBjb2xvcjogI0I5MUMxQztcbn1cbi5yY3B0LWNoaXAteCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMS4xMjVyZW07XG4gICAgaGVpZ2h0OiAxLjEyNXJlbTtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG9wYWNpdHk6IDAuNTU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnJjcHQtY2hpcC14IHN2ZyB7IHdpZHRoOiAwLjc1cmVtOyBoZWlnaHQ6IDAuNzVyZW07IH1cbi5yY3B0LWNoaXAteDpob3ZlciB7IG9wYWNpdHk6IDE7IGJhY2tncm91bmQ6IHJnYmEoMTUsIDIzLCA0MiwgMC4wOCk7IH1cbi5yY3B0LWlucHV0IHtcbiAgICBmbGV4OiAxIDEgOHJlbTtcbiAgICBtaW4td2lkdGg6IDhyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIG91dGxpbmU6IDA7XG4gICAgcGFkZGluZzogMC4yNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGNvbG9yOiAjMEYxNzJBO1xufVxuLyogQm9vdHN0cmFwIGRlIEVhc3lBZG1pbiB2aWVuZSBzaW4gY2FwYSB5IGVzdGlsaXphIGBpbnB1dGAgcG9yIGVsZW1lbnRvOiBoYXkgcXVlXG4gICByZWFmaXJtYXIgbG8gbnVlc3RybyBjb24gbWF5b3IgZXNwZWNpZmljaWRhZCBvIGVsIGNhbXBvIHNlIHZlIGNvbiBzdSBib3JkZS4gKi9cbi5yY3B0LWZpZWxkIGlucHV0LnJjcHQtaW5wdXQge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBFZGl0b3IgZGVsIGN1ZXJwbyBkZWwgY29ycmVvIGNvbiBmb3JtYXRvIGLDoXNpY28gKHNoYXJlZC9yaWNoVGV4dEZpZWxkLmpzKS5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnJ0ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5ydGU6Zm9jdXMtd2l0aGluIHsgYm9yZGVyLWNvbG9yOiAjM0I4MkY2OyBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSg1OSwgMTMwLCAyNDYsIDAuMTgpOyB9XG4ucnRlLWJhciB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC4xMjVyZW07XG4gICAgcGFkZGluZzogMC4yNXJlbSAwLjM3NXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0YxRjVGOTtcbiAgICBiYWNrZ3JvdW5kOiAjRjhGQUZDO1xufVxuLnJ0ZS1idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEuNzVyZW07XG4gICAgaGVpZ2h0OiAxLjc1cmVtO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICM0NzU1Njk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycywgY29sb3IgMC4ycztcbn1cbi5ydGUtYnRuIHN2ZyB7IHdpZHRoOiAwLjg3NXJlbTsgaGVpZ2h0OiAwLjg3NXJlbTsgfVxuLnJ0ZS1idG46aG92ZXIgeyBiYWNrZ3JvdW5kOiAjRTJFOEYwOyBjb2xvcjogIzBCMUY0RDsgfVxuLnJ0ZS1idG4uaXMtYWN0aXZlIHsgYmFja2dyb3VuZDogI0RCRUFGRTsgY29sb3I6ICMxRDRFRDg7IH1cbi8qIENvbG9yIGRlbCB0ZXh0bzogbGEgXCJBXCIgY29uIGxhIGZyYW5qYSBkZWwgY29sb3IgYXBsaWNhZG8gZGViYWpvLiAqL1xuLnJ0ZS1jb2xvci1idG4geyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBnYXA6IDFweDsgfVxuLnJ0ZS1jb2xvci1idG4gc3ZnIHsgd2lkdGg6IDAuODEyNXJlbTsgaGVpZ2h0OiAwLjc1cmVtOyB9XG4ucnRlLWNvbG9yLWJhciB7IHdpZHRoOiAwLjg3NXJlbTsgaGVpZ2h0OiAzcHg7IGJvcmRlci1yYWRpdXM6IDFweDsgYmFja2dyb3VuZDogIzBGMTcyQTsgfVxuLyogTGEgcGFsZXRhIGN1ZWxnYSBkZSA8Ym9keT4gKGRlbnRybyBkZSBgLnJ0ZWAsIGNvbiBvdmVyZmxvdyBvY3VsdG8sIHNlIHJlY29ydGFiYSksXG4gICBhc8OtIHF1ZSBzdSB6LWluZGV4IHRpZW5lIHF1ZSBnYW5hciBhbCBkZSBsYSB2ZW50YW5hIGFncmFuZGFkYSBkZWwgZG9jayAoMzAwMSkuICovXG4ucnRlLXBhbGV0dGUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiAzMTAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAwLjI1cmVtO1xuICAgIHBhZGRpbmc6IDAuMzc1cmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNFMkU4RjA7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAyNHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4xNCk7XG59XG4ucnRlLXN3YXRjaCB7XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNSwgMjMsIDQyLCAwLjEyKTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzLCBib3gtc2hhZG93IDAuMnM7XG59XG4ucnRlLXN3YXRjaDpob3ZlciB7IHRyYW5zZm9ybTogc2NhbGUoMS4xMik7IH1cbi5ydGUtc3dhdGNoLmlzLWFjdGl2ZSB7IGJveC1zaGFkb3c6IDAgMCAwIDJweCB3aGl0ZSwgMCAwIDAgM3B4ICMwMDY2RkY7IH1cbi5ydGUtaGludCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMzc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGNvbG9yOiAjQzI0MTBDO1xufVxuLyogRWwgZWRpdG9yIHNlIHF1ZWRhIGNvbiBlbCBodWVjbyBxdWUgc29icmEgeSBoYWNlIHNjcm9sbCBERU5UUk8gZGUgc8OtIG1pc21vLCBudW5jYVxuICAgZXN0aXLDoW5kb3NlIHNpbiBmaW4uIEVzdGUgNjB2aCBlcyBzb2xvIGVsIHZhbG9yIHBvciBkZWZlY3RvIHBhcmEgdW4gZWRpdG9yIHN1ZWx0bztcbiAgIGNhZGEgY29udGVuZWRvciAodmVudGFuYSBkZWwgZG9jaywgcGFuZWwgZGVsIGJ1esOzbikgbGUgcG9uZSBkZXNwdcOpcyBlbCB0ZWNobyBxdWUgZGVcbiAgIHZlcmRhZCBjYWJlIGFow60sIHBvcnF1ZSBlcyBlbCDDum5pY28gcXVlIGxvIHNhYmUuICovXG4ucnRlLWFyZWEge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDZyZW07XG4gICAgbWF4LWhlaWdodDogNjB2aDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGNvbG9yOiAjMEYxNzJBO1xuICAgIG91dGxpbmU6IDA7XG59XG4vKiBFbiBlbCBkb2NrIG5vIGhheSB0b3BlIGVuIHZoOiBsYSB0YXJqZXRhIHRpZW5lIGFsdHVyYSBkZWZpbmlkYSwgYXPDrSBxdWUgZWwgZWRpdG9yIHNlXG4gICBxdWVkYSBjb24gZWwgaHVlY28gcXVlIHNvYnJhIHkgaGFjZSBzY3JvbGwgREVOVFJPIGVuIGN1YW50byBzZSBwYXNhLiBVbiB0b3BlIGVuIHZoXG4gICBzZSBzYWzDrWEgZGUgbGEgdmVudGFuYSB5IGVsIHRleHRvIGFjYWJhYmEgcG9yIGRlYmFqbyBkZWwgcGxpZWd1ZS4gKi9cbi5kb2NrLXdpbmRvdyAucnRlLWFyZWEgeyBtaW4taGVpZ2h0OiA1cmVtOyBtYXgtaGVpZ2h0OiBub25lOyB9XG5cbi8qIFBhbnRhbGxhIG11eSBiYWphOiB5YSBubyBjYWJlIGVsIGZvcm11bGFyaW8gZW50ZXJvIG5pIGNvbiBlbCBlZGl0b3IgYWwgbcOtbmltbywgYXPDrVxuICAgcXVlIHNlIGRldnVlbHZlIGVsIHNjcm9sbCBhbCBjdWVycG8gcGFyYSBxdWUgbmFkYSBxdWVkZSBpbmFsY2FuemFibGUuICovXG5AbWVkaWEgKG1heC1oZWlnaHQ6IDQwcmVtKSB7XG4gICAgLmRvY2std2luZG93Om5vdCguZG9jay1sYXJnZSkgW2RhdGEtZG9jaz1cImRvY2stYm9keVwiXSB7IG92ZXJmbG93LXk6IGF1dG87IH1cbiAgICAuZG9jay13aW5kb3c6bm90KC5kb2NrLWxhcmdlKSAucnRlLWFyZWEgeyBtYXgtaGVpZ2h0OiAxMnJlbTsgfVxufVxuLnJ0ZS1hcmVhIHAgeyBtYXJnaW46IDAgMCAwLjVyZW07IH1cbi5ydGUtYXJlYSB1bCwgLnJ0ZS1hcmVhIG9sIHsgbWFyZ2luOiAwIDAgMC41cmVtOyBwYWRkaW5nLWxlZnQ6IDEuNXJlbTsgfVxuLnJ0ZS1hcmVhIHVsIHsgbGlzdC1zdHlsZTogZGlzYzsgfVxuLnJ0ZS1hcmVhIG9sIHsgbGlzdC1zdHlsZTogZGVjaW1hbDsgfVxuLnJ0ZS1hcmVhIGxpIHsgbWFyZ2luOiAwLjEyNXJlbSAwOyB9XG4ucnRlLWFyZWEgYSB7IGNvbG9yOiAjMUQ0RUQ4OyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuLyogRXhwbMOtY2l0bzogZWwgcmVzZXQgZGUgVGFpbHdpbmQgbGxlZ2EgaGFzdGEgYXF1w60geSBlbCBzdWJyYXlhZG8gaGEgZGUgdmVyc2VcbiAgIGlndWFsIGVzY3JpYmnDqW5kb2xvIHF1ZSBlbiBlbCBjb3JyZW8gcmVjaWJpZG8uICovXG4ucnRlLWFyZWEgdSB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4vKiBJbWFnZW4gcGVnYWRhIGVuIGVsIGN1ZXJwbzogZWwgYW5jaG8gZGVsIGNvcnJlbyBsbyBmaWphIGVsIGF0cmlidXRvIHdpZHRoIGRlbCA8aW1nPixcbiAgIGFxdWkgc29sbyBzZSBpbXBpZGUgcXVlIGRlc2JvcmRlIGxhIHZlbnRhbmEgZXN0cmVjaGEgZGVsIGRvY2suICovXG4ucnRlLWFyZWEgaW1nIHsgbWF4LXdpZHRoOiAxMDAlOyBoZWlnaHQ6IGF1dG87IGRpc3BsYXk6IGJsb2NrOyBtYXJnaW46IDAuMjVyZW0gMDsgYm9yZGVyLXJhZGl1czogNnB4OyB9XG4ucnRlLWFyZWE6ZW1wdHk6OmJlZm9yZSB7XG4gICAgY29udGVudDogYXR0cihkYXRhLXBsYWNlaG9sZGVyKTtcbiAgICBjb2xvcjogIzk0QTNCODtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBEacOhbG9nbyBcIkVsZWdpciBjb252ZXJzYWNpw7NuXCIgKHNoYXJlZC90aHJlYWRDaG9vc2VyRGlhbG9nLmpzKS5cbiAgIENoYXNpcyBkZSBwaWNrZXItZGlhbG9nICsgZG9zIGNvbHVtbmFzOiBsaXN0YSBkZSBoaWxvcyB5IHByZXZpc3VhbGl6YWNpw7NuLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5kaWFsb2cudGhyZWFkLWRpYWxvZyB7IHdpZHRoOiBtaW4oOTR2dywgNjhyZW0pOyBoZWlnaHQ6IG1pbig4OHZoLCA0NnJlbSk7IG1heC1oZWlnaHQ6IDg4dmg7IH1cblxuLnRocmVhZC1kaWFsb2ctYm9keSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDE2cmVtLCAyMnJlbSkgbWlubWF4KDAsIDFmcik7XG59XG4udGhyZWFkLWRpYWxvZy1saXN0IHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0UyRThGMDtcbiAgICBiYWNrZ3JvdW5kOiAjRjhGQUZDO1xufVxuLnRocmVhZC1kaWFsb2ctaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC4xMjVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC44NzVyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGMUY1Rjk7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzLCBib3JkZXItY29sb3IgMC4ycztcbn1cbi50aHJlYWQtZGlhbG9nLWl0ZW06aG92ZXIgeyBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuLnRocmVhZC1kaWFsb2ctaXRlbS5pcy1hY3RpdmUgeyBiYWNrZ3JvdW5kOiB3aGl0ZTsgYm9yZGVyLWxlZnQtY29sb3I6ICMyNTYzRUI7IH1cbi50aHJlYWQtZGlhbG9nLWl0ZW0tdG9wIHsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyBnYXA6IDAuNXJlbTsgbWluLXdpZHRoOiAwOyB9XG4udGhyZWFkLWRpYWxvZy1pdGVtLXN1YmplY3Qge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogIzFFMjkzQjtcbn1cbi50aHJlYWQtZGlhbG9nLWl0ZW0tZGF0ZSB7IGZsZXg6IDAgMCBhdXRvOyBmb250LXNpemU6IDAuNjg3NXJlbTsgY29sb3I6ICM5NEEzQjg7IH1cbi50aHJlYWQtZGlhbG9nLWl0ZW0tcGVvcGxlLFxuLnRocmVhZC1kaWFsb2ctaXRlbS1zbmlwcGV0IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgY29sb3I6ICM2NDc0OEI7XG59XG4udGhyZWFkLWRpYWxvZy1pdGVtLXNuaXBwZXQgeyBjb2xvcjogIzk0QTNCODsgfVxuXG4udGhyZWFkLWRpYWxvZy1wcmV2aWV3IHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgbWluLWhlaWdodDogMDsgbWluLXdpZHRoOiAwOyB9XG4udGhyZWFkLWRpYWxvZy1wcmV2aWV3LWhlYWQge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuMTI1cmVtO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0YxRjVGOTtcbn1cbi50aHJlYWQtZGlhbG9nLXByZXZpZXctaGVhZDplbXB0eSB7IGRpc3BsYXk6IG5vbmU7IH1cbi50aHJlYWQtZGlhbG9nLXByZXZpZXctdGl0bGUgeyBmb250LXNpemU6IDAuODc1cmVtOyBmb250LXdlaWdodDogNjAwOyBjb2xvcjogIzBCMUY0RDsgfVxuLnRocmVhZC1kaWFsb2ctcHJldmlldy1tZXRhIHsgZm9udC1zaXplOiAwLjc1cmVtOyBjb2xvcjogIzY0NzQ4QjsgfVxuLnRocmVhZC1kaWFsb2ctcHJldmlldy1ib2R5IHsgZmxleDogMSAxIGF1dG87IG1pbi1oZWlnaHQ6IDA7IG92ZXJmbG93LXk6IGF1dG87IH1cblxuLnRocmVhZC1kaWFsb2ctbm90ZSB7IHBhZGRpbmc6IDJyZW0gMXJlbTsgdGV4dC1hbGlnbjogY2VudGVyOyBmb250LXNpemU6IDAuODEyNXJlbTsgY29sb3I6ICM5NEEzQjg7IH1cblxuLnRocmVhZC1kaWFsb2ctZm9vdCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNXJlbTtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFMkU4RjA7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG59XG4udGhyZWFkLWRpYWxvZy1mb290LXNwYWNlciB7IGZsZXg6IDEgMSBhdXRvOyB9XG5cbi8qIC0tLS0gRGnDoWxvZ28gwqtDb250YWN0b3MgZGVsIGNsaWVudGXCuyAtLS0tXG4gICBGaWxhcyBhcG95YWRhcyBlbiBsYSBww6FnaW5hLCBzZXBhcmFkYXMgcG9yIGZpbGV0ZTogdW5hIHRhcmpldGEgcG9yIGRpcmVjY2nDs24gc2Vyw61hIGNhcmRcbiAgIGRlbnRybyBkZSBjYXJkIChlbCA8ZGlhbG9nPiB5YSBlcyBsYSBjYWphKS4gKi9cbmRpYWxvZy5kZXN0LWRpYWxvZyB7IHdpZHRoOiBtaW4oOTJ2dywgNDZyZW0pOyB9XG4uZGVzdC1kaWFsb2ctZ3J1cG8gKyAuZGVzdC1kaWFsb2ctZ3J1cG8geyBtYXJnaW4tdG9wOiAxLjVyZW07IH1cbi5kZXN0LWRpYWxvZy1ncnVwby10aXR1bG8ge1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICAgIGNvbG9yOiAjOTRBM0I4O1xuICAgIG1hcmdpbjogMCAwIDAuMjVyZW07XG59XG4uZGVzdC1kaWFsb2ctZmlsYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC43NXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSAwLjVyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRjFGNUY5O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzO1xufVxuLmRlc3QtZGlhbG9nLWZpbGE6Zmlyc3Qtb2YtdHlwZSB7IGJvcmRlci10b3A6IDA7IH1cbi5kZXN0LWRpYWxvZy1maWxhOmhvdmVyIHsgYmFja2dyb3VuZDogI0Y4RkFGQzsgfVxuLmRlc3QtZGlhbG9nLWZpbGEuaXMtb24geyBiYWNrZ3JvdW5kOiAjRUZGNkZGOyB9XG4uZGVzdC1kaWFsb2ctY2hlY2sge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNDQkQ1RTE7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGNvbG9yOiB3aGl0ZTtcbn1cbi5kZXN0LWRpYWxvZy1maWxhLmlzLW9uIC5kZXN0LWRpYWxvZy1jaGVjayB7IGJhY2tncm91bmQ6ICMxRDRFRDg7IGJvcmRlci1jb2xvcjogIzFENEVEODsgfVxuLmRlc3QtZGlhbG9nLWRhdG9zIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgbWluLXdpZHRoOiAwOyBmbGV4OiAxIDEgYXV0bzsgfVxuLmRlc3QtZGlhbG9nLW5vbWJyZSB7IGZvbnQtc2l6ZTogMC44NzVyZW07IGNvbG9yOiAjMEYxNzJBOyB3b3JkLWJyZWFrOiBicmVhay1hbGw7IH1cbi5kZXN0LWRpYWxvZy1lbWFpbCB7IGZvbnQtc2l6ZTogMC43NXJlbTsgY29sb3I6ICM2NDc0OEI7IHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsgfVxuLmRlc3QtZGlhbG9nLWNhcmdvIHsgZmxleDogMCAwIGF1dG87IGZvbnQtc2l6ZTogMC43NXJlbTsgY29sb3I6ICM5NEEzQjg7IH1cbi5kZXN0LWRpYWxvZy12YWNpbyB7IGZvbnQtc2l6ZTogMC44NzVyZW07IGNvbG9yOiAjNjQ3NDhCOyBtYXJnaW46IDA7IH1cblxuLmRlc3QtZGlhbG9nLWFsdGEge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHBhZGRpbmc6IDAuODc1cmVtIDEuNXJlbSAxcmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRTJFOEYwO1xuICAgIGJhY2tncm91bmQ6ICNGOEZBRkM7XG59XG4uZGVzdC1kaWFsb2ctYWx0YSAuZGVzdC1kaWFsb2ctZ3J1cG8tdGl0dWxvIHsgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG4uZGVzdC1kaWFsb2ctYWx0YS1jYW1wb3Mge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxMHJlbSwgMWZyKSk7XG4gICAgYWxpZ24taXRlbXM6IGVuZDtcbiAgICBnYXA6IDAuNXJlbSAwLjc1cmVtO1xufVxuLmRlc3QtZGlhbG9nLWNhbXBvIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAwLjE4NzVyZW07IG1pbi13aWR0aDogMDsgfVxuLmRlc3QtZGlhbG9nLWNhbXBvLWxhYmVsIHsgZm9udC1zaXplOiAwLjY4NzVyZW07IGZvbnQtd2VpZ2h0OiA1MDA7IGNvbG9yOiAjNjQ3NDhCOyB9XG4uZGVzdC1kaWFsb2ctY2FtcG8gaW5wdXQsIC5kZXN0LWRpYWxvZy1jYW1wbyBzZWxlY3QgeyB3aWR0aDogMTAwJTsgfVxuLyogTG9zIGRvcyBxdWUgY2FzaSBzaWVtcHJlIHNlIHJlbGxlbmFuIHZhbiBlbnRlcm9zIGVuIGxhIHByaW1lcmEgZmlsYSBjdWFuZG8gaGF5IHNpdGlvLiAqL1xuLmRlc3QtZGlhbG9nLWNhbXBvLWVtYWlsIHsgZ3JpZC1jb2x1bW46IHNwYW4gMjsgfVxuLmRlc3QtZGlhbG9nLWNhbXBvLWZ1bmNpb24geyBncmlkLWNvbHVtbjogc3BhbiAyOyB9XG4uZGVzdC1kaWFsb2ctYWx0YS1idG4geyBhbGlnbi1zZWxmOiBlbmQ7IHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQwcmVtKSB7XG4gICAgLmRlc3QtZGlhbG9nLWNhbXBvLWVtYWlsLCAuZGVzdC1kaWFsb2ctY2FtcG8tZnVuY2lvbiB7IGdyaWQtY29sdW1uOiBhdXRvOyB9XG59XG5cbi8qIEVsIHBpcGVsaW5lIG5vIGVtaXRlIGZpYWJsZSBsYXMgdmFyaWFudGVzIHJlc3BvbnNpdmUsIGFzw60gcXVlIGVsIGNvbGFwc28gYSB1bmFcbiAgIGNvbHVtbmEgdmEgYSBtYW5vLiAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICAgLnRocmVhZC1kaWFsb2ctYm9keSB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyBncmlkLXRlbXBsYXRlLXJvd3M6IDE0cmVtIG1pbm1heCgwLCAxZnIpOyB9XG4gICAgLnRocmVhZC1kaWFsb2ctbGlzdCB7IGJvcmRlci1yaWdodDogMDsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFMkU4RjA7IH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCdXNjYWRvciBkZSBhcnTDrWN1bG9zIGRlIGxhcyBsw61uZWFzIGRlIHVuIGRvY3VtZW50b1xuICAgKHRlbXBsYXRlcy9hZG1pbi9kb2N1bWVudG9zL19idXNjYWRvcl9hcnRpY3Vsb3NfanMuaHRtbC50d2lnKS5cblxuICAgU3VzdGl0dXllIGFsIDxkYXRhbGlzdD4gbmF0aXZvLCBxdWUgc29sbyBzYWLDrWEgZW5zZcOxYXIgdW5hIGNvbHVtbmEgeSBubyBkaXN0aW5ndcOtYSBkb3NcbiAgIHZhcmlhbnRlcyBjb24gZWwgbWlzbW8gbm9tYnJlIGVuIHByb2R1Y3RvcyBkaXN0aW50b3MuIE1pc21vIGxlbmd1YWplIHZpc3VhbCBxdWUgbG9zXG4gICBkZXNwbGVnYWJsZXMgZGUgY2xpZW50ZSB5IHByb3ZlZWRvciBkZSBlc29zIG1pc21vcyBlZGl0b3Jlcy5cblxuICAgRWwgcGFuZWwgc2UgbW9udGEgZW4gPGJvZHk+IHkgc2UgcG9zaWNpb25hIGEgbWFubzogZGVudHJvIGRlIGxhIHRhcmpldGEgZGUgbMOtbmVhIGxvXG4gICByZWNvcnRhYmEgZWwgb3ZlcmZsb3cgZGUgbGFzIHF1ZSBoYWNlbiBzY3JvbGwuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5hcnRpY3Vsby1sb29rdXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAyNTAwO1xuICAgIG1heC1oZWlnaHQ6IDIwcmVtO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMCAxMnB4IDMycHggcmdiYSgxNSwgMjMsIDQyLCAwLjE2KTtcbn1cbi5hcnRpY3Vsby1sb29rdXAuaGlkZGVuIHsgZGlzcGxheTogbm9uZTsgfVxuXG4uYXJ0aWN1bG8tbG9va3VwLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgLyogTGEgcmVmZXJlbmNpYSB5IGVsIHLDs3R1bG8gZGUgc3RvY2sgb2N1cGFuIGxvIHN1eW87IGVsIHJlc3RvIGVzIHBhcmEgZWwgbm9tYnJlLlxuICAgICAgIGBtaW4tY29udGVudGAgZW4gbGEgcHJpbWVyYSBjb2x1bW5hIGV2aXRhIHF1ZSB1bmEgcmVmZXJlbmNpYSBsYXJnYSBhcGxhc3RlIGFsIG5vbWJyZS4gKi9cbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbi1jb250ZW50IG1pbm1heCgwLCAxZnIpIGF1dG87XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIGdhcDogMC4xMjVyZW0gMC42MjVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRjFGNUY5O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmFydGljdWxvLWxvb2t1cC1pdGVtOmxhc3Qtb2YtdHlwZSB7IGJvcmRlci1ib3R0b206IDA7IH1cbi5hcnRpY3Vsby1sb29rdXAtaXRlbTpob3Zlcixcbi5hcnRpY3Vsby1sb29rdXAtaXRlbS5pcy1hY3RpdmUgeyBiYWNrZ3JvdW5kOiAjRUZGNkZGOyB9XG5cbi5hcnRpY3Vsby1sb29rdXAtcmVmIHtcbiAgICBmb250LWZhbWlseTogdWktbW9ub3NwYWNlLCBTRk1vbm8tUmVndWxhciwgTWVubG8sIG1vbm9zcGFjZTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgY29sb3I6ICMxRDRFRDg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi8qIEVsIG5vbWJyZSBQQVJURSBlbiBkb3MgbMOtbmVhcyBhbnRlcyBxdWUgcmVjb3J0YXJzZTogZXMgbG8gw7puaWNvIHF1ZSBkaXN0aW5ndWUgdW5hIHZhcmlhbnRlXG4gICBkZSBvdHJhIChcIuKApiAtIEJham8gcmVsaWV2ZSAtIFNpbiBpbXByZXNpw7NuXCIgdnMgXCLigKYgLSBBbHRvIHJlbGlldmUgLSBTaW4gaW1wcmVzacOzblwiKSB5IGNvblxuICAgZWxsaXBzaXMgc2UgcGVyZMOtYSBqdXN0byBlbCBmaW5hbCwgcXVlIGVzIGxhIHBhcnRlIHF1ZSBjYW1iaWEuICovXG4uYXJ0aWN1bG8tbG9va3VwLW5vbWJyZSB7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGNvbG9yOiAjMEYxNzJBO1xuICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xufVxuLmFydGljdWxvLWxvb2t1cC1zdG9jayB7XG4gICAgZ3JpZC1yb3c6IDE7XG4gICAgZ3JpZC1jb2x1bW46IDM7XG4gICAgcGFkZGluZzogMC4wNjI1cmVtIDAuMzc1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OTlweDtcbiAgICBiYWNrZ3JvdW5kOiAjRUNGREY1O1xuICAgIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XG4gICAgY29sb3I6ICMwNDc4NTc7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmFydGljdWxvLWxvb2t1cC12YWNpbyxcbi5hcnRpY3Vsby1sb29rdXAtbWFzIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgY29sb3I6ICM2NDc0OEI7XG59XG4uYXJ0aWN1bG8tbG9va3VwLW1hcyB7IGJvcmRlci10b3A6IDFweCBzb2xpZCAjRjFGNUY5OyBiYWNrZ3JvdW5kOiAjRjhGQUZDOyB9XG5cbi8qIEJvdMOzbiDCq0NhdMOhbG9nb8K7IHBlZ2FkbyBhbCBjw7NkaWdvIGRlIGxhIGzDrW5lYSB5IGVsIGRpw6Fsb2dvIHF1ZSBhYnJlOiBlbCDDoXJib2wgZW50ZXJvLCBwYXJhXG4gICBlbGVnaXIgbG8gcXVlIG5vIHNlIHNhYmUgbm9tYnJhci4gTGFzIGZpbGFzIHNvbiBsYXMgZGVsIHJlcGFydG8gZGUgY2F0w6Fsb2dvIGRlbCBjbGllbnRlLiAqL1xuLmFydGktY29kaWdvLXdyYXAgeyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogc3RyZXRjaDsgZ2FwOiAwLjM3NXJlbTsgbWluLXdpZHRoOiAwOyB9XG4uYXJ0aS1jb2RpZ28td3JhcCA+IC5saW5lYS1jb2RpZ28geyBmbGV4OiAxIDEgYXV0bzsgbWluLXdpZHRoOiAwOyBtYXJnaW4tdG9wOiAwOyB9XG4uYXJ0aS1jYXRhbG9nby1idG4ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDIuMjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgY29sb3I6ICM0NzU1Njk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMsIGNvbG9yIDAuMTVzLCBib3JkZXItY29sb3IgMC4xNXM7XG59XG4uYXJ0aS1jYXRhbG9nby1idG46aG92ZXIgeyBiYWNrZ3JvdW5kOiAjRUZGNkZGOyBib3JkZXItY29sb3I6ICNCRkRCRkU7IGNvbG9yOiAjMUQ0RUQ4OyB9XG4uYXJ0aS1jYXRhbG9nby1idG46ZGlzYWJsZWQgeyBkaXNwbGF5OiBub25lOyB9XG4uYXJ0aS1jYXRhbG9nby1idG4gc3ZnIHsgd2lkdGg6IDFyZW07IGhlaWdodDogMXJlbTsgfVxuXG5kaWFsb2cuYXJ0aS1jYXRhbG9nbyB7IGhlaWdodDogODh2aDsgfVxuLmFydGktY2F0YWxvZ28tYm9keSB7IGZsZXg6IDEgMSBhdXRvOyBtaW4taGVpZ2h0OiAwOyBvdmVyZmxvdy15OiBhdXRvOyBzY3JvbGxiYXItd2lkdGg6IHRoaW47IHBhZGRpbmc6IDAuMzc1cmVtIDAgMXJlbTsgfVxuLmFydGktY2F0YWxvZ28tYm9keSAudHJhbnNmZXItcm93LW1haW4geyBwYWRkaW5nLXRvcDogMC4zNzVyZW07IHBhZGRpbmctYm90dG9tOiAwLjM3NXJlbTsgfVxuLmFydGktY2F0YWxvZ28taG9qYSAudHJhbnNmZXItcm93LW5vbWJyZSB7IHdoaXRlLXNwYWNlOiBub3JtYWw7IG92ZXJmbG93LXdyYXA6IGFueXdoZXJlOyBsaW5lLWhlaWdodDogMS4zOyB9XG4uYXJ0aS1jYXRhbG9nby1ob2phOmhvdmVyLCAuYXJ0aS1jYXRhbG9nby1ob2phLmlzLWFjdGl2ZSB7IGJhY2tncm91bmQ6ICNFRkY2RkY7IH1cbi5hcnRpLWNhdGFsb2dvLWhvamEgLmFydGljdWxvLWxvb2t1cC1yZWYgeyBmbGV4OiAwIDAgYXV0bzsgbWluLXdpZHRoOiA1LjVyZW07IH1cbi5hcnRpLWNhdGFsb2dvLWNoZXZyb24geyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDAuODc1cmVtOyBoZWlnaHQ6IDAuODc1cmVtOyBjb2xvcjogIzk0QTNCODsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzOyB9XG4udHJhbnNmZXItcm93W2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIC5hcnRpLWNhdGFsb2dvLWNoZXZyb24geyB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IH1cbi5hcnRpLWNhdGFsb2dvLW1hcyB7IHBhZGRpbmc6IDAuNXJlbSAxcmVtOyBmb250LXNpemU6IDAuNzVyZW07IGNvbG9yOiAjNjQ3NDhCOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU2VsZWNjacOzbiBkZSBkb2N1bWVudG9zIGVuIGxhIGZpY2hhIGRlbCBleHBlZGllbnRlXG4gICAodGVtcGxhdGVzL2FkbWluL2V4cGVkaWVudGVzL19tYWNyb3MuaHRtbC50d2lnIOKGkiBmaWxhX2RvYyguLi4sIHNlbCkpLlxuXG4gICBTaXJ2ZSBwYXJhIGp1bnRhciB2YXJpYXMgcHJvZm9ybWFzIGVuIHVuIHNvbG8gcGVkaWRvIGFsIHByb3ZlZWRvci4gTGEgY2FzaWxsYSBubyBzZVxuICAgdmUgZW4gcmVwb3NvOiBsYSBmaWNoYSBkZWwgZXhwZWRpZW50ZSBlcyBkZWxpYmVyYWRhbWVudGUgcGxhbmEgeSBlc3RlIGdlc3RvIHNlIHVzYSBkZVxuICAgdXZhcyBhIHBlcmFzLCBhc8OtIHF1ZSBubyBwdWVkZSBjb2JyYXIgcnVpZG8gcGVybWFuZW50ZS5cblxuICAgUmVnbGFzIGV4cGzDrWNpdGFzIHkgbm8gbGFzIHZhcmlhbnRlcyBgZ3JvdXAtaG92ZXIvKmAgeSBgY2hlY2tlZDpgIGRlIFRhaWx3aW5kOiBlbFxuICAgcGlwZWxpbmUgZGUgRW5jb3JlIGVuIFdpbmRvd3Mgbm8gbGFzIGVtaXRlIGRlIGZvcm1hIGZpYWJsZSAobWlzbW8gbW90aXZvIHF1ZSBlbCByZXN0b1xuICAgZGUgYmxvcXVlcyBhIG1hbm8gZGUgZXN0ZSBhcmNoaXZvKS5cblxuICAgYG9wYWNpdHlgLCBubyBgZGlzcGxheWAvYHZpc2liaWxpdHlgOiBhc8OtIGxhIGNhc2lsbGEgc2lndWUgc2llbmRvIGVuZm9jYWJsZSBjb24gZWxcbiAgIHRlY2xhZG8geSBzZSBwdWVkZSBsbGVnYXIgYSBlbGxhIHRhYnVsYW5kby5cblxuICAgTG9zIHNlbGVjdG9yZXMgbGxldmFuIGVsIGBpbnB1dGAgZGVsYW50ZSBhIHByb3DDs3NpdG8gKGBpbnB1dC5kb2Mtc2VsYCwgbm8gYC5kb2Mtc2VsYCk6XG4gICBlbCBDU1MgZGUgRWFzeUFkbWluL0Jvb3RzdHJhcCBlc3RpbGl6YSBsYXMgY2FzaWxsYXMgcG9yIGVsZW1lbnRvIHkgZ2FuYSBhIHVuYSBjbGFzZVxuICAgc3VlbHRhLCBhc8OtIHF1ZSBsYSBjYXNpbGxhIE1BUkNBREEgc2UgcXVlZGFiYSBpbnZpc2libGUuIEVzIGVsIG1pc21vIGFycmVnbG8gZGVcbiAgIGNhc2NhZGEgcXVlIGVsIHJlc3RvIGRlIGJsb3F1ZXMgZGUgZXN0ZSBhcmNoaXZvLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5pbnB1dC5kb2Mtc2VsIHtcbiAgICB3aWR0aDogMC44NzVyZW07XG4gICAgaGVpZ2h0OiAwLjg3NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0NCRDVFMTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2U7XG59XG50cjpob3ZlciA+IHRkID4gaW5wdXQuZG9jLXNlbCxcbmlucHV0LmRvYy1zZWw6Zm9jdXMtdmlzaWJsZSxcbmlucHV0LmRvYy1zZWw6Y2hlY2tlZCB7IG9wYWNpdHk6IDE7IH1cblxuLyogRmlsYSBtYXJjYWRhOiBlbCBtaXNtbyBhenVsIGZsb2pvIGNvbiBlbCBxdWUgc2UgcmVzYWx0YSBsYSBjb252ZXJzYWNpw7NuIGFiaWVydGEgZGVsXG4gICBidXrDs24sIHBhcmEgcXVlIHNlIGxlYSBcImVzdG8gZW50cmEgZW4gbGEgYWNjacOzblwiIHNpbiBjb21wZXRpciBjb24gbG9zIGVubGFjZXMuICovXG50ci5pcy1kb2Mtc2VsZWN0ZWQgPiB0ZCB7IGJhY2tncm91bmQ6ICNFRkY2RkY7IH1cblxuLyogQmFycmEgZmxvdGFudGUgZGUgbGEgc2VsZWNjacOzbi4gQXBhcmVjZSBzb2xvIGNvbiBkb3MgbyBtw6FzIG1hcmNhZGFzOiBjb24gdW5hLCBqdW50YXJcbiAgIG5vIHNpZ25pZmljYSBuYWRhLiAqL1xuLmV4cC1zZWwtYmFyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgbGVmdDogNTAlO1xuICAgIGJvdHRvbTogMS41cmVtO1xuICAgIHotaW5kZXg6IDQwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjc1cmVtO1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDFyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45Nyk7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDZweCk7XG4gICAgYm94LXNoYWRvdzogMCAxMnB4IDMycHggcmdiYSgxNSwgMjMsIDQyLCAwLjE2KTtcbn1cbi5leHAtc2VsLWJhci5pcy12aXNpYmxlIHsgZGlzcGxheTogZmxleDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENhbXBvIG9ibGlnYXRvcmlvIFNJTiByZWxsZW5hciwgZW4gbG9zIGVkaXRvcmVzIGRlIGRvY3VtZW50by5cblxuICAgQW50ZXMgc2UgbWFyY2FiYSBjb24gdHJlcyB1dGlsaXRpZXMgc3VlbHRhcyAoYGJvcmRlci1jb3JhbC00MDAgYmctY29yYWwtNTBgKSB5IGVsIGF2aXNvIHNlXG4gICBwZXJkw61hIGVudHJlIHF1aW5jZSBjYW1wb3M6IGVsIGJvcmRlIHJvc2EgYSAxIHB4IG5vIHNlIHZlIGRlIHVuIHZpc3Rhem8uIEFxdcOtIGVsIGNhbXBvIHNlXG4gICBwaW50YSBlbnRlcm8g4oCUZm9uZG8sIGJvcmRlIGdydWVzbyB5IGJhcnJhIGl6cXVpZXJkYeKAlCBwYXJhIHF1ZSBsYSBwYW50YWxsYSBlbnNlw7FlIFNPTEEgcXXDqVxuICAgcXVlZGEgcG9yIHJlbGxlbmFyLlxuXG4gICBVTkxBWUVSRUQgeSBjb24gc2VsZWN0b3IgZWxlbWVudG8rY2xhc2UgcG9yIGxvIG1pc21vIHF1ZSBgLmNvbnRyb2wtZmxhdGA6IGVsIEJvb3RzdHJhcCBkZVxuICAgRWFzeUFkbWluIGRlZmluZSBgaW5wdXRgL2BzZWxlY3RgIHNpbiBjYXBhLCB5IGVuIGxhIGNhc2NhZGEgY3VhbHF1aWVyIHJlZ2xhIHNpbiBjYXBhIGdhbmEgYVxuICAgY3VhbHF1aWVyIGBAbGF5ZXJgIOKAlGluY2x1aWRhcyBsYXMgdXRpbGl0aWVzIGRlIFRhaWx3aW5k4oCULiBEZW50cm8gZGUgbGEgY2FwYSBlc3RvIHNlIHF1ZWRhcsOtYVxuICAgc2luIGZvbmRvLiBMbyBwb25lIHkgbG8gcXVpdGEgbGEgdmFsaWRhY2nDs24gcmVhY3RpdmEgZGUgY2FkYSBlZGl0b3IuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmlucHV0LmNhbXBvLWZhbHRhLFxuc2VsZWN0LmNhbXBvLWZhbHRhLFxudGV4dGFyZWEuY2FtcG8tZmFsdGEge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY29yYWwtNDAwLCAjRkY4QTdBKTtcbiAgICBib3JkZXItbGVmdC13aWR0aDogM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWNvcmFsLTUwLCAjRkZGMUVFKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tY29sb3ItY29yYWwtMjAwLCAjRkZCM0E4KTtcbn1cbmlucHV0LmNhbXBvLWZhbHRhOmZvY3VzLFxuc2VsZWN0LmNhbXBvLWZhbHRhOmZvY3VzLFxudGV4dGFyZWEuY2FtcG8tZmFsdGE6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItY29yYWwtNTAwLCAjRkY2QjVBKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tY29sb3ItY29yYWwtMzAwLCAjRkZCM0E4KTtcbn1cbmlucHV0LmNhbXBvLWZhbHRhOjpwbGFjZWhvbGRlcixcbnRleHRhcmVhLmNhbXBvLWZhbHRhOjpwbGFjZWhvbGRlciB7IGNvbG9yOiB2YXIoLS1jb2xvci1jb3JhbC02MDAsICNFODRGM0QpOyBvcGFjaXR5OiAwLjc7IH1cblxuLyogQXN0ZXJpc2NvIGRlbCByw7N0dWxvOiBlbCBtaXNtbyBjb3JhbCwgcGFyYSBxdWUgcsOzdHVsbyB5IGNhbXBvIHNlIGxlYW4gY29tbyB1bmEgc29sYSBtYXJjYS4gKi9cbi5jYW1wby1mYWx0YS1tYXJjYSB7IGNvbG9yOiB2YXIoLS1jb2xvci1jb3JhbC02MDAsICNFODRGM0QpOyBmb250LXdlaWdodDogNzAwOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ2F0w6Fsb2dvIHkgbcOhcmdlbmVzIGRlIHVuIGNsaWVudGUgKHNoYXJlZC9jYXRhbG9nb0FzaWduYWNpb25QYW5lbC5qcykuXG5cbiAgIFRyZXMgY29sdW1uYXMgZGVudHJvIGRlIHVuIHNvbG8gbWFyY286IGNhdMOhbG9nbyB8IGFzaWduYWRvIHwgZXNjYWxhcy4gRXMgbGEgw7puaWNhXG4gICBjYWphIGRlIGxhIHBlc3Rhw7FhIOKAlHVuIGRvYmxlIHBhbmVsIHNpbiBib3JkZSBzZSBkZXNoYWNlIGVuIGxhIHDDoWdpbmHigJQgeSBwb3IgZGVudHJvXG4gICB2YSBzaW4gbcOhcyBjYWphczogZmlsZXRlcyB5IHN1cGVyZmljaWVzLCBuYWRhIGFuaWRhZG8uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi50cmFuc2Zlci1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBoZWlnaHQ6IG1pbig2OHZoLCA0MHJlbSk7XG4gICAgbWluLWhlaWdodDogMjZyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG4udHJhbnNmZXItaW5saW5lLWhlYWQge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNzVyZW07XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC44NzVyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFMkU4RjA7XG59XG4udHJhbnNmZXItaW5saW5lLWhlYWQgLnBpY2tlci1kaWFsb2ctc2VhcmNoIHsgZmxleDogMCAxIDIycmVtOyB9XG4udHJhbnNmZXItaW5saW5lLWhpbnQgeyBmbGV4OiAxIDEgYXV0bzsgbWluLXdpZHRoOiAwOyBmb250LXNpemU6IDAuNjg3NXJlbTsgY29sb3I6ICM5NEEzQjg7IH1cblxuLnRyYW5zZmVyLWJvZHkge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIG1pbm1heCgwLCAxLjE1ZnIpIG1pbm1heCgwLCAxN3JlbSk7XG59XG4udHJhbnNmZXItcGFuZWwgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBtaW4taGVpZ2h0OiAwOyBtaW4td2lkdGg6IDA7IH1cbi50cmFuc2Zlci1wYW5lbCArIC50cmFuc2Zlci1wYW5lbCB7IGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0UyRThGMDsgfVxuLnRyYW5zZmVyLXBhbmVsLWhlYWQge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNXJlbTtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSAxcmVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRjFGNUY5O1xuICAgIGJhY2tncm91bmQ6ICNGOEZBRkM7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gICAgY29sb3I6ICM2NDc0OEI7XG59XG4udHJhbnNmZXItcGFuZWwtY291bnQgeyBtYXJnaW4tbGVmdDogYXV0bzsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ubywgdWktbW9ub3NwYWNlKSwgbW9ub3NwYWNlOyBsZXR0ZXItc3BhY2luZzogMDsgY29sb3I6ICMwQjFGNEQ7IH1cbi50cmFuc2Zlci1wYW5lbC1ib2R5IHsgZmxleDogMSAxIGF1dG87IG1pbi1oZWlnaHQ6IDA7IG92ZXJmbG93LXk6IGF1dG87IHNjcm9sbGJhci13aWR0aDogdGhpbjsgcGFkZGluZzogMC4zNzVyZW0gMDsgfVxuXG4vKiBVbmEgZmlsYSA9IHVuIG5vZG8gZGVsIMOhcmJvbCAoZmFtaWxpYSwgcHJvZHVjdG8gbyB2YXJpYW50ZSkuIEVsIHNhbmdyYWRvIGxvIHBvbmVcbiAgIGAtLW5pdmVsYCBwYXJhIG5vIHRlbmVyIHRyZXMgY2xhc2VzIHF1ZSBzb2xvIGNhbWJpYW4gZWwgcGFkZGluZy4gKi9cbi50cmFuc2Zlci1yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuMjVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XG59XG4udHJhbnNmZXItcm93OmhvdmVyIHsgYmFja2dyb3VuZDogI0YxRjVGOTsgfVxuLyogRWwgb2JqZXRpdm8gZGUgY2xpYyBlcyBlbCB0ZXh0byBkZSBsYSBmaWxhLCBubyBsYSBmaWxhIGVudGVyYTogYWwgbGFkbyB2aXZlIGVsXG4gICBkZXNwbGVnYWJsZSBkZSBlc2NhbGEsIHkgdW4gc2VsZWN0IGRlbnRybyBkZSB1biBidXR0b24gbm8gcmVjaWJlIGVsIGNsaWMuICovXG4udHJhbnNmZXItcm93LW1haW4ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjM3NXJlbTtcbiAgICBwYWRkaW5nOiAwLjI1cmVtIDAuMjVyZW0gMC4yNXJlbSBjYWxjKDAuNzVyZW0gKyB2YXIoLS1uaXZlbCwgMCkgKiAxcmVtKTtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4udHJhbnNmZXItcm93LWZhbWlsaWEgeyBmb250LXdlaWdodDogNzAwOyBjb2xvcjogIzBCMUY0RDsgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07IH1cbi50cmFuc2Zlci1yb3ctcHJvZHVjdG8geyBmb250LXdlaWdodDogNjAwOyBjb2xvcjogIzFFMjkzQjsgfVxuLnRyYW5zZmVyLXJvdy1nYW1hIHsgZm9udC13ZWlnaHQ6IDYwMDsgY29sb3I6ICMzMzQxNTU7IH1cbi50cmFuc2Zlci1yb3ctdmFyaWFudGUgeyBjb2xvcjogIzQ3NTU2OTsgfVxuLnRyYW5zZmVyLXJvdy1ub21icmUgeyBmbGV4OiAxIDEgYXV0bzsgbWluLXdpZHRoOiAwOyBvdmVyZmxvdzogaGlkZGVuOyB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuLnRyYW5zZmVyLXJvdy1jb3VudCB7IGZsZXg6IDAgMCBhdXRvOyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vLCB1aS1tb25vc3BhY2UpLCBtb25vc3BhY2U7IGZvbnQtc2l6ZTogMC42ODc1cmVtOyBjb2xvcjogIzk0QTNCODsgfVxuLnRyYW5zZmVyLXJvdy1jaGV2cm9uIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAwLjg3NXJlbTsgaGVpZ2h0OiAwLjg3NXJlbTsgY29sb3I6ICM5NEEzQjg7IHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1czsgfVxuLnRyYW5zZmVyLXJvd1thcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAudHJhbnNmZXItcm93LWNoZXZyb24geyB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IH1cbi50cmFuc2Zlci1yb3ctaHVlY28geyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDAuODc1cmVtOyB9XG5cbi8qIExhIGVzY2FsYSBzZSB2ZSBzaWVtcHJlIOKAlGVzIHVuIGRhdG8sIG5vIHVuYSBhY2Npw7Nu4oCULCBwZXJvIGVuIGdyaXMgbWllbnRyYXMgc2UgaGVyZWRhOlxuICAgYXPDrSBzZSBkaXN0aW5ndWUgZGUgdW4gdmlzdGF6byBsbyBwYWN0YWRvIGRlIGxvIHF1ZSBzYWxlIGRlbCBlc2NhbGFkbyBnZW5lcmFsLiAqL1xuLnRyYW5zZmVyLWVzY2FsYS1zZWwge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1heC13aWR0aDogOS41cmVtO1xuICAgIHBhZGRpbmc6IDAuMDYyNXJlbSAwLjI1cmVtO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogIzk0QTNCODtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cywgY29sb3IgMC4xNXM7XG59XG4udHJhbnNmZXItZXNjYWxhLXNlbDpob3ZlciB7IGJhY2tncm91bmQ6ICNFMkU4RjA7IGNvbG9yOiAjMzM0MTU1OyB9XG4udHJhbnNmZXItZXNjYWxhLXNlbC5pcy1wcm9waWEgeyBjb2xvcjogIzFENEVEODsgZm9udC13ZWlnaHQ6IDcwMDsgYmFja2dyb3VuZDogI0VGRjZGRjsgfVxuLnRyYW5zZmVyLWVzY2FsYS1uYSB7IGZsZXg6IDAgMCBhdXRvOyBmb250LXNpemU6IDAuNjg3NXJlbTsgY29sb3I6ICNDQkQ1RTE7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4vKiBUZWNobyBkZSB1bmlkYWRlczogbWlzbW8gdHJhdG8gcXVlIGxhIGVzY2FsYSDigJRkYXRvIGEgbGEgdmlzdGEsIGdyaXMgbWllbnRyYXMgc2UgaGVyZWRh4oCULCBjb25cbiAgIGVsIHZhbG9yIGhlcmVkYWRvIGRlIHBsYWNlaG9sZGVyIHBhcmEgcXVlIHVuIGh1ZWNvIHZhY2lvIHNpZ2EgZGljaWVuZG8gaGFzdGEgZG9uZGUgc2UgY290aXphLlxuICAgU2UgbGUgcXVpdGFuIGxhcyBmbGVjaGFzIGRlbCBudW1iZXI6IGVuIHVuYSBmaWxhIGRlIDI0IHB4IHNlIGNvbWVuIGVsIG51bWVyby4gKi9cbi50cmFuc2Zlci10b3BlIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogNC41cmVtO1xuICAgIHBhZGRpbmc6IDAuMDYyNXJlbSAwLjI1cmVtO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ubywgdWktbW9ub3NwYWNlKSwgbW9ub3NwYWNlO1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgY29sb3I6ICM5NEEzQjg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cywgY29sb3IgMC4xNXM7XG59XG4udHJhbnNmZXItdG9wZTo6cGxhY2Vob2xkZXIgeyBjb2xvcjogI0NCRDVFMTsgZm9udC1zdHlsZTogaXRhbGljOyB9XG4udHJhbnNmZXItdG9wZTpob3ZlciwgLnRyYW5zZmVyLXRvcGU6Zm9jdXMgeyBiYWNrZ3JvdW5kOiAjRTJFOEYwOyBjb2xvcjogIzMzNDE1NTsgb3V0bGluZTogMDsgfVxuLnRyYW5zZmVyLXRvcGUuaXMtcHJvcGlhIHsgY29sb3I6ICMxRDRFRDg7IGZvbnQtd2VpZ2h0OiA3MDA7IGJhY2tncm91bmQ6ICNFRkY2RkY7IH1cbi50cmFuc2Zlci10b3BlOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuLnRyYW5zZmVyLXRvcGU6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24geyAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IG1hcmdpbjogMDsgfVxuLnRyYW5zZmVyLXRvcGUgeyAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgYXBwZWFyYW5jZTogdGV4dGZpZWxkOyB9XG5cbi50cmFuc2Zlci1tb3ZlIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxLjVyZW07XG4gICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogIzY0NzQ4QjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cywgY29sb3IgMC4xNXM7XG59XG4udHJhbnNmZXItbW92ZTpob3ZlciwgLnRyYW5zZmVyLW1vdmU6Zm9jdXMtdmlzaWJsZSB7IGJhY2tncm91bmQ6ICNEQkVBRkU7IGNvbG9yOiAjMjU2M0VCOyB9XG5cbi50cmFuc2Zlci1jaGVjayB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogMC44NzVyZW07IGhlaWdodDogMC44NzVyZW07IG1hcmdpbjogMDsgYWNjZW50LWNvbG9yOiAjMUQ0RUQ4OyBjdXJzb3I6IHBvaW50ZXI7IH1cbi50cmFuc2Zlci1yb3cgPiAudHJhbnNmZXItY2hlY2sgeyBtYXJnaW4tbGVmdDogY2FsYygwLjc1cmVtICsgdmFyKC0tbml2ZWwsIDApICogMXJlbSk7IH1cbi50cmFuc2Zlci1yb3cgPiAudHJhbnNmZXItY2hlY2sgKyAudHJhbnNmZXItcm93LW1haW4geyBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07IH1cblxuLyogTW92ZXIgZW4gYmxvcXVlIGxvIG1hcmNhZG86IGVuIGxhIGNhYmVjZXJhIGRlbCBwYW5lbCwgcXVlIGVzIGRlIGRvbmRlIHNhbGUgbG8gcXVlIHNlIG11ZXZlLiAqL1xuLnRyYW5zZmVyLWJ1bGsge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjI1cmVtO1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjVyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBiYWNrZ3JvdW5kOiAjMUQ0RUQ4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzLCBvcGFjaXR5IDAuMTVzO1xufVxuLnRyYW5zZmVyLWJ1bGs6aG92ZXIgeyBiYWNrZ3JvdW5kOiAjMUU0MEFGOyB9XG4udHJhbnNmZXItYnVsazpkaXNhYmxlZCB7IG9wYWNpdHk6IDAuMzU7IGN1cnNvcjogZGVmYXVsdDsgYmFja2dyb3VuZDogIzY0NzQ4QjsgfVxuXG4udHJhbnNmZXItdmFjaW8geyBwYWRkaW5nOiAyLjVyZW0gMXJlbTsgdGV4dC1hbGlnbjogY2VudGVyOyBmb250LXNpemU6IDAuODEyNXJlbTsgY29sb3I6ICM5NEEzQjg7IH1cblxuLyogQ29sdW1uYSBkZSBjb25zdWx0YTogbG9zIGVzY2FsYWRvcyBhIGxhIHZpc3RhIG1pZW50cmFzIHNlIGFzaWduYW4gcHJvZHVjdG9zLCBxdWUgZXJhXG4gICBsYSBhbHRlcm5hdGl2YSBhIGlyc2UgYSAvYWRtaW4vbWFyZ2VuZXMgeSB2b2x2ZXIuICovXG4udHJhbnNmZXItYXNpZGUgeyBiYWNrZ3JvdW5kOiAjRjhGQUZDOyB9XG4udHJhbnNmZXItYXNpZGUgLnRyYW5zZmVyLXBhbmVsLWJvZHkgeyBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtOyB9XG4udHJhbnNmZXItYXNpZGUtbGluayB7IG1hcmdpbi1sZWZ0OiBhdXRvOyBmb250LXNpemU6IDAuNjg3NXJlbTsgZm9udC13ZWlnaHQ6IDYwMDsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IGxldHRlci1zcGFjaW5nOiAwOyBjb2xvcjogIzI1NjNFQjsgfVxuLnRyYW5zZmVyLWFzaWRlLWxpbms6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuLnRyYW5zZmVyLWFzaWRlLWJsb2NrIHsgcGFkZGluZy1ib3R0b206IDAuNzVyZW07IG1hcmdpbi1ib3R0b206IDAuNXJlbTsgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFMkU4RjA7IH1cbi50cmFuc2Zlci1hc2lkZS1ibG9jayAubGFiZWwgeyBmb250LXNpemU6IDAuNjg3NXJlbTsgfVxuLnRyYW5zZmVyLWFzaWRlLXJvdHVsbyB7IGZvbnQtc2l6ZTogMC42MjVyZW07IGZvbnQtd2VpZ2h0OiA3MDA7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGxldHRlci1zcGFjaW5nOiAwLjA4ZW07IGNvbG9yOiAjOTRBM0I4OyBtYXJnaW4tYm90dG9tOiAwLjM3NXJlbTsgfVxuLnRyYW5zZmVyLWFzaWRlLW5vdGEgeyBtYXJnaW4tdG9wOiAwLjM3NXJlbTsgZm9udC1zaXplOiAwLjY4NzVyZW07IGxpbmUtaGVpZ2h0OiAxLjM1OyBjb2xvcjogIzk0QTNCODsgfVxuXG4udHJhbnNmZXItZXNjYWxhIHsgcGFkZGluZzogMC4yNXJlbSAwOyB9XG4udHJhbnNmZXItZXNjYWxhLXN1bSB7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogMC4zNzVyZW07IHBhZGRpbmc6IDAuMTI1cmVtIDA7IH1cbi50cmFuc2Zlci1lc2NhbGEtbm9tYnJlIHsgZm9udC1zaXplOiAwLjc1cmVtOyBmb250LXdlaWdodDogNzAwOyBjb2xvcjogIzBCMUY0RDsgfVxuLnRyYW5zZmVyLWVzY2FsYS10YWcge1xuICAgIGZvbnQtc2l6ZTogMC41NjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNmVtO1xuICAgIGNvbG9yOiAjQjA4QTJFO1xuICAgIGJhY2tncm91bmQ6ICNGQkYzREU7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIHBhZGRpbmc6IDAuMDYyNXJlbSAwLjI1cmVtO1xufVxuLnRyYW5zZmVyLWVzY2FsYS10cmFtb3MgeyBtYXJnaW46IDAuMjVyZW0gMCAwIDEuMjVyZW07IH1cbi50cmFuc2Zlci1lc2NhbGEtdHJhbW8geyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogYmFzZWxpbmU7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgZ2FwOiAwLjVyZW07IHBhZGRpbmc6IDAuMDYyNXJlbSAwOyBmb250LXNpemU6IDAuNjg3NXJlbTsgY29sb3I6ICM2NDc0OEI7IH1cbi50cmFuc2Zlci1lc2NhbGEtdHJhbW8gc3BhbjpsYXN0LWNoaWxkIHsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ubywgdWktbW9ub3NwYWNlKSwgbW9ub3NwYWNlOyBjb2xvcjogIzBCMUY0RDsgZm9udC13ZWlnaHQ6IDYwMDsgfVxuLnRyYW5zZmVyLWVzY2FsYS12YWNpYSB7IG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyBmb250LXNpemU6IDAuNjg3NXJlbTsgY29sb3I6ICNFODRGM0Q7IH1cblxuLnRyYW5zZmVyLWh1ZXJmYW5hIHsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiAwLjM3NXJlbTsgcGFkZGluZzogMC4xMjVyZW0gMDsgfVxuLnRyYW5zZmVyLWh1ZXJmYW5hLW5vbWJyZSB7IGZsZXg6IDEgMSBhdXRvOyBtaW4td2lkdGg6IDA7IG92ZXJmbG93OiBoaWRkZW47IHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB3aGl0ZS1zcGFjZTogbm93cmFwOyBmb250LXNpemU6IDAuNjg3NXJlbTsgY29sb3I6ICM0NzU1Njk7IH1cbi50cmFuc2Zlci1odWVyZmFuYS1lc2NhbGEgeyBmbGV4OiAwIDAgYXV0bzsgZm9udC1zaXplOiAwLjYyNXJlbTsgZm9udC13ZWlnaHQ6IDcwMDsgY29sb3I6ICMxRDRFRDg7IH1cblxuLnRyYW5zZmVyLWZvb3Qge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjVyZW07XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC44NzVyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFMkU4RjA7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG59XG4udHJhbnNmZXItZm9vdC1kaWZmIHsgZm9udC1zaXplOiAwLjgxMjVyZW07IGNvbG9yOiAjNjQ3NDhCOyB9XG4udHJhbnNmZXItZm9vdC1kaWZmIHN0cm9uZyB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8sIHVpLW1vbm9zcGFjZSksIG1vbm9zcGFjZTsgY29sb3I6ICMwQjFGNEQ7IH1cbi50cmFuc2Zlci1mb290LXNwYWNlciB7IGZsZXg6IDEgMSBhdXRvOyB9XG5cbi8qIEVsIHBpcGVsaW5lIG5vIGVtaXRlIGZpYWJsZSBsYXMgdmFyaWFudGVzIHJlc3BvbnNpdmU6IGVsIGNvbGFwc28gdmEgYSBtYW5vLiAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIC50cmFuc2Zlci1ib2R5IHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSBtaW5tYXgoMCwgMS4xNWZyKTsgfVxuICAgIC50cmFuc2Zlci1hc2lkZSB7IGdyaWQtY29sdW1uOiAxIC8gLTE7IGJvcmRlci1sZWZ0OiAwOyBib3JkZXItdG9wOiAxcHggc29saWQgI0UyRThGMDsgbWF4LWhlaWdodDogMThyZW07IH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAgIC50cmFuc2Zlci1pbmxpbmUgeyBoZWlnaHQ6IGF1dG87IH1cbiAgICAudHJhbnNmZXItYm9keSB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyB9XG4gICAgLnRyYW5zZmVyLXBhbmVsIHsgbWF4LWhlaWdodDogMjJyZW07IH1cbiAgICAudHJhbnNmZXItcGFuZWwgKyAudHJhbnNmZXItcGFuZWwgeyBib3JkZXItbGVmdDogMDsgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFMkU4RjA7IH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBHdcOtYSBkZWwgcG9ydGFsIGRlbCBjbGllbnRlICh0ZW1wbGF0ZXMvYWRtaW4vcG9ydGFsX2d1aWEvKS5cbiAgIFNpbiBjYXBhIHkgY29uIHZhbG9yZXMgZXhwbMOtY2l0b3MsIGNvbW8gZWwgYmxvcXVlIGRlIHRyYW5zZmVyZW5jaWEgZGUgYXJyaWJhOiBlbCBCb290c3RyYXBcbiAgIGRlIEVhc3lBZG1pbiBpbXBvbmUgdGFtYcOxbyBhIGxvcyA8aDI+LzxoMz4geSBtw6FyZ2VuZXMgYSA8dWw+LzxvbD4vPGZpZ3VyZT4uXG4gICBUZXh0byB5IGNhcHR1cmFzIGNvbXBhcnRlbiBsYSBNSVNNQSBjb2x1bW5hICguZ3VpYS1jYXBpdHVsb3MpOiBjb24gYW5jaG9zIGRpc3RpbnRvcyBsYVxuICAgcMOhZ2luYSBzZSBsZcOtYSBhIHNhbHRvcy5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmd1aWEgeyBjb2xvcjogIzMzNDE1NTsgfVxuLmd1aWEtY2FiZWNlcmEgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBnYXA6IDAuMjVyZW07IH1cbmgyLmd1aWEtdGl0dWxvIHsgZm9udC1zaXplOiAyLjI1cmVtOyBsaW5lLWhlaWdodDogMS4xOyBmb250LXdlaWdodDogNzAwOyBsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07IGNvbG9yOiAjMEIxRjREOyBtYXJnaW46IDA7IH1cbi5ndWlhLXN1YnRpdHVsbyB7IGZvbnQtc2l6ZTogMC45Mzc1cmVtOyBjb2xvcjogIzY0NzQ4QjsgbWFyZ2luOiAwLjVyZW0gMCAwOyBtYXgtd2lkdGg6IDQycmVtOyB9XG4uZ3VpYS1jdWVycG8geyBkaXNwbGF5OiBncmlkOyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDE0cmVtIG1pbm1heCgwLCA1OHJlbSk7IGdhcDogMy41cmVtOyBhbGlnbi1pdGVtczogc3RhcnQ7IG1hcmdpbi10b3A6IDIuNXJlbTsgfVxuXG5uYXYuZ3VpYS1pbmRpY2UgeyBwb3NpdGlvbjogc3RpY2t5OyB0b3A6IDEuNXJlbTsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAwLjEyNXJlbTsgfVxuLmd1aWEtaW5kaWNlLXJvdHVsbyB7IGZvbnQtc2l6ZTogMC42ODc1cmVtOyBmb250LXdlaWdodDogNzAwOyBsZXR0ZXItc3BhY2luZzogMC4xZW07IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiAjOTRBM0I4OyBwYWRkaW5nOiAwIDAuNzVyZW07IG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxubmF2Lmd1aWEtaW5kaWNlIGEgeyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogYmFzZWxpbmU7IGdhcDogMC41cmVtOyBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtOyBib3JkZXItcmFkaXVzOiA4cHg7IGZvbnQtc2l6ZTogMC44MTI1cmVtOyBjb2xvcjogIzQ3NTU2OTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMsIGNvbG9yIDAuMnM7IH1cbm5hdi5ndWlhLWluZGljZSBhOmhvdmVyIHsgYmFja2dyb3VuZDogI0YxRjVGOTsgY29sb3I6ICMwQjFGNEQ7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxubmF2Lmd1aWEtaW5kaWNlIGEuaXMtYWN0aXZlIHsgYmFja2dyb3VuZDogI0VGRjZGRjsgY29sb3I6ICMxRDRFRDg7IGZvbnQtd2VpZ2h0OiA1MDA7IH1cbm5hdi5ndWlhLWluZGljZSBhIHNwYW46Zmlyc3QtY2hpbGQgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vLCB1aS1tb25vc3BhY2UpLCBtb25vc3BhY2U7IGZvbnQtc2l6ZTogMC42ODc1cmVtOyBjb2xvcjogIzk0QTNCODsgbWluLXdpZHRoOiAxLjI1cmVtOyB9XG5uYXYuZ3VpYS1pbmRpY2UgYS5pcy1hY3RpdmUgc3BhbjpmaXJzdC1jaGlsZCB7IGNvbG9yOiAjNjBBNUZBOyB9XG5cbi5ndWlhLWNhcGl0dWxvcyB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGdhcDogNXJlbTsgbWluLXdpZHRoOiAwOyB9XG5zZWN0aW9uLmd1aWEtY2FwIHsgc2Nyb2xsLW1hcmdpbi10b3A6IDEuNXJlbTsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAxLjI1cmVtOyB9XG4uZ3VpYS1jYXAtY2FiZWNlcmEgeyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgZ2FwOiAwLjg3NXJlbTsgfVxuLmd1aWEtY2FwLW51bSB7IGZsZXg6IDAgMCBhdXRvOyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGhlaWdodDogMnJlbTsgd2lkdGg6IDJyZW07IGJvcmRlci1yYWRpdXM6IDhweDsgYmFja2dyb3VuZDogI0VGRjZGRjsgY29sb3I6ICMxRDRFRDg7IGZvbnQtc2l6ZTogMC44NzVyZW07IGZvbnQtd2VpZ2h0OiA3MDA7IGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7IG1hcmdpbi10b3A6IDAuMTI1cmVtOyB9XG5oMy5ndWlhLWNhcC10aXR1bG8geyBmb250LXNpemU6IDEuNXJlbTsgbGluZS1oZWlnaHQ6IDEuMjsgZm9udC13ZWlnaHQ6IDcwMDsgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07IGNvbG9yOiAjMEIxRjREOyBtYXJnaW46IDA7IH1cbi5ndWlhLWNhcC1sZWFkIHsgZm9udC1zaXplOiAwLjkzNzVyZW07IGxpbmUtaGVpZ2h0OiAxLjY1OyBjb2xvcjogIzQ3NTU2OTsgbWFyZ2luOiAwLjM3NXJlbSAwIDA7IH1cbnAuZ3VpYS1wIHsgZm9udC1zaXplOiAwLjkzNzVyZW07IGxpbmUtaGVpZ2h0OiAxLjY1OyBjb2xvcjogIzQ3NTU2OTsgbWFyZ2luOiAwOyB9XG4uZ3VpYSBzdHJvbmcgeyBjb2xvcjogIzBCMUY0RDsgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4vKiBQYXNvczogdW4gcmHDrWwgdmVydGljYWwgY29uIGVsIG7Dum1lcm8gZ3JhbmRlLiBTb2xvIHBhcmEgbG8gcXVlIGRlIHZlcmRhZCBlcyB1bmEgc2VjdWVuY2lhLiAqL1xub2wuZ3VpYS1yYWlsIHsgbGlzdC1zdHlsZTogbm9uZTsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBjb3VudGVyLXJlc2V0OiBwYXNvOyB9XG5vbC5ndWlhLXJhaWwgPiBsaSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgcGFkZGluZzogMCAwIDEuMTI1cmVtIDNyZW07IGZvbnQtc2l6ZTogMC45Mzc1cmVtOyBsaW5lLWhlaWdodDogMS42OyBjb2xvcjogIzQ3NTU2OTsgY291bnRlci1pbmNyZW1lbnQ6IHBhc287IH1cbm9sLmd1aWEtcmFpbCA+IGxpOjpiZWZvcmUgeyBjb250ZW50OiBjb3VudGVyKHBhc28pOyBwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IDA7IHRvcDogLTAuMTI1cmVtOyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGhlaWdodDogMnJlbTsgd2lkdGg6IDJyZW07IGJvcmRlci1yYWRpdXM6IDk5OTlweDsgYmFja2dyb3VuZDogIzBCMUY0RDsgY29sb3I6IHdoaXRlOyBmb250LXNpemU6IDAuODEyNXJlbTsgZm9udC13ZWlnaHQ6IDcwMDsgfVxub2wuZ3VpYS1yYWlsID4gbGk6OmFmdGVyIHsgY29udGVudDogXCJcIjsgcG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAwLjkzNzVyZW07IHRvcDogMnJlbTsgYm90dG9tOiAwOyB3aWR0aDogMnB4OyBiYWNrZ3JvdW5kOiAjRTJFOEYwOyB9XG5vbC5ndWlhLXJhaWwgPiBsaTpsYXN0LWNoaWxkIHsgcGFkZGluZy1ib3R0b206IDA7IH1cbm9sLmd1aWEtcmFpbCA+IGxpOmxhc3QtY2hpbGQ6OmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBGaWNoYXMgZGUgY29sb3I6IGxhIGluZm9ybWFjacOzbiBxdWUgbm8gZXMgdW5hIHNlY3VlbmNpYSB2YSBlbiBkb3MgbyB0cmVzIGZpY2hhcywgbm8gZW4gbGlzdGEuICovXG4uZ3VpYS1maWNoYXMgeyBkaXNwbGF5OiBncmlkOyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7IGdhcDogMXJlbTsgfVxuLmd1aWEtZmljaGFzLTMgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSk7IH1cbi5ndWlhLWZpY2hhIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAwLjM3NXJlbTsgcGFkZGluZzogMS4xMjVyZW0gMS4yNXJlbTsgYm9yZGVyLXJhZGl1czogMTJweDsgYmFja2dyb3VuZDogI0Y4RkFGQzsgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDsgfVxuLmd1aWEtZmljaGEtaWNvbm8geyBkaXNwbGF5OiBpbmxpbmUtZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGhlaWdodDogMi4yNXJlbTsgd2lkdGg6IDIuMjVyZW07IGJvcmRlci1yYWRpdXM6IDhweDsgYmFja2dyb3VuZDogd2hpdGU7IGNvbG9yOiAjNDc1NTY5OyBtYXJnaW4tYm90dG9tOiAwLjI1cmVtOyBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgxMSwgMzEsIDc3LCAwLjA2KTsgfVxuLmd1aWEtZmljaGEtaWNvbm8gc3ZnLCAuZ3VpYS1maWNoYS1pY29ubyBbZGF0YS1sdWNpZGVdIHsgaGVpZ2h0OiAxLjEyNXJlbTsgd2lkdGg6IDEuMTI1cmVtOyB9XG4uZ3VpYS1maWNoYS10aXR1bG8geyBkaXNwbGF5OiBibG9jazsgZm9udC1zaXplOiAwLjkzNzVyZW07IGZvbnQtd2VpZ2h0OiA2MDA7IGNvbG9yOiAjMEIxRjREOyB9XG4uZ3VpYS1maWNoYS10ZXh0byB7IGRpc3BsYXk6IGJsb2NrOyBmb250LXNpemU6IDAuODc1cmVtOyBsaW5lLWhlaWdodDogMS42OyBjb2xvcjogIzQ3NTU2OTsgfVxuLmd1aWEtZmljaGEtYmx1ZSAgeyBiYWNrZ3JvdW5kOiAjRUZGNkZGOyBib3JkZXItY29sb3I6ICNCRkRCRkU7IH1cbi5ndWlhLWZpY2hhLWJsdWUgLmd1aWEtZmljaGEtaWNvbm8geyBjb2xvcjogIzFENEVEODsgfVxuLmd1aWEtZmljaGEtZ29sZCAgeyBiYWNrZ3JvdW5kOiAjRkJGM0RFOyBib3JkZXItY29sb3I6ICNGMURGQTY7IH1cbi5ndWlhLWZpY2hhLWdvbGQgLmd1aWEtZmljaGEtaWNvbm8geyBjb2xvcjogI0IwOEEyRTsgfVxuLmd1aWEtZmljaGEtbWludCAgeyBiYWNrZ3JvdW5kOiAjRUNGREY1OyBib3JkZXItY29sb3I6ICNBN0YzRDA7IH1cbi5ndWlhLWZpY2hhLW1pbnQgLmd1aWEtZmljaGEtaWNvbm8geyBjb2xvcjogIzA0Nzg1NzsgfVxuLmd1aWEtZmljaGEtY29yYWwgeyBiYWNrZ3JvdW5kOiAjRkZGMUVGOyBib3JkZXItY29sb3I6ICNGRUNEQzc7IH1cbi5ndWlhLWZpY2hhLWNvcmFsIC5ndWlhLWZpY2hhLWljb25vIHsgY29sb3I6ICNDMjQxMEM7IH1cbi5ndWlhLWZpY2hhLW5hdnkgIHsgYmFja2dyb3VuZDogIzBCMUY0RDsgYm9yZGVyLWNvbG9yOiAjMEIxRjREOyBjb2xvcjogI0NCRDVFMTsgfVxuLmd1aWEtZmljaGEtbmF2eSAuZ3VpYS1maWNoYS10aXR1bG8geyBjb2xvcjogd2hpdGU7IH1cbi5ndWlhLWZpY2hhLW5hdnkgLmd1aWEtZmljaGEtdGV4dG8geyBjb2xvcjogI0NCRDVFMTsgfVxuLmd1aWEtZmljaGEtbmF2eSAuZ3VpYS1maWNoYS1pY29ubyB7IGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTsgY29sb3I6ICNFNUI4NEI7IGJveC1zaGFkb3c6IG5vbmU7IH1cbi5ndWlhLWZpY2hhLW5hdnkgc3Ryb25nIHsgY29sb3I6IHdoaXRlOyB9XG4uZ3VpYS1maWNoYS1hbmNoYSB7IGdyaWQtY29sdW1uOiAxIC8gLTE7IGZsZXgtZGlyZWN0aW9uOiByb3c7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyBnYXA6IDFyZW07IH1cbi5ndWlhLWZpY2hhLWFuY2hhIC5ndWlhLWZpY2hhLWljb25vIHsgbWFyZ2luOiAwOyBmbGV4OiAwIDAgYXV0bzsgfVxuXG4vKiBSZWNvcnJpZG86IGxvcyBlc3RhZG9zIGRlIHVuIGJvcnJhZG9yIG8gZGUgdW4gZXhwZWRpZW50ZSwgZW5jYWRlbmFkb3MuICovXG4uZ3VpYS1mbHVqbyB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtd3JhcDogd3JhcDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiAwLjVyZW0gMC4zNzVyZW07IG1hcmdpbjogMDsgcGFkZGluZzogMDsgbGlzdC1zdHlsZTogbm9uZTsgfVxuLmd1aWEtZmx1am8gPiBsaSB7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogMC4zNzVyZW07IH1cbi5ndWlhLWZsdWpvID4gbGkgKyBsaTo6YmVmb3JlIHsgY29udGVudDogXCLigLpcIjsgY29sb3I6ICNDQkQ1RTE7IGZvbnQtc2l6ZTogMS4xMjVyZW07IGxpbmUtaGVpZ2h0OiAxOyBtYXJnaW4tcmlnaHQ6IDAuMzc1cmVtOyB9XG4uZ3VpYS1mbHVqby1ub3RhIHsgZm9udC1zaXplOiAwLjc1cmVtOyBjb2xvcjogIzY0NzQ4QjsgfVxuXG4vKiBHbG9zYXJpbzogdW5hIHJlamlsbGEgZGUgdMOpcm1pbm9zIGNvbiBzdSBpY29uby4gKi9cbmRsLmd1aWEtZ2xvc2FyaW8geyBkaXNwbGF5OiBncmlkOyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSk7IGdhcDogMC44NzVyZW07IG1hcmdpbjogMDsgfVxuZGwuZ3VpYS1nbG9zYXJpbyA+IGRpdiB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGdhcDogMC4yNXJlbTsgcGFkZGluZzogMXJlbSAxLjEyNXJlbTsgYm9yZGVyLXJhZGl1czogMTJweDsgYmFja2dyb3VuZDogI0Y4RkFGQzsgYm9yZGVyOiAxcHggc29saWQgI0UyRThGMDsgfVxuZGwuZ3VpYS1nbG9zYXJpbyBkdCB7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogMC41cmVtOyBmb250LXNpemU6IDAuOTM3NXJlbTsgZm9udC13ZWlnaHQ6IDYwMDsgY29sb3I6ICMwQjFGNEQ7IG1hcmdpbjogMDsgfVxuZGwuZ3VpYS1nbG9zYXJpbyBkdCBzdmcsIGRsLmd1aWEtZ2xvc2FyaW8gZHQgW2RhdGEtbHVjaWRlXSB7IGhlaWdodDogMXJlbTsgd2lkdGg6IDFyZW07IGNvbG9yOiAjMUQ0RUQ4OyB9XG5kbC5ndWlhLWdsb3NhcmlvIGRkIHsgZm9udC1zaXplOiAwLjgxMjVyZW07IGxpbmUtaGVpZ2h0OiAxLjU1OyBjb2xvcjogIzY0NzQ4QjsgbWFyZ2luOiAwOyB9XG5cbmZpZ3VyZS5ndWlhLWZpZ3VyYSB7IG1hcmdpbjogMC4yNXJlbSAwIDA7IGJvcmRlci1yYWRpdXM6IDEycHg7IGJvcmRlcjogMXB4IHNvbGlkICNFMkU4RjA7IGJhY2tncm91bmQ6IHdoaXRlOyBvdmVyZmxvdzogaGlkZGVuOyBib3gtc2hhZG93OiAwIDRweCAxNnB4IC04cHggcmdiYSgxMSwgMzEsIDc3LCAwLjEyKTsgfVxuZmlndXJlLmd1aWEtZmlndXJhIGltZyB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMTAwJTsgaGVpZ2h0OiBhdXRvOyBjdXJzb3I6IHpvb20taW47IH1cbmZpZ3VyZS5ndWlhLWZpZ3VyYSBmaWdjYXB0aW9uIHsgcGFkZGluZzogMC41cmVtIDFyZW07IGZvbnQtc2l6ZTogMC43NXJlbTsgY29sb3I6ICM2NDc0OEI7IGJvcmRlci10b3A6IDFweCBzb2xpZCAjRjFGNUY5OyBiYWNrZ3JvdW5kOiByZ2JhKDI0OCwgMjUwLCAyNTIsIDAuNyk7IH1cbi5ndWlhLWZpZ3VyYXMgeyBkaXNwbGF5OiBncmlkOyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7IGdhcDogMS4yNXJlbTsgYWxpZ24taXRlbXM6IHN0YXJ0OyB9XG5cbi8qIENpZXJyZTogY8OzbW8gcGVkaXIgY2FtYmlvcyBvIGF2aXNhciBkZSB1biBmYWxsbyBkZSBsYSBhcHAuICovXG4uZ3VpYS1jaWVycmUgeyBkaXNwbGF5OiBmbGV4OyBnYXA6IDEuMjVyZW07IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyBwYWRkaW5nOiAxLjVyZW0gMS43NXJlbTsgYm9yZGVyLXJhZGl1czogMTJweDsgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI0VGRjZGRiAwJSwgI0Y4RkFGQyAxMDAlKTsgYm9yZGVyOiAxcHggc29saWQgI0JGREJGRTsgfVxuLmd1aWEtY2llcnJlLWljb25vIHsgZmxleDogMCAwIGF1dG87IGRpc3BsYXk6IGlubGluZS1mbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgaGVpZ2h0OiAyLjc1cmVtOyB3aWR0aDogMi43NXJlbTsgYm9yZGVyLXJhZGl1czogMTBweDsgYmFja2dyb3VuZDogIzFENEVEODsgY29sb3I6IHdoaXRlOyB9XG4uZ3VpYS1jaWVycmUtaWNvbm8gc3ZnLCAuZ3VpYS1jaWVycmUtaWNvbm8gW2RhdGEtbHVjaWRlXSB7IGhlaWdodDogMS4zNzVyZW07IHdpZHRoOiAxLjM3NXJlbTsgfVxuaDMuZ3VpYS1jaWVycmUtdGl0dWxvIHsgZm9udC1zaXplOiAxLjEyNXJlbTsgZm9udC13ZWlnaHQ6IDcwMDsgY29sb3I6ICMwQjFGNEQ7IG1hcmdpbjogMCAwIDAuMzc1cmVtOyBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsgfVxuLmd1aWEtY2llcnJlIHAgeyBmb250LXNpemU6IDAuOTM3NXJlbTsgbGluZS1oZWlnaHQ6IDEuNjU7IGNvbG9yOiAjNDc1NTY5OyBtYXJnaW46IDA7IH1cblxuZGlhbG9nLmd1aWEtbGlnaHRib3ggaW1nIHsgY3Vyc29yOiB6b29tLW91dDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTEwMHB4KSB7XG4gICAgLmd1aWEtY3VlcnBvIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKTsgZ2FwOiAycmVtOyB9XG4gICAgbmF2Lmd1aWEtaW5kaWNlIHsgcG9zaXRpb246IHN0YXRpYzsgZmxleC1kaXJlY3Rpb246IHJvdzsgZmxleC13cmFwOiB3cmFwOyBnYXA6IDAuMjVyZW07IH1cbiAgICAuZ3VpYS1pbmRpY2Utcm90dWxvIHsgZmxleC1iYXNpczogMTAwJTsgfVxuICAgIGRsLmd1aWEtZ2xvc2FyaW8geyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7IH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjBweCkge1xuICAgIGgyLmd1aWEtdGl0dWxvIHsgZm9udC1zaXplOiAxLjc1cmVtOyB9XG4gICAgLmd1aWEtZmlndXJhcywgLmd1aWEtZmljaGFzLCAuZ3VpYS1maWNoYXMtMywgZGwuZ3VpYS1nbG9zYXJpbyB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyB9XG4gICAgLmd1aWEtZmljaGEtYW5jaGEgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLmd1aWEtY2llcnJlIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/