
   

/* ╔══════════════════════════════════════════════════════╗
   ║  GRID SYSTEM  —  Bootstrap-compatible, layout only  ║
   ║  Container max-width: 1320px                        ║
   ╚══════════════════════════════════════════════════════╝ */

.container,
.container-fluid {
  --gutter-x: 1.5rem;
  --gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--gutter-x) * .5);
  padding-left:  calc(var(--gutter-x) * .5);
  margin-right: auto;
  margin-left:  auto;
}

.container       { max-width: 1320px; }
.container-fluid { max-width: 100%; }

.row {
  display: flex;
  flex-wrap: wrap;
  margin-top:   calc(-1 * var(--gutter-y));
  margin-right: calc(-.5 * var(--gutter-x));
  margin-left:  calc(-.5 * var(--gutter-x));
}

.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--gutter-x) * .5);
  padding-left:  calc(var(--gutter-x) * .5);
  margin-top: var(--gutter-y);
}

.col      { flex: 1 0 0%; }
.col-auto { flex: 0 0 auto; width: auto; }
.col-1    { flex: 0 0 auto; width: 8.3333%; }
.col-2    { flex: 0 0 auto; width: 16.6667%; }
.col-3    { flex: 0 0 auto; width: 25%; }
.col-4    { flex: 0 0 auto; width: 33.3333%; }
.col-5    { flex: 0 0 auto; width: 41.6667%; }
.col-6    { flex: 0 0 auto; width: 50%; }
.col-7    { flex: 0 0 auto; width: 58.3333%; }
.col-8    { flex: 0 0 auto; width: 66.6667%; }
.col-9    { flex: 0 0 auto; width: 75%; }
.col-10   { flex: 0 0 auto; width: 83.3333%; }
.col-11   { flex: 0 0 auto; width: 91.6667%; }
.col-12   { flex: 0 0 auto; width: 100%; }

/* sm ≥ 576px */
@media (min-width: 576px) {
  .col-sm      { flex: 1 0 0%; }
  .col-sm-auto { flex: 0 0 auto; width: auto; }
  .col-sm-1  { flex: 0 0 auto; width: 8.3333%; }
  .col-sm-2  { flex: 0 0 auto; width: 16.6667%; }
  .col-sm-3  { flex: 0 0 auto; width: 25%; }
  .col-sm-4  { flex: 0 0 auto; width: 33.3333%; }
  .col-sm-5  { flex: 0 0 auto; width: 41.6667%; }
  .col-sm-6  { flex: 0 0 auto; width: 50%; }
  .col-sm-7  { flex: 0 0 auto; width: 58.3333%; }
  .col-sm-8  { flex: 0 0 auto; width: 66.6667%; }
  .col-sm-9  { flex: 0 0 auto; width: 75%; }
  .col-sm-10 { flex: 0 0 auto; width: 83.3333%; }
  .col-sm-11 { flex: 0 0 auto; width: 91.6667%; }
  .col-sm-12 { flex: 0 0 auto; width: 100%; }
}

/* md ≥ 768px */
@media (min-width: 768px) {
  .col-md      { flex: 1 0 0%; }
  .col-md-auto { flex: 0 0 auto; width: auto; }
  .col-md-1  { flex: 0 0 auto; width: 8.3333%; }
  .col-md-2  { flex: 0 0 auto; width: 16.6667%; }
  .col-md-3  { flex: 0 0 auto; width: 25%; }
  .col-md-4  { flex: 0 0 auto; width: 33.3333%; }
  .col-md-5  { flex: 0 0 auto; width: 41.6667%; }
  .col-md-6  { flex: 0 0 auto; width: 50%; }
  .col-md-7  { flex: 0 0 auto; width: 58.3333%; }
  .col-md-8  { flex: 0 0 auto; width: 66.6667%; }
  .col-md-9  { flex: 0 0 auto; width: 75%; }
  .col-md-10 { flex: 0 0 auto; width: 83.3333%; }
  .col-md-11 { flex: 0 0 auto; width: 91.6667%; }
  .col-md-12 { flex: 0 0 auto; width: 100%; }
}

/* lg ≥ 992px */
@media (min-width: 992px) {
  .col-lg      { flex: 1 0 0%; }
  .col-lg-auto { flex: 0 0 auto; width: auto; }
  .col-lg-1  { flex: 0 0 auto; width: 8.3333%; }
  .col-lg-2  { flex: 0 0 auto; width: 16.6667%; }
  .col-lg-3  { flex: 0 0 auto; width: 25%; }
  .col-lg-4  { flex: 0 0 auto; width: 33.3333%; }
  .col-lg-5  { flex: 0 0 auto; width: 41.6667%; }
  .col-lg-6  { flex: 0 0 auto; width: 50%; }
  .col-lg-7  { flex: 0 0 auto; width: 58.3333%; }
  .col-lg-8  { flex: 0 0 auto; width: 66.6667%; }
  .col-lg-9  { flex: 0 0 auto; width: 75%; }
  .col-lg-10 { flex: 0 0 auto; width: 83.3333%; }
  .col-lg-11 { flex: 0 0 auto; width: 91.6667%; }
  .col-lg-12 { flex: 0 0 auto; width: 100%; }
}

/* xl ≥ 1200px */
@media (min-width: 1200px) {
  .col-xl      { flex: 1 0 0%; }
  .col-xl-auto { flex: 0 0 auto; width: auto; }
  .col-xl-1  { flex: 0 0 auto; width: 8.3333%; }
  .col-xl-2  { flex: 0 0 auto; width: 16.6667%; }
  .col-xl-3  { flex: 0 0 auto; width: 25%; }
  .col-xl-4  { flex: 0 0 auto; width: 33.3333%; }
  .col-xl-5  { flex: 0 0 auto; width: 41.6667%; }
  .col-xl-6  { flex: 0 0 auto; width: 50%; }
  .col-xl-7  { flex: 0 0 auto; width: 58.3333%; }
  .col-xl-8  { flex: 0 0 auto; width: 66.6667%; }
  .col-xl-9  { flex: 0 0 auto; width: 75%; }
  .col-xl-10 { flex: 0 0 auto; width: 83.3333%; }
  .col-xl-11 { flex: 0 0 auto; width: 91.6667%; }
  .col-xl-12 { flex: 0 0 auto; width: 100%; }
}

/* Gutters */
.g-0  { --gutter-x: 0;       --gutter-y: 0; }
.g-1  { --gutter-x: .5rem;   --gutter-y: .5rem; }
.g-2  { --gutter-x: .75rem;  --gutter-y: .75rem; }
.g-3  { --gutter-x: 1rem;    --gutter-y: 1rem; }
.g-4  { --gutter-x: 1.5rem;  --gutter-y: 1.5rem; }
.g-5  { --gutter-x: 2rem;    --gutter-y: 2rem; }
.gx-1 { --gutter-x: .5rem; }
.gx-2 { --gutter-x: .75rem; }
.gx-3 { --gutter-x: 1rem; }
.gx-4 { --gutter-x: 1.5rem; }
.gy-1 { --gutter-y: .5rem; }
.gy-2 { --gutter-y: .75rem; }
.gy-3 { --gutter-y: 1rem; }
.gy-4 { --gutter-y: 1.5rem; }

/* Display */
.d-none  { display: none !important; }
.d-flex  { display: flex !important; }
.d-block { display: block !important; }
@media (min-width: 576px) {
  .d-sm-none  { display: none !important; }
  .d-sm-flex  { display: flex !important; }
  .d-sm-block { display: block !important; }
}
@media (min-width: 768px) {
  .d-md-none  { display: none !important; }
  .d-md-flex  { display: flex !important; }
  .d-md-block { display: block !important; }
}
@media (min-width: 992px) {
  .d-lg-none  { display: none !important; }
  .d-lg-flex  { display: flex !important; }
  .d-lg-block { display: block !important; }
}

/* Flex helpers */
.align-items-start   { align-items: flex-start !important; }
.align-items-center  { align-items: center !important; }
.align-items-end     { align-items: flex-end !important; }
.justify-content-start   { justify-content: flex-start !important; }
.justify-content-center  { justify-content: center !important; }
.justify-content-end     { justify-content: flex-end !important; }
.justify-content-between { justify-content: space-between !important; }
.flex-wrap   { flex-wrap: wrap !important; }
.ms-auto     { margin-left: auto !important; }
.me-auto     { margin-right: auto !important; }
.gap-1 { gap: .5rem !important; }
.gap-2 { gap: .75rem !important; }
.gap-3 { gap: 1rem !important; }
.gap-4 { gap: 1.5rem !important; }

/* Padding / margin Y utilities */
.py-2 { padding-top: .5rem !important;  padding-bottom: .5rem !important; }
.py-3 { padding-top: 1rem !important;   padding-bottom: 1rem !important; }
.py-4 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
.py-5 { padding-top: 2rem !important;   padding-bottom: 2rem !important; }
.my-3 { margin-top: 1rem !important;    margin-bottom: 1rem !important; }
.my-4 { margin-top: 1.5rem !important;  margin-bottom: 1.5rem !important; }


/* ╔══════════════════════════════════════════════════════╗
   ║  CUSTOM PROPERTIES & RESET                          ║
   ╚══════════════════════════════════════════════════════╝ */

:root {
  --parchment:  #ede1ca;
  --cream:      #f7f2e7;
  --hdr-bg:     #100804;
  --br-900:     #1e0d04;
  --br-800:     #381a08;
  --br-700:     #5c2e10;
  --br-600:     #7b4220;
  --br-500:     #9e6535;
  --br-300:     #bc9460;
  --sand:       #c4a06e;
  --sand-lt:    #ddc9a4;
  --gold:       #9b7028;
  --text:       #2a1608;
  --text-mid:   #5a3018;
  --radius:     2px;
}

*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  font-size: 16px;
}

@media (min-width: 1100px) {
  html { font-size: 19px; }
}

body {
  background: var(--parchment);
  color: var(--text);
  font-family: 'Crimson Text', Georgia, serif;
  line-height: 1.7;
}

img   { display: block; max-width: 100%; height: auto; }
a     { color: var(--br-600); text-decoration: none; transition: color .2s; }
a:hover { color: var(--br-900); text-decoration: none; }


/* ╔══════════════════════════════════════════════════════╗
   ║  BUTTON                                             ║
   ╚══════════════════════════════════════════════════════╝ */

.btn {
  display: inline-flex;
  padding: 8px 18px;
  justify-content: center;
  align-items: center;
  font-family: 'Josefin Sans', sans-serif;
  font-size: .55rem;
  font-weight: 600;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: var(--cream);
  background: var(--br-800);
  border: 1px solid var(--gold);
  border-radius: var(--radius);
  text-decoration: none;
  transition: background .18s, color .18s, border-color .18s;
}

.btn:hover {
  background: var(--br-900);
  color: var(--sand);
}


/* ╔══════════════════════════════════════════════════════╗
   ║  HEADER  — mobile: fixed / desktop: static          ║
   ╚══════════════════════════════════════════════════════╝ */

.site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 200;
  background-color: var(--sand-lt);
}

/* Brand row */
.brand-row {
  padding-top: 10px;
  padding-bottom: 10px;
}

/* @media (min-width: 481px) {
  .brand-row {
    padding-top: 40px;
    padding-bottom: 40px;
  }
} */

.brand {
  display: flex;
  align-items: center;
  gap: 13px;
  text-decoration: none;
}

.brand:hover { text-decoration: none; }

.brand-logo {
  height: clamp(100px, 12vw, 150px);
  width: auto;
  flex-shrink: 0;
}

.brand-name {
  display: block;
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.55rem;
  font-weight: 600;
  letter-spacing: .07em;
  color: #d4a254;
  line-height: 1;
}

.brand-sub {
  text-align: center;
}

.brand-since {
  font-family: 'Josefin Sans', sans-serif;
  font-weight: 600;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--br-700);
}

.brand-tagline {
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 1.5rem;
  color: var(--br-700);
  font-weight: bold;
}
@media (max-width: 420px) {
   .brand-tagline {
    font-size: 1rem;
   }
}

/* Langs */
.langs {
  display: flex;
  margin-left: 10px;
  background-color: #ffffff6b;
  padding: 0 10px;
}

.langs a:first-child:after {
  content: '|';
  color: var(--br-700);
  margin-left: 10px;
}

.langs a {
  font-family: 'Cormorant Garamond';
  font-size: .85rem;
  color: #666;
  line-height: 2.5;
  font-weight: 500;
  cursor: pointer;
}

.langs a.active,
.langs a:hover {
  color: var(--br-600);
  font-weight: bold;
}

/* Hamburger */
.hamburger {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 24px;
  height: 16px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
}

.hamburger span {
  display: block;
  height: 2px;
  background: var(--text);
  border-radius: 2px;
  transition: transform .3s, opacity .3s;
}

.hamburger.open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.hamburger.open span:nth-child(2) { opacity: 0; }
.hamburger.open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }


/* ╔══════════════════════════════════════════════════════╗
   ║  NAVIGATION — mobile: overlay / desktop: sticky bar ║
   ╚══════════════════════════════════════════════════════╝ */

/* Mobile default: full-screen overlay */
.site-nav {
  background: var(--br-700);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 190;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  transform: translateX(100%);
  transition: transform .35s ease;
  overflow-y: auto;
  padding-top: 70px;
}

.site-nav.open {
  transform: translateX(0);
}

/* Mobile top / bottom links visible by default */
.mobile-top-links {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding: 16px 20px 20px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.mobile-bottom-links {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 4px;
  padding: 16px 20px 20px;
  border-top: 1px solid rgba(255,255,255,.12);
}

.mobile-bottom-links .logo img {
  filter: invert(1) hue-rotate(194deg);
  height: 100px;
}

.mobile-bottom-links .addr p {
  color: var(--sand);
  line-height: 1.4;
}

.mobile-top-links a.btn {
  font-family: 'Josefin Sans', sans-serif;
  font-size: .68rem;
  font-weight: 600;
  text-transform: uppercase;
  color: #ddc8a8;
  text-decoration: none;
  padding: 8px 14px;
  background: none;
  border: none;
}

.mobile-top-links .langs {
  display: flex;
}

/* Nav links — mobile default */
.nav-links {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  width: 100%;
  max-height: none;
  overflow: visible;
  justify-content: center;
}

.nav-links.open { max-height: none; }

.nav-links a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 24px;
  font-family: 'Josefin Sans', sans-serif;
  font-size: .72rem;
  font-weight: 600;
  text-transform: uppercase;
  color: #ddc8a8;
  text-decoration: none;
  white-space: nowrap;
  border-bottom: 1px solid rgba(255,255,255,.06);
  transition: background .18s, color .18s;
}

.nav-links a:hover,
.nav-links a.active {
  background: var(--br-800);
  color: #fff;
  text-decoration: none;
}

/* Dropdown */
.nav-item { position: relative; }

.has-sub > a::after {
  content: ' ▾';
  font-size: 1.2em;
  opacity: .5;
  margin: -5px 0 0 3px;
}

/* Sub-menu — mobile: collapsible */
.sub-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  position: static;
  opacity: 1;
  pointer-events: auto;
  transform: none;
  box-shadow: none;
  border-top: none;
  border-left: 3px solid var(--gold);
  background: rgba(0,0,0,.18);
  max-height: 0;
  overflow: hidden;
  min-width: 0;
  transition: max-height .28s ease, padding .2s;
}

.nav-item.has-sub { width: 100%; }
.has-sub > a { width: 100%; }

.has-sub.open .sub-menu {
  max-height: 200px;
  padding: 4px 0;
}

.sub-menu li a {
  display: flex;
  justify-content: center;
  padding: 14px 32px;
  font-family: 'Josefin Sans', sans-serif;
  font-size: .7rem;
  font-weight: 600;
  text-transform: uppercase;
  color: #ddc8a8;
  text-decoration: none;
  white-space: nowrap;
  background: none;
  border-bottom: 1px solid rgba(255,255,255,.06);
  transition: background .15s, color .15s;
}

.sub-menu li a:hover {
  background: var(--br-700);
  color: #fff;
}

/* Desktop nav — sticky bar */
@media (min-width: 861px) {
  .hamburger { display: none !important; }

  .site-header {
    position: static;
    z-index: auto;
    background-color: transparent;
    background: url(../img/bg3x.png) repeat-x left bottom;
    background-size: contain;
  }

  .brand-name { font-size: 2.5rem; }

  .site-nav {
    position: sticky;
    top: 0;
    z-index: 150;
    height: auto;
    width: auto;
    transform: none;
    transition: none;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding-top: 0;
    overflow-y: visible;
  }

  .mobile-top-links,
  .mobile-bottom-links { display: none; }

  .nav-links {
    flex-direction: row;
    width: auto;
    justify-content: center;
  }

  .nav-links a {
    padding: 10px clamp(7px, 1.1vw, 15px);
    font-size: .65rem;
    justify-content: flex-start;
    border-bottom: none;
    border-right: none;
  }

  .nav-item.has-sub { width: auto; }
  .has-sub > a { width: auto; }

  .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 200px;
    background: var(--br-800);
    border-left: none;
    border-top: 2px solid var(--gold);
    box-shadow: 0 4px 16px rgba(0,0,0,.35);
    z-index: 160;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-4px);
    transition: opacity .18s, transform .18s;
    max-height: none;
    overflow: visible;
    padding: 4px 0;
  }

  .has-sub:hover .sub-menu,
  .has-sub:focus-within .sub-menu {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
  }

  .has-sub.open .sub-menu { max-height: none; }

  .sub-menu li a {
    display: block;
    padding: 10px 18px;
    font-size: .6rem;
    justify-content: flex-start;
    border-bottom: none;
  }
}


/* ╔══════════════════════════════════════════════════════╗
   ║  PAGE BODY                                          ║
   ╚══════════════════════════════════════════════════════╝ */

.page-body {
  padding-top: 100px;
  background: url(../img/body-bg.png) repeat-y top center;
  background-size: 100%;
  padding-bottom: clamp(32px, 6vw, 52px);
}

@media (min-width: 861px) {
  .page-body { padding-top: 0; }
}

/* Section labels */
.sec-label {
  font-family: 'Josefin Sans', sans-serif;
  font-size: .6rem;
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--br-600);
  padding-bottom: 8px;
  margin-bottom: 14px;
  border-bottom: 1px solid var(--sand);
}

.sec-label-serif {
  font-family: 'Cormorant Garamond', serif;
  font-size: .94rem;
  font-weight: 600;
  letter-spacing: .17em;
  text-transform: uppercase;
  color: var(--br-700);
  padding-bottom: 7px;
  margin-bottom: 13px;
  border-bottom: 1px solid var(--sand);
}

/* Horizontal rule */
.divider {
  border: none;
  border-top: 1px solid var(--sand-lt);
  margin: clamp(22px, 3.5vw, 34px) 0;
}


/* ╔══════════════════════════════════════════════════════╗
   ║  INTRO SECTION                                      ║
   ║  Desktop:  [quote] [cobra] [i preferiti]  3 cols   ║
   ║  Tablet:   [quote + cobra] / [i preferiti]         ║
   ║  Mobile:   stacked                                  ║
   ╚══════════════════════════════════════════════════════╝ */

.intro-grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas:
    "quote"
    "cobra"
    "pref";
  gap: clamp(20px, 3vw, 30px);
  margin-top: 20px;
}

@media (min-width: 640px) {
  .intro-grid {
    grid-template-columns: 1fr 132px;
    grid-template-areas:
      "quote cobra"
      "pref  pref";
    align-items: start;
    margin-top: 10px;
  }
}

@media (min-width: 1000px) {
  .intro-grid {
    grid-template-columns: 1.4fr 1fr;
    grid-template-areas: "quote cobra pref";
    align-items: start;
    margin-top: 0;
  }
}

.intro-quote { grid-area: quote; }
.intro-cobra  { grid-area: cobra; display: flex; justify-content: center; }
.intro-pref   { grid-area: pref; }

.intro-quote p {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.15rem;
  font-weight: 700;
  line-height: 1.45;
  color: var(--br-800);
}

@media (min-width: 768px) {
  .intro-quote p { font-size: 1.5rem; }
}

.intro-cobra img {
  width: 100%;
}


/* ╔══════════════════════════════════════════════════════╗
   ║  I PREFERITI                                        ║
   ╚══════════════════════════════════════════════════════╝ */

.pref-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6px;
}

@media (min-width: 381px) {
  .pref-grid { grid-template-columns: repeat(3, 1fr); }
}

.pref-card {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  cursor: pointer;
}

.pref-card-img {
  overflow: hidden;
  border: 1px solid var(--sand-lt);
  border-bottom: none;
}

.pref-card-img img {
  width: 100%;
  height: clamp(58px, 7.5vw, 140px);
  object-fit: cover;
  filter: sepia(22%) saturate(.88);
  transition: filter .4s ease, transform .45s ease;
  will-change: transform;
}

.pref-card:hover .pref-card-img img {
  filter: sepia(0%) saturate(1.1);
  transform: scale(1.06);
}

.pref-card-label {
  background: var(--cream);
  border: 1px solid var(--sand-lt);
  border-top: 1px solid var(--sand);
  padding: 3px 5px 4px;
  font-family: 'Josefin Sans', sans-serif;
  font-size: .61rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--br-600);
  text-align: center;
  line-height: 1.35;
  transition: color .2s;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pref-card:hover .pref-card-label { color: var(--br-800); }


/* ╔══════════════════════════════════════════════════════╗
   ║  CONTENT CARDS (Itinerari, Escursioni, etc.)        ║
   ╚══════════════════════════════════════════════════════╝ */

.col-card-img {
  overflow: hidden;
  border: 1px solid var(--sand-lt);
  border-radius: var(--radius);
  margin-bottom: 13px;
}

.col-card-img img {
  width: 100%;
  height: clamp(215px, 17vw, 224px);
  object-fit: cover;
  filter: sepia(12%);
  transition: filter .35s, transform .42s;
  will-change: transform;
}

.col-card:hover .col-card-img img {
  filter: sepia(0%);
  transform: scale(1.04);
}

.col-card ul {
  list-style: none;
}

.col-card ul li {
  display: flex;
  align-items: baseline;
  gap: 7px;
  padding: 4px 0;
  border-bottom: 1px dotted rgba(155, 112, 40, .32);
  color: var(--text-mid);
}

.col-card ul li::before {
  content: '»';
  color: var(--gold);
  font-size: .8rem;
  flex-shrink: 0;
}

.col-card ul li a {
  font-family: 'Crimson Text', serif;
  font-size: .95rem;
  color: var(--text-mid);
  transition: color .18s;
}

.col-card ul li a:hover {
  color: var(--text);
  text-decoration: underline;
}


/* ╔══════════════════════════════════════════════════════╗
   ║  FOOTER                                             ║
   ╚══════════════════════════════════════════════════════╝ */

.site-footer {
  background: var(--br-900);
  padding-top: clamp(28px, 5vw, 44px);
  padding-bottom: clamp(20px, 3vw, 28px);
}

.f-brand {
  display: flex;
}

.f-brand .f-logo img {
  max-width: 100px;
  filter: invert(1) hue-rotate(194deg);
  opacity: .6;
}

.f-brand .f-addr {
  margin-top: 10px;
  font-family: 'Josefin Sans', sans-serif;
  font-size: .88rem;
  color: var(--sand);
  margin-left: 14px;
  line-height: 1.5;
}

.f-vdivider {
  width: 1px;
  background: #261308;
  align-self: stretch;
}

.f-links h4 {
  font-family: 'Josefin Sans', sans-serif;
  font-size: .7rem;
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--br-500);
  margin-bottom: 10px;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--br-900);
}

.f-links ul { list-style: none; }
.f-links ul li { padding: 2px 0; }

.f-links ul li a {
  font-family: 'Crimson Text', serif;
  font-size: .88rem;
  color: var(--br-300);
  transition: color .18s;
}

.f-links ul li a:hover { color: var(--sand-lt); }

.footer-bottom {
  border-top: 1px solid var(--br-900);
  margin-top: clamp(18px, 3vw, 26px);
  padding-top: 14px;
  text-align: center;
}

.footer-bottom p {
  font-family: 'Josefin Sans', sans-serif;
  font-size: .52rem;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: var(--br-500);
}

.footer-bottom a {
  color: var(--br-500);
  transition: color .18s;
}

.footer-bottom a:hover { color: var(--sand-lt); }


/* ╔══════════════════════════════════════════════════════╗
   ║  SCROLL REVEAL                                      ║
   ╚══════════════════════════════════════════════════════╝ */

.reveal {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .55s ease, transform .55s ease;
}

.reveal.visible {
  opacity: 1;
  transform: none;
}

.reveal-stagger > * {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity .42s ease, transform .42s ease;
}

.reveal-stagger.visible > *:nth-child(1) { opacity:1; transform:none; transition-delay:.04s; }
.reveal-stagger.visible > *:nth-child(2) { opacity:1; transform:none; transition-delay:.10s; }
.reveal-stagger.visible > *:nth-child(3) { opacity:1; transform:none; transition-delay:.16s; }
.reveal-stagger.visible > *:nth-child(4) { opacity:1; transform:none; transition-delay:.22s; }
.reveal-stagger.visible > *:nth-child(5) { opacity:1; transform:none; transition-delay:.28s; }
.reveal-stagger.visible > *:nth-child(6) { opacity:1; transform:none; transition-delay:.34s; }

.paddingy {
  padding-top: 70px;
  padding-bottom: 70px;
}

.title-center {
  text-align: center;
  margin-bottom: 30px;
}


/* ╔══════════════════════════════════════════════════════╗
   ║  WHY CAROUSEL                                       ║
   ╚══════════════════════════════════════════════════════╝ */

.why {
  background: linear-gradient(180deg, #dfcca478 0%, #ffffff36 100%);
}

.why-carousel {
  display: flex;
  align-items: center;
  gap: 8px;
}

.why-track {
  display: flex;
  align-items: stretch;
  gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  flex: 1;
  padding: 8px 4px 16px;
  margin-left: 6px;
}

.why-track::-webkit-scrollbar { display: none; }

.why-slide {
  flex: 0 0 calc(100% - 0px);
  scroll-snap-align: start;
  display: flex;
}

@media (min-width: 576px) {
  .why-slide { flex: 0 0 calc(50% - 8px); }
}

@media (min-width: 900px) {
  .why-slide { flex: 0 0 calc(33.333% - 11px); }
}

.why .why-block {
  box-shadow: 0px 0px 3px 0px #36271c52;
  padding: 10px 20px;
  flex: 1;
  background: linear-gradient(180deg, #5a3018 0%, #2a1608 100%);
}

.why .why-block .why-icon {
  text-align: center;
  color: var(--br-600);
  background: var(--sand-lt);
  width: 60px;
  height: 60px;
  padding: 15px;
  margin: 0 auto 13px auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}

.why .why-block .why-icon svg {
  display: inline-block;
}

.why .why-block h3 {
  margin-top: 15px;
  text-align: center;
  font-size: 1.1rem;
  color: var(--parchment);
}

.why .why-block p {
  text-align: center;
  color: var(--sand-lt);
}

.why-btn {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1px solid var(--sand);
  background: var(--cream);
  cursor: pointer;
  transition: background .2s, color .2s, opacity .2s;
  position: relative;
}

.why-btn span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: var(--br-600);
  font-size: 1.6rem;
}

.why-btn:hover:not(:disabled) {
  background: var(--br-300);
  color: var(--cream);
}

.why-btn:hover:not(:disabled) span {
  color: white;
}

.why-btn:disabled {
  opacity: 0.35;
  cursor: default;
}

.why-dots {
  display: flex;
  justify-content: center;
  gap: 7px;
  margin-top: 4px;
}

.why-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--sand);
  border: none;
  cursor: pointer;
  padding: 0;
  transition: background .2s, transform .2s;
}

.why-dot.active {
  background: var(--br-600);
  transform: scale(1.3);
}


/* ╔══════════════════════════════════════════════════════╗
   ║  FAQ SECTION                                        ║
   ╚══════════════════════════════════════════════════════╝ */

.faq {
  background: linear-gradient(180deg, #dfcca478 0%, #ffffff36 100%);
}

.section-header {
  text-align: center;
  margin-bottom: clamp(20px, 2.2vw, 25px);
}

.section-eyebrow {
  display: inline-block;
  font-family: 'Josefin Sans', sans-serif;
  font-size: .55rem;
  font-weight: 600;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: var(--br-500);
  margin-bottom: 10px;
}

.section-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--br-800);
  line-height: 1.15;
}

.section-title em {
  font-style: italic;
  color: var(--br-600);
}

@media (min-width: 768px) {
  .section-title { font-size: 2rem; }
}

.section-ornament {
  background: url(../img/separator.svg) no-repeat center;
}


.faq-list {
  max-width: 820px;
  margin: 0 auto;
}

.faq-item {
  border-bottom: 1px solid rgba(188, 148, 96, .35);
  position: relative;
  overflow: hidden;
}

.faq-item:first-child {
  border-top: 1px solid rgba(188, 148, 96, .35);
}

.faq-item::before {
  content: attr(data-num);
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-family: 'Cormorant Garamond', serif;
  font-size: 5rem;
  font-weight: 700;
  color: rgba(188, 148, 96, .08);
  line-height: 1;
  pointer-events: none;
  user-select: none;
  transition: color .35s;
}

@media (min-width: 900px) {
  .faq-item::before { font-size: 9rem; }
}

.faq-item.is-open::before {
  color: rgba(188, 148, 96, .14);
}

.faq-question {
  width: 100%;
  display: flex;
  align-items: center;
  gap: clamp(10px, 2vw, 22px);
  padding: clamp(16px, 2.5vw, 22px) 0;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  position: relative;
  z-index: 1;
}

.faq-question:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
  border-radius: 2px;
}

.faq-num {
  flex-shrink: 0;
  font-family: 'Josefin Sans', sans-serif;
  font-size: .52rem;
  font-weight: 600;
  letter-spacing: .12em;
  color: var(--sand);
  background: var(--br-800);
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: background .25s, color .25s;
}

.faq-item.is-open .faq-num {
  background: var(--br-600);
  color: var(--cream);
}

.faq-q-text {
  flex: 1;
  font-family: 'Cormorant Garamond', serif;
  font-size: .95rem;
  font-weight: 600;
  color: var(--br-800);
  line-height: 1.35;
  transition: color .22s;
}

@media (min-width: 768px) {
  .faq-q-text { font-size: 1.15rem; }
}

.faq-question:hover .faq-q-text,
.faq-item.is-open .faq-q-text {
  color: var(--br-700);
}

.faq-toggle {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  border: 1px solid var(--sand-lt);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--br-500);
  transition: background .25s, border-color .25s, color .25s, transform .35s;
}

.faq-question:hover .faq-toggle {
  border-color: var(--sand);
  background: var(--sand-lt);
}

.faq-item.is-open .faq-toggle {
  background: var(--br-600);
  border-color: var(--br-600);
  color: var(--cream);
}

.faq-toggle .faq-plus-v {
  transform-origin: 8px 8px;
  transition: transform .32s ease, opacity .32s ease;
}

.faq-item.is-open .faq-toggle .faq-plus-v {
  transform: rotate(90deg);
  opacity: 0;
}

.faq-answer {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows .38s cubic-bezier(.4, 0, .2, 1);
}

.faq-item.is-open .faq-answer {
  grid-template-rows: 1fr;
}

.faq-answer-inner {
  overflow: hidden;
}

.faq-answer-inner p {
  font-family: 'Crimson Text', serif;
  font-size: .95rem;
  color: var(--text-mid);
  line-height: 1.75;
  padding: 0 0 clamp(16px, 2.5vw, 22px) 14px;
  border-left: 2px solid var(--gold);
  margin-left: 0;
}

@media (min-width: 481px) {
  .faq-answer-inner p {
    padding-left: 16px;
    margin-left: calc(28px + clamp(10px, 2vw, 22px));
    padding-bottom: clamp(16px, 2.5vw, 22px);
  }
}

.galery-chi-siamo {
  width: 100%;
}

.galery-chi-siamo .thumbs {
  display: flex;
  overflow-x: scroll;
}

.galery-chi-siamo .thumbs a {
  display: inline-block;
  min-width: 200px;
}


/* ╔══════════════════════════════════════════════════════╗
   ║  CONTACT PAGE                                       ║
   ╚══════════════════════════════════════════════════════╝ */

.contact-hero {
  background: linear-gradient(135deg, var(--br-900) 0%, var(--br-800) 100%);
  padding: 50px 0 30px; 
  border-bottom: 3px solid var(--gold);
  text-align: center;
}

.contact-hero-eyebrow {
  display: inline-block;
  font-family: 'Josefin Sans', sans-serif;
  font-size: .48rem;
  font-weight: 600;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: var(--sand);
  margin-bottom: 12px;
  padding: 4px 14px;
  border: 1px solid rgba(196,160,110,.35);
}

.contact-hero-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.8rem;
  font-weight: 700;
  color: var(--sand-lt);
  line-height: 1.15;
  margin-bottom: 14px;
}

.contact-hero-title em {
  font-style: italic;
  color: var(--br-300);
}

@media (min-width: 768px) {
  .contact-hero-title { font-size: 2.2rem; }
}

.contact-hero-ornament {
  display: flex;
  justify-content: center;
  margin-top: 18px;
}

.contact-info-card {
  display: flex;
  flex-direction: column;
  gap: clamp(20px, 3vw, 28px);
}

.info-block {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}

.info-icon {
  flex-shrink: 0;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: var(--sand-lt);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--br-700);
}

.info-body {
  flex: 1;
}

.info-label {
  font-family: 'Josefin Sans', sans-serif;
  font-size: .5rem;
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--br-500);
  margin-bottom: 4px;
}

.info-value {
  font-family: 'Crimson Text', serif;
  font-size: 1rem;
  color: var(--text-mid);
  line-height: 1.6;
}

.info-value a {
  color: var(--br-600);
  transition: color .18s;
}

.info-value a:hover {
  color: var(--br-800);
}

.map-wrapper {
  margin-top: clamp(24px, 3.5vw, 36px);
  border: 1px solid var(--sand-lt);
  border-radius: var(--radius);
  overflow: hidden;
}

.map-wrapper iframe {
  display: block;
  width: 100%;
  height: 280px;
  border: none;
  filter: sepia(18%) contrast(.95);
}

/* Contact form */
.contact-form-wrap {
  background: linear-gradient(160deg, var(--br-900) 0%, var(--br-800) 100%);
  padding: clamp(24px, 4vw, 40px);
  border-top: 3px solid var(--gold);
}

.form-section-label {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.15rem;
  font-weight: 600;
  color: var(--sand-lt);
  margin-bottom: clamp(18px, 3vw, 26px);
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(196,160,110,.25);
}

@media (min-width: 768px) {
  .form-section-label { font-size: 1.55rem; }
}

.form-group {
  margin-bottom: 26px;
}

.form-label {
  display: block;
  font-family: 'Josefin Sans', sans-serif;
  font-size: .47rem;
  font-weight: 600;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--br-300);
  margin-bottom: 6px;
}

.form-control {
  width: 100%;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(196,160,110,.3);
  border-radius: var(--radius);
  padding: 10px 14px;
  font-family: 'Crimson Text', serif;
  font-size: 1rem;
  color: var(--sand-lt);
  transition: border-color .2s, background .2s;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
}

.form-control::placeholder {
  color: rgba(196,160,110,.4);
}

.form-control:focus {
  border-color: var(--sand);
  background: rgba(255,255,255,.1);
}

textarea.form-control {
  resize: vertical;
  min-height: 130px;
}

select.form-control option {
  background: var(--br-800);
  color: var(--sand-lt);
}

/* Form row: stacked on mobile, side-by-side on wider screens */
.form-row {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.form-row .form-group {
  flex: 1;
}

@media (min-width: 521px) {
  .form-row {
    flex-direction: row;
    gap: 14px;
  }
}

.btn-submit {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 32px;
  font-family: 'Josefin Sans', sans-serif;
  font-size: .58rem;
  font-weight: 600;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: var(--br-900);
  background: var(--sand);
  border: 1px solid var(--gold);
  border-radius: var(--radius);
  cursor: pointer;
  transition: background .2s, color .2s, border-color .2s;
  width: 100%;
  justify-content: center;
  margin-top: 6px;
}

.btn-submit:hover {
  background: var(--sand-lt);
  border-color: var(--sand-lt);
}

.form-success {
  display: none;
  text-align: center;
  padding: 28px 16px;
}

.form-success.visible {
  display: block;
}

.form-success svg {
  color: var(--sand);
  margin-bottom: 14px;
}

.form-success p {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.25rem;
  color: var(--sand-lt);
  line-height: 1.5;
}

/* Contact layout grid */
.contact-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(28px, 4vw, 48px);
  align-items: start;
}

@media (min-width: 860px) {
  .contact-grid {
    grid-template-columns: 1fr 1.35fr;
  }
}

/* Office hours */
.hours-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 6px;
}

.hours-table td {
  font-family: 'Crimson Text', serif;
  font-size: .93rem;
  color: var(--text-mid);
  padding: 3px 0;
  line-height: 1.5;
}

.hours-table td:last-child {
  text-align: right;
  font-style: italic;
}


.page-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(28px, 4vw, 48px);
  align-items: start;
}

@media (min-width: 860px) {
  .page-grid {
    grid-template-columns: 1.4fr 1fr;
  }
}

.text-block{
  font-family: 'Crimson Text', serif;
  font-size: 1rem;
  color: var(--text-mid);
  line-height: 1.75;
  padding: 15px 30px;
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Jlc291cmNlcy9jc3Mvc3R5bGUuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBIiwiZmlsZSI6InN0eWxlLm1pbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcbiAgIFxuXG4vKiDilZTilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZdcbiAgIOKVkSAgR1JJRCBTWVNURU0gIOKAlCAgQm9vdHN0cmFwLWNvbXBhdGlibGUsIGxheW91dCBvbmx5ICDilZFcbiAgIOKVkSAgQ29udGFpbmVyIG1heC13aWR0aDogMTMyMHB4ICAgICAgICAgICAgICAgICAgICAgICAg4pWRXG4gICDilZrilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZ0gKi9cblxuLmNvbnRhaW5lcixcbi5jb250YWluZXItZmx1aWQge1xuICAtLWd1dHRlci14OiAxLjVyZW07XG4gIC0tZ3V0dGVyLXk6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWd1dHRlci14KSAqIC41KTtcbiAgcGFkZGluZy1sZWZ0OiAgY2FsYyh2YXIoLS1ndXR0ZXIteCkgKiAuNSk7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6ICBhdXRvO1xufVxuXG4uY29udGFpbmVyICAgICAgIHsgbWF4LXdpZHRoOiAxMzIwcHg7IH1cbi5jb250YWluZXItZmx1aWQgeyBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLnJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXRvcDogICBjYWxjKC0xICogdmFyKC0tZ3V0dGVyLXkpKTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLWd1dHRlci14KSk7XG4gIG1hcmdpbi1sZWZ0OiAgY2FsYygtLjUgKiB2YXIoLS1ndXR0ZXIteCkpO1xufVxuXG4ucm93ID4gKiB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWd1dHRlci14KSAqIC41KTtcbiAgcGFkZGluZy1sZWZ0OiAgY2FsYyh2YXIoLS1ndXR0ZXIteCkgKiAuNSk7XG4gIG1hcmdpbi10b3A6IHZhcigtLWd1dHRlci15KTtcbn1cblxuLmNvbCAgICAgIHsgZmxleDogMSAwIDAlOyB9XG4uY29sLWF1dG8geyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IGF1dG87IH1cbi5jb2wtMSAgICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogOC4zMzMzJTsgfVxuLmNvbC0yICAgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAxNi42NjY3JTsgfVxuLmNvbC0zICAgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAyNSU7IH1cbi5jb2wtNCAgICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogMzMuMzMzMyU7IH1cbi5jb2wtNSAgICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogNDEuNjY2NyU7IH1cbi5jb2wtNiAgICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogNTAlOyB9XG4uY29sLTcgICAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDU4LjMzMzMlOyB9XG4uY29sLTggICAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDY2LjY2NjclOyB9XG4uY29sLTkgICAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDc1JTsgfVxuLmNvbC0xMCAgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiA4My4zMzMzJTsgfVxuLmNvbC0xMSAgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiA5MS42NjY3JTsgfVxuLmNvbC0xMiAgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAxMDAlOyB9XG5cbi8qIHNtIOKJpSA1NzZweCAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jb2wtc20gICAgICB7IGZsZXg6IDEgMCAwJTsgfVxuICAuY29sLXNtLWF1dG8geyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IGF1dG87IH1cbiAgLmNvbC1zbS0xICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogOC4zMzMzJTsgfVxuICAuY29sLXNtLTIgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAxNi42NjY3JTsgfVxuICAuY29sLXNtLTMgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAyNSU7IH1cbiAgLmNvbC1zbS00ICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogMzMuMzMzMyU7IH1cbiAgLmNvbC1zbS01ICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogNDEuNjY2NyU7IH1cbiAgLmNvbC1zbS02ICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogNTAlOyB9XG4gIC5jb2wtc20tNyAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDU4LjMzMzMlOyB9XG4gIC5jb2wtc20tOCAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDY2LjY2NjclOyB9XG4gIC5jb2wtc20tOSAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDc1JTsgfVxuICAuY29sLXNtLTEwIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiA4My4zMzMzJTsgfVxuICAuY29sLXNtLTExIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiA5MS42NjY3JTsgfVxuICAuY29sLXNtLTEyIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAxMDAlOyB9XG59XG5cbi8qIG1kIOKJpSA3NjhweCAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtbWQgICAgICB7IGZsZXg6IDEgMCAwJTsgfVxuICAuY29sLW1kLWF1dG8geyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IGF1dG87IH1cbiAgLmNvbC1tZC0xICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogOC4zMzMzJTsgfVxuICAuY29sLW1kLTIgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAxNi42NjY3JTsgfVxuICAuY29sLW1kLTMgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAyNSU7IH1cbiAgLmNvbC1tZC00ICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogMzMuMzMzMyU7IH1cbiAgLmNvbC1tZC01ICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogNDEuNjY2NyU7IH1cbiAgLmNvbC1tZC02ICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogNTAlOyB9XG4gIC5jb2wtbWQtNyAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDU4LjMzMzMlOyB9XG4gIC5jb2wtbWQtOCAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDY2LjY2NjclOyB9XG4gIC5jb2wtbWQtOSAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDc1JTsgfVxuICAuY29sLW1kLTEwIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiA4My4zMzMzJTsgfVxuICAuY29sLW1kLTExIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiA5MS42NjY3JTsgfVxuICAuY29sLW1kLTEyIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAxMDAlOyB9XG59XG5cbi8qIGxnIOKJpSA5OTJweCAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jb2wtbGcgICAgICB7IGZsZXg6IDEgMCAwJTsgfVxuICAuY29sLWxnLWF1dG8geyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IGF1dG87IH1cbiAgLmNvbC1sZy0xICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogOC4zMzMzJTsgfVxuICAuY29sLWxnLTIgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAxNi42NjY3JTsgfVxuICAuY29sLWxnLTMgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAyNSU7IH1cbiAgLmNvbC1sZy00ICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogMzMuMzMzMyU7IH1cbiAgLmNvbC1sZy01ICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogNDEuNjY2NyU7IH1cbiAgLmNvbC1sZy02ICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogNTAlOyB9XG4gIC5jb2wtbGctNyAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDU4LjMzMzMlOyB9XG4gIC5jb2wtbGctOCAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDY2LjY2NjclOyB9XG4gIC5jb2wtbGctOSAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDc1JTsgfVxuICAuY29sLWxnLTEwIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiA4My4zMzMzJTsgfVxuICAuY29sLWxnLTExIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiA5MS42NjY3JTsgfVxuICAuY29sLWxnLTEyIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAxMDAlOyB9XG59XG5cbi8qIHhsIOKJpSAxMjAwcHggKi9cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbC14bCAgICAgIHsgZmxleDogMSAwIDAlOyB9XG4gIC5jb2wteGwtYXV0byB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogYXV0bzsgfVxuICAuY29sLXhsLTEgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiA4LjMzMzMlOyB9XG4gIC5jb2wteGwtMiAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDE2LjY2NjclOyB9XG4gIC5jb2wteGwtMyAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDI1JTsgfVxuICAuY29sLXhsLTQgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiAzMy4zMzMzJTsgfVxuICAuY29sLXhsLTUgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiA0MS42NjY3JTsgfVxuICAuY29sLXhsLTYgIHsgZmxleDogMCAwIGF1dG87IHdpZHRoOiA1MCU7IH1cbiAgLmNvbC14bC03ICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogNTguMzMzMyU7IH1cbiAgLmNvbC14bC04ICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogNjYuNjY2NyU7IH1cbiAgLmNvbC14bC05ICB7IGZsZXg6IDAgMCBhdXRvOyB3aWR0aDogNzUlOyB9XG4gIC5jb2wteGwtMTAgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDgzLjMzMzMlOyB9XG4gIC5jb2wteGwtMTEgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDkxLjY2NjclOyB9XG4gIC5jb2wteGwtMTIgeyBmbGV4OiAwIDAgYXV0bzsgd2lkdGg6IDEwMCU7IH1cbn1cblxuLyogR3V0dGVycyAqL1xuLmctMCAgeyAtLWd1dHRlci14OiAwOyAgICAgICAtLWd1dHRlci15OiAwOyB9XG4uZy0xICB7IC0tZ3V0dGVyLXg6IC41cmVtOyAgIC0tZ3V0dGVyLXk6IC41cmVtOyB9XG4uZy0yICB7IC0tZ3V0dGVyLXg6IC43NXJlbTsgIC0tZ3V0dGVyLXk6IC43NXJlbTsgfVxuLmctMyAgeyAtLWd1dHRlci14OiAxcmVtOyAgICAtLWd1dHRlci15OiAxcmVtOyB9XG4uZy00ICB7IC0tZ3V0dGVyLXg6IDEuNXJlbTsgIC0tZ3V0dGVyLXk6IDEuNXJlbTsgfVxuLmctNSAgeyAtLWd1dHRlci14OiAycmVtOyAgICAtLWd1dHRlci15OiAycmVtOyB9XG4uZ3gtMSB7IC0tZ3V0dGVyLXg6IC41cmVtOyB9XG4uZ3gtMiB7IC0tZ3V0dGVyLXg6IC43NXJlbTsgfVxuLmd4LTMgeyAtLWd1dHRlci14OiAxcmVtOyB9XG4uZ3gtNCB7IC0tZ3V0dGVyLXg6IDEuNXJlbTsgfVxuLmd5LTEgeyAtLWd1dHRlci15OiAuNXJlbTsgfVxuLmd5LTIgeyAtLWd1dHRlci15OiAuNzVyZW07IH1cbi5neS0zIHsgLS1ndXR0ZXIteTogMXJlbTsgfVxuLmd5LTQgeyAtLWd1dHRlci15OiAxLjVyZW07IH1cblxuLyogRGlzcGxheSAqL1xuLmQtbm9uZSAgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbi5kLWZsZXggIHsgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG4uZC1ibG9jayB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZC1zbS1ub25lICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZC1zbS1mbGV4ICB7IGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICAuZC1zbS1ibG9jayB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZC1tZC1ub25lICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZC1tZC1mbGV4ICB7IGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICAuZC1tZC1ibG9jayB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZC1sZy1ub25lICB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuZC1sZy1mbGV4ICB7IGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDsgfVxuICAuZC1sZy1ibG9jayB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbn1cblxuLyogRmxleCBoZWxwZXJzICovXG4uYWxpZ24taXRlbXMtc3RhcnQgICB7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7IH1cbi5hbGlnbi1pdGVtcy1jZW50ZXIgIHsgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50OyB9XG4uYWxpZ24taXRlbXMtZW5kICAgICB7IGFsaWduLWl0ZW1zOiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4uanVzdGlmeS1jb250ZW50LXN0YXJ0ICAgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDsgfVxuLmp1c3RpZnktY29udGVudC1jZW50ZXIgIHsganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDsgfVxuLmp1c3RpZnktY29udGVudC1lbmQgICAgIHsganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZCAhaW1wb3J0YW50OyB9XG4uanVzdGlmeS1jb250ZW50LWJldHdlZW4geyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW4gIWltcG9ydGFudDsgfVxuLmZsZXgtd3JhcCAgIHsgZmxleC13cmFwOiB3cmFwICFpbXBvcnRhbnQ7IH1cbi5tcy1hdXRvICAgICB7IG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbi5tZS1hdXRvICAgICB7IG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG4uZ2FwLTEgeyBnYXA6IC41cmVtICFpbXBvcnRhbnQ7IH1cbi5nYXAtMiB7IGdhcDogLjc1cmVtICFpbXBvcnRhbnQ7IH1cbi5nYXAtMyB7IGdhcDogMXJlbSAhaW1wb3J0YW50OyB9XG4uZ2FwLTQgeyBnYXA6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG5cbi8qIFBhZGRpbmcgLyBtYXJnaW4gWSB1dGlsaXRpZXMgKi9cbi5weS0yIHsgcGFkZGluZy10b3A6IC41cmVtICFpbXBvcnRhbnQ7ICBwYWRkaW5nLWJvdHRvbTogLjVyZW0gIWltcG9ydGFudDsgfVxuLnB5LTMgeyBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50OyAgIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbi5weS00IHsgcGFkZGluZy10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyBwYWRkaW5nLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cbi5weS01IHsgcGFkZGluZy10b3A6IDJyZW0gIWltcG9ydGFudDsgICBwYWRkaW5nLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG4ubXktMyB7IG1hcmdpbi10b3A6IDFyZW0gIWltcG9ydGFudDsgICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG4ubXktNCB7IG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cblxuXG4vKiDilZTilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZdcbiAgIOKVkSAgQ1VTVE9NIFBST1BFUlRJRVMgJiBSRVNFVCAgICAgICAgICAgICAgICAgICAgICAgICAg4pWRXG4gICDilZrilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZ0gKi9cblxuOnJvb3Qge1xuICAtLXBhcmNobWVudDogICNlZGUxY2E7XG4gIC0tY3JlYW06ICAgICAgI2Y3ZjJlNztcbiAgLS1oZHItYmc6ICAgICAjMTAwODA0O1xuICAtLWJyLTkwMDogICAgICMxZTBkMDQ7XG4gIC0tYnItODAwOiAgICAgIzM4MWEwODtcbiAgLS1ici03MDA6ICAgICAjNWMyZTEwO1xuICAtLWJyLTYwMDogICAgICM3YjQyMjA7XG4gIC0tYnItNTAwOiAgICAgIzllNjUzNTtcbiAgLS1ici0zMDA6ICAgICAjYmM5NDYwO1xuICAtLXNhbmQ6ICAgICAgICNjNGEwNmU7XG4gIC0tc2FuZC1sdDogICAgI2RkYzlhNDtcbiAgLS1nb2xkOiAgICAgICAjOWI3MDI4O1xuICAtLXRleHQ6ICAgICAgICMyYTE2MDg7XG4gIC0tdGV4dC1taWQ6ICAgIzVhMzAxODtcbiAgLS1yYWRpdXM6ICAgICAycHg7XG59XG5cbiosICo6OmJlZm9yZSwgKjo6YWZ0ZXIgeyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuaHRtbCB7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMTAwcHgpIHtcbiAgaHRtbCB7IGZvbnQtc2l6ZTogMTlweDsgfVxufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcGFyY2htZW50KTtcbiAgY29sb3I6IHZhcigtLXRleHQpO1xuICBmb250LWZhbWlseTogJ0NyaW1zb24gVGV4dCcsIEdlb3JnaWEsIHNlcmlmO1xuICBsaW5lLWhlaWdodDogMS43O1xufVxuXG5pbWcgICB7IGRpc3BsYXk6IGJsb2NrOyBtYXgtd2lkdGg6IDEwMCU7IGhlaWdodDogYXV0bzsgfVxuYSAgICAgeyBjb2xvcjogdmFyKC0tYnItNjAwKTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB0cmFuc2l0aW9uOiBjb2xvciAuMnM7IH1cbmE6aG92ZXIgeyBjb2xvcjogdmFyKC0tYnItOTAwKTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cblxuLyog4pWU4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWXXG4gICDilZEgIEJVVFRPTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKVkVxuICAg4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdICovXG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcGFkZGluZzogOHB4IDE4cHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LWZhbWlseTogJ0pvc2VmaW4gU2FucycsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjU1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogLjEzZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiB2YXIoLS1jcmVhbSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyLTgwMCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdvbGQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjE4cywgY29sb3IgLjE4cywgYm9yZGVyLWNvbG9yIC4xOHM7XG59XG5cbi5idG46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ici05MDApO1xuICBjb2xvcjogdmFyKC0tc2FuZCk7XG59XG5cblxuLyog4pWU4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWXXG4gICDilZEgIEhFQURFUiAg4oCUIG1vYmlsZTogZml4ZWQgLyBkZXNrdG9wOiBzdGF0aWMgICAgICAgICAg4pWRXG4gICDilZrilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZ0gKi9cblxuLnNpdGUtaGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAyMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNhbmQtbHQpO1xufVxuXG4vKiBCcmFuZCByb3cgKi9cbi5icmFuZC1yb3cge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi8qIEBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkge1xuICAuYnJhbmQtcm93IHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufSAqL1xuXG4uYnJhbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDEzcHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJyYW5kOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5icmFuZC1sb2dvIHtcbiAgaGVpZ2h0OiBjbGFtcCgxMDBweCwgMTJ2dywgMTUwcHgpO1xuICB3aWR0aDogYXV0bztcbiAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5icmFuZC1uYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnQ29ybW9yYW50IEdhcmFtb25kJywgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS41NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC4wN2VtO1xuICBjb2xvcjogI2Q0YTI1NDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5icmFuZC1zdWIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5icmFuZC1zaW5jZSB7XG4gIGZvbnQtZmFtaWx5OiAnSm9zZWZpbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC4yZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiB2YXIoLS1ici03MDApO1xufVxuXG4uYnJhbmQtdGFnbGluZSB7XG4gIGZvbnQtZmFtaWx5OiAnQ29ybW9yYW50IEdhcmFtb25kJywgc2VyaWY7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGNvbG9yOiB2YXIoLS1ici03MDApO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0MjBweCkge1xuICAgLmJyYW5kLXRhZ2xpbmUge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgIH1cbn1cblxuLyogTGFuZ3MgKi9cbi5sYW5ncyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmNmI7XG4gIHBhZGRpbmc6IDAgMTBweDtcbn1cblxuLmxhbmdzIGE6Zmlyc3QtY2hpbGQ6YWZ0ZXIge1xuICBjb250ZW50OiAnfCc7XG4gIGNvbG9yOiB2YXIoLS1ici03MDApO1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLmxhbmdzIGEge1xuICBmb250LWZhbWlseTogJ0Nvcm1vcmFudCBHYXJhbW9uZCc7XG4gIGZvbnQtc2l6ZTogLjg1cmVtO1xuICBjb2xvcjogIzY2NjtcbiAgbGluZS1oZWlnaHQ6IDIuNTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubGFuZ3MgYS5hY3RpdmUsXG4ubGFuZ3MgYTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1ici02MDApO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogSGFtYnVyZ2VyICovXG4uaGFtYnVyZ2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMDtcbn1cblxuLmhhbWJ1cmdlciBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS10ZXh0KTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzLCBvcGFjaXR5IC4zcztcbn1cblxuLmhhbWJ1cmdlci5vcGVuIHNwYW46bnRoLWNoaWxkKDEpIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDdweCkgcm90YXRlKDQ1ZGVnKTsgfVxuLmhhbWJ1cmdlci5vcGVuIHNwYW46bnRoLWNoaWxkKDIpIHsgb3BhY2l0eTogMDsgfVxuLmhhbWJ1cmdlci5vcGVuIHNwYW46bnRoLWNoaWxkKDMpIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03cHgpIHJvdGF0ZSgtNDVkZWcpOyB9XG5cblxuLyog4pWU4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWXXG4gICDilZEgIE5BVklHQVRJT04g4oCUIG1vYmlsZTogb3ZlcmxheSAvIGRlc2t0b3A6IHN0aWNreSBiYXIg4pWRXG4gICDilZrilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZ0gKi9cblxuLyogTW9iaWxlIGRlZmF1bHQ6IGZ1bGwtc2NyZWVuIG92ZXJsYXkgKi9cbi5zaXRlLW5hdiB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyLTcwMCk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgei1pbmRleDogMTkwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zNXMgZWFzZTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZy10b3A6IDcwcHg7XG59XG5cbi5zaXRlLW5hdi5vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuXG4vKiBNb2JpbGUgdG9wIC8gYm90dG9tIGxpbmtzIHZpc2libGUgYnkgZGVmYXVsdCAqL1xuLm1vYmlsZS10b3AtbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDRweDtcbiAgcGFkZGluZzogMTZweCAyMHB4IDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4xMik7XG59XG5cbi5tb2JpbGUtYm90dG9tLWxpbmtzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA0cHg7XG4gIHBhZGRpbmc6IDE2cHggMjBweCAyMHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMTIpO1xufVxuXG4ubW9iaWxlLWJvdHRvbS1saW5rcyAubG9nbyBpbWcge1xuICBmaWx0ZXI6IGludmVydCgxKSBodWUtcm90YXRlKDE5NGRlZyk7XG4gIGhlaWdodDogMTAwcHg7XG59XG5cbi5tb2JpbGUtYm90dG9tLWxpbmtzIC5hZGRyIHAge1xuICBjb2xvcjogdmFyKC0tc2FuZCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi5tb2JpbGUtdG9wLWxpbmtzIGEuYnRuIHtcbiAgZm9udC1mYW1pbHk6ICdKb3NlZmluIFNhbnMnLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IC42OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNkZGM4YTg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZzogOHB4IDE0cHg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLm1vYmlsZS10b3AtbGlua3MgLmxhbmdzIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLyogTmF2IGxpbmtzIOKAlCBtb2JpbGUgZGVmYXVsdCAqL1xuLm5hdi1saW5rcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLm5hdi1saW5rcy5vcGVuIHsgbWF4LWhlaWdodDogbm9uZTsgfVxuXG4ubmF2LWxpbmtzIGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxNnB4IDI0cHg7XG4gIGZvbnQtZmFtaWx5OiAnSm9zZWZpbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAuNzJyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjZGRjOGE4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wNik7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjE4cywgY29sb3IgLjE4cztcbn1cblxuLm5hdi1saW5rcyBhOmhvdmVyLFxuLm5hdi1saW5rcyBhLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyLTgwMCk7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qIERyb3Bkb3duICovXG4ubmF2LWl0ZW0geyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmhhcy1zdWIgPiBhOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcg4pa+JztcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgb3BhY2l0eTogLjU7XG4gIG1hcmdpbjogLTVweCAwIDAgM3B4O1xufVxuXG4vKiBTdWItbWVudSDigJQgbW9iaWxlOiBjb2xsYXBzaWJsZSAqL1xuLnN1Yi1tZW51IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBvcGFjaXR5OiAxO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgdHJhbnNmb3JtOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLWdvbGQpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4xOCk7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi13aWR0aDogMDtcbiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuMjhzIGVhc2UsIHBhZGRpbmcgLjJzO1xufVxuXG4ubmF2LWl0ZW0uaGFzLXN1YiB7IHdpZHRoOiAxMDAlOyB9XG4uaGFzLXN1YiA+IGEgeyB3aWR0aDogMTAwJTsgfVxuXG4uaGFzLXN1Yi5vcGVuIC5zdWItbWVudSB7XG4gIG1heC1oZWlnaHQ6IDIwMHB4O1xuICBwYWRkaW5nOiA0cHggMDtcbn1cblxuLnN1Yi1tZW51IGxpIGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMTRweCAzMnB4O1xuICBmb250LWZhbWlseTogJ0pvc2VmaW4gU2FucycsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjdyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjZGRjOGE4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wNik7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjE1cywgY29sb3IgLjE1cztcbn1cblxuLnN1Yi1tZW51IGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ici03MDApO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLyogRGVza3RvcCBuYXYg4oCUIHN0aWNreSBiYXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA4NjFweCkge1xuICAuaGFtYnVyZ2VyIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgLnNpdGUtaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHotaW5kZXg6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9iZzN4LnBuZykgcmVwZWF0LXggbGVmdCBib3R0b207XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB9XG5cbiAgLmJyYW5kLW5hbWUgeyBmb250LXNpemU6IDIuNXJlbTsgfVxuXG4gIC5zaXRlLW5hdiB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTUwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgfVxuXG4gIC5tb2JpbGUtdG9wLWxpbmtzLFxuICAubW9iaWxlLWJvdHRvbS1saW5rcyB7IGRpc3BsYXk6IG5vbmU7IH1cblxuICAubmF2LWxpbmtzIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLm5hdi1saW5rcyBhIHtcbiAgICBwYWRkaW5nOiAxMHB4IGNsYW1wKDdweCwgMS4xdncsIDE1cHgpO1xuICAgIGZvbnQtc2l6ZTogLjY1cmVtO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgfVxuXG4gIC5uYXYtaXRlbS5oYXMtc3ViIHsgd2lkdGg6IGF1dG87IH1cbiAgLmhhcy1zdWIgPiBhIHsgd2lkdGg6IGF1dG87IH1cblxuICAuc3ViLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJyLTgwMCk7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWdvbGQpO1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDE2cHggcmdiYSgwLDAsMCwuMzUpO1xuICAgIHotaW5kZXg6IDE2MDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xOHMsIHRyYW5zZm9ybSAuMThzO1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcGFkZGluZzogNHB4IDA7XG4gIH1cblxuICAuaGFzLXN1Yjpob3ZlciAuc3ViLW1lbnUsXG4gIC5oYXMtc3ViOmZvY3VzLXdpdGhpbiAuc3ViLW1lbnUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgLmhhcy1zdWIub3BlbiAuc3ViLW1lbnUgeyBtYXgtaGVpZ2h0OiBub25lOyB9XG5cbiAgLnN1Yi1tZW51IGxpIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHggMThweDtcbiAgICBmb250LXNpemU6IC42cmVtO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG5cblxuLyog4pWU4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWXXG4gICDilZEgIFBBR0UgQk9EWSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKVkVxuICAg4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdICovXG5cbi5wYWdlLWJvZHkge1xuICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvYm9keS1iZy5wbmcpIHJlcGVhdC15IHRvcCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IGNsYW1wKDMycHgsIDZ2dywgNTJweCk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA4NjFweCkge1xuICAucGFnZS1ib2R5IHsgcGFkZGluZy10b3A6IDA7IH1cbn1cblxuLyogU2VjdGlvbiBsYWJlbHMgKi9cbi5zZWMtbGFiZWwge1xuICBmb250LWZhbWlseTogJ0pvc2VmaW4gU2FucycsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjZyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAuMjJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHZhcigtLWJyLTYwMCk7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1zYW5kKTtcbn1cblxuLnNlYy1sYWJlbC1zZXJpZiB7XG4gIGZvbnQtZmFtaWx5OiAnQ29ybW9yYW50IEdhcmFtb25kJywgc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjk0cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogLjE3ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiB2YXIoLS1ici03MDApO1xuICBwYWRkaW5nLWJvdHRvbTogN3B4O1xuICBtYXJnaW4tYm90dG9tOiAxM3B4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tc2FuZCk7XG59XG5cbi8qIEhvcml6b250YWwgcnVsZSAqL1xuLmRpdmlkZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1zYW5kLWx0KTtcbiAgbWFyZ2luOiBjbGFtcCgyMnB4LCAzLjV2dywgMzRweCkgMDtcbn1cblxuXG4vKiDilZTilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZdcbiAgIOKVkSAgSU5UUk8gU0VDVElPTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4pWRXG4gICDilZEgIERlc2t0b3A6ICBbcXVvdGVdIFtjb2JyYV0gW2kgcHJlZmVyaXRpXSAgMyBjb2xzICAg4pWRXG4gICDilZEgIFRhYmxldDogICBbcXVvdGUgKyBjb2JyYV0gLyBbaSBwcmVmZXJpdGldICAgICAgICAg4pWRXG4gICDilZEgIE1vYmlsZTogICBzdGFja2VkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKVkVxuICAg4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdICovXG5cbi5pbnRyby1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgXCJxdW90ZVwiXG4gICAgXCJjb2JyYVwiXG4gICAgXCJwcmVmXCI7XG4gIGdhcDogY2xhbXAoMjBweCwgM3Z3LCAzMHB4KTtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5pbnRyby1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxMzJweDtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgXCJxdW90ZSBjb2JyYVwiXG4gICAgICBcInByZWYgIHByZWZcIjtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAwMHB4KSB7XG4gIC5pbnRyby1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDEuNGZyIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcInF1b3RlIGNvYnJhIHByZWZcIjtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4uaW50cm8tcXVvdGUgeyBncmlkLWFyZWE6IHF1b3RlOyB9XG4uaW50cm8tY29icmEgIHsgZ3JpZC1hcmVhOiBjb2JyYTsgZGlzcGxheTogZmxleDsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbi5pbnRyby1wcmVmICAgeyBncmlkLWFyZWE6IHByZWY7IH1cblxuLmludHJvLXF1b3RlIHAge1xuICBmb250LWZhbWlseTogJ0Nvcm1vcmFudCBHYXJhbW9uZCcsIHNlcmlmO1xuICBmb250LXNpemU6IDEuMTVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1O1xuICBjb2xvcjogdmFyKC0tYnItODAwKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbnRyby1xdW90ZSBwIHsgZm9udC1zaXplOiAxLjVyZW07IH1cbn1cblxuLmludHJvLWNvYnJhIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5cbi8qIOKVlOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVl1xuICAg4pWRICBJIFBSRUZFUklUSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICDilZFcbiAgIOKVmuKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVnSAqL1xuXG4ucHJlZi1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgZ2FwOiA2cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzODFweCkge1xuICAucHJlZi1ncmlkIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTsgfVxufVxuXG4ucHJlZi1jYXJkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5wcmVmLWNhcmQtaW1nIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc2FuZC1sdCk7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5wcmVmLWNhcmQtaW1nIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNsYW1wKDU4cHgsIDcuNXZ3LCAxNDBweCk7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBmaWx0ZXI6IHNlcGlhKDIyJSkgc2F0dXJhdGUoLjg4KTtcbiAgdHJhbnNpdGlvbjogZmlsdGVyIC40cyBlYXNlLCB0cmFuc2Zvcm0gLjQ1cyBlYXNlO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xufVxuXG4ucHJlZi1jYXJkOmhvdmVyIC5wcmVmLWNhcmQtaW1nIGltZyB7XG4gIGZpbHRlcjogc2VwaWEoMCUpIHNhdHVyYXRlKDEuMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNik7XG59XG5cbi5wcmVmLWNhcmQtbGFiZWwge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jcmVhbSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNhbmQtbHQpO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tc2FuZCk7XG4gIHBhZGRpbmc6IDNweCA1cHggNHB4O1xuICBmb250LWZhbWlseTogJ0pvc2VmaW4gU2FucycsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjYxcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogLjA4ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiB2YXIoLS1ici02MDApO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICB0cmFuc2l0aW9uOiBjb2xvciAuMnM7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnByZWYtY2FyZDpob3ZlciAucHJlZi1jYXJkLWxhYmVsIHsgY29sb3I6IHZhcigtLWJyLTgwMCk7IH1cblxuXG4vKiDilZTilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZdcbiAgIOKVkSAgQ09OVEVOVCBDQVJEUyAoSXRpbmVyYXJpLCBFc2N1cnNpb25pLCBldGMuKSAgICAgICAg4pWRXG4gICDilZrilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZ0gKi9cblxuLmNvbC1jYXJkLWltZyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNhbmQtbHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBtYXJnaW4tYm90dG9tOiAxM3B4O1xufVxuXG4uY29sLWNhcmQtaW1nIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNsYW1wKDIxNXB4LCAxN3Z3LCAyMjRweCk7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBmaWx0ZXI6IHNlcGlhKDEyJSk7XG4gIHRyYW5zaXRpb246IGZpbHRlciAuMzVzLCB0cmFuc2Zvcm0gLjQycztcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cblxuLmNvbC1jYXJkOmhvdmVyIC5jb2wtY2FyZC1pbWcgaW1nIHtcbiAgZmlsdGVyOiBzZXBpYSgwJSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNCk7XG59XG5cbi5jb2wtY2FyZCB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5jb2wtY2FyZCB1bCBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgZ2FwOiA3cHg7XG4gIHBhZGRpbmc6IDRweCAwO1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkIHJnYmEoMTU1LCAxMTIsIDQwLCAuMzIpO1xuICBjb2xvcjogdmFyKC0tdGV4dC1taWQpO1xufVxuXG4uY29sLWNhcmQgdWwgbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICfCuyc7XG4gIGNvbG9yOiB2YXIoLS1nb2xkKTtcbiAgZm9udC1zaXplOiAuOHJlbTtcbiAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5jb2wtY2FyZCB1bCBsaSBhIHtcbiAgZm9udC1mYW1pbHk6ICdDcmltc29uIFRleHQnLCBzZXJpZjtcbiAgZm9udC1zaXplOiAuOTVyZW07XG4gIGNvbG9yOiB2YXIoLS10ZXh0LW1pZCk7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4xOHM7XG59XG5cbi5jb2wtY2FyZCB1bCBsaSBhOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLXRleHQpO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuXG4vKiDilZTilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZdcbiAgIOKVkSAgRk9PVEVSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4pWRXG4gICDilZrilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZ0gKi9cblxuLnNpdGUtZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnItOTAwKTtcbiAgcGFkZGluZy10b3A6IGNsYW1wKDI4cHgsIDV2dywgNDRweCk7XG4gIHBhZGRpbmctYm90dG9tOiBjbGFtcCgyMHB4LCAzdncsIDI4cHgpO1xufVxuXG4uZi1icmFuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5mLWJyYW5kIC5mLWxvZ28gaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDBweDtcbiAgZmlsdGVyOiBpbnZlcnQoMSkgaHVlLXJvdGF0ZSgxOTRkZWcpO1xuICBvcGFjaXR5OiAuNjtcbn1cblxuLmYtYnJhbmQgLmYtYWRkciB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIGZvbnQtZmFtaWx5OiAnSm9zZWZpbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAuODhyZW07XG4gIGNvbG9yOiB2YXIoLS1zYW5kKTtcbiAgbWFyZ2luLWxlZnQ6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5mLXZkaXZpZGVyIHtcbiAgd2lkdGg6IDFweDtcbiAgYmFja2dyb3VuZDogIzI2MTMwODtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLmYtbGlua3MgaDQge1xuICBmb250LWZhbWlseTogJ0pvc2VmaW4gU2FucycsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjdyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAuMThlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHZhcigtLWJyLTUwMCk7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ici05MDApO1xufVxuXG4uZi1saW5rcyB1bCB7IGxpc3Qtc3R5bGU6IG5vbmU7IH1cbi5mLWxpbmtzIHVsIGxpIHsgcGFkZGluZzogMnB4IDA7IH1cblxuLmYtbGlua3MgdWwgbGkgYSB7XG4gIGZvbnQtZmFtaWx5OiAnQ3JpbXNvbiBUZXh0Jywgc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjg4cmVtO1xuICBjb2xvcjogdmFyKC0tYnItMzAwKTtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjE4cztcbn1cblxuLmYtbGlua3MgdWwgbGkgYTpob3ZlciB7IGNvbG9yOiB2YXIoLS1zYW5kLWx0KTsgfVxuXG4uZm9vdGVyLWJvdHRvbSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ici05MDApO1xuICBtYXJnaW4tdG9wOiBjbGFtcCgxOHB4LCAzdncsIDI2cHgpO1xuICBwYWRkaW5nLXRvcDogMTRweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZm9vdGVyLWJvdHRvbSBwIHtcbiAgZm9udC1mYW1pbHk6ICdKb3NlZmluIFNhbnMnLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IC41MnJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC4xM2VtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogdmFyKC0tYnItNTAwKTtcbn1cblxuLmZvb3Rlci1ib3R0b20gYSB7XG4gIGNvbG9yOiB2YXIoLS1ici01MDApO1xuICB0cmFuc2l0aW9uOiBjb2xvciAuMThzO1xufVxuXG4uZm9vdGVyLWJvdHRvbSBhOmhvdmVyIHsgY29sb3I6IHZhcigtLXNhbmQtbHQpOyB9XG5cblxuLyog4pWU4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWXXG4gICDilZEgIFNDUk9MTCBSRVZFQUwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKVkVxuICAg4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdICovXG5cbi5yZXZlYWwge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTZweCk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjU1cyBlYXNlLCB0cmFuc2Zvcm0gLjU1cyBlYXNlO1xufVxuXG4ucmV2ZWFsLnZpc2libGUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5yZXZlYWwtc3RhZ2dlciA+ICoge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTJweCk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjQycyBlYXNlLCB0cmFuc2Zvcm0gLjQycyBlYXNlO1xufVxuXG4ucmV2ZWFsLXN0YWdnZXIudmlzaWJsZSA+ICo6bnRoLWNoaWxkKDEpIHsgb3BhY2l0eToxOyB0cmFuc2Zvcm06bm9uZTsgdHJhbnNpdGlvbi1kZWxheTouMDRzOyB9XG4ucmV2ZWFsLXN0YWdnZXIudmlzaWJsZSA+ICo6bnRoLWNoaWxkKDIpIHsgb3BhY2l0eToxOyB0cmFuc2Zvcm06bm9uZTsgdHJhbnNpdGlvbi1kZWxheTouMTBzOyB9XG4ucmV2ZWFsLXN0YWdnZXIudmlzaWJsZSA+ICo6bnRoLWNoaWxkKDMpIHsgb3BhY2l0eToxOyB0cmFuc2Zvcm06bm9uZTsgdHJhbnNpdGlvbi1kZWxheTouMTZzOyB9XG4ucmV2ZWFsLXN0YWdnZXIudmlzaWJsZSA+ICo6bnRoLWNoaWxkKDQpIHsgb3BhY2l0eToxOyB0cmFuc2Zvcm06bm9uZTsgdHJhbnNpdGlvbi1kZWxheTouMjJzOyB9XG4ucmV2ZWFsLXN0YWdnZXIudmlzaWJsZSA+ICo6bnRoLWNoaWxkKDUpIHsgb3BhY2l0eToxOyB0cmFuc2Zvcm06bm9uZTsgdHJhbnNpdGlvbi1kZWxheTouMjhzOyB9XG4ucmV2ZWFsLXN0YWdnZXIudmlzaWJsZSA+ICo6bnRoLWNoaWxkKDYpIHsgb3BhY2l0eToxOyB0cmFuc2Zvcm06bm9uZTsgdHJhbnNpdGlvbi1kZWxheTouMzRzOyB9XG5cbi5wYWRkaW5neSB7XG4gIHBhZGRpbmctdG9wOiA3MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbn1cblxuLnRpdGxlLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuXG4vKiDilZTilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZdcbiAgIOKVkSAgV0hZIENBUk9VU0VMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4pWRXG4gICDilZrilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZ0gKi9cblxuLndoeSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNkZmNjYTQ3OCAwJSwgI2ZmZmZmZjM2IDEwMCUpO1xufVxuXG4ud2h5LWNhcm91c2VsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA4cHg7XG59XG5cbi53aHktdHJhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZ2FwOiAxNnB4O1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICBmbGV4OiAxO1xuICBwYWRkaW5nOiA4cHggNHB4IDE2cHg7XG4gIG1hcmdpbi1sZWZ0OiA2cHg7XG59XG5cbi53aHktdHJhY2s6Oi13ZWJraXQtc2Nyb2xsYmFyIHsgZGlzcGxheTogbm9uZTsgfVxuXG4ud2h5LXNsaWRlIHtcbiAgZmxleDogMCAwIGNhbGMoMTAwJSAtIDBweCk7XG4gIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydDtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC53aHktc2xpZGUgeyBmbGV4OiAwIDAgY2FsYyg1MCUgLSA4cHgpOyB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xuICAud2h5LXNsaWRlIHsgZmxleDogMCAwIGNhbGMoMzMuMzMzJSAtIDExcHgpOyB9XG59XG5cbi53aHkgLndoeS1ibG9jayB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggM3B4IDBweCAjMzYyNzFjNTI7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgZmxleDogMTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzVhMzAxOCAwJSwgIzJhMTYwOCAxMDAlKTtcbn1cblxuLndoeSAud2h5LWJsb2NrIC53aHktaWNvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLWJyLTYwMCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXNhbmQtbHQpO1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBwYWRkaW5nOiAxNXB4O1xuICBtYXJnaW46IDAgYXV0byAxM3B4IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbi53aHkgLndoeS1ibG9jayAud2h5LWljb24gc3ZnIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ud2h5IC53aHktYmxvY2sgaDMge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBjb2xvcjogdmFyKC0tcGFyY2htZW50KTtcbn1cblxuLndoeSAud2h5LWJsb2NrIHAge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1zYW5kLWx0KTtcbn1cblxuLndoeS1idG4ge1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zYW5kKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY3JlYW0pO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjJzLCBjb2xvciAuMnMsIG9wYWNpdHkgLjJzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53aHktYnRuIHNwYW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBjb2xvcjogdmFyKC0tYnItNjAwKTtcbiAgZm9udC1zaXplOiAxLjZyZW07XG59XG5cbi53aHktYnRuOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnItMzAwKTtcbiAgY29sb3I6IHZhcigtLWNyZWFtKTtcbn1cblxuLndoeS1idG46aG92ZXI6bm90KDpkaXNhYmxlZCkgc3BhbiB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLndoeS1idG46ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM1O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi53aHktZG90cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDdweDtcbiAgbWFyZ2luLXRvcDogNHB4O1xufVxuXG4ud2h5LWRvdCB7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogOHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IHZhcigtLXNhbmQpO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMnMsIHRyYW5zZm9ybSAuMnM7XG59XG5cbi53aHktZG90LmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyLTYwMCk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbn1cblxuXG4vKiDilZTilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZdcbiAgIOKVkSAgRkFRIFNFQ1RJT04gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg4pWRXG4gICDilZrilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZ0gKi9cblxuLmZhcSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNkZmNjYTQ3OCAwJSwgI2ZmZmZmZjM2IDEwMCUpO1xufVxuXG4uc2VjdGlvbi1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IGNsYW1wKDIwcHgsIDIuMnZ3LCAyNXB4KTtcbn1cblxuLnNlY3Rpb24tZXllYnJvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICdKb3NlZmluIFNhbnMnLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IC41NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC4yOGVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogdmFyKC0tYnItNTAwKTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnNlY3Rpb24tdGl0bGUge1xuICBmb250LWZhbWlseTogJ0Nvcm1vcmFudCBHYXJhbW9uZCcsIHNlcmlmO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLWJyLTgwMCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xufVxuXG4uc2VjdGlvbi10aXRsZSBlbSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6IHZhcigtLWJyLTYwMCk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2VjdGlvbi10aXRsZSB7IGZvbnQtc2l6ZTogMnJlbTsgfVxufVxuXG4uc2VjdGlvbi1vcm5hbWVudCB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvc2VwYXJhdG9yLnN2Zykgbm8tcmVwZWF0IGNlbnRlcjtcbn1cblxuXG4uZmFxLWxpc3Qge1xuICBtYXgtd2lkdGg6IDgyMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmZhcS1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTg4LCAxNDgsIDk2LCAuMzUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5mYXEtaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDE4OCwgMTQ4LCA5NiwgLjM1KTtcbn1cblxuLmZhcS1pdGVtOjpiZWZvcmUge1xuICBjb250ZW50OiBhdHRyKGRhdGEtbnVtKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgZm9udC1mYW1pbHk6ICdDb3Jtb3JhbnQgR2FyYW1vbmQnLCBzZXJpZjtcbiAgZm9udC1zaXplOiA1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogcmdiYSgxODgsIDE0OCwgOTYsIC4wOCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4zNXM7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5MDBweCkge1xuICAuZmFxLWl0ZW06OmJlZm9yZSB7IGZvbnQtc2l6ZTogOXJlbTsgfVxufVxuXG4uZmFxLWl0ZW0uaXMtb3Blbjo6YmVmb3JlIHtcbiAgY29sb3I6IHJnYmEoMTg4LCAxNDgsIDk2LCAuMTQpO1xufVxuXG4uZmFxLXF1ZXN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogY2xhbXAoMTBweCwgMnZ3LCAyMnB4KTtcbiAgcGFkZGluZzogY2xhbXAoMTZweCwgMi41dncsIDIycHgpIDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5mYXEtcXVlc3Rpb246Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1nb2xkKTtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuXG4uZmFxLW51bSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmb250LWZhbWlseTogJ0pvc2VmaW4gU2FucycsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjUycmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogLjEyZW07XG4gIGNvbG9yOiB2YXIoLS1zYW5kKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnItODAwKTtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMjVzLCBjb2xvciAuMjVzO1xufVxuXG4uZmFxLWl0ZW0uaXMtb3BlbiAuZmFxLW51bSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyLTYwMCk7XG4gIGNvbG9yOiB2YXIoLS1jcmVhbSk7XG59XG5cbi5mYXEtcS10ZXh0IHtcbiAgZmxleDogMTtcbiAgZm9udC1mYW1pbHk6ICdDb3Jtb3JhbnQgR2FyYW1vbmQnLCBzZXJpZjtcbiAgZm9udC1zaXplOiAuOTVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiB2YXIoLS1ici04MDApO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjIycztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mYXEtcS10ZXh0IHsgZm9udC1zaXplOiAxLjE1cmVtOyB9XG59XG5cbi5mYXEtcXVlc3Rpb246aG92ZXIgLmZhcS1xLXRleHQsXG4uZmFxLWl0ZW0uaXMtb3BlbiAuZmFxLXEtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1ici03MDApO1xufVxuXG4uZmFxLXRvZ2dsZSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zYW5kLWx0KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLWJyLTUwMCk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjI1cywgYm9yZGVyLWNvbG9yIC4yNXMsIGNvbG9yIC4yNXMsIHRyYW5zZm9ybSAuMzVzO1xufVxuXG4uZmFxLXF1ZXN0aW9uOmhvdmVyIC5mYXEtdG9nZ2xlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zYW5kKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc2FuZC1sdCk7XG59XG5cbi5mYXEtaXRlbS5pcy1vcGVuIC5mYXEtdG9nZ2xlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnItNjAwKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ici02MDApO1xuICBjb2xvcjogdmFyKC0tY3JlYW0pO1xufVxuXG4uZmFxLXRvZ2dsZSAuZmFxLXBsdXMtdiB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDhweCA4cHg7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMzJzIGVhc2UsIG9wYWNpdHkgLjMycyBlYXNlO1xufVxuXG4uZmFxLWl0ZW0uaXMtb3BlbiAuZmFxLXRvZ2dsZSAuZmFxLXBsdXMtdiB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmZhcS1hbnN3ZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IDBmcjtcbiAgdHJhbnNpdGlvbjogZ3JpZC10ZW1wbGF0ZS1yb3dzIC4zOHMgY3ViaWMtYmV6aWVyKC40LCAwLCAuMiwgMSk7XG59XG5cbi5mYXEtaXRlbS5pcy1vcGVuIC5mYXEtYW5zd2VyIHtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG59XG5cbi5mYXEtYW5zd2VyLWlubmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmZhcS1hbnN3ZXItaW5uZXIgcCB7XG4gIGZvbnQtZmFtaWx5OiAnQ3JpbXNvbiBUZXh0Jywgc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjk1cmVtO1xuICBjb2xvcjogdmFyKC0tdGV4dC1taWQpO1xuICBsaW5lLWhlaWdodDogMS43NTtcbiAgcGFkZGluZzogMCAwIGNsYW1wKDE2cHgsIDIuNXZ3LCAyMnB4KSAxNHB4O1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWdvbGQpO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MXB4KSB7XG4gIC5mYXEtYW5zd2VyLWlubmVyIHAge1xuICAgIHBhZGRpbmctbGVmdDogMTZweDtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyOHB4ICsgY2xhbXAoMTBweCwgMnZ3LCAyMnB4KSk7XG4gICAgcGFkZGluZy1ib3R0b206IGNsYW1wKDE2cHgsIDIuNXZ3LCAyMnB4KTtcbiAgfVxufVxuXG4uZ2FsZXJ5LWNoaS1zaWFtbyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZ2FsZXJ5LWNoaS1zaWFtbyAudGh1bWJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3cteDogc2Nyb2xsO1xufVxuXG4uZ2FsZXJ5LWNoaS1zaWFtbyAudGh1bWJzIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMjAwcHg7XG59XG5cblxuLyog4pWU4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWXXG4gICDilZEgIENPTlRBQ1QgUEFHRSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIOKVkVxuICAg4pWa4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWQ4pWdICovXG5cbi5jb250YWN0LWhlcm8ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1ici05MDApIDAlLCB2YXIoLS1ici04MDApIDEwMCUpO1xuICBwYWRkaW5nOiA1MHB4IDAgMzBweDsgXG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCB2YXIoLS1nb2xkKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY29udGFjdC1oZXJvLWV5ZWJyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnSm9zZWZpbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAuNDhyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAuMjhlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHZhcigtLXNhbmQpO1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICBwYWRkaW5nOiA0cHggMTRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxOTYsMTYwLDExMCwuMzUpO1xufVxuXG4uY29udGFjdC1oZXJvLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6ICdDb3Jtb3JhbnQgR2FyYW1vbmQnLCBzZXJpZjtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiB2YXIoLS1zYW5kLWx0KTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIG1hcmdpbi1ib3R0b206IDE0cHg7XG59XG5cbi5jb250YWN0LWhlcm8tdGl0bGUgZW0ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiB2YXIoLS1ici0zMDApO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRhY3QtaGVyby10aXRsZSB7IGZvbnQtc2l6ZTogMi4ycmVtOyB9XG59XG5cbi5jb250YWN0LWhlcm8tb3JuYW1lbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMThweDtcbn1cblxuLmNvbnRhY3QtaW5mby1jYXJkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiBjbGFtcCgyMHB4LCAzdncsIDI4cHgpO1xufVxuXG4uaW5mby1ibG9jayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMTZweDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5pbmZvLWljb24ge1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDQ2cHg7XG4gIGhlaWdodDogNDZweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zYW5kLWx0KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1ici03MDApO1xufVxuXG4uaW5mby1ib2R5IHtcbiAgZmxleDogMTtcbn1cblxuLmluZm8tbGFiZWwge1xuICBmb250LWZhbWlseTogJ0pvc2VmaW4gU2FucycsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAuMjJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHZhcigtLWJyLTUwMCk7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cblxuLmluZm8tdmFsdWUge1xuICBmb250LWZhbWlseTogJ0NyaW1zb24gVGV4dCcsIHNlcmlmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiB2YXIoLS10ZXh0LW1pZCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi5pbmZvLXZhbHVlIGEge1xuICBjb2xvcjogdmFyKC0tYnItNjAwKTtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjE4cztcbn1cblxuLmluZm8tdmFsdWUgYTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1ici04MDApO1xufVxuXG4ubWFwLXdyYXBwZXIge1xuICBtYXJnaW4tdG9wOiBjbGFtcCgyNHB4LCAzLjV2dywgMzZweCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNhbmQtbHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubWFwLXdyYXBwZXIgaWZyYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDI4MHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGZpbHRlcjogc2VwaWEoMTglKSBjb250cmFzdCguOTUpO1xufVxuXG4vKiBDb250YWN0IGZvcm0gKi9cbi5jb250YWN0LWZvcm0td3JhcCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNjBkZWcsIHZhcigtLWJyLTkwMCkgMCUsIHZhcigtLWJyLTgwMCkgMTAwJSk7XG4gIHBhZGRpbmc6IGNsYW1wKDI0cHgsIDR2dywgNDBweCk7XG4gIGJvcmRlci10b3A6IDNweCBzb2xpZCB2YXIoLS1nb2xkKTtcbn1cblxuLmZvcm0tc2VjdGlvbi1sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiAnQ29ybW9yYW50IEdhcmFtb25kJywgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLXNhbmQtbHQpO1xuICBtYXJnaW4tYm90dG9tOiBjbGFtcCgxOHB4LCAzdncsIDI2cHgpO1xuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTk2LDE2MCwxMTAsLjI1KTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mb3JtLXNlY3Rpb24tbGFiZWwgeyBmb250LXNpemU6IDEuNTVyZW07IH1cbn1cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAyNnB4O1xufVxuXG4uZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogJ0pvc2VmaW4gU2FucycsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogLjQ3cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogLjJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHZhcigtLWJyLTMwMCk7XG4gIG1hcmdpbi1ib3R0b206IDZweDtcbn1cblxuLmZvcm0tY29udHJvbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LC4wNik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTk2LDE2MCwxMTAsLjMpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBwYWRkaW5nOiAxMHB4IDE0cHg7XG4gIGZvbnQtZmFtaWx5OiAnQ3JpbXNvbiBUZXh0Jywgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6IHZhcigtLXNhbmQtbHQpO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjJzLCBiYWNrZ3JvdW5kIC4ycztcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4uZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiByZ2JhKDE5NiwxNjAsMTEwLC40KTtcbn1cblxuLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc2FuZCk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xufVxuXG50ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICByZXNpemU6IHZlcnRpY2FsO1xuICBtaW4taGVpZ2h0OiAxMzBweDtcbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbCBvcHRpb24ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ici04MDApO1xuICBjb2xvcjogdmFyKC0tc2FuZC1sdCk7XG59XG5cbi8qIEZvcm0gcm93OiBzdGFja2VkIG9uIG1vYmlsZSwgc2lkZS1ieS1zaWRlIG9uIHdpZGVyIHNjcmVlbnMgKi9cbi5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMDtcbn1cblxuLmZvcm0tcm93IC5mb3JtLWdyb3VwIHtcbiAgZmxleDogMTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDUyMXB4KSB7XG4gIC5mb3JtLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBnYXA6IDE0cHg7XG4gIH1cbn1cblxuLmJ0bi1zdWJtaXQge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxMHB4O1xuICBwYWRkaW5nOiAxMnB4IDMycHg7XG4gIGZvbnQtZmFtaWx5OiAnSm9zZWZpbiBTYW5zJywgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAuNThyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAuMmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogdmFyKC0tYnItOTAwKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc2FuZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdvbGQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjJzLCBjb2xvciAuMnMsIGJvcmRlci1jb2xvciAuMnM7XG4gIHdpZHRoOiAxMDAlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogNnB4O1xufVxuXG4uYnRuLXN1Ym1pdDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXNhbmQtbHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLXNhbmQtbHQpO1xufVxuXG4uZm9ybS1zdWNjZXNzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAyOHB4IDE2cHg7XG59XG5cbi5mb3JtLXN1Y2Nlc3MudmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZm9ybS1zdWNjZXNzIHN2ZyB7XG4gIGNvbG9yOiB2YXIoLS1zYW5kKTtcbiAgbWFyZ2luLWJvdHRvbTogMTRweDtcbn1cblxuLmZvcm0tc3VjY2VzcyBwIHtcbiAgZm9udC1mYW1pbHk6ICdDb3Jtb3JhbnQgR2FyYW1vbmQnLCBzZXJpZjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBjb2xvcjogdmFyKC0tc2FuZC1sdCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi8qIENvbnRhY3QgbGF5b3V0IGdyaWQgKi9cbi5jb250YWN0LWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ2FwOiBjbGFtcCgyOHB4LCA0dncsIDQ4cHgpO1xuICBhbGlnbi1pdGVtczogc3RhcnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA4NjBweCkge1xuICAuY29udGFjdC1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxLjM1ZnI7XG4gIH1cbn1cblxuLyogT2ZmaWNlIGhvdXJzICovXG4uaG91cnMtdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgbWFyZ2luLXRvcDogNnB4O1xufVxuXG4uaG91cnMtdGFibGUgdGQge1xuICBmb250LWZhbWlseTogJ0NyaW1zb24gVGV4dCcsIHNlcmlmO1xuICBmb250LXNpemU6IC45M3JlbTtcbiAgY29sb3I6IHZhcigtLXRleHQtbWlkKTtcbiAgcGFkZGluZzogM3B4IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5ob3Vycy10YWJsZSB0ZDpsYXN0LWNoaWxkIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuXG4ucGFnZS1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdhcDogY2xhbXAoMjhweCwgNHZ3LCA0OHB4KTtcbiAgYWxpZ24taXRlbXM6IHN0YXJ0O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLnBhZ2UtZ3JpZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxLjRmciAxZnI7XG4gIH1cbn1cblxuLnRleHQtYmxvY2t7XG4gIGZvbnQtZmFtaWx5OiAnQ3JpbXNvbiBUZXh0Jywgc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6IHZhcigtLXRleHQtbWlkKTtcbiAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gIHBhZGRpbmc6IDE1cHggMzBweDtcbn0iXX0= */