/*!*********************************************************************************************************************************************************************************************!*\
  !*** 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/styles/app.css ***!
  \*********************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&family=DM+Serif+Display:ital@0;1&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/styles/app.css (1) ***!
  \*************************************************************************************************************************************************************************************************/
/* ═══════════════════════════════════════════════════════════════
   HUMANITYDEV - Design System v2
   Architecture : CSS Custom Properties → Base → Layout → Components
   ═══════════════════════════════════════════════════════════════ */

/* ── 0. GOOGLE FONTS ── */

/* ─────────────────────────────────────────
   1. CUSTOM PROPERTIES
───────────────────────────────────────── */
:root {
  /* Brand palette */
  --navy:        #0B1F40;
  --navy-mid:    #132d5a;
  --navy-light:  #1e3f7a;
  --blue:        #1A56DB;
  --blue-hover:  #1447c0;
  --blue-light:  #dbeafe;
  --blue-xlight: #eff6ff;
  --green:       #0E9F6E;
  --green-hover: #057a55;
  --green-light: #d1fae5;
  --orange:      #F97316;
  --orange-hover:#ea6a0a;
  --orange-light:#fff7ed;

  /* Neutral */
  --white:    #ffffff;
  --bg-light: #F8FAFF;
  --bg-mid:   #f0f4ff;
  --border:   #e2e8f0;
  --border-mid:#cbd5e1;

  /* Text */
  --text-primary:   #0f172a;
  --text-secondary: #475569;
  --text-muted:     #94a3b8;
  --text-inverse:   #ffffff;

  /* Shadows */
  --shadow-xs: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);
  --shadow-sm: 0 4px 12px rgba(0,0,0,.07), 0 2px 4px rgba(0,0,0,.04);
  --shadow-md: 0 8px 24px rgba(0,0,0,.09), 0 4px 8px rgba(0,0,0,.05);
  --shadow-lg: 0 20px 48px rgba(0,0,0,.12), 0 8px 16px rgba(0,0,0,.06);
  --shadow-xl: 0 32px 64px rgba(0,0,0,.16), 0 12px 24px rgba(0,0,0,.08);
  --shadow-blue: 0 8px 24px rgba(26,86,219,.25);
  --shadow-green: 0 8px 24px rgba(14,159,110,.25);
  --shadow-orange: 0 8px 24px rgba(249,115,22,.25);

  /* Spacing */
  --section-py: clamp(4rem, 8vw, 7rem);
  --container-px: clamp(1.25rem, 5vw, 2rem);
  --container-max: 1200px;

  /* Radius */
  --radius-sm: .5rem;
  --radius-md: .875rem;
  --radius-lg: 1.25rem;
  --radius-xl: 1.75rem;
  --radius-2xl: 2.5rem;
  --radius-full: 9999px;

  /* Typography */
  --font-sans: 'Plus Jakarta Sans', system-ui, sans-serif;
  --font-serif: 'DM Serif Display', Georgia, serif;

  /* Transitions */
  --ease: cubic-bezier(.4,0,.2,1);
  --ease-spring: cubic-bezier(.34,1.56,.64,1);
  --t-fast: 150ms var(--ease);
  --t-base: 250ms var(--ease);
  --t-slow: 400ms var(--ease);

  /* Navbar */
  --navbar-h: 76px;
}

[data-theme="dark"] {
  --white:          #1e2535;
  --bg-light:       #151d2e;
  --bg-mid:         #1a243a;
  --border:         #2d3a52;
  --border-mid:     #3d4f6e;
  --text-primary:   #f1f5f9;
  --text-secondary: #94a3b8;
  --text-muted:     #64748b;
  --shadow-xs: 0 1px 3px rgba(0,0,0,.3);
  --shadow-sm: 0 4px 12px rgba(0,0,0,.3);
  --shadow-md: 0 8px 24px rgba(0,0,0,.35);
  --shadow-lg: 0 20px 48px rgba(0,0,0,.4);
}

/* ─────────────────────────────────────────
   2. RESET & BASE
───────────────────────────────────────── */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: var(--font-sans);
  color: var(--text-primary);
  background-color: var(--white);
  line-height: 1.6;
  font-weight: 400;
  overflow-x: hidden;
  transition: background-color var(--t-slow), color var(--t-slow);
}

img, video, svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; font-family: inherit; border: none; background: none; }
ul, ol { list-style: none; }
input, textarea, select { font-family: inherit; }
:focus-visible {
  outline: 2px solid var(--blue);
  outline-offset: 3px;
  border-radius: 4px;
}

/* ─────────────────────────────────────────
   3. TYPOGRAPHY
───────────────────────────────────────── */
.h-display {
  font-family: var(--font-serif);
  font-size: clamp(2.5rem, 6vw, 4.5rem);
  line-height: 1.08;
  letter-spacing: -.02em;
  color: var(--text-primary);
}
.h1 { font-size: clamp(2rem, 4vw, 3.25rem); font-weight: 800; line-height: 1.15; letter-spacing: -.025em; }
.h2 { font-size: clamp(1.625rem, 3vw, 2.5rem); font-weight: 700; line-height: 1.2;  letter-spacing: -.02em; }
.h3 { font-size: clamp(1.25rem, 2vw, 1.625rem);  font-weight: 700; line-height: 1.3; }
.h4 { font-size: 1.125rem; font-weight: 600; line-height: 1.4; }

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  font-size: .8125rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--blue);
  margin-bottom: 1rem;
}
.eyebrow::before {
  content: '';
  display: block;
  width: 1.5rem;
  height: 2px;
  background: var(--blue);
  border-radius: 2px;
}

.lead {
  font-size: clamp(1rem, 1.5vw, 1.125rem);
  color: var(--text-secondary);
  line-height: 1.75;
  max-width: 600px;
}

/* ─────────────────────────────────────────
   4. LAYOUT UTILITIES
───────────────────────────────────────── */
.container {
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-px);
}

.section {
  padding-block: var(--section-py);
}
.section--alt { background-color: var(--bg-light); }
.section--dark {
  background-color: var(--navy);
  color: var(--text-inverse);
}

.grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2rem; }
.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
.grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }

/* ─────────────────────────────────────────
   5. BUTTONS
───────────────────────────────────────── */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .75rem 1.75rem;
  border-radius: var(--radius-full);
  font-size: .9375rem;
  font-weight: 600;
  line-height: 1;
  transition: all var(--t-base);
  cursor: pointer;
  white-space: nowrap;
  position: relative;
  overflow: hidden;
  border: 2px solid transparent;
  text-decoration: none;
}

/* Ripple */
.btn::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle, rgba(255,255,255,.35) 0%, transparent 70%);
  transform: scale(0);
  opacity: 0;
  transition: transform .5s, opacity .5s;
  pointer-events: none;
  border-radius: inherit;
}
.btn:active::after {
  transform: scale(2.5);
  opacity: 1;
  transition: 0s;
}

.btn--primary {
  background: var(--blue);
  color: #fff;
  box-shadow: var(--shadow-blue);
}
.btn--primary:hover {
  background: var(--blue-hover);
  transform: translateY(-2px);
  box-shadow: 0 12px 30px rgba(26,86,219,.35);
}

.btn--green {
  background: var(--green);
  color: #fff;
  box-shadow: var(--shadow-green);
}
.btn--green:hover {
  background: var(--green-hover);
  transform: translateY(-2px);
  box-shadow: 0 12px 30px rgba(14,159,110,.35);
}

.btn--orange {
  background: var(--orange);
  color: #fff;
  box-shadow: var(--shadow-orange);
}
.btn--orange:hover {
  background: var(--orange-hover);
  transform: translateY(-2px);
}

.btn--outline {
  background: transparent;
  border-color: rgba(255,255,255,.4);
  color: #fff;
}
.btn--outline:hover {
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.7);
  transform: translateY(-2px);
}

.btn--outline-dark {
  background: transparent;
  border-color: var(--border-mid);
  color: var(--text-primary);
}
.btn--outline-dark:hover {
  border-color: var(--blue);
  color: var(--blue);
  background: var(--blue-xlight);
}

.btn--sm { padding: .5rem 1.25rem; font-size: .875rem; }
.btn--lg { padding: 1rem 2.5rem; font-size: 1rem; }

.btn svg { width: 1.125rem; height: 1.125rem; flex-shrink: 0; transition: transform var(--t-base); }
.btn:hover svg.arrow { transform: translateX(4px); }

/* ─────────────────────────────────────────
   6. NAVBAR
───────────────────────────────────────── */
.navbar {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 1000;
  height: var(--navbar-h);
  display: flex;
  align-items: center;
  transition: background var(--t-slow), box-shadow var(--t-slow), backdrop-filter var(--t-slow);
}
.navbar__inner {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
}

.navbar--transparent { background: transparent; }
.navbar--solid {
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(16px) saturate(180%);
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  box-shadow: 0 1px 0 rgba(0,0,0,.06), var(--shadow-sm);
}
[data-theme="dark"] .navbar--solid {
  background: rgba(11,31,64,.93);
}

.navbar__logo { flex-shrink: 0; display: flex; align-items: center; }
.navbar__logo img {
  height: 44px;
  width: auto;
  transition: opacity var(--t-base);
}
.navbar__logo:hover img { opacity: .85; }

.navbar__nav {
  display: flex;
  align-items: center;
  gap: .25rem;
  margin-left: auto;
}

.navbar__link {
  position: relative;
  padding: .5rem .75rem;
  font-size: .9rem;
  font-weight: 500;
  color: rgba(255,255,255,.85);
  border-radius: var(--radius-sm);
  transition: color var(--t-fast), background var(--t-fast);
  white-space: nowrap;
}
.navbar--solid .navbar__link {
  color: var(--text-secondary);
}
.navbar__link::after {
  content: '';
  position: absolute;
  bottom: 4px; left: .75rem; right: .75rem;
  height: 2px;
  background: var(--blue);
  border-radius: 2px;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--t-base);
}
.navbar__link:hover,
.navbar__link.active {
  color: var(--blue);
  background: var(--blue-xlight);
}
.navbar__link.active::after,
.navbar__link:hover::after {
  transform: scaleX(1);
}
.navbar--transparent .navbar__link:hover,
.navbar--transparent .navbar__link.active {
  background: rgba(255,255,255,.12);
  color: #fff;
}
.navbar--transparent .navbar__link::after {
  background: #fff;
}

.navbar__actions {
  display: flex;
  align-items: center;
  gap: .75rem;
  margin-left: 1.25rem;
}

.navbar__theme-btn {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: var(--radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.8);
  background: rgba(255,255,255,.1);
  transition: all var(--t-base);
}
.navbar--solid .navbar__theme-btn {
  color: var(--text-secondary);
  background: var(--bg-light);
}
.navbar__theme-btn:hover {
  background: rgba(255,255,255,.2);
  color: #fff;
  transform: rotate(20deg);
}
.navbar--solid .navbar__theme-btn:hover {
  background: var(--blue-xlight);
  color: var(--blue);
}
.navbar__theme-btn svg { width: 1.1rem; height: 1.1rem; }

/* Burger */
.navbar__burger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,.1);
  margin-left: auto;
  padding: .5rem;
  transition: background var(--t-base);
}
.navbar--solid .navbar__burger {
  background: var(--bg-light);
}
.navbar__burger span {
  display: block;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
  transition: transform var(--t-base), opacity var(--t-base), width var(--t-base);
  transform-origin: center;
}
.navbar__burger span:nth-child(3) { width: 60%; }
.navbar--transparent .navbar__burger { color: #fff; }
.navbar--solid .navbar__burger { color: var(--text-primary); }

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

/* Mobile menu */
.navbar__mobile {
  position: fixed;
  top: var(--navbar-h); left: 0; right: 0;
  background: var(--white);
  box-shadow: var(--shadow-lg);
  padding: 1.5rem var(--container-px) 2rem;
  transform: translateY(-110%);
  opacity: 0;
  pointer-events: none;
  transition: transform var(--t-slow), opacity var(--t-slow);
  z-index: 999;
  border-top: 1px solid var(--border);
}
.navbar__mobile.open {
  transform: translateY(0);
  opacity: 1;
  pointer-events: all;
}
.navbar__mobile-nav {
  display: flex;
  flex-direction: column;
  gap: .25rem;
  margin-bottom: 1.5rem;
}
.navbar__mobile-link {
  padding: .75rem 1rem;
  font-size: 1rem;
  font-weight: 500;
  color: var(--text-primary);
  border-radius: var(--radius-sm);
  transition: background var(--t-fast), color var(--t-fast);
}
.navbar__mobile-link:hover {
  background: var(--bg-light);
  color: var(--blue);
}
.navbar__mobile-actions {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--border);
}

/* ─────────────────────────────────────────
   7. HERO
───────────────────────────────────────── */
.hero {
  position: relative;
  min-height: 100svh;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: var(--navy);
}

.hero__bg {
  position: absolute;
  inset: 0;
}
.hero__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  opacity: .35;
  transform: scale(1.05);
  transition: transform 8s ease;
}
.hero.loaded .hero__bg img { transform: scale(1); }

/* Gradient overlays */
.hero__overlay {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 120% 80% at 0% 50%, rgba(11,31,64,.95) 30%, transparent 70%),
    linear-gradient(180deg, rgba(11,31,64,.6) 0%, rgba(11,31,64,.3) 100%);
}

/* Animated gradient orbs */
.hero__orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  opacity: .35;
  animation: orbFloat 8s ease-in-out infinite;
  pointer-events: none;
}
.hero__orb--1 {
  width: 500px; height: 500px;
  background: var(--blue);
  top: -10%; right: 5%;
  animation-delay: 0s;
}
.hero__orb--2 {
  width: 350px; height: 350px;
  background: var(--green);
  bottom: 5%; right: 30%;
  animation-delay: -3s;
}
.hero__orb--3 {
  width: 250px; height: 250px;
  background: var(--orange);
  top: 30%; right: 15%;
  animation-delay: -6s;
}
@keyframes orbFloat {
  0%, 100% { transform: translate(0, 0) scale(1); }
  33%       { transform: translate(20px, -30px) scale(1.05); }
  66%       { transform: translate(-15px, 20px) scale(.95); }
}

.hero__content {
  position: relative;
  z-index: 2;
  padding-top: calc(var(--navbar-h) + 3rem);
  padding-bottom: 6rem;
}

.hero__badge {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .375rem 1rem;
  background: rgba(255,255,255,.1);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: var(--radius-full);
  font-size: .75rem;
  font-weight: 500;
  color: rgba(255,255,255,.85);
  margin-bottom: 1.75rem;
  line-height: 1.2;
  letter-spacing: .02em;
}
.hero__badge-dot {
  width: .5rem; height: .5rem;
  border-radius: 50%;
  background: var(--green);
  box-shadow: 0 0 0 3px rgba(14,159,110,.35);
  animation: pulse 2s ease-in-out infinite;
}
@keyframes pulse {
  0%, 100% { box-shadow: 0 0 0 3px rgba(14,159,110,.35); }
  50%       { box-shadow: 0 0 0 6px rgba(14,159,110,.15); }
}

.hero__title {
  font-family: var(--font-serif);
  font-size: clamp(2.75rem, 6vw, 5rem);
  line-height: 1.05;
  color: #fff;
  margin-bottom: 1.5rem;
  max-width: 750px;
}
.hero__title em {
  font-style: italic;
  background: linear-gradient(135deg, #60a5fa, #34d399);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.hero__lead {
  font-size: clamp(1rem, 1.5vw, 1.175rem);
  color: rgba(255,255,255,.7);
  line-height: 1.75;
  max-width: 540px;
  margin-bottom: 2.5rem;
}

.hero__ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
}

.hero__scroll {
  position: absolute;
  bottom: 2.5rem;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .5rem;
  color: rgba(255,255,255,.4);
  font-size: .75rem;
  letter-spacing: .1em;
  text-transform: uppercase;
  animation: bounceScroll 2s ease-in-out infinite;
  z-index: 2;
}
.hero__scroll svg { width: 1.25rem; height: 1.25rem; }
@keyframes bounceScroll {
  0%, 100% { transform: translateX(-50%) translateY(0); }
  50%       { transform: translateX(-50%) translateY(8px); }
}

/* Stats ribbon */
.stats-ribbon {
  background: var(--blue);
  padding: 1rem 0;
  position: relative;
  overflow: hidden;
}
.stats-ribbon::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(26,86,219,.8), rgba(11,31,64,.9));
}
.stats-ribbon__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
  position: relative;
  z-index: 1;
}
.stat-item {
  text-align: center;
  color: #fff;
  padding: 1rem 0;
  position: relative;
}
.stat-item + .stat-item::before {
  content: '';
  position: absolute;
  left: 0; top: 20%; bottom: 20%;
  width: 1px;
  background: rgba(255,255,255,.2);
}
.stat-item__number {
  font-family: var(--font-serif);
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1;
  margin-bottom: .375rem;
  color: #fff;
}
.stat-item__label {
  font-size: .75rem;
  color: rgba(255,255,255,.7);
  font-weight: 500;
  letter-spacing: .02em;
}

/* ─────────────────────────────────────────
   8. ABOUT SECTION
───────────────────────────────────────── */

/* Centered header */
.about__header {
  text-align: center;
  max-width: 720px;
  margin-inline: auto;
  margin-bottom: 3.5rem;
}
.about__header .eyebrow { justify-content: center; }
.about__header .h2 { margin-top: .25rem; }

/* Two-column grid */
.about__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
  align-items: start;
}

.about__media {
  position: relative;
}

.about__mosaic {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  grid-template-rows: auto auto;
  gap: .875rem;
}

.mosaic__item {
  border-radius: var(--radius-lg);
  overflow: hidden;
  position: relative;
}
.mosaic__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform .6s var(--ease);
}
.mosaic__item:hover img { transform: scale(1.06); }

.mosaic__item--tall {
  grid-row: 1 / 3;
  min-height: 420px;
}
.mosaic__item--short { min-height: 200px; }

/* Info block */
.about__info { display: flex; flex-direction: column; gap: 1.5rem; }

.about__info-intro {
  font-size: .9375rem;
  color: var(--text-secondary);
  line-height: 1.7;
  padding-bottom: .25rem;
}

/* About cards */
.about-cards {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.about-card {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  width: 100%;
  padding: 1.25rem 1.5rem;
  background: var(--white);
  border: 1.5px solid var(--border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-xs);
  cursor: pointer;
  transition: all var(--t-base);
  text-align: left;
  position: relative;
  overflow: hidden;
}
.about-card::before {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  border-radius: 4px 0 0 4px;
  transform: scaleY(0);
  transform-origin: bottom;
  transition: transform var(--t-base);
}
.about-card:hover,
.about-card:focus-visible {
  transform: translateX(4px);
  box-shadow: var(--shadow-md);
}
.about-card:hover::before,
.about-card:focus-visible::before { transform: scaleY(1); }

.about-card:nth-child(1) { border-left-color: var(--blue); }
.about-card:nth-child(1)::before { background: var(--blue); }
.about-card:nth-child(1):hover { border-color: var(--blue); background: var(--blue-xlight); }

.about-card:nth-child(2) { border-left-color: var(--green); }
.about-card:nth-child(2)::before { background: var(--green); }
.about-card:nth-child(2):hover { border-color: var(--green); background: var(--green-light); }

.about-card:nth-child(3) { border-left-color: var(--orange); }
.about-card:nth-child(3)::before { background: var(--orange); }
.about-card:nth-child(3):hover { border-color: var(--orange); background: var(--orange-light); }

.about-card__icon {
  width: 3rem;
  height: 3rem;
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform var(--t-base);
}
.about-card:hover .about-card__icon { transform: scale(1.1) rotate(-4deg); }
.about-card__icon svg { width: 1.5rem; height: 1.5rem; }
.about-card__icon--blue   { background: var(--blue-xlight); color: var(--blue); }
.about-card__icon--green  { background: var(--green-light);  color: var(--green); }
.about-card__icon--orange { background: var(--orange-light); color: var(--orange); }

.about-card__body { flex: 1; min-width: 0; }
.about-card__title {
  font-size: 1rem;
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: .25rem;
  line-height: 1.3;
}
.about-card__desc {
  font-size: .875rem;
  color: var(--text-secondary);
  line-height: 1.55;
}

.about-card__arrow {
  flex-shrink: 0;
  width: 2rem; height: 2rem;
  border-radius: 50%;
  background: var(--bg-light);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--t-base);
  color: var(--text-muted);
}
.about-card__arrow svg { width: 1rem; height: 1rem; }
.about-card:hover .about-card__arrow {
  background: var(--white);
  color: var(--text-primary);
  box-shadow: var(--shadow-xs);
  transform: translateX(2px);
}

/* ── Modal rich text (Qui sommes-nous) ── */
.modal__rich-text {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  font-size: .9625rem;
  color: var(--text-secondary);
  line-height: 1.78;
}
.modal__signature {
  font-style: italic;
  color: var(--text-muted);
  font-size: .875rem;
  text-align: right;
  margin-top: .5rem;
  padding-top: 1rem;
  border-top: 1px solid var(--border);
}

/* ── Modal objectives list ── */
.modal__objectives-list {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  margin-bottom: 1.5rem;
  list-style: none;
}
.modal__objectives-list li {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  font-size: .9375rem;
  color: var(--text-secondary);
  line-height: 1.6;
  padding: .625rem .875rem;
  background: var(--bg-light);
  border-radius: var(--radius-sm);
  border-left: 3px solid var(--green);
}
.modal__objectives-list li::before {
  content: '✓';
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  background: var(--green-light);
  color: var(--green);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .7rem;
  font-weight: 700;
  margin-top: .1rem;
}

/* ── Modal axes grid ── */
.modal__axes-grid {
  display: flex;
  flex-direction: column;
  gap: .875rem;
  margin-bottom: 1.5rem;
}
.modal__axe-item {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1rem 1.25rem;
  background: var(--bg-light);
  border-radius: var(--radius-md);
  border: 1px solid var(--border);
  transition: all var(--t-base);
}
.modal__axe-item:hover {
  border-color: var(--orange);
  background: var(--orange-light);
  transform: translateX(4px);
}
.modal__axe-emoji {
  font-size: 1.75rem;
  line-height: 1;
  flex-shrink: 0;
  margin-top: .1rem;
}
.modal__axe-item h4 {
  font-size: .9375rem;
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: .25rem;
}
.modal__axe-item p {
  font-size: .875rem;
  color: var(--text-secondary);
  line-height: 1.6;
}

/* ── Modal closing sentence ── */
.modal__closing {
  font-style: italic;
  color: var(--text-muted);
  font-size: .875rem;
  text-align: center;
  padding: 1rem;
  background: var(--bg-light);
  border-radius: var(--radius-sm);
  border: 1px solid var(--border);
}

.about__badge {
  position: absolute;
  bottom: -1.5rem;
  right: -1.5rem;
  background: var(--navy);
  color: #fff;
  padding: 1.25rem 1.75rem;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  text-align: center;
  z-index: 10;
}
.about__badge-year {
  font-family: var(--font-serif);
  font-size: 2rem;
  line-height: 1;
  color: #fff;
}
.about__badge-label {
  font-size: .75rem;
  color: rgba(255,255,255,.6);
  margin-top: .25rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.about__text { padding-left: 1rem; }

/* Tabs */
.tabs { margin-top: 2rem; }
.tabs__nav {
  display: flex;
  gap: .25rem;
  border-bottom: 2px solid var(--border);
  margin-bottom: 1.75rem;
}
.tabs__btn {
  padding: .625rem 1.25rem .875rem;
  font-size: .9rem;
  font-weight: 600;
  color: var(--text-muted);
  border-radius: var(--radius-sm) var(--radius-sm) 0 0;
  margin-bottom: -2px;
  border-bottom: 2px solid transparent;
  transition: color var(--t-base), border-color var(--t-base);
}
.tabs__btn:hover { color: var(--blue); }
.tabs__btn.active {
  color: var(--blue);
  border-bottom-color: var(--blue);
  background: var(--blue-xlight);
}
.tabs__panel { display: none; animation: tabFade .3s var(--ease); }
.tabs__panel.active { display: block; }
@keyframes tabFade {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

.objectives-list {
  display: flex;
  flex-direction: column;
  gap: .875rem;
  margin-top: .5rem;
}
.objectives-list li {
  display: flex;
  align-items: flex-start;
  gap: .75rem;
  font-size: .9375rem;
  color: var(--text-secondary);
  line-height: 1.6;
}
.objectives-list__check {
  flex-shrink: 0;
  width: 1.375rem;
  height: 1.375rem;
  border-radius: 50%;
  background: var(--green-light);
  color: var(--green);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: .1rem;
  font-size: .7rem;
  font-weight: 700;
}

/* ─────────────────────────────────────────
   9. SECTION EN FRANCE (Modals)
───────────────────────────────────────── */
.france {
  background: linear-gradient(135deg, var(--navy) 0%, #0d2a5e 60%, #0a3d4a 100%);
  position: relative;
  overflow: hidden;
}
.france::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(circle at 80% 20%, rgba(14,159,110,.12) 0%, transparent 50%),
    radial-gradient(circle at 20% 80%, rgba(26,86,219,.15) 0%, transparent 50%);
  pointer-events: none;
}
.france .section { padding-block: var(--section-py); }

.france__header { text-align: center; margin-bottom: 3.5rem; position: relative; z-index: 1; }
.france__header .h2 { color: #fff; margin-top: .5rem; margin-bottom: 1rem; }
.france__header .lead { color: rgba(255,255,255,.6); margin-inline: auto; }

.france__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.75rem;
  position: relative;
  z-index: 1;
}

.france-card {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: var(--radius-xl);
  padding: 2.25rem 2rem;
  cursor: pointer;
  transition: all var(--t-slow);
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.france-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, transparent, rgba(255,255,255,.03));
  opacity: 0;
  transition: opacity var(--t-slow);
  pointer-events: none;
}
.france-card:hover,
.france-card:focus-visible {
  background: rgba(255,255,255,.1);
  border-color: rgba(255,255,255,.2);
  transform: translateY(-6px);
  box-shadow: 0 24px 48px rgba(0,0,0,.3);
}
.france-card:hover::before { opacity: 1; }

.france-card__icon {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
}
.france-card__icon svg { width: 1.75rem; height: 1.75rem; }

.france-card:nth-child(1) .france-card__icon { background: rgba(26,86,219,.25); color: #93c5fd; }
.france-card:nth-child(2) .france-card__icon { background: rgba(14,159,110,.25); color: #6ee7b7; }
.france-card:nth-child(3) .france-card__icon { background: rgba(249,115,22,.25); color: #fdba74; }

.france-card__title {
  font-size: 1.1rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.35;
}
.france-card__excerpt {
  font-size: .9rem;
  color: rgba(255,255,255,.55);
  line-height: 1.65;
  flex-grow: 1;
}
.france-card__cta {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  font-size: .875rem;
  font-weight: 600;
  color: rgba(255,255,255,.5);
  transition: color var(--t-base), gap var(--t-base);
  margin-top: auto;
}
.france-card__cta svg { width: 1rem; height: 1rem; transition: transform var(--t-base); }
.france-card:hover .france-card__cta {
  color: #fff;
  gap: .75rem;
}
.france-card:hover .france-card__cta svg { transform: translateX(4px); }

/* Colour bars at top */
.france-card:nth-child(1)::after { background: var(--blue); }
.france-card:nth-child(2)::after { background: var(--green); }
.france-card:nth-child(3)::after { background: var(--orange); }
.france-card::after {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--t-slow);
  border-radius: var(--radius-xl) var(--radius-xl) 0 0;
}
.france-card:hover::after { transform: scaleX(1); }

/* ── MODAL ── */
.modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(5,15,35,.8);
  backdrop-filter: blur(8px) saturate(120%);
  -webkit-backdrop-filter: blur(8px) saturate(120%);
  z-index: 2000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--t-slow);
}
.modal-backdrop.open {
  opacity: 1;
  pointer-events: all;
}
.modal-backdrop.open .modal { transform: translateY(0) scale(1); opacity: 1; }

.modal {
  background: var(--white);
  border-radius: var(--radius-2xl);
  width: 100%;
  max-width: 680px;
  max-height: 90svh;
  overflow-y: auto;
  box-shadow: var(--shadow-xl);
  transform: translateY(32px) scale(.97);
  opacity: 0;
  transition: transform var(--t-slow), opacity var(--t-slow);
  position: relative;
  scrollbar-width: thin;
}

.modal__hero {
  height: 200px;
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-2xl) var(--radius-2xl) 0 0;
  display: flex;
  align-items: flex-end;
}
.modal__hero-bg {
  position: absolute;
  inset: 0;
}
.modal__hero-content {
  position: relative;
  z-index: 1;
  padding: 1.5rem 2rem;
}
.modal__icon-wrap {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: var(--radius-md);
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,.2);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.3);
  margin-bottom: .75rem;
}
.modal__icon-wrap svg { width: 1.75rem; height: 1.75rem; color: #fff; }
.modal__hero-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.3;
}

.modal__close {
  position: absolute;
  top: 1rem; right: 1rem;
  z-index: 10;
  width: 2.25rem; height: 2.25rem;
  border-radius: 50%;
  background: rgba(255,255,255,.15);
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255,255,255,.2);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--t-base);
}
.modal__close:hover { background: rgba(255,255,255,.3); transform: rotate(90deg); }
.modal__close svg { width: 1.1rem; height: 1.1rem; }

.modal__body { padding: 2rem; }

.modal__description {
  font-size: 1rem;
  color: var(--text-secondary);
  line-height: 1.75;
  margin-bottom: 1.75rem;
}

.modal__subtitle {
  font-size: .8125rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--text-muted);
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  gap: .5rem;
}
.modal__subtitle::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--border);
}

.modal__actions {
  display: flex;
  flex-direction: column;
  gap: .75rem;
  margin-bottom: 2rem;
}
.modal__action-item {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1rem 1.25rem;
  background: var(--bg-light);
  border-radius: var(--radius-md);
  border: 1px solid var(--border);
  transition: all var(--t-base);
}
.modal__action-item:hover {
  border-color: var(--border-mid);
  background: var(--bg-mid);
  transform: translateX(4px);
}
.modal__action-icon {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: var(--radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.modal__action-icon svg { width: 1.25rem; height: 1.25rem; }
.modal__action-text h4 {
  font-size: .9375rem;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: .25rem;
}
.modal__action-text p {
  font-size: .875rem;
  color: var(--text-muted);
  line-height: 1.5;
}

.modal__footer {
  padding: 1.25rem 2rem 2rem;
  display: flex;
  gap: .875rem;
  border-top: 1px solid var(--border);
}

/* ─────────────────────────────────────────
   10. ACTIVITIES / BLOG
───────────────────────────────────────── */
.activities__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
  margin-bottom: 3rem;
  flex-wrap: wrap;
}
.activities__link-all {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  font-size: .9rem;
  font-weight: 600;
  color: var(--blue);
  white-space: nowrap;
  transition: gap var(--t-base), color var(--t-base);
  text-decoration: none;
}
.activities__link-all svg { width: 1.125rem; height: 1.125rem; transition: transform var(--t-base); }
.activities__link-all:hover { gap: .75rem; }
.activities__link-all:hover svg { transform: translateX(4px); }

.activity-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}

.activity-card {
  background: var(--white);
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--border);
  transition: transform var(--t-slow), box-shadow var(--t-slow), border-color var(--t-slow);
  display: flex;
  flex-direction: column;
}
.activity-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-lg);
  border-color: var(--border-mid);
}

.activity-card__img {
  aspect-ratio: 4/3;
  overflow: hidden;
  background: var(--bg-mid);
  position: relative;
}
.activity-card__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform .6s var(--ease);
}
.activity-card:hover .activity-card__img img { transform: scale(1.06); }

.activity-card__img-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--bg-light), var(--blue-xlight));
}
.activity-card__img-placeholder svg {
  width: 3rem; height: 3rem;
  color: var(--blue-light);
  opacity: .6;
}

.activity-card__body {
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: .75rem;
}
.activity-card__meta {
  display: flex;
  align-items: center;
  gap: .625rem;
  flex-wrap: wrap;
}
.activity-card__tag {
  display: inline-flex;
  align-items: center;
  gap: .375rem;
  font-size: .75rem;
  font-weight: 600;
  color: var(--text-muted);
}
.activity-card__tag svg { width: .875rem; height: .875rem; }
.activity-card__sep { width: 3px; height: 3px; border-radius: 50%; background: var(--border-mid); }

.activity-card__title {
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.4;
  flex-grow: 1;
  transition: color var(--t-fast);
}
.activity-card:hover .activity-card__title { color: var(--blue); }

.activity-card__excerpt {
  font-size: .875rem;
  color: var(--text-muted);
  line-height: 1.65;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.activity-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: .875rem;
  border-top: 1px solid var(--border);
  margin-top: auto;
}
.activity-card__read-more {
  display: inline-flex;
  align-items: center;
  gap: .375rem;
  font-size: .875rem;
  font-weight: 600;
  color: var(--blue);
  transition: gap var(--t-fast);
  text-decoration: none;
}
.activity-card__read-more svg { width: 1rem; height: 1rem; transition: transform var(--t-base); }
.activity-card:hover .activity-card__read-more { gap: .625rem; }
.activity-card:hover .activity-card__read-more svg { transform: translateX(4px); }

.activity-card__edit {
  display: inline-flex;
  align-items: center;
  gap: .375rem;
  font-size: .8125rem;
  font-weight: 500;
  color: var(--text-muted);
  transition: color var(--t-fast);
  text-decoration: none;
}
.activity-card__edit:hover { color: var(--blue); }
.activity-card__edit svg { width: .875rem; height: .875rem; }

/* ─────────────────────────────────────────
   11. CTA BAND
───────────────────────────────────────── */
.cta-band {
  background: linear-gradient(135deg, #0a3566 0%, #1A56DB 50%, #0e6e5a 100%);
  padding: 5rem 0;
  position: relative;
  overflow: hidden;
}
.cta-band::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle at 20% 50%, rgba(255,255,255,.06) 0%, transparent 50%),
    radial-gradient(circle at 80% 50%, rgba(255,255,255,.04) 0%, transparent 50%);
  pointer-events: none;
}
.cta-band__inner {
  text-align: center;
  position: relative;
  z-index: 1;
}
.cta-band__inner .h2 {
  color: #fff;
  max-width: 700px;
  margin-inline: auto;
  margin-bottom: 1.25rem;
}
.cta-band__inner .lead { color: rgba(255,255,255,.7); margin-inline: auto; margin-bottom: 2.5rem; }
.cta-band__btns { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; }

/* ─────────────────────────────────────────
   12. TEAM
───────────────────────────────────────── */
.team__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
  max-width: 900px;
  margin-inline: auto;
}

.team-card {
  text-align: center;
  padding: 2.5rem 1.75rem;
  background: var(--white);
  border-radius: var(--radius-xl);
  border: 1px solid var(--border);
  box-shadow: var(--shadow-xs);
  transition: all var(--t-slow);
  position: relative;
  overflow: hidden;
}
.team-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--blue), var(--green));
  transform: scaleX(0);
  transform-origin: left;
  transition: transform var(--t-slow);
}
.team-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-md);
  border-color: var(--border-mid);
}
.team-card:hover::before { transform: scaleX(1); }

.team-card__avatar-wrap {
  position: relative;
  display: inline-block;
  margin-bottom: 1.25rem;
}
.team-card__avatar {
  width: 5.5rem;
  height: 5.5rem;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  border: 3px solid var(--white);
  box-shadow: 0 0 0 4px var(--border), var(--shadow-sm);
  transition: box-shadow var(--t-slow);
}
.team-card:hover .team-card__avatar {
  box-shadow: 0 0 0 4px var(--blue-light), var(--shadow-md);
}
.team-card__status {
  position: absolute;
  bottom: 4px; right: 4px;
  width: .875rem; height: .875rem;
  border-radius: 50%;
  background: var(--green);
  border: 2px solid var(--white);
}
.team-card__name {
  font-size: 1rem;
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: .375rem;
}
.team-card__role {
  font-size: .8125rem;
  color: var(--text-muted);
  line-height: 1.5;
}

/* ─────────────────────────────────────────
   13. PARTNERS
───────────────────────────────────────── */
.partners { background: var(--bg-light); }
.partners__grid {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4rem;
  flex-wrap: wrap;
  margin-top: 3rem;
}
.partner-logo {
  display: block;
  filter: grayscale(1) opacity(.5);
  transition: filter var(--t-slow), transform var(--t-base);
}
.partner-logo:hover {
  filter: grayscale(0) opacity(1);
  transform: scale(1.05);
}
.partner-logo img { height: 3.25rem; width: auto; -o-object-fit: contain; object-fit: contain; }

/* ─────────────────────────────────────────
   14. CONTACT
───────────────────────────────────────── */
.contact__grid {
  display: grid;
  grid-template-columns: 5fr 7fr;
  gap: 3.5rem;
  align-items: start;
}

.contact-info { display: flex; flex-direction: column; gap: 1rem; }
.contact-info-item {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  padding: 1.25rem;
  background: var(--bg-light);
  border-radius: var(--radius-md);
  border: 1px solid var(--border);
  transition: border-color var(--t-base), box-shadow var(--t-base);
}
.contact-info-item:hover {
  border-color: var(--border-mid);
  box-shadow: var(--shadow-xs);
}
.contact-info-item__icon {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: var(--radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.contact-info-item__icon svg { width: 1.25rem; height: 1.25rem; }
.contact-info-item__icon--blue { background: var(--blue-xlight); color: var(--blue); }
.contact-info-item__icon--green { background: var(--green-light); color: var(--green); }
.contact-info-item__icon--orange { background: var(--orange-light); color: var(--orange); }

.contact-info-item__label {
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--text-muted);
  margin-bottom: .3rem;
}
.contact-info-item__value {
  font-size: .9375rem;
  font-weight: 500;
  color: var(--text-primary);
  line-height: 1.5;
}
.contact-info-item__value a {
  color: inherit;
  transition: color var(--t-fast);
}
.contact-info-item__value a:hover { color: var(--blue); }

/* Form */
.contact-form-wrap {
  background: var(--white);
  border-radius: var(--radius-xl);
  padding: 2.5rem;
  box-shadow: var(--shadow-md);
  border: 1px solid var(--border);
}
.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
}
.form-group { display: flex; flex-direction: column; gap: .5rem; margin-bottom: 1.25rem; }
.form-label {
  font-size: .875rem;
  font-weight: 600;
  color: var(--text-primary);
}
.form-label span { color: var(--orange); margin-left: .2rem; }
.form-input,
.form-textarea {
  padding: .75rem 1rem;
  border-radius: var(--radius-md);
  border: 1.5px solid var(--border);
  background: var(--bg-light);
  color: var(--text-primary);
  font-size: .9375rem;
  font-family: var(--font-sans);
  transition: border-color var(--t-base), box-shadow var(--t-base), background var(--t-base);
  outline: none;
  width: 100%;
}
.form-input:focus,
.form-textarea:focus {
  border-color: var(--blue);
  background: var(--white);
  box-shadow: 0 0 0 3px rgba(26,86,219,.12);
}
.form-textarea { resize: vertical; min-height: 130px; line-height: 1.65; }

/* Flash messages */
.flash {
  padding: 1rem 1.25rem;
  border-radius: var(--radius-md);
  font-size: .9rem;
  font-weight: 500;
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center;
  gap: .75rem;
  border: 1px solid transparent;
}
.flash svg { width: 1.25rem; height: 1.25rem; flex-shrink: 0; }
.flash--success { background: var(--green-light); color: #065f46; border-color: #a7f3d0; }
.flash--error   { background: #fef2f2; color: #7f1d1d; border-color: #fecaca; }

/* ─────────────────────────────────────────
   15. FOOTER
───────────────────────────────────────── */
.footer {
  background: var(--navy);
  color: rgba(255,255,255,.65);
  padding-top: 5rem;
}

.footer__grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1.5fr;
  gap: 3rem;
  padding-bottom: 4rem;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.footer__brand-logo { height: 44px; width: auto; margin-bottom: 1.25rem; }
.footer__brand-desc {
  font-size: .9rem;
  line-height: 1.75;
  max-width: 280px;
  margin-bottom: 1.5rem;
}
.footer__socials { display: flex; gap: .625rem; }
.footer__social-link {
  width: 2.25rem;
  height: 2.25rem;
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.1);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,.6);
  transition: all var(--t-base);
}
.footer__social-link:hover {
  background: var(--blue);
  border-color: var(--blue);
  color: #fff;
  transform: translateY(-3px);
}
.footer__social-link svg { width: 1rem; height: 1rem; }

.footer__col-title {
  font-size: .8125rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: rgba(255,255,255,.9);
  margin-bottom: 1.375rem;
}

.footer__links { display: flex; flex-direction: column; gap: .625rem; }
.footer__link {
  font-size: .9rem;
  color: rgba(255,255,255,.5);
  transition: color var(--t-fast), padding-left var(--t-fast);
  display: flex;
  align-items: center;
  gap: .5rem;
}
.footer__link::before {
  content: '';
  width: 0;
  height: 1.5px;
  background: var(--green);
  border-radius: 2px;
  transition: width var(--t-base);
  flex-shrink: 0;
}
.footer__link:hover { color: #fff; padding-left: .375rem; }
.footer__link:hover::before { width: .875rem; }

.footer__contact-item {
  display: flex;
  align-items: flex-start;
  gap: .875rem;
  margin-bottom: .875rem;
  font-size: .875rem;
  line-height: 1.6;
}
.footer__contact-icon {
  width: 1.875rem;
  height: 1.875rem;
  border-radius: var(--radius-sm);
  background: rgba(255,255,255,.07);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: .1rem;
}
.footer__contact-icon svg { width: .9rem; height: .9rem; color: var(--green); }

.footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-block: 1.75rem;
  gap: 1rem;
  flex-wrap: wrap;
}
.footer__copyright { font-size: .8125rem; }
.footer__legal {
  display: flex;
  gap: 1.5rem;
}
.footer__legal a {
  font-size: .8125rem;
  color: rgba(255,255,255,.4);
  transition: color var(--t-fast);
}
.footer__legal a:hover { color: rgba(255,255,255,.8); }

/* ─────────────────────────────────────────
   16. SCROLL-TO-TOP
───────────────────────────────────────── */
.scroll-top {
  position: fixed;
  bottom: 2rem;
  right: 1.75rem;
  z-index: 500;
  width: 3rem;
  height: 3rem;
  border-radius: var(--radius-full);
  background: var(--navy);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: var(--shadow-md);
  opacity: 0;
  pointer-events: none;
  transform: translateY(12px) scale(.9);
  transition: all var(--t-slow);
  border: 1px solid rgba(255,255,255,.1);
}
.scroll-top.visible {
  opacity: 1;
  pointer-events: all;
  transform: translateY(0) scale(1);
}
.scroll-top:hover {
  background: var(--blue);
  transform: translateY(-3px) scale(1.05);
  box-shadow: var(--shadow-blue);
}
.scroll-top svg { width: 1.25rem; height: 1.25rem; }

/* ─────────────────────────────────────────
   17. PAGE HERO (inner pages)
───────────────────────────────────────── */
.page-hero {
  background: linear-gradient(135deg, var(--navy) 0%, var(--navy-mid) 100%);
  padding-top: calc(var(--navbar-h) + 3.5rem);
  padding-bottom: 4rem;
  position: relative;
  overflow: hidden;
}
.page-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 80% 100% at 80% 50%, rgba(26,86,219,.15) 0%, transparent 60%);
  pointer-events: none;
}
.page-hero__content { position: relative; z-index: 1; }
.breadcrumb {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: .875rem;
  color: rgba(255,255,255,.5);
  margin-bottom: 1.25rem;
}
.breadcrumb a { color: rgba(255,255,255,.5); transition: color var(--t-fast); }
.breadcrumb a:hover { color: rgba(255,255,255,.9); }
.breadcrumb svg { width: .875rem; height: .875rem; }
.page-hero__title { color: #fff; font-size: clamp(2rem, 4vw, 3rem); font-weight: 800; margin-bottom: .875rem; }
.page-hero__desc { color: rgba(255,255,255,.6); max-width: 540px; font-size: 1.0625rem; }

/* ─────────────────────────────────────────
   18. ACTIVITY SHOW PAGE
───────────────────────────────────────── */
.show-layout {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 3rem;
  align-items: start;
}

.carousel {
  border-radius: var(--radius-xl);
  overflow: hidden;
  background: var(--bg-mid);
  box-shadow: var(--shadow-md);
  position: relative;
}
.carousel__track-wrap { overflow: hidden; }
.carousel__track {
  display: flex;
  transition: transform .5s var(--ease);
}
.carousel__slide {
  flex-shrink: 0;
  width: 100%;
  aspect-ratio: 16/9;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-mid);
}
.carousel__slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.carousel__btn {
  position: absolute;
  top: 50%; transform: translateY(-50%);
  width: 2.5rem; height: 2.5rem;
  border-radius: 50%;
  background: rgba(0,0,0,.45);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background var(--t-base), transform var(--t-base);
  z-index: 2;
  border: 1px solid rgba(255,255,255,.15);
}
.carousel__btn:hover { background: var(--blue); transform: translateY(-50%) scale(1.1); }
.carousel__btn--prev { left: .875rem; }
.carousel__btn--next { right: .875rem; }
.carousel__btn svg { width: 1.125rem; height: 1.125rem; }
.carousel__dots {
  position: absolute;
  bottom: .875rem; left: 50%; transform: translateX(-50%);
  display: flex; gap: .5rem; z-index: 2;
}
.carousel__dot {
  width: .5rem; height: .5rem;
  border-radius: 50%;
  background: rgba(255,255,255,.4);
  transition: background var(--t-base), width var(--t-base);
  cursor: pointer;
  border: none;
}
.carousel__dot.active { background: #fff; width: 1.25rem; border-radius: 4px; }
.carousel__counter {
  position: absolute;
  top: .875rem; right: .875rem;
  background: rgba(0,0,0,.5);
  color: #fff;
  font-size: .75rem;
  font-weight: 600;
  padding: .25rem .625rem;
  border-radius: var(--radius-full);
  z-index: 2;
}

.show-content { background: var(--white); border-radius: var(--radius-xl); padding: 2.5rem; box-shadow: var(--shadow-sm); border: 1px solid var(--border); margin-top: 2rem; }
.show-content__title { font-size: 1.125rem; font-weight: 700; color: var(--text-primary); padding-bottom: 1.25rem; border-bottom: 2px solid var(--border); margin-bottom: 1.5rem; }
.show-content__body { font-size: .9625rem; color: var(--text-secondary); line-height: 1.8; white-space: pre-line; }

.show-sidebar { display: flex; flex-direction: column; gap: 1.5rem; }
.sidebar-card { background: var(--white); border-radius: var(--radius-lg); padding: 1.5rem; box-shadow: var(--shadow-sm); border: 1px solid var(--border); }
.sidebar-card__title { font-size: .875rem; font-weight: 700; color: var(--text-primary); margin-bottom: 1.25rem; padding-bottom: .875rem; border-bottom: 1px solid var(--border); }
.sidebar-meta { display: flex; flex-direction: column; gap: .875rem; }
.sidebar-meta-item { display: flex; align-items: flex-start; gap: .875rem; }
.sidebar-meta-item__icon { width: 2.25rem; height: 2.25rem; border-radius: var(--radius-sm); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.sidebar-meta-item__icon svg { width: 1.1rem; height: 1.1rem; }
.sidebar-meta-item__icon--blue { background: var(--blue-xlight); color: var(--blue); }
.sidebar-meta-item__icon--green { background: var(--green-light); color: var(--green); }
.sidebar-meta-item__label { font-size: .75rem; color: var(--text-muted); font-weight: 600; letter-spacing: .04em; }
.sidebar-meta-item__value { font-size: .9rem; font-weight: 600; color: var(--text-primary); margin-top: .1rem; }

.related-item { display: flex; gap: .875rem; align-items: flex-start; padding: .75rem 0; border-bottom: 1px solid var(--border); text-decoration: none; transition: padding-left var(--t-base); }
.related-item:last-child { border-bottom: none; padding-bottom: 0; }
.related-item:hover { padding-left: .375rem; }
.related-item__img { width: 3.5rem; height: 3.5rem; border-radius: var(--radius-sm); overflow: hidden; flex-shrink: 0; background: var(--bg-mid); }
.related-item__img img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }
.related-item__title { font-size: .875rem; font-weight: 600; color: var(--text-primary); line-height: 1.35; margin-bottom: .25rem; transition: color var(--t-fast); }
.related-item:hover .related-item__title { color: var(--blue); }
.related-item__date { font-size: .75rem; color: var(--text-muted); }

/* ─────────────────────────────────────────
   19. FORMS (Create / Edit)
───────────────────────────────────────── */
.admin-layout { padding-top: calc(var(--navbar-h) + 3rem); padding-bottom: 5rem; min-height: 100svh; background: var(--bg-light); }
.admin-card { background: var(--white); border-radius: var(--radius-xl); padding: 2.5rem; box-shadow: var(--shadow-sm); border: 1px solid var(--border); max-width: 760px; margin-inline: auto; }
.admin-card + .admin-card { margin-top: 1.5rem; }

.dropzone {
  border: 2px dashed var(--border-mid);
  border-radius: var(--radius-lg);
  padding: 2.5rem;
  text-align: center;
  cursor: pointer;
  transition: all var(--t-base);
  background: var(--bg-light);
}
.dropzone:hover,
.dropzone.drag-over {
  border-color: var(--blue);
  background: var(--blue-xlight);
}
.dropzone__icon { width: 3rem; height: 3rem; margin-inline: auto; color: var(--text-muted); opacity: .5; margin-bottom: .875rem; }
.dropzone__text { font-size: .9375rem; color: var(--text-secondary); margin-bottom: .25rem; }
.dropzone__text span { color: var(--blue); font-weight: 600; }
.dropzone__hint { font-size: .8125rem; color: var(--text-muted); }

.file-preview-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(7rem, 1fr)); gap: .75rem; margin-top: 1.25rem; }
.file-preview-item { aspect-ratio: 1; border-radius: var(--radius-md); overflow: hidden; position: relative; background: var(--bg-mid); }
.file-preview-item img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; }

.existing-photos-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(9rem, 1fr)); gap: .875rem; }
.existing-photo { position: relative; aspect-ratio: 1; border-radius: var(--radius-md); overflow: hidden; background: var(--bg-mid); }
.existing-photo img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; transition: opacity var(--t-base); }
.existing-photo__delete {
  position: absolute;
  top: .5rem; right: .5rem;
  width: 2rem; height: 2rem;
  border-radius: 50%;
  background: rgba(0,0,0,.65);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity var(--t-base), background var(--t-base);
}
.existing-photo__delete svg { width: .875rem; height: .875rem; }
.existing-photo:hover .existing-photo__delete { opacity: 1; }
.existing-photo__delete:hover { background: #dc2626; }

/* ─────────────────────────────────────────
   20. SCROLL REVEAL ANIMATION
───────────────────────────────────────── */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .65s var(--ease), transform .65s var(--ease);
}
.reveal.revealed {
  opacity: 1;
  transform: translateY(0);
}
.reveal--delay-1 { transition-delay: .1s; }
.reveal--delay-2 { transition-delay: .2s; }
.reveal--delay-3 { transition-delay: .3s; }
.reveal--delay-4 { transition-delay: .4s; }

/* ─────────────────────────────────────────
   21. PAGE LOADING
───────────────────────────────────────── */
.page-loading {
  position: fixed;
  inset: 0;
  background: var(--navy);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity .5s, visibility .5s;
}
.page-loading.hide { opacity: 0; visibility: hidden; }
.page-loading__logo { height: 56px; animation: logoPulse 1.5s ease-in-out infinite; }
@keyframes logoPulse {
  0%,100% { opacity: .6; transform: scale(.97); }
  50%      { opacity: 1;  transform: scale(1); }
}

/* ─────────────────────────────────────────
   22. MAP SECTION
───────────────────────────────────────── */
.map-section { height: 22rem; overflow: hidden; position: relative; }
.map-section iframe {
  width: 100%; height: 100%; border: 0;
  filter: grayscale(.8) contrast(.9);
  transition: filter var(--t-slow);
}
.map-section:hover iframe { filter: grayscale(.2) contrast(1); }

/* ─────────────────────────────────────────
   23. RESPONSIVE
───────────────────────────────────────── */
@media (max-width: 1100px) {
  .about__grid { gap: 2.5rem; }
  .footer__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 900px) {
  .navbar__nav, .navbar__actions { display: none; }
  .navbar__burger { display: flex; }
  .stats-ribbon__grid { grid-template-columns: repeat(2, 1fr); }
  .about__grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .about__header { margin-bottom: 2.5rem; }
  .france__cards { grid-template-columns: 1fr; gap: 1.25rem; }
  .activity-cards { grid-template-columns: repeat(2, 1fr); }
  .team__grid { grid-template-columns: repeat(2, 1fr); }
  .contact__grid { grid-template-columns: 1fr; }
  .show-layout { grid-template-columns: 1fr; }
  .show-sidebar { display: grid; grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px) {
  :root { --navbar-h: 68px; }
  .stats-ribbon__grid { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
  .stat-item + .stat-item::before { display: none; }
  .activity-cards { grid-template-columns: 1fr; }
  .team__grid { grid-template-columns: 1fr; max-width: 320px; }
  .france__cards { grid-template-columns: 1fr; }
  .footer__grid { grid-template-columns: 1fr; gap: 2rem; }
  .contact-form-wrap { padding: 1.5rem; }
  .form-row { grid-template-columns: 1fr; }
  .cta-band__btns { flex-direction: column; align-items: center; }
  .show-sidebar { display: flex; flex-direction: column; }
  .admin-card { padding: 1.5rem; }
  .modal { border-radius: var(--radius-lg); max-height: 95svh; }
  .modal-backdrop { padding: .75rem; }
  .modal__body { padding: 1.5rem; }
  .modal__footer { padding: 1rem 1.5rem 1.5rem; flex-direction: column; }
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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akU7O0FBRUE7RUFDRSxRQUFRLGdCQUFnQixFQUFFO0VBQzFCLHNCQUFzQixxQ0FBcUMsRUFBRSxTQUFTLEVBQUU7RUFDeEUsa0NBQWtDLGFBQWEsRUFBRTtFQUNqRCxrQkFBa0IsMEJBQTBCLEVBQUU7RUFDOUMsY0FBYywwQkFBMEIsRUFBRSxnQkFBZ0IsRUFBRTtFQUM1RCxpQkFBaUIsMEJBQTBCLEVBQUU7RUFDN0MsZ0JBQWdCLDBCQUEwQixFQUFFLFNBQVMsRUFBRTtFQUN2RCxxQkFBcUIsZUFBZSxFQUFFO0VBQ3RDLFlBQVksMEJBQTBCLEVBQUU7RUFDeEMsa0JBQWtCLHNCQUFzQixFQUFFLG1CQUFtQixFQUFFO0VBQy9ELGdCQUFnQixhQUFhLEVBQUUsc0JBQXNCLEVBQUU7RUFDdkQsY0FBYyxlQUFlLEVBQUU7RUFDL0IsU0FBUywrQkFBK0IsRUFBRSxpQkFBaUIsRUFBRTtFQUM3RCxrQkFBa0IsZUFBZSxFQUFFO0VBQ25DLGVBQWUsZUFBZSxFQUFFO0VBQ2hDLGlCQUFpQiwyQkFBMkIsRUFBRSxzQkFBc0IsRUFBRTtBQUN4RSIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvYXBwLmNzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZDilZBcbiAgIEhVTUFOSVRZREVWIC0gRGVzaWduIFN5c3RlbSB2MlxuICAgQXJjaGl0ZWN0dXJlIDogQ1NTIEN1c3RvbSBQcm9wZXJ0aWVzIOKGkiBCYXNlIOKGkiBMYXlvdXQg4oaSIENvbXBvbmVudHNcbiAgIOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkOKVkCAqL1xuXG4vKiDilIDilIAgMC4gR09PR0xFIEZPTlRTIOKUgOKUgCAqL1xuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9UGx1cytKYWthcnRhK1NhbnM6aXRhbCx3Z2h0QDAsMzAwOzAsNDAwOzAsNTAwOzAsNjAwOzAsNzAwOzAsODAwOzEsNDAwJmZhbWlseT1ETStTZXJpZitEaXNwbGF5Oml0YWxAMDsxJmRpc3BsYXk9c3dhcCcpO1xuXG4vKiDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgIDEuIENVU1RPTSBQUk9QRVJUSUVTXG7ilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgKi9cbjpyb290IHtcbiAgLyogQnJhbmQgcGFsZXR0ZSAqL1xuICAtLW5hdnk6ICAgICAgICAjMEIxRjQwO1xuICAtLW5hdnktbWlkOiAgICAjMTMyZDVhO1xuICAtLW5hdnktbGlnaHQ6ICAjMWUzZjdhO1xuICAtLWJsdWU6ICAgICAgICAjMUE1NkRCO1xuICAtLWJsdWUtaG92ZXI6ICAjMTQ0N2MwO1xuICAtLWJsdWUtbGlnaHQ6ICAjZGJlYWZlO1xuICAtLWJsdWUteGxpZ2h0OiAjZWZmNmZmO1xuICAtLWdyZWVuOiAgICAgICAjMEU5RjZFO1xuICAtLWdyZWVuLWhvdmVyOiAjMDU3YTU1O1xuICAtLWdyZWVuLWxpZ2h0OiAjZDFmYWU1O1xuICAtLW9yYW5nZTogICAgICAjRjk3MzE2O1xuICAtLW9yYW5nZS1ob3ZlcjojZWE2YTBhO1xuICAtLW9yYW5nZS1saWdodDojZmZmN2VkO1xuXG4gIC8qIE5ldXRyYWwgKi9cbiAgLS13aGl0ZTogICAgI2ZmZmZmZjtcbiAgLS1iZy1saWdodDogI0Y4RkFGRjtcbiAgLS1iZy1taWQ6ICAgI2YwZjRmZjtcbiAgLS1ib3JkZXI6ICAgI2UyZThmMDtcbiAgLS1ib3JkZXItbWlkOiNjYmQ1ZTE7XG5cbiAgLyogVGV4dCAqL1xuICAtLXRleHQtcHJpbWFyeTogICAjMGYxNzJhO1xuICAtLXRleHQtc2Vjb25kYXJ5OiAjNDc1NTY5O1xuICAtLXRleHQtbXV0ZWQ6ICAgICAjOTRhM2I4O1xuICAtLXRleHQtaW52ZXJzZTogICAjZmZmZmZmO1xuXG4gIC8qIFNoYWRvd3MgKi9cbiAgLS1zaGFkb3cteHM6IDAgMXB4IDNweCByZ2JhKDAsMCwwLC4wNiksIDAgMXB4IDJweCByZ2JhKDAsMCwwLC4wNCk7XG4gIC0tc2hhZG93LXNtOiAwIDRweCAxMnB4IHJnYmEoMCwwLDAsLjA3KSwgMCAycHggNHB4IHJnYmEoMCwwLDAsLjA0KTtcbiAgLS1zaGFkb3ctbWQ6IDAgOHB4IDI0cHggcmdiYSgwLDAsMCwuMDkpLCAwIDRweCA4cHggcmdiYSgwLDAsMCwuMDUpO1xuICAtLXNoYWRvdy1sZzogMCAyMHB4IDQ4cHggcmdiYSgwLDAsMCwuMTIpLCAwIDhweCAxNnB4IHJnYmEoMCwwLDAsLjA2KTtcbiAgLS1zaGFkb3cteGw6IDAgMzJweCA2NHB4IHJnYmEoMCwwLDAsLjE2KSwgMCAxMnB4IDI0cHggcmdiYSgwLDAsMCwuMDgpO1xuICAtLXNoYWRvdy1ibHVlOiAwIDhweCAyNHB4IHJnYmEoMjYsODYsMjE5LC4yNSk7XG4gIC0tc2hhZG93LWdyZWVuOiAwIDhweCAyNHB4IHJnYmEoMTQsMTU5LDExMCwuMjUpO1xuICAtLXNoYWRvdy1vcmFuZ2U6IDAgOHB4IDI0cHggcmdiYSgyNDksMTE1LDIyLC4yNSk7XG5cbiAgLyogU3BhY2luZyAqL1xuICAtLXNlY3Rpb24tcHk6IGNsYW1wKDRyZW0sIDh2dywgN3JlbSk7XG4gIC0tY29udGFpbmVyLXB4OiBjbGFtcCgxLjI1cmVtLCA1dncsIDJyZW0pO1xuICAtLWNvbnRhaW5lci1tYXg6IDEyMDBweDtcblxuICAvKiBSYWRpdXMgKi9cbiAgLS1yYWRpdXMtc206IC41cmVtO1xuICAtLXJhZGl1cy1tZDogLjg3NXJlbTtcbiAgLS1yYWRpdXMtbGc6IDEuMjVyZW07XG4gIC0tcmFkaXVzLXhsOiAxLjc1cmVtO1xuICAtLXJhZGl1cy0yeGw6IDIuNXJlbTtcbiAgLS1yYWRpdXMtZnVsbDogOTk5OXB4O1xuXG4gIC8qIFR5cG9ncmFwaHkgKi9cbiAgLS1mb250LXNhbnM6ICdQbHVzIEpha2FydGEgU2FucycsIHN5c3RlbS11aSwgc2Fucy1zZXJpZjtcbiAgLS1mb250LXNlcmlmOiAnRE0gU2VyaWYgRGlzcGxheScsIEdlb3JnaWEsIHNlcmlmO1xuXG4gIC8qIFRyYW5zaXRpb25zICovXG4gIC0tZWFzZTogY3ViaWMtYmV6aWVyKC40LDAsLjIsMSk7XG4gIC0tZWFzZS1zcHJpbmc6IGN1YmljLWJlemllciguMzQsMS41NiwuNjQsMSk7XG4gIC0tdC1mYXN0OiAxNTBtcyB2YXIoLS1lYXNlKTtcbiAgLS10LWJhc2U6IDI1MG1zIHZhcigtLWVhc2UpO1xuICAtLXQtc2xvdzogNDAwbXMgdmFyKC0tZWFzZSk7XG5cbiAgLyogTmF2YmFyICovXG4gIC0tbmF2YmFyLWg6IDc2cHg7XG59XG5cbltkYXRhLXRoZW1lPVwiZGFya1wiXSB7XG4gIC0td2hpdGU6ICAgICAgICAgICMxZTI1MzU7XG4gIC0tYmctbGlnaHQ6ICAgICAgICMxNTFkMmU7XG4gIC0tYmctbWlkOiAgICAgICAgICMxYTI0M2E7XG4gIC0tYm9yZGVyOiAgICAgICAgICMyZDNhNTI7XG4gIC0tYm9yZGVyLW1pZDogICAgICMzZDRmNmU7XG4gIC0tdGV4dC1wcmltYXJ5OiAgICNmMWY1Zjk7XG4gIC0tdGV4dC1zZWNvbmRhcnk6ICM5NGEzYjg7XG4gIC0tdGV4dC1tdXRlZDogICAgICM2NDc0OGI7XG4gIC0tc2hhZG93LXhzOiAwIDFweCAzcHggcmdiYSgwLDAsMCwuMyk7XG4gIC0tc2hhZG93LXNtOiAwIDRweCAxMnB4IHJnYmEoMCwwLDAsLjMpO1xuICAtLXNoYWRvdy1tZDogMCA4cHggMjRweCByZ2JhKDAsMCwwLC4zNSk7XG4gIC0tc2hhZG93LWxnOiAwIDIwcHggNDhweCByZ2JhKDAsMCwwLC40KTtcbn1cblxuLyog4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gICAyLiBSRVNFVCAmIEJBU0VcbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xuKiwgKjo6YmVmb3JlLCAqOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXNhbnMpO1xuICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBmb250LXdlaWdodDogNDAwO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdC1zbG93KSwgY29sb3IgdmFyKC0tdC1zbG93KTtcbn1cblxuaW1nLCB2aWRlbywgc3ZnIHsgZGlzcGxheTogYmxvY2s7IG1heC13aWR0aDogMTAwJTsgfVxuYSB7IGNvbG9yOiBpbmhlcml0OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbmJ1dHRvbiB7IGN1cnNvcjogcG9pbnRlcjsgZm9udC1mYW1pbHk6IGluaGVyaXQ7IGJvcmRlcjogbm9uZTsgYmFja2dyb3VuZDogbm9uZTsgfVxudWwsIG9sIHsgbGlzdC1zdHlsZTogbm9uZTsgfVxuaW5wdXQsIHRleHRhcmVhLCBzZWxlY3QgeyBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tYmx1ZSk7XG4gIG91dGxpbmUtb2Zmc2V0OiAzcHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLyog4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gICAzLiBUWVBPR1JBUEhZXG7ilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgKi9cbi5oLWRpc3BsYXkge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1zZXJpZik7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMi41cmVtLCA2dncsIDQuNXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjA4O1xuICBsZXR0ZXItc3BhY2luZzogLS4wMmVtO1xuICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcbn1cbi5oMSB7IGZvbnQtc2l6ZTogY2xhbXAoMnJlbSwgNHZ3LCAzLjI1cmVtKTsgZm9udC13ZWlnaHQ6IDgwMDsgbGluZS1oZWlnaHQ6IDEuMTU7IGxldHRlci1zcGFjaW5nOiAtLjAyNWVtOyB9XG4uaDIgeyBmb250LXNpemU6IGNsYW1wKDEuNjI1cmVtLCAzdncsIDIuNXJlbSk7IGZvbnQtd2VpZ2h0OiA3MDA7IGxpbmUtaGVpZ2h0OiAxLjI7ICBsZXR0ZXItc3BhY2luZzogLS4wMmVtOyB9XG4uaDMgeyBmb250LXNpemU6IGNsYW1wKDEuMjVyZW0sIDJ2dywgMS42MjVyZW0pOyAgZm9udC13ZWlnaHQ6IDcwMDsgbGluZS1oZWlnaHQ6IDEuMzsgfVxuLmg0IHsgZm9udC1zaXplOiAxLjEyNXJlbTsgZm9udC13ZWlnaHQ6IDYwMDsgbGluZS1oZWlnaHQ6IDEuNDsgfVxuXG4uZXllYnJvdyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IC41cmVtO1xuICBmb250LXNpemU6IC44MTI1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogLjFlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHZhcigtLWJsdWUpO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLmV5ZWJyb3c6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJsdWUpO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiBjbGFtcCgxcmVtLCAxLjV2dywgMS4xMjVyZW0pO1xuICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xuICBsaW5lLWhlaWdodDogMS43NTtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbn1cblxuLyog4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gICA0LiBMQVlPVVQgVVRJTElUSUVTXG7ilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgKi9cbi5jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1jb250YWluZXItbWF4KTtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLWNvbnRhaW5lci1weCk7XG59XG5cbi5zZWN0aW9uIHtcbiAgcGFkZGluZy1ibG9jazogdmFyKC0tc2VjdGlvbi1weSk7XG59XG4uc2VjdGlvbi0tYWx0IHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctbGlnaHQpOyB9XG4uc2VjdGlvbi0tZGFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW5hdnkpO1xuICBjb2xvcjogdmFyKC0tdGV4dC1pbnZlcnNlKTtcbn1cblxuLmdyaWQtMiB7IGRpc3BsYXk6IGdyaWQ7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IGdhcDogMnJlbTsgfVxuLmdyaWQtMyB7IGRpc3BsYXk6IGdyaWQ7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7IGdhcDogMnJlbTsgfVxuLmdyaWQtNCB7IGRpc3BsYXk6IGdyaWQ7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7IGdhcDogMS41cmVtOyB9XG5cbi8qIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAgNS4gQlVUVE9OU1xu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IC41cmVtO1xuICBwYWRkaW5nOiAuNzVyZW0gMS43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWZ1bGwpO1xuICBmb250LXNpemU6IC45Mzc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXQtYmFzZSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKiBSaXBwbGUgKi9cbi5idG46OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHJnYmEoMjU1LDI1NSwyNTUsLjM1KSAwJSwgdHJhbnNwYXJlbnQgNzAlKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC41cywgb3BhY2l0eSAuNXM7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xufVxuLmJ0bjphY3RpdmU6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgyLjUpO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiAwcztcbn1cblxuLmJ0bi0tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJsdWUpO1xuICBjb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LWJsdWUpO1xufVxuLmJ0bi0tcHJpbWFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJsdWUtaG92ZXIpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIGJveC1zaGFkb3c6IDAgMTJweCAzMHB4IHJnYmEoMjYsODYsMjE5LC4zNSk7XG59XG5cbi5idG4tLWdyZWVuIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xuICBjb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LWdyZWVuKTtcbn1cbi5idG4tLWdyZWVuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4taG92ZXIpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIGJveC1zaGFkb3c6IDAgMTJweCAzMHB4IHJnYmEoMTQsMTU5LDExMCwuMzUpO1xufVxuXG4uYnRuLS1vcmFuZ2Uge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1vcmFuZ2UpO1xuICBjb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LW9yYW5nZSk7XG59XG4uYnRuLS1vcmFuZ2U6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1vcmFuZ2UtaG92ZXIpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG59XG5cbi5idG4tLW91dGxpbmUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC40KTtcbiAgY29sb3I6ICNmZmY7XG59XG4uYnRuLS1vdXRsaW5lOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwuMTIpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG59XG5cbi5idG4tLW91dGxpbmUtZGFyayB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1taWQpO1xuICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcbn1cbi5idG4tLW91dGxpbmUtZGFyazpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYmx1ZSk7XG4gIGNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmx1ZS14bGlnaHQpO1xufVxuXG4uYnRuLS1zbSB7IHBhZGRpbmc6IC41cmVtIDEuMjVyZW07IGZvbnQtc2l6ZTogLjg3NXJlbTsgfVxuLmJ0bi0tbGcgeyBwYWRkaW5nOiAxcmVtIDIuNXJlbTsgZm9udC1zaXplOiAxcmVtOyB9XG5cbi5idG4gc3ZnIHsgd2lkdGg6IDEuMTI1cmVtOyBoZWlnaHQ6IDEuMTI1cmVtOyBmbGV4LXNocmluazogMDsgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXQtYmFzZSk7IH1cbi5idG46aG92ZXIgc3ZnLmFycm93IHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7IH1cblxuLyog4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gICA2LiBOQVZCQVJcbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwOyBsZWZ0OiAwOyByaWdodDogMDtcbiAgei1pbmRleDogMTAwMDtcbiAgaGVpZ2h0OiB2YXIoLS1uYXZiYXItaCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdC1zbG93KSwgYm94LXNoYWRvdyB2YXIoLS10LXNsb3cpLCBiYWNrZHJvcC1maWx0ZXIgdmFyKC0tdC1zbG93KTtcbn1cbi5uYXZiYXJfX2lubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxcmVtO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm5hdmJhci0tdHJhbnNwYXJlbnQgeyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuLm5hdmJhci0tc29saWQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LC45Mik7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTZweCkgc2F0dXJhdGUoMTgwJSk7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgwLDAsMCwuMDYpLCB2YXIoLS1zaGFkb3ctc20pO1xufVxuW2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5uYXZiYXItLXNvbGlkIHtcbiAgYmFja2dyb3VuZDogcmdiYSgxMSwzMSw2NCwuOTMpO1xufVxuXG4ubmF2YmFyX19sb2dvIHsgZmxleC1zaHJpbms6IDA7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbi5uYXZiYXJfX2xvZ28gaW1nIHtcbiAgaGVpZ2h0OiA0NHB4O1xuICB3aWR0aDogYXV0bztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10LWJhc2UpO1xufVxuLm5hdmJhcl9fbG9nbzpob3ZlciBpbWcgeyBvcGFjaXR5OiAuODU7IH1cblxuLm5hdmJhcl9fbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAuMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4ubmF2YmFyX19saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAuNXJlbSAuNzVyZW07XG4gIGZvbnQtc2l6ZTogLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC44NSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXQtZmFzdCksIGJhY2tncm91bmQgdmFyKC0tdC1mYXN0KTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5uYXZiYXItLXNvbGlkIC5uYXZiYXJfX2xpbmsge1xuICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xufVxuLm5hdmJhcl9fbGluazo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDRweDsgbGVmdDogLjc1cmVtOyByaWdodDogLjc1cmVtO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmx1ZSk7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10LWJhc2UpO1xufVxuLm5hdmJhcl9fbGluazpob3Zlcixcbi5uYXZiYXJfX2xpbmsuYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWJsdWUpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ibHVlLXhsaWdodCk7XG59XG4ubmF2YmFyX19saW5rLmFjdGl2ZTo6YWZ0ZXIsXG4ubmF2YmFyX19saW5rOmhvdmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xufVxuLm5hdmJhci0tdHJhbnNwYXJlbnQgLm5hdmJhcl9fbGluazpob3Zlcixcbi5uYXZiYXItLXRyYW5zcGFyZW50IC5uYXZiYXJfX2xpbmsuYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwuMTIpO1xuICBjb2xvcjogI2ZmZjtcbn1cbi5uYXZiYXItLXRyYW5zcGFyZW50IC5uYXZiYXJfX2xpbms6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLm5hdmJhcl9fYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogLjc1cmVtO1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbn1cblxuLm5hdmJhcl9fdGhlbWUtYnRuIHtcbiAgd2lkdGg6IDIuMjVyZW07XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWZ1bGwpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjgpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LC4xKTtcbiAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXQtYmFzZSk7XG59XG4ubmF2YmFyLS1zb2xpZCAubmF2YmFyX190aGVtZS1idG4ge1xuICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1saWdodCk7XG59XG4ubmF2YmFyX190aGVtZS1idG46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LC4yKTtcbiAgY29sb3I6ICNmZmY7XG4gIHRyYW5zZm9ybTogcm90YXRlKDIwZGVnKTtcbn1cbi5uYXZiYXItLXNvbGlkIC5uYXZiYXJfX3RoZW1lLWJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJsdWUteGxpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJsdWUpO1xufVxuLm5hdmJhcl9fdGhlbWUtYnRuIHN2ZyB7IHdpZHRoOiAxLjFyZW07IGhlaWdodDogMS4xcmVtOyB9XG5cbi8qIEJ1cmdlciAqL1xuLm5hdmJhcl9fYnVyZ2VyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogNXB4O1xuICB3aWR0aDogMi41cmVtO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwuMSk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nOiAuNXJlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10LWJhc2UpO1xufVxuLm5hdmJhci0tc29saWQgLm5hdmJhcl9fYnVyZ2VyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctbGlnaHQpO1xufVxuLm5hdmJhcl9fYnVyZ2VyIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdC1iYXNlKSwgb3BhY2l0eSB2YXIoLS10LWJhc2UpLCB3aWR0aCB2YXIoLS10LWJhc2UpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG59XG4ubmF2YmFyX19idXJnZXIgc3BhbjpudGgtY2hpbGQoMykgeyB3aWR0aDogNjAlOyB9XG4ubmF2YmFyLS10cmFuc3BhcmVudCAubmF2YmFyX19idXJnZXIgeyBjb2xvcjogI2ZmZjsgfVxuLm5hdmJhci0tc29saWQgLm5hdmJhcl9fYnVyZ2VyIHsgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7IH1cblxuLm5hdmJhcl9fYnVyZ2VyLm9wZW4gc3BhbjpudGgtY2hpbGQoMSkgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoN3B4KSByb3RhdGUoNDVkZWcpOyB9XG4ubmF2YmFyX19idXJnZXIub3BlbiBzcGFuOm50aC1jaGlsZCgyKSB7IG9wYWNpdHk6IDA7IHRyYW5zZm9ybTogc2NhbGVYKDApOyB9XG4ubmF2YmFyX19idXJnZXIub3BlbiBzcGFuOm50aC1jaGlsZCgzKSB7IHdpZHRoOiAxMDAlOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTdweCkgcm90YXRlKC00NWRlZyk7IH1cblxuLyogTW9iaWxlIG1lbnUgKi9cbi5uYXZiYXJfX21vYmlsZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiB2YXIoLS1uYXZiYXItaCk7IGxlZnQ6IDA7IHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sZyk7XG4gIHBhZGRpbmc6IDEuNXJlbSB2YXIoLS1jb250YWluZXItcHgpIDJyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTEwJSk7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdC1zbG93KSwgb3BhY2l0eSB2YXIoLS10LXNsb3cpO1xuICB6LWluZGV4OiA5OTk7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO1xufVxuLm5hdmJhcl9fbW9iaWxlLm9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIG9wYWNpdHk6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG59XG4ubmF2YmFyX19tb2JpbGUtbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbi5uYXZiYXJfX21vYmlsZS1saW5rIHtcbiAgcGFkZGluZzogLjc1cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdC1mYXN0KSwgY29sb3IgdmFyKC0tdC1mYXN0KTtcbn1cbi5uYXZiYXJfX21vYmlsZS1saW5rOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctbGlnaHQpO1xuICBjb2xvcjogdmFyKC0tYmx1ZSk7XG59XG4ubmF2YmFyX19tb2JpbGUtYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogLjc1cmVtO1xuICBwYWRkaW5nLXRvcDogMS4yNXJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG59XG5cbi8qIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAgNy4gSEVST1xu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXG4uaGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMTAwc3ZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1uYXZ5KTtcbn1cblxuLmhlcm9fX2JnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbn1cbi5oZXJvX19iZyBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gIG9wYWNpdHk6IC4zNTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDhzIGVhc2U7XG59XG4uaGVyby5sb2FkZWQgLmhlcm9fX2JnIGltZyB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cblxuLyogR3JhZGllbnQgb3ZlcmxheXMgKi9cbi5oZXJvX19vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZDpcbiAgICByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSAxMjAlIDgwJSBhdCAwJSA1MCUsIHJnYmEoMTEsMzEsNjQsLjk1KSAzMCUsIHRyYW5zcGFyZW50IDcwJSksXG4gICAgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgxMSwzMSw2NCwuNikgMCUsIHJnYmEoMTEsMzEsNjQsLjMpIDEwMCUpO1xufVxuXG4vKiBBbmltYXRlZCBncmFkaWVudCBvcmJzICovXG4uaGVyb19fb3JiIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZpbHRlcjogYmx1cig4MHB4KTtcbiAgb3BhY2l0eTogLjM1O1xuICBhbmltYXRpb246IG9yYkZsb2F0IDhzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5oZXJvX19vcmItLTEge1xuICB3aWR0aDogNTAwcHg7IGhlaWdodDogNTAwcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJsdWUpO1xuICB0b3A6IC0xMCU7IHJpZ2h0OiA1JTtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwcztcbn1cbi5oZXJvX19vcmItLTIge1xuICB3aWR0aDogMzUwcHg7IGhlaWdodDogMzUwcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgYm90dG9tOiA1JTsgcmlnaHQ6IDMwJTtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtM3M7XG59XG4uaGVyb19fb3JiLS0zIHtcbiAgd2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDI1MHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1vcmFuZ2UpO1xuICB0b3A6IDMwJTsgcmlnaHQ6IDE1JTtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtNnM7XG59XG5Aa2V5ZnJhbWVzIG9yYkZsb2F0IHtcbiAgMCUsIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSBzY2FsZSgxKTsgfVxuICAzMyUgICAgICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyMHB4LCAtMzBweCkgc2NhbGUoMS4wNSk7IH1cbiAgNjYlICAgICAgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTE1cHgsIDIwcHgpIHNjYWxlKC45NSk7IH1cbn1cblxuLmhlcm9fX2NvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLW5hdmJhci1oKSArIDNyZW0pO1xuICBwYWRkaW5nLWJvdHRvbTogNnJlbTtcbn1cblxuLmhlcm9fX2JhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogLjVyZW07XG4gIHBhZGRpbmc6IC4zNzVyZW0gMXJlbTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwuMSk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1mdWxsKTtcbiAgZm9udC1zaXplOiAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC44NSk7XG4gIG1hcmdpbi1ib3R0b206IDEuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGxldHRlci1zcGFjaW5nOiAuMDJlbTtcbn1cbi5oZXJvX19iYWRnZS1kb3Qge1xuICB3aWR0aDogLjVyZW07IGhlaWdodDogLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgxNCwxNTksMTEwLC4zNSk7XG4gIGFuaW1hdGlvbjogcHVsc2UgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUsIDEwMCUgeyBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgxNCwxNTksMTEwLC4zNSk7IH1cbiAgNTAlICAgICAgIHsgYm94LXNoYWRvdzogMCAwIDAgNnB4IHJnYmEoMTQsMTU5LDExMCwuMTUpOyB9XG59XG5cbi5oZXJvX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXNlcmlmKTtcbiAgZm9udC1zaXplOiBjbGFtcCgyLjc1cmVtLCA2dncsIDVyZW0pO1xuICBsaW5lLWhlaWdodDogMS4wNTtcbiAgY29sb3I6ICNmZmY7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgbWF4LXdpZHRoOiA3NTBweDtcbn1cbi5oZXJvX190aXRsZSBlbSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzYwYTVmYSwgIzM0ZDM5OSk7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbn1cblxuLmhlcm9fX2xlYWQge1xuICBmb250LXNpemU6IGNsYW1wKDFyZW0sIDEuNXZ3LCAxLjE3NXJlbSk7XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC43KTtcbiAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gIG1heC13aWR0aDogNTQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbn1cblxuLmhlcm9fX2N0YXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMXJlbTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmhlcm9fX3Njcm9sbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAyLjVyZW07XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IC41cmVtO1xuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNCk7XG4gIGZvbnQtc2l6ZTogLjc1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLjFlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYW5pbWF0aW9uOiBib3VuY2VTY3JvbGwgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIHotaW5kZXg6IDI7XG59XG4uaGVyb19fc2Nyb2xsIHN2ZyB7IHdpZHRoOiAxLjI1cmVtOyBoZWlnaHQ6IDEuMjVyZW07IH1cbkBrZXlmcmFtZXMgYm91bmNlU2Nyb2xsIHtcbiAgMCUsIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgwKTsgfVxuICA1MCUgICAgICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSg4cHgpOyB9XG59XG5cbi8qIFN0YXRzIHJpYmJvbiAqL1xuLnN0YXRzLXJpYmJvbiB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJsdWUpO1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5zdGF0cy1yaWJib246OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDI2LDg2LDIxOSwuOCksIHJnYmEoMTEsMzEsNjQsLjkpKTtcbn1cbi5zdGF0cy1yaWJib25fX2dyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICBnYXA6IDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cbi5zdGF0LWl0ZW0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zdGF0LWl0ZW0gKyAuc3RhdC1pdGVtOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwOyB0b3A6IDIwJTsgYm90dG9tOiAyMCU7XG4gIHdpZHRoOiAxcHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsLjIpO1xufVxuLnN0YXQtaXRlbV9fbnVtYmVyIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtc2VyaWYpO1xuICBmb250LXNpemU6IGNsYW1wKDJyZW0sIDR2dywgM3JlbSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAuMzc1cmVtO1xuICBjb2xvcjogI2ZmZjtcbn1cbi5zdGF0LWl0ZW1fX2xhYmVsIHtcbiAgZm9udC1zaXplOiAuNzVyZW07XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC43KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC4wMmVtO1xufVxuXG4vKiDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgIDguIEFCT1VUIFNFQ1RJT05cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xuXG4vKiBDZW50ZXJlZCBoZWFkZXIgKi9cbi5hYm91dF9faGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXgtd2lkdGg6IDcyMHB4O1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAzLjVyZW07XG59XG4uYWJvdXRfX2hlYWRlciAuZXllYnJvdyB7IGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4uYWJvdXRfX2hlYWRlciAuaDIgeyBtYXJnaW4tdG9wOiAuMjVyZW07IH1cblxuLyogVHdvLWNvbHVtbiBncmlkICovXG4uYWJvdXRfX2dyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIGdhcDogM3JlbTtcbiAgYWxpZ24taXRlbXM6IHN0YXJ0O1xufVxuXG4uYWJvdXRfX21lZGlhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYWJvdXRfX21vc2FpYyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMS40ZnIgMWZyO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0bztcbiAgZ2FwOiAuODc1cmVtO1xufVxuXG4ubW9zYWljX19pdGVtIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm1vc2FpY19faXRlbSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC42cyB2YXIoLS1lYXNlKTtcbn1cbi5tb3NhaWNfX2l0ZW06aG92ZXIgaW1nIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjA2KTsgfVxuXG4ubW9zYWljX19pdGVtLS10YWxsIHtcbiAgZ3JpZC1yb3c6IDEgLyAzO1xuICBtaW4taGVpZ2h0OiA0MjBweDtcbn1cbi5tb3NhaWNfX2l0ZW0tLXNob3J0IHsgbWluLWhlaWdodDogMjAwcHg7IH1cblxuLyogSW5mbyBibG9jayAqL1xuLmFib3V0X19pbmZvIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAxLjVyZW07IH1cblxuLmFib3V0X19pbmZvLWludHJvIHtcbiAgZm9udC1zaXplOiAuOTM3NXJlbTtcbiAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcbiAgbGluZS1oZWlnaHQ6IDEuNztcbiAgcGFkZGluZy1ib3R0b206IC4yNXJlbTtcbn1cblxuLyogQWJvdXQgY2FyZHMgKi9cbi5hYm91dC1jYXJkcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMXJlbTtcbn1cblxuLmFib3V0LWNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDEuMjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuICBib3JkZXI6IDEuNXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy14cyk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXQtYmFzZSk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5hYm91dC1jYXJkOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwOyB0b3A6IDA7IGJvdHRvbTogMDtcbiAgd2lkdGg6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4IDAgMCA0cHg7XG4gIHRyYW5zZm9ybTogc2NhbGVZKDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10LWJhc2UpO1xufVxuLmFib3V0LWNhcmQ6aG92ZXIsXG4uYWJvdXQtY2FyZDpmb2N1cy12aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1tZCk7XG59XG4uYWJvdXQtY2FyZDpob3Zlcjo6YmVmb3JlLFxuLmFib3V0LWNhcmQ6Zm9jdXMtdmlzaWJsZTo6YmVmb3JlIHsgdHJhbnNmb3JtOiBzY2FsZVkoMSk7IH1cblxuLmFib3V0LWNhcmQ6bnRoLWNoaWxkKDEpIHsgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWJsdWUpOyB9XG4uYWJvdXQtY2FyZDpudGgtY2hpbGQoMSk6OmJlZm9yZSB7IGJhY2tncm91bmQ6IHZhcigtLWJsdWUpOyB9XG4uYWJvdXQtY2FyZDpudGgtY2hpbGQoMSk6aG92ZXIgeyBib3JkZXItY29sb3I6IHZhcigtLWJsdWUpOyBiYWNrZ3JvdW5kOiB2YXIoLS1ibHVlLXhsaWdodCk7IH1cblxuLmFib3V0LWNhcmQ6bnRoLWNoaWxkKDIpIHsgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWdyZWVuKTsgfVxuLmFib3V0LWNhcmQ6bnRoLWNoaWxkKDIpOjpiZWZvcmUgeyBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7IH1cbi5hYm91dC1jYXJkOm50aC1jaGlsZCgyKTpob3ZlciB7IGJvcmRlci1jb2xvcjogdmFyKC0tZ3JlZW4pOyBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbi1saWdodCk7IH1cblxuLmFib3V0LWNhcmQ6bnRoLWNoaWxkKDMpIHsgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLW9yYW5nZSk7IH1cbi5hYm91dC1jYXJkOm50aC1jaGlsZCgzKTo6YmVmb3JlIHsgYmFja2dyb3VuZDogdmFyKC0tb3JhbmdlKTsgfVxuLmFib3V0LWNhcmQ6bnRoLWNoaWxkKDMpOmhvdmVyIHsgYm9yZGVyLWNvbG9yOiB2YXIoLS1vcmFuZ2UpOyBiYWNrZ3JvdW5kOiB2YXIoLS1vcmFuZ2UtbGlnaHQpOyB9XG5cbi5hYm91dC1jYXJkX19pY29uIHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogM3JlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdC1iYXNlKTtcbn1cbi5hYm91dC1jYXJkOmhvdmVyIC5hYm91dC1jYXJkX19pY29uIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgtNGRlZyk7IH1cbi5hYm91dC1jYXJkX19pY29uIHN2ZyB7IHdpZHRoOiAxLjVyZW07IGhlaWdodDogMS41cmVtOyB9XG4uYWJvdXQtY2FyZF9faWNvbi0tYmx1ZSAgIHsgYmFja2dyb3VuZDogdmFyKC0tYmx1ZS14bGlnaHQpOyBjb2xvcjogdmFyKC0tYmx1ZSk7IH1cbi5hYm91dC1jYXJkX19pY29uLS1ncmVlbiAgeyBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbi1saWdodCk7ICBjb2xvcjogdmFyKC0tZ3JlZW4pOyB9XG4uYWJvdXQtY2FyZF9faWNvbi0tb3JhbmdlIHsgYmFja2dyb3VuZDogdmFyKC0tb3JhbmdlLWxpZ2h0KTsgY29sb3I6IHZhcigtLW9yYW5nZSk7IH1cblxuLmFib3V0LWNhcmRfX2JvZHkgeyBmbGV4OiAxOyBtaW4td2lkdGg6IDA7IH1cbi5hYm91dC1jYXJkX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XG4gIG1hcmdpbi1ib3R0b206IC4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cbi5hYm91dC1jYXJkX19kZXNjIHtcbiAgZm9udC1zaXplOiAuODc1cmVtO1xuICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xuICBsaW5lLWhlaWdodDogMS41NTtcbn1cblxuLmFib3V0LWNhcmRfX2Fycm93IHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAycmVtOyBoZWlnaHQ6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctbGlnaHQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXQtYmFzZSk7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cbi5hYm91dC1jYXJkX19hcnJvdyBzdmcgeyB3aWR0aDogMXJlbTsgaGVpZ2h0OiAxcmVtOyB9XG4uYWJvdXQtY2FyZDpob3ZlciAuYWJvdXQtY2FyZF9fYXJyb3cge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnkpO1xuICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3cteHMpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KTtcbn1cblxuLyog4pSA4pSAIE1vZGFsIHJpY2ggdGV4dCAoUXVpIHNvbW1lcy1ub3VzKSDilIDilIAgKi9cbi5tb2RhbF9fcmljaC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxcmVtO1xuICBmb250LXNpemU6IC45NjI1cmVtO1xuICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xuICBsaW5lLWhlaWdodDogMS43ODtcbn1cbi5tb2RhbF9fc2lnbmF0dXJlIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIG1hcmdpbi10b3A6IC41cmVtO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG59XG5cbi8qIOKUgOKUgCBNb2RhbCBvYmplY3RpdmVzIGxpc3Qg4pSA4pSAICovXG4ubW9kYWxfX29iamVjdGl2ZXMtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4ubW9kYWxfX29iamVjdGl2ZXMtbGlzdCBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IC43NXJlbTtcbiAgZm9udC1zaXplOiAuOTM3NXJlbTtcbiAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgcGFkZGluZzogLjYyNXJlbSAuODc1cmVtO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1saWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tZ3JlZW4pO1xufVxuLm1vZGFsX19vYmplY3RpdmVzLWxpc3QgbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICfinJMnO1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEuMjVyZW07XG4gIGhlaWdodDogMS4yNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbi1saWdodCk7XG4gIGNvbG9yOiB2YXIoLS1ncmVlbik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXNpemU6IC43cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tdG9wOiAuMXJlbTtcbn1cblxuLyog4pSA4pSAIE1vZGFsIGF4ZXMgZ3JpZCDilIDilIAgKi9cbi5tb2RhbF9fYXhlcy1ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAuODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG4ubW9kYWxfX2F4ZS1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGdhcDogMXJlbTtcbiAgcGFkZGluZzogMXJlbSAxLjI1cmVtO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1saWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG4gIHRyYW5zaXRpb246IGFsbCB2YXIoLS10LWJhc2UpO1xufVxuLm1vZGFsX19heGUtaXRlbTpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tb3JhbmdlKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tb3JhbmdlLWxpZ2h0KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7XG59XG4ubW9kYWxfX2F4ZS1lbW9qaSB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBtYXJnaW4tdG9wOiAuMXJlbTtcbn1cbi5tb2RhbF9fYXhlLWl0ZW0gaDQge1xuICBmb250LXNpemU6IC45Mzc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcbiAgbWFyZ2luLWJvdHRvbTogLjI1cmVtO1xufVxuLm1vZGFsX19heGUtaXRlbSBwIHtcbiAgZm9udC1zaXplOiAuODc1cmVtO1xuICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4vKiDilIDilIAgTW9kYWwgY2xvc2luZyBzZW50ZW5jZSDilIDilIAgKi9cbi5tb2RhbF9fY2xvc2luZyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuICBmb250LXNpemU6IC44NzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctbGlnaHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO1xufVxuXG4uYWJvdXRfX2JhZGdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0xLjVyZW07XG4gIHJpZ2h0OiAtMS41cmVtO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1uYXZ5KTtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LWxnKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB6LWluZGV4OiAxMDtcbn1cbi5hYm91dF9fYmFkZ2UteWVhciB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXNlcmlmKTtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICNmZmY7XG59XG4uYWJvdXRfX2JhZGdlLWxhYmVsIHtcbiAgZm9udC1zaXplOiAuNzVyZW07XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC42KTtcbiAgbWFyZ2luLXRvcDogLjI1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogLjA4ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5hYm91dF9fdGV4dCB7IHBhZGRpbmctbGVmdDogMXJlbTsgfVxuXG4vKiBUYWJzICovXG4udGFicyB7IG1hcmdpbi10b3A6IDJyZW07IH1cbi50YWJzX19uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IC4yNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG4gIG1hcmdpbi1ib3R0b206IDEuNzVyZW07XG59XG4udGFic19fYnRuIHtcbiAgcGFkZGluZzogLjYyNXJlbSAxLjI1cmVtIC44NzVyZW07XG4gIGZvbnQtc2l6ZTogLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKSB2YXIoLS1yYWRpdXMtc20pIDAgMDtcbiAgbWFyZ2luLWJvdHRvbTogLTJweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10LWJhc2UpLCBib3JkZXItY29sb3IgdmFyKC0tdC1iYXNlKTtcbn1cbi50YWJzX19idG46aG92ZXIgeyBjb2xvcjogdmFyKC0tYmx1ZSk7IH1cbi50YWJzX19idG4uYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWJsdWUpO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmx1ZS14bGlnaHQpO1xufVxuLnRhYnNfX3BhbmVsIHsgZGlzcGxheTogbm9uZTsgYW5pbWF0aW9uOiB0YWJGYWRlIC4zcyB2YXIoLS1lYXNlKTsgfVxuLnRhYnNfX3BhbmVsLmFjdGl2ZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5Aa2V5ZnJhbWVzIHRhYkZhZGUge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7IH1cbiAgdG8gICB7IG9wYWNpdHk6IDE7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxufVxuXG4ub2JqZWN0aXZlcy1saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAuODc1cmVtO1xuICBtYXJnaW4tdG9wOiAuNXJlbTtcbn1cbi5vYmplY3RpdmVzLWxpc3QgbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAuNzVyZW07XG4gIGZvbnQtc2l6ZTogLjkzNzVyZW07XG4gIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG4ub2JqZWN0aXZlcy1saXN0X19jaGVjayB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMS4zNzVyZW07XG4gIGhlaWdodDogMS4zNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4tbGlnaHQpO1xuICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogLjFyZW07XG4gIGZvbnQtc2l6ZTogLjdyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi8qIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAgOS4gU0VDVElPTiBFTiBGUkFOQ0UgKE1vZGFscylcbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xuLmZyYW5jZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLW5hdnkpIDAlLCAjMGQyYTVlIDYwJSwgIzBhM2Q0YSAxMDAlKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmZyYW5jZTo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6XG4gICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA4MCUgMjAlLCByZ2JhKDE0LDE1OSwxMTAsLjEyKSAwJSwgdHJhbnNwYXJlbnQgNTAlKSxcbiAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDIwJSA4MCUsIHJnYmEoMjYsODYsMjE5LC4xNSkgMCUsIHRyYW5zcGFyZW50IDUwJSk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmZyYW5jZSAuc2VjdGlvbiB7IHBhZGRpbmctYmxvY2s6IHZhcigtLXNlY3Rpb24tcHkpOyB9XG5cbi5mcmFuY2VfX2hlYWRlciB7IHRleHQtYWxpZ246IGNlbnRlcjsgbWFyZ2luLWJvdHRvbTogMy41cmVtOyBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDE7IH1cbi5mcmFuY2VfX2hlYWRlciAuaDIgeyBjb2xvcjogI2ZmZjsgbWFyZ2luLXRvcDogLjVyZW07IG1hcmdpbi1ib3R0b206IDFyZW07IH1cbi5mcmFuY2VfX2hlYWRlciAubGVhZCB7IGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC42KTsgbWFyZ2luLWlubGluZTogYXV0bzsgfVxuXG4uZnJhbmNlX19jYXJkcyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIGdhcDogMS43NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4uZnJhbmNlLWNhcmQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LC4wNik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMteGwpO1xuICBwYWRkaW5nOiAyLjI1cmVtIDJyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXQtc2xvdyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxLjI1cmVtO1xufVxuLmZyYW5jZS1jYXJkOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdHJhbnNwYXJlbnQsIHJnYmEoMjU1LDI1NSwyNTUsLjAzKSk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdC1zbG93KTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uZnJhbmNlLWNhcmQ6aG92ZXIsXG4uZnJhbmNlLWNhcmQ6Zm9jdXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjIpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG4gIGJveC1zaGFkb3c6IDAgMjRweCA0OHB4IHJnYmEoMCwwLDAsLjMpO1xufVxuLmZyYW5jZS1jYXJkOmhvdmVyOjpiZWZvcmUgeyBvcGFjaXR5OiAxOyB9XG5cbi5mcmFuY2UtY2FyZF9faWNvbiB7XG4gIHdpZHRoOiAzLjVyZW07XG4gIGhlaWdodDogMy41cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5mcmFuY2UtY2FyZF9faWNvbiBzdmcgeyB3aWR0aDogMS43NXJlbTsgaGVpZ2h0OiAxLjc1cmVtOyB9XG5cbi5mcmFuY2UtY2FyZDpudGgtY2hpbGQoMSkgLmZyYW5jZS1jYXJkX19pY29uIHsgYmFja2dyb3VuZDogcmdiYSgyNiw4NiwyMTksLjI1KTsgY29sb3I6ICM5M2M1ZmQ7IH1cbi5mcmFuY2UtY2FyZDpudGgtY2hpbGQoMikgLmZyYW5jZS1jYXJkX19pY29uIHsgYmFja2dyb3VuZDogcmdiYSgxNCwxNTksMTEwLC4yNSk7IGNvbG9yOiAjNmVlN2I3OyB9XG4uZnJhbmNlLWNhcmQ6bnRoLWNoaWxkKDMpIC5mcmFuY2UtY2FyZF9faWNvbiB7IGJhY2tncm91bmQ6IHJnYmEoMjQ5LDExNSwyMiwuMjUpOyBjb2xvcjogI2ZkYmE3NDsgfVxuXG4uZnJhbmNlLWNhcmRfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjZmZmO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbn1cbi5mcmFuY2UtY2FyZF9fZXhjZXJwdCB7XG4gIGZvbnQtc2l6ZTogLjlyZW07XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC41NSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjY1O1xuICBmbGV4LWdyb3c6IDE7XG59XG4uZnJhbmNlLWNhcmRfX2N0YSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IC41cmVtO1xuICBmb250LXNpemU6IC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC41KTtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdC1iYXNlKSwgZ2FwIHZhcigtLXQtYmFzZSk7XG4gIG1hcmdpbi10b3A6IGF1dG87XG59XG4uZnJhbmNlLWNhcmRfX2N0YSBzdmcgeyB3aWR0aDogMXJlbTsgaGVpZ2h0OiAxcmVtOyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdC1iYXNlKTsgfVxuLmZyYW5jZS1jYXJkOmhvdmVyIC5mcmFuY2UtY2FyZF9fY3RhIHtcbiAgY29sb3I6ICNmZmY7XG4gIGdhcDogLjc1cmVtO1xufVxuLmZyYW5jZS1jYXJkOmhvdmVyIC5mcmFuY2UtY2FyZF9fY3RhIHN2ZyB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpOyB9XG5cbi8qIENvbG91ciBiYXJzIGF0IHRvcCAqL1xuLmZyYW5jZS1jYXJkOm50aC1jaGlsZCgxKTo6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiB2YXIoLS1ibHVlKTsgfVxuLmZyYW5jZS1jYXJkOm50aC1jaGlsZCgyKTo6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7IH1cbi5mcmFuY2UtY2FyZDpudGgtY2hpbGQoMyk6OmFmdGVyIHsgYmFja2dyb3VuZDogdmFyKC0tb3JhbmdlKTsgfVxuLmZyYW5jZS1jYXJkOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDsgbGVmdDogMDsgcmlnaHQ6IDA7XG4gIGhlaWdodDogM3B4O1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXQtc2xvdyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy14bCkgdmFyKC0tcmFkaXVzLXhsKSAwIDA7XG59XG4uZnJhbmNlLWNhcmQ6aG92ZXI6OmFmdGVyIHsgdHJhbnNmb3JtOiBzY2FsZVgoMSk7IH1cblxuLyog4pSA4pSAIE1PREFMIOKUgOKUgCAqL1xuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZDogcmdiYSg1LDE1LDM1LC44KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDhweCkgc2F0dXJhdGUoMTIwJSk7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDhweCkgc2F0dXJhdGUoMTIwJSk7XG4gIHotaW5kZXg6IDIwMDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXQtc2xvdyk7XG59XG4ubW9kYWwtYmFja2Ryb3Aub3BlbiB7XG4gIG9wYWNpdHk6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG59XG4ubW9kYWwtYmFja2Ryb3Aub3BlbiAubW9kYWwgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7IG9wYWNpdHk6IDE7IH1cblxuLm1vZGFsIHtcbiAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtMnhsKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNjgwcHg7XG4gIG1heC1oZWlnaHQ6IDkwc3ZoO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3cteGwpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzJweCkgc2NhbGUoLjk3KTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXQtc2xvdyksIG9wYWNpdHkgdmFyKC0tdC1zbG93KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XG59XG5cbi5tb2RhbF9faGVybyB7XG4gIGhlaWdodDogMjAwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLTJ4bCkgdmFyKC0tcmFkaXVzLTJ4bCkgMCAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG4ubW9kYWxfX2hlcm8tYmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xufVxuLm1vZGFsX19oZXJvLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xufVxuLm1vZGFsX19pY29uLXdyYXAge1xuICB3aWR0aDogMy41cmVtO1xuICBoZWlnaHQ6IDMuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsLjIpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMyk7XG4gIG1hcmdpbi1ib3R0b206IC43NXJlbTtcbn1cbi5tb2RhbF9faWNvbi13cmFwIHN2ZyB7IHdpZHRoOiAxLjc1cmVtOyBoZWlnaHQ6IDEuNzVyZW07IGNvbG9yOiAjZmZmOyB9XG4ubW9kYWxfX2hlcm8tdGl0bGUge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjZmZmO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuXG4ubW9kYWxfX2Nsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDFyZW07IHJpZ2h0OiAxcmVtO1xuICB6LWluZGV4OiAxMDtcbiAgd2lkdGg6IDIuMjVyZW07IGhlaWdodDogMi4yNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4yKTtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdC1iYXNlKTtcbn1cbi5tb2RhbF9fY2xvc2U6aG92ZXIgeyBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LC4zKTsgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG4ubW9kYWxfX2Nsb3NlIHN2ZyB7IHdpZHRoOiAxLjFyZW07IGhlaWdodDogMS4xcmVtOyB9XG5cbi5tb2RhbF9fYm9keSB7IHBhZGRpbmc6IDJyZW07IH1cblxuLm1vZGFsX19kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcbiAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gIG1hcmdpbi1ib3R0b206IDEuNzVyZW07XG59XG5cbi5tb2RhbF9fc3VidGl0bGUge1xuICBmb250LXNpemU6IC44MTI1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogLjFlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IC41cmVtO1xufVxuLm1vZGFsX19zdWJ0aXRsZTo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZmxleDogMTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJvcmRlcik7XG59XG5cbi5tb2RhbF9fYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLm1vZGFsX19hY3Rpb24taXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IDFyZW07XG4gIHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctbGlnaHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO1xuICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdC1iYXNlKTtcbn1cbi5tb2RhbF9fYWN0aW9uLWl0ZW06aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1taWQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1taWQpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTtcbn1cbi5tb2RhbF9fYWN0aW9uLWljb24ge1xuICB3aWR0aDogMi41cmVtO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuLm1vZGFsX19hY3Rpb24taWNvbiBzdmcgeyB3aWR0aDogMS4yNXJlbTsgaGVpZ2h0OiAxLjI1cmVtOyB9XG4ubW9kYWxfX2FjdGlvbi10ZXh0IGg0IHtcbiAgZm9udC1zaXplOiAuOTM3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XG4gIG1hcmdpbi1ib3R0b206IC4yNXJlbTtcbn1cbi5tb2RhbF9fYWN0aW9uLXRleHQgcCB7XG4gIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ubW9kYWxfX2Zvb3RlciB7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMnJlbSAycmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IC44NzVyZW07XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO1xufVxuXG4vKiDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgIDEwLiBBQ1RJVklUSUVTIC8gQkxPR1xu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXG4uYWN0aXZpdGllc19faGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLmFjdGl2aXRpZXNfX2xpbmstYWxsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogLjVyZW07XG4gIGZvbnQtc2l6ZTogLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdHJhbnNpdGlvbjogZ2FwIHZhcigtLXQtYmFzZSksIGNvbG9yIHZhcigtLXQtYmFzZSk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5hY3Rpdml0aWVzX19saW5rLWFsbCBzdmcgeyB3aWR0aDogMS4xMjVyZW07IGhlaWdodDogMS4xMjVyZW07IHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10LWJhc2UpOyB9XG4uYWN0aXZpdGllc19fbGluay1hbGw6aG92ZXIgeyBnYXA6IC43NXJlbTsgfVxuLmFjdGl2aXRpZXNfX2xpbmstYWxsOmhvdmVyIHN2ZyB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpOyB9XG5cbi5hY3Rpdml0eS1jYXJkcyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIGdhcDogMnJlbTtcbn1cblxuLmFjdGl2aXR5LWNhcmQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy14bCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zbSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10LXNsb3cpLCBib3gtc2hhZG93IHZhcigtLXQtc2xvdyksIGJvcmRlci1jb2xvciB2YXIoLS10LXNsb3cpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLmFjdGl2aXR5LWNhcmQ6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLW1pZCk7XG59XG5cbi5hY3Rpdml0eS1jYXJkX19pbWcge1xuICBhc3BlY3QtcmF0aW86IDQvMztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctbWlkKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmFjdGl2aXR5LWNhcmRfX2ltZyBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC42cyB2YXIoLS1lYXNlKTtcbn1cbi5hY3Rpdml0eS1jYXJkOmhvdmVyIC5hY3Rpdml0eS1jYXJkX19pbWcgaW1nIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjA2KTsgfVxuXG4uYWN0aXZpdHktY2FyZF9faW1nLXBsYWNlaG9sZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWJnLWxpZ2h0KSwgdmFyKC0tYmx1ZS14bGlnaHQpKTtcbn1cbi5hY3Rpdml0eS1jYXJkX19pbWctcGxhY2Vob2xkZXIgc3ZnIHtcbiAgd2lkdGg6IDNyZW07IGhlaWdodDogM3JlbTtcbiAgY29sb3I6IHZhcigtLWJsdWUtbGlnaHQpO1xuICBvcGFjaXR5OiAuNjtcbn1cblxuLmFjdGl2aXR5LWNhcmRfX2JvZHkge1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZ3JvdzogMTtcbiAgZ2FwOiAuNzVyZW07XG59XG4uYWN0aXZpdHktY2FyZF9fbWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogLjYyNXJlbTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLmFjdGl2aXR5LWNhcmRfX3RhZyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IC4zNzVyZW07XG4gIGZvbnQtc2l6ZTogLjc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG4uYWN0aXZpdHktY2FyZF9fdGFnIHN2ZyB7IHdpZHRoOiAuODc1cmVtOyBoZWlnaHQ6IC44NzVyZW07IH1cbi5hY3Rpdml0eS1jYXJkX19zZXAgeyB3aWR0aDogM3B4OyBoZWlnaHQ6IDNweDsgYm9yZGVyLXJhZGl1czogNTAlOyBiYWNrZ3JvdW5kOiB2YXIoLS1ib3JkZXItbWlkKTsgfVxuXG4uYWN0aXZpdHktY2FyZF9fdGl0bGUge1xuICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGZsZXgtZ3JvdzogMTtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdC1mYXN0KTtcbn1cbi5hY3Rpdml0eS1jYXJkOmhvdmVyIC5hY3Rpdml0eS1jYXJkX190aXRsZSB7IGNvbG9yOiB2YXIoLS1ibHVlKTsgfVxuXG4uYWN0aXZpdHktY2FyZF9fZXhjZXJwdCB7XG4gIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuICBsaW5lLWhlaWdodDogMS42NTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmFjdGl2aXR5LWNhcmRfX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy10b3A6IC44NzVyZW07XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO1xuICBtYXJnaW4tdG9wOiBhdXRvO1xufVxuLmFjdGl2aXR5LWNhcmRfX3JlYWQtbW9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IC4zNzVyZW07XG4gIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLWJsdWUpO1xuICB0cmFuc2l0aW9uOiBnYXAgdmFyKC0tdC1mYXN0KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmFjdGl2aXR5LWNhcmRfX3JlYWQtbW9yZSBzdmcgeyB3aWR0aDogMXJlbTsgaGVpZ2h0OiAxcmVtOyB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdC1iYXNlKTsgfVxuLmFjdGl2aXR5LWNhcmQ6aG92ZXIgLmFjdGl2aXR5LWNhcmRfX3JlYWQtbW9yZSB7IGdhcDogLjYyNXJlbTsgfVxuLmFjdGl2aXR5LWNhcmQ6aG92ZXIgLmFjdGl2aXR5LWNhcmRfX3JlYWQtbW9yZSBzdmcgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsgfVxuXG4uYWN0aXZpdHktY2FyZF9fZWRpdCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IC4zNzVyZW07XG4gIGZvbnQtc2l6ZTogLjgxMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdC1mYXN0KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmFjdGl2aXR5LWNhcmRfX2VkaXQ6aG92ZXIgeyBjb2xvcjogdmFyKC0tYmx1ZSk7IH1cbi5hY3Rpdml0eS1jYXJkX19lZGl0IHN2ZyB7IHdpZHRoOiAuODc1cmVtOyBoZWlnaHQ6IC44NzVyZW07IH1cblxuLyog4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gICAxMS4gQ1RBIEJBTkRcbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xuLmN0YS1iYW5kIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzBhMzU2NiAwJSwgIzFBNTZEQiA1MCUsICMwZTZlNWEgMTAwJSk7XG4gIHBhZGRpbmc6IDVyZW0gMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmN0YS1iYW5kOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAyMCUgNTAlLCByZ2JhKDI1NSwyNTUsMjU1LC4wNikgMCUsIHRyYW5zcGFyZW50IDUwJSksXG4gICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA4MCUgNTAlLCByZ2JhKDI1NSwyNTUsMjU1LC4wNCkgMCUsIHRyYW5zcGFyZW50IDUwJSk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmN0YS1iYW5kX19pbm5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuLmN0YS1iYW5kX19pbm5lciAuaDIge1xuICBjb2xvcjogI2ZmZjtcbiAgbWF4LXdpZHRoOiA3MDBweDtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbn1cbi5jdGEtYmFuZF9faW5uZXIgLmxlYWQgeyBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNyk7IG1hcmdpbi1pbmxpbmU6IGF1dG87IG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfVxuLmN0YS1iYW5kX19idG5zIHsgZGlzcGxheTogZmxleDsgZ2FwOiAxcmVtOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgZmxleC13cmFwOiB3cmFwOyB9XG5cbi8qIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAgMTIuIFRFQU1cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xuLnRlYW1fX2dyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICBnYXA6IDJyZW07XG4gIG1heC13aWR0aDogOTAwcHg7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG5cbi50ZWFtLWNhcmQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIuNXJlbSAxLjc1cmVtO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy14bCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy14cyk7XG4gIHRyYW5zaXRpb246IGFsbCB2YXIoLS10LXNsb3cpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4udGVhbS1jYXJkOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDRweDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCB2YXIoLS1ibHVlKSwgdmFyKC0tZ3JlZW4pKTtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10LXNsb3cpO1xufVxuLnRlYW0tY2FyZDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LW1kKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItbWlkKTtcbn1cbi50ZWFtLWNhcmQ6aG92ZXI6OmJlZm9yZSB7IHRyYW5zZm9ybTogc2NhbGVYKDEpOyB9XG5cbi50ZWFtLWNhcmRfX2F2YXRhci13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG4udGVhbS1jYXJkX19hdmF0YXIge1xuICB3aWR0aDogNS41cmVtO1xuICBoZWlnaHQ6IDUuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0td2hpdGUpO1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggdmFyKC0tYm9yZGVyKSwgdmFyKC0tc2hhZG93LXNtKTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyB2YXIoLS10LXNsb3cpO1xufVxuLnRlYW0tY2FyZDpob3ZlciAudGVhbS1jYXJkX19hdmF0YXIge1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggdmFyKC0tYmx1ZS1saWdodCksIHZhcigtLXNoYWRvdy1tZCk7XG59XG4udGVhbS1jYXJkX19zdGF0dXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNHB4OyByaWdodDogNHB4O1xuICB3aWR0aDogLjg3NXJlbTsgaGVpZ2h0OiAuODc1cmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0td2hpdGUpO1xufVxuLnRlYW0tY2FyZF9fbmFtZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XG4gIG1hcmdpbi1ib3R0b206IC4zNzVyZW07XG59XG4udGVhbS1jYXJkX19yb2xlIHtcbiAgZm9udC1zaXplOiAuODEyNXJlbTtcbiAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4vKiDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgIDEzLiBQQVJUTkVSU1xu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXG4ucGFydG5lcnMgeyBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1saWdodCk7IH1cbi5wYXJ0bmVyc19fZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDRyZW07XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbn1cbi5wYXJ0bmVyLWxvZ28ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmlsdGVyOiBncmF5c2NhbGUoMSkgb3BhY2l0eSguNSk7XG4gIHRyYW5zaXRpb246IGZpbHRlciB2YXIoLS10LXNsb3cpLCB0cmFuc2Zvcm0gdmFyKC0tdC1iYXNlKTtcbn1cbi5wYXJ0bmVyLWxvZ286aG92ZXIge1xuICBmaWx0ZXI6IGdyYXlzY2FsZSgwKSBvcGFjaXR5KDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xufVxuLnBhcnRuZXItbG9nbyBpbWcgeyBoZWlnaHQ6IDMuMjVyZW07IHdpZHRoOiBhdXRvOyBvYmplY3QtZml0OiBjb250YWluOyB9XG5cbi8qIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAgMTQuIENPTlRBQ1RcbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xuLmNvbnRhY3RfX2dyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDVmciA3ZnI7XG4gIGdhcDogMy41cmVtO1xuICBhbGlnbi1pdGVtczogc3RhcnQ7XG59XG5cbi5jb250YWN0LWluZm8geyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBnYXA6IDFyZW07IH1cbi5jb250YWN0LWluZm8taXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IDFyZW07XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGJhY2tncm91bmQ6IHZhcigtLWJnLWxpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIHZhcigtLXQtYmFzZSksIGJveC1zaGFkb3cgdmFyKC0tdC1iYXNlKTtcbn1cbi5jb250YWN0LWluZm8taXRlbTpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLW1pZCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy14cyk7XG59XG4uY29udGFjdC1pbmZvLWl0ZW1fX2ljb24ge1xuICB3aWR0aDogMi43NXJlbTtcbiAgaGVpZ2h0OiAyLjc1cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC1zaHJpbms6IDA7XG59XG4uY29udGFjdC1pbmZvLWl0ZW1fX2ljb24gc3ZnIHsgd2lkdGg6IDEuMjVyZW07IGhlaWdodDogMS4yNXJlbTsgfVxuLmNvbnRhY3QtaW5mby1pdGVtX19pY29uLS1ibHVlIHsgYmFja2dyb3VuZDogdmFyKC0tYmx1ZS14bGlnaHQpOyBjb2xvcjogdmFyKC0tYmx1ZSk7IH1cbi5jb250YWN0LWluZm8taXRlbV9faWNvbi0tZ3JlZW4geyBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbi1saWdodCk7IGNvbG9yOiB2YXIoLS1ncmVlbik7IH1cbi5jb250YWN0LWluZm8taXRlbV9faWNvbi0tb3JhbmdlIHsgYmFja2dyb3VuZDogdmFyKC0tb3JhbmdlLWxpZ2h0KTsgY29sb3I6IHZhcigtLW9yYW5nZSk7IH1cblxuLmNvbnRhY3QtaW5mby1pdGVtX19sYWJlbCB7XG4gIGZvbnQtc2l6ZTogLjc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogLjA3ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbiAgbWFyZ2luLWJvdHRvbTogLjNyZW07XG59XG4uY29udGFjdC1pbmZvLWl0ZW1fX3ZhbHVlIHtcbiAgZm9udC1zaXplOiAuOTM3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG4uY29udGFjdC1pbmZvLWl0ZW1fX3ZhbHVlIGEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdC1mYXN0KTtcbn1cbi5jb250YWN0LWluZm8taXRlbV9fdmFsdWUgYTpob3ZlciB7IGNvbG9yOiB2YXIoLS1ibHVlKTsgfVxuXG4vKiBGb3JtICovXG4uY29udGFjdC1mb3JtLXdyYXAge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy14bCk7XG4gIHBhZGRpbmc6IDIuNXJlbTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LW1kKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTtcbn1cbi5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgZ2FwOiAxLjI1cmVtO1xufVxuLmZvcm0tZ3JvdXAgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBnYXA6IC41cmVtOyBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4uZm9ybS1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XG59XG4uZm9ybS1sYWJlbCBzcGFuIHsgY29sb3I6IHZhcigtLW9yYW5nZSk7IG1hcmdpbi1sZWZ0OiAuMnJlbTsgfVxuLmZvcm0taW5wdXQsXG4uZm9ybS10ZXh0YXJlYSB7XG4gIHBhZGRpbmc6IC43NXJlbSAxcmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQpO1xuICBib3JkZXI6IDEuNXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJnLWxpZ2h0KTtcbiAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XG4gIGZvbnQtc2l6ZTogLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXNhbnMpO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdC1iYXNlKSwgYm94LXNoYWRvdyB2YXIoLS10LWJhc2UpLCBiYWNrZ3JvdW5kIHZhcigtLXQtYmFzZSk7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmZvcm0taW5wdXQ6Zm9jdXMsXG4uZm9ybS10ZXh0YXJlYTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYmx1ZSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcbiAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMjYsODYsMjE5LC4xMik7XG59XG4uZm9ybS10ZXh0YXJlYSB7IHJlc2l6ZTogdmVydGljYWw7IG1pbi1oZWlnaHQ6IDEzMHB4OyBsaW5lLWhlaWdodDogMS42NTsgfVxuXG4vKiBGbGFzaCBtZXNzYWdlcyAqL1xuLmZsYXNoIHtcbiAgcGFkZGluZzogMXJlbSAxLjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQpO1xuICBmb250LXNpemU6IC45cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogLjc1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5mbGFzaCBzdmcgeyB3aWR0aDogMS4yNXJlbTsgaGVpZ2h0OiAxLjI1cmVtOyBmbGV4LXNocmluazogMDsgfVxuLmZsYXNoLS1zdWNjZXNzIHsgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4tbGlnaHQpOyBjb2xvcjogIzA2NWY0NjsgYm9yZGVyLWNvbG9yOiAjYTdmM2QwOyB9XG4uZmxhc2gtLWVycm9yICAgeyBiYWNrZ3JvdW5kOiAjZmVmMmYyOyBjb2xvcjogIzdmMWQxZDsgYm9yZGVyLWNvbG9yOiAjZmVjYWNhOyB9XG5cbi8qIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAgMTUuIEZPT1RFUlxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXG4uZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbmF2eSk7XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC42NSk7XG4gIHBhZGRpbmctdG9wOiA1cmVtO1xufVxuXG4uZm9vdGVyX19ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyZnIgMWZyIDFmciAxLjVmcjtcbiAgZ2FwOiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjA3KTtcbn1cblxuLmZvb3Rlcl9fYnJhbmQtbG9nbyB7IGhlaWdodDogNDRweDsgd2lkdGg6IGF1dG87IG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbi5mb290ZXJfX2JyYW5kLWRlc2Mge1xuICBmb250LXNpemU6IC45cmVtO1xuICBsaW5lLWhlaWdodDogMS43NTtcbiAgbWF4LXdpZHRoOiAyODBweDtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuLmZvb3Rlcl9fc29jaWFscyB7IGRpc3BsYXk6IGZsZXg7IGdhcDogLjYyNXJlbTsgfVxuLmZvb3Rlcl9fc29jaWFsLWxpbmsge1xuICB3aWR0aDogMi4yNXJlbTtcbiAgaGVpZ2h0OiAyLjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LC4wNyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjYpO1xuICB0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdC1iYXNlKTtcbn1cbi5mb290ZXJfX3NvY2lhbC1saW5rOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmx1ZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYmx1ZSk7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7XG59XG4uZm9vdGVyX19zb2NpYWwtbGluayBzdmcgeyB3aWR0aDogMXJlbTsgaGVpZ2h0OiAxcmVtOyB9XG5cbi5mb290ZXJfX2NvbC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogLjgxMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAuMWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuOSk7XG4gIG1hcmdpbi1ib3R0b206IDEuMzc1cmVtO1xufVxuXG4uZm9vdGVyX19saW5rcyB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGdhcDogLjYyNXJlbTsgfVxuLmZvb3Rlcl9fbGluayB7XG4gIGZvbnQtc2l6ZTogLjlyZW07XG4gIGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC41KTtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdC1mYXN0KSwgcGFkZGluZy1sZWZ0IHZhcigtLXQtZmFzdCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogLjVyZW07XG59XG4uZm9vdGVyX19saW5rOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMS41cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiB3aWR0aCB2YXIoLS10LWJhc2UpO1xuICBmbGV4LXNocmluazogMDtcbn1cbi5mb290ZXJfX2xpbms6aG92ZXIgeyBjb2xvcjogI2ZmZjsgcGFkZGluZy1sZWZ0OiAuMzc1cmVtOyB9XG4uZm9vdGVyX19saW5rOmhvdmVyOjpiZWZvcmUgeyB3aWR0aDogLjg3NXJlbTsgfVxuXG4uZm9vdGVyX19jb250YWN0LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAuODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAuODc1cmVtO1xuICBmb250LXNpemU6IC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG4uZm9vdGVyX19jb250YWN0LWljb24ge1xuICB3aWR0aDogMS44NzVyZW07XG4gIGhlaWdodDogMS44NzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsLjA3KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBtYXJnaW4tdG9wOiAuMXJlbTtcbn1cbi5mb290ZXJfX2NvbnRhY3QtaWNvbiBzdmcgeyB3aWR0aDogLjlyZW07IGhlaWdodDogLjlyZW07IGNvbG9yOiB2YXIoLS1ncmVlbik7IH1cblxuLmZvb3Rlcl9fYm90dG9tIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nLWJsb2NrOiAxLjc1cmVtO1xuICBnYXA6IDFyZW07XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5mb290ZXJfX2NvcHlyaWdodCB7IGZvbnQtc2l6ZTogLjgxMjVyZW07IH1cbi5mb290ZXJfX2xlZ2FsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxLjVyZW07XG59XG4uZm9vdGVyX19sZWdhbCBhIHtcbiAgZm9udC1zaXplOiAuODEyNXJlbTtcbiAgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjQpO1xuICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10LWZhc3QpO1xufVxuLmZvb3Rlcl9fbGVnYWwgYTpob3ZlciB7IGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC44KTsgfVxuXG4vKiDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgIDE2LiBTQ1JPTEwtVE8tVE9QXG7ilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgKi9cbi5zY3JvbGwtdG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDJyZW07XG4gIHJpZ2h0OiAxLjc1cmVtO1xuICB6LWluZGV4OiA1MDA7XG4gIHdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IDNyZW07XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1mdWxsKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tbmF2eSk7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LW1kKTtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMnB4KSBzY2FsZSguOSk7XG4gIHRyYW5zaXRpb246IGFsbCB2YXIoLS10LXNsb3cpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4xKTtcbn1cbi5zY3JvbGwtdG9wLnZpc2libGUge1xuICBvcGFjaXR5OiAxO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7XG59XG4uc2Nyb2xsLXRvcDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJsdWUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCkgc2NhbGUoMS4wNSk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1ibHVlKTtcbn1cbi5zY3JvbGwtdG9wIHN2ZyB7IHdpZHRoOiAxLjI1cmVtOyBoZWlnaHQ6IDEuMjVyZW07IH1cblxuLyog4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gICAxNy4gUEFHRSBIRVJPIChpbm5lciBwYWdlcylcbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xuLnBhZ2UtaGVybyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLW5hdnkpIDAlLCB2YXIoLS1uYXZ5LW1pZCkgMTAwJSk7XG4gIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLW5hdmJhci1oKSArIDMuNXJlbSk7XG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ucGFnZS1oZXJvOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSA4MCUgMTAwJSBhdCA4MCUgNTAlLCByZ2JhKDI2LDg2LDIxOSwuMTUpIDAlLCB0cmFuc3BhcmVudCA2MCUpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5wYWdlLWhlcm9fX2NvbnRlbnQgeyBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDE7IH1cbi5icmVhZGNydW1iIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAuNXJlbTtcbiAgZm9udC1zaXplOiAuODc1cmVtO1xuICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNSk7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG4uYnJlYWRjcnVtYiBhIHsgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjUpOyB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10LWZhc3QpOyB9XG4uYnJlYWRjcnVtYiBhOmhvdmVyIHsgY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjkpOyB9XG4uYnJlYWRjcnVtYiBzdmcgeyB3aWR0aDogLjg3NXJlbTsgaGVpZ2h0OiAuODc1cmVtOyB9XG4ucGFnZS1oZXJvX190aXRsZSB7IGNvbG9yOiAjZmZmOyBmb250LXNpemU6IGNsYW1wKDJyZW0sIDR2dywgM3JlbSk7IGZvbnQtd2VpZ2h0OiA4MDA7IG1hcmdpbi1ib3R0b206IC44NzVyZW07IH1cbi5wYWdlLWhlcm9fX2Rlc2MgeyBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNik7IG1heC13aWR0aDogNTQwcHg7IGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG5cbi8qIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAgMTguIEFDVElWSVRZIFNIT1cgUEFHRVxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXG4uc2hvdy1sYXlvdXQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAzNDBweDtcbiAgZ2FwOiAzcmVtO1xuICBhbGlnbi1pdGVtczogc3RhcnQ7XG59XG5cbi5jYXJvdXNlbCB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy14bCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6IHZhcigtLWJnLW1pZCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1tZCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jYXJvdXNlbF9fdHJhY2std3JhcCB7IG92ZXJmbG93OiBoaWRkZW47IH1cbi5jYXJvdXNlbF9fdHJhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzIHZhcigtLWVhc2UpO1xufVxuLmNhcm91c2VsX19zbGlkZSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYXNwZWN0LXJhdGlvOiAxNi85O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctbWlkKTtcbn1cbi5jYXJvdXNlbF9fc2xpZGUgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uY2Fyb3VzZWxfX2J0biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDIuNXJlbTsgaGVpZ2h0OiAyLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuNDUpO1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdC1iYXNlKSwgdHJhbnNmb3JtIHZhcigtLXQtYmFzZSk7XG4gIHotaW5kZXg6IDI7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjE1KTtcbn1cbi5jYXJvdXNlbF9fYnRuOmhvdmVyIHsgYmFja2dyb3VuZDogdmFyKC0tYmx1ZSk7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxLjEpOyB9XG4uY2Fyb3VzZWxfX2J0bi0tcHJldiB7IGxlZnQ6IC44NzVyZW07IH1cbi5jYXJvdXNlbF9fYnRuLS1uZXh0IHsgcmlnaHQ6IC44NzVyZW07IH1cbi5jYXJvdXNlbF9fYnRuIHN2ZyB7IHdpZHRoOiAxLjEyNXJlbTsgaGVpZ2h0OiAxLjEyNXJlbTsgfVxuLmNhcm91c2VsX19kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC44NzVyZW07IGxlZnQ6IDUwJTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBkaXNwbGF5OiBmbGV4OyBnYXA6IC41cmVtOyB6LWluZGV4OiAyO1xufVxuLmNhcm91c2VsX19kb3Qge1xuICB3aWR0aDogLjVyZW07IGhlaWdodDogLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwuNCk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdC1iYXNlKSwgd2lkdGggdmFyKC0tdC1iYXNlKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IG5vbmU7XG59XG4uY2Fyb3VzZWxfX2RvdC5hY3RpdmUgeyBiYWNrZ3JvdW5kOiAjZmZmOyB3aWR0aDogMS4yNXJlbTsgYm9yZGVyLXJhZGl1czogNHB4OyB9XG4uY2Fyb3VzZWxfX2NvdW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLjg3NXJlbTsgcmlnaHQ6IC44NzVyZW07XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsLjUpO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IC4yNXJlbSAuNjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtZnVsbCk7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5zaG93LWNvbnRlbnQgeyBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7IGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy14bCk7IHBhZGRpbmc6IDIuNXJlbTsgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNtKTsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTsgbWFyZ2luLXRvcDogMnJlbTsgfVxuLnNob3ctY29udGVudF9fdGl0bGUgeyBmb250LXNpemU6IDEuMTI1cmVtOyBmb250LXdlaWdodDogNzAwOyBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTsgcGFkZGluZy1ib3R0b206IDEuMjVyZW07IGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1ib3JkZXIpOyBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbi5zaG93LWNvbnRlbnRfX2JvZHkgeyBmb250LXNpemU6IC45NjI1cmVtOyBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpOyBsaW5lLWhlaWdodDogMS44OyB3aGl0ZS1zcGFjZTogcHJlLWxpbmU7IH1cblxuLnNob3ctc2lkZWJhciB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGdhcDogMS41cmVtOyB9XG4uc2lkZWJhci1jYXJkIHsgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpOyBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbGcpOyBwYWRkaW5nOiAxLjVyZW07IGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zbSk7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7IH1cbi5zaWRlYmFyLWNhcmRfX3RpdGxlIHsgZm9udC1zaXplOiAuODc1cmVtOyBmb250LXdlaWdodDogNzAwOyBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTsgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgcGFkZGluZy1ib3R0b206IC44NzVyZW07IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIpOyB9XG4uc2lkZWJhci1tZXRhIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAuODc1cmVtOyB9XG4uc2lkZWJhci1tZXRhLWl0ZW0geyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgZ2FwOiAuODc1cmVtOyB9XG4uc2lkZWJhci1tZXRhLWl0ZW1fX2ljb24geyB3aWR0aDogMi4yNXJlbTsgaGVpZ2h0OiAyLjI1cmVtOyBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pOyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgZmxleC1zaHJpbms6IDA7IH1cbi5zaWRlYmFyLW1ldGEtaXRlbV9faWNvbiBzdmcgeyB3aWR0aDogMS4xcmVtOyBoZWlnaHQ6IDEuMXJlbTsgfVxuLnNpZGViYXItbWV0YS1pdGVtX19pY29uLS1ibHVlIHsgYmFja2dyb3VuZDogdmFyKC0tYmx1ZS14bGlnaHQpOyBjb2xvcjogdmFyKC0tYmx1ZSk7IH1cbi5zaWRlYmFyLW1ldGEtaXRlbV9faWNvbi0tZ3JlZW4geyBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbi1saWdodCk7IGNvbG9yOiB2YXIoLS1ncmVlbik7IH1cbi5zaWRlYmFyLW1ldGEtaXRlbV9fbGFiZWwgeyBmb250LXNpemU6IC43NXJlbTsgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpOyBmb250LXdlaWdodDogNjAwOyBsZXR0ZXItc3BhY2luZzogLjA0ZW07IH1cbi5zaWRlYmFyLW1ldGEtaXRlbV9fdmFsdWUgeyBmb250LXNpemU6IC45cmVtOyBmb250LXdlaWdodDogNjAwOyBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTsgbWFyZ2luLXRvcDogLjFyZW07IH1cblxuLnJlbGF0ZWQtaXRlbSB7IGRpc3BsYXk6IGZsZXg7IGdhcDogLjg3NXJlbTsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IHBhZGRpbmc6IC43NXJlbSAwOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB0cmFuc2l0aW9uOiBwYWRkaW5nLWxlZnQgdmFyKC0tdC1iYXNlKTsgfVxuLnJlbGF0ZWQtaXRlbTpsYXN0LWNoaWxkIHsgYm9yZGVyLWJvdHRvbTogbm9uZTsgcGFkZGluZy1ib3R0b206IDA7IH1cbi5yZWxhdGVkLWl0ZW06aG92ZXIgeyBwYWRkaW5nLWxlZnQ6IC4zNzVyZW07IH1cbi5yZWxhdGVkLWl0ZW1fX2ltZyB7IHdpZHRoOiAzLjVyZW07IGhlaWdodDogMy41cmVtOyBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pOyBvdmVyZmxvdzogaGlkZGVuOyBmbGV4LXNocmluazogMDsgYmFja2dyb3VuZDogdmFyKC0tYmctbWlkKTsgfVxuLnJlbGF0ZWQtaXRlbV9faW1nIGltZyB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IG9iamVjdC1maXQ6IGNvdmVyOyB9XG4ucmVsYXRlZC1pdGVtX190aXRsZSB7IGZvbnQtc2l6ZTogLjg3NXJlbTsgZm9udC13ZWlnaHQ6IDYwMDsgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7IGxpbmUtaGVpZ2h0OiAxLjM1OyBtYXJnaW4tYm90dG9tOiAuMjVyZW07IHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXQtZmFzdCk7IH1cbi5yZWxhdGVkLWl0ZW06aG92ZXIgLnJlbGF0ZWQtaXRlbV9fdGl0bGUgeyBjb2xvcjogdmFyKC0tYmx1ZSk7IH1cbi5yZWxhdGVkLWl0ZW1fX2RhdGUgeyBmb250LXNpemU6IC43NXJlbTsgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpOyB9XG5cbi8qIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAgMTkuIEZPUk1TIChDcmVhdGUgLyBFZGl0KVxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXG4uYWRtaW4tbGF5b3V0IHsgcGFkZGluZy10b3A6IGNhbGModmFyKC0tbmF2YmFyLWgpICsgM3JlbSk7IHBhZGRpbmctYm90dG9tOiA1cmVtOyBtaW4taGVpZ2h0OiAxMDBzdmg7IGJhY2tncm91bmQ6IHZhcigtLWJnLWxpZ2h0KTsgfVxuLmFkbWluLWNhcmQgeyBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7IGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy14bCk7IHBhZGRpbmc6IDIuNXJlbTsgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNtKTsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTsgbWF4LXdpZHRoOiA3NjBweDsgbWFyZ2luLWlubGluZTogYXV0bzsgfVxuLmFkbWluLWNhcmQgKyAuYWRtaW4tY2FyZCB7IG1hcmdpbi10b3A6IDEuNXJlbTsgfVxuXG4uZHJvcHpvbmUge1xuICBib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tYm9yZGVyLW1pZCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7XG4gIHBhZGRpbmc6IDIuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCB2YXIoLS10LWJhc2UpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1saWdodCk7XG59XG4uZHJvcHpvbmU6aG92ZXIsXG4uZHJvcHpvbmUuZHJhZy1vdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ibHVlKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmx1ZS14bGlnaHQpO1xufVxuLmRyb3B6b25lX19pY29uIHsgd2lkdGg6IDNyZW07IGhlaWdodDogM3JlbTsgbWFyZ2luLWlubGluZTogYXV0bzsgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpOyBvcGFjaXR5OiAuNTsgbWFyZ2luLWJvdHRvbTogLjg3NXJlbTsgfVxuLmRyb3B6b25lX190ZXh0IHsgZm9udC1zaXplOiAuOTM3NXJlbTsgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTsgbWFyZ2luLWJvdHRvbTogLjI1cmVtOyB9XG4uZHJvcHpvbmVfX3RleHQgc3BhbiB7IGNvbG9yOiB2YXIoLS1ibHVlKTsgZm9udC13ZWlnaHQ6IDYwMDsgfVxuLmRyb3B6b25lX19oaW50IHsgZm9udC1zaXplOiAuODEyNXJlbTsgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpOyB9XG5cbi5maWxlLXByZXZpZXctZ3JpZCB7IGRpc3BsYXk6IGdyaWQ7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDdyZW0sIDFmcikpOyBnYXA6IC43NXJlbTsgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuLmZpbGUtcHJldmlldy1pdGVtIHsgYXNwZWN0LXJhdGlvOiAxOyBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQpOyBvdmVyZmxvdzogaGlkZGVuOyBwb3NpdGlvbjogcmVsYXRpdmU7IGJhY2tncm91bmQ6IHZhcigtLWJnLW1pZCk7IH1cbi5maWxlLXByZXZpZXctaXRlbSBpbWcgeyB3aWR0aDogMTAwJTsgaGVpZ2h0OiAxMDAlOyBvYmplY3QtZml0OiBjb3ZlcjsgfVxuXG4uZXhpc3RpbmctcGhvdG9zLWdyaWQgeyBkaXNwbGF5OiBncmlkOyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCg5cmVtLCAxZnIpKTsgZ2FwOiAuODc1cmVtOyB9XG4uZXhpc3RpbmctcGhvdG8geyBwb3NpdGlvbjogcmVsYXRpdmU7IGFzcGVjdC1yYXRpbzogMTsgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTsgb3ZlcmZsb3c6IGhpZGRlbjsgYmFja2dyb3VuZDogdmFyKC0tYmctbWlkKTsgfVxuLmV4aXN0aW5nLXBob3RvIGltZyB7IHdpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IG9iamVjdC1maXQ6IGNvdmVyOyB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXQtYmFzZSk7IH1cbi5leGlzdGluZy1waG90b19fZGVsZXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC41cmVtOyByaWdodDogLjVyZW07XG4gIHdpZHRoOiAycmVtOyBoZWlnaHQ6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuNjUpO1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdC1iYXNlKSwgYmFja2dyb3VuZCB2YXIoLS10LWJhc2UpO1xufVxuLmV4aXN0aW5nLXBob3RvX19kZWxldGUgc3ZnIHsgd2lkdGg6IC44NzVyZW07IGhlaWdodDogLjg3NXJlbTsgfVxuLmV4aXN0aW5nLXBob3RvOmhvdmVyIC5leGlzdGluZy1waG90b19fZGVsZXRlIHsgb3BhY2l0eTogMTsgfVxuLmV4aXN0aW5nLXBob3RvX19kZWxldGU6aG92ZXIgeyBiYWNrZ3JvdW5kOiAjZGMyNjI2OyB9XG5cbi8qIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuICAgMjAuIFNDUk9MTCBSRVZFQUwgQU5JTUFUSU9OXG7ilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgKi9cbi5yZXZlYWwge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjhweCk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjY1cyB2YXIoLS1lYXNlKSwgdHJhbnNmb3JtIC42NXMgdmFyKC0tZWFzZSk7XG59XG4ucmV2ZWFsLnJldmVhbGVkIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuLnJldmVhbC0tZGVsYXktMSB7IHRyYW5zaXRpb24tZGVsYXk6IC4xczsgfVxuLnJldmVhbC0tZGVsYXktMiB7IHRyYW5zaXRpb24tZGVsYXk6IC4yczsgfVxuLnJldmVhbC0tZGVsYXktMyB7IHRyYW5zaXRpb24tZGVsYXk6IC4zczsgfVxuLnJldmVhbC0tZGVsYXktNCB7IHRyYW5zaXRpb24tZGVsYXk6IC40czsgfVxuXG4vKiDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbiAgIDIxLiBQQUdFIExPQURJTkdcbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xuLnBhZ2UtbG9hZGluZyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaW5zZXQ6IDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLW5hdnkpO1xuICB6LWluZGV4OiA5OTk5O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMsIHZpc2liaWxpdHkgLjVzO1xufVxuLnBhZ2UtbG9hZGluZy5oaWRlIHsgb3BhY2l0eTogMDsgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4ucGFnZS1sb2FkaW5nX19sb2dvIHsgaGVpZ2h0OiA1NnB4OyBhbmltYXRpb246IGxvZ29QdWxzZSAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlOyB9XG5Aa2V5ZnJhbWVzIGxvZ29QdWxzZSB7XG4gIDAlLDEwMCUgeyBvcGFjaXR5OiAuNjsgdHJhbnNmb3JtOiBzY2FsZSguOTcpOyB9XG4gIDUwJSAgICAgIHsgb3BhY2l0eTogMTsgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbn1cblxuLyog4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gICAyMi4gTUFQIFNFQ1RJT05cbuKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xuLm1hcC1zZWN0aW9uIHsgaGVpZ2h0OiAyMnJlbTsgb3ZlcmZsb3c6IGhpZGRlbjsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4ubWFwLXNlY3Rpb24gaWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7IGhlaWdodDogMTAwJTsgYm9yZGVyOiAwO1xuICBmaWx0ZXI6IGdyYXlzY2FsZSguOCkgY29udHJhc3QoLjkpO1xuICB0cmFuc2l0aW9uOiBmaWx0ZXIgdmFyKC0tdC1zbG93KTtcbn1cbi5tYXAtc2VjdGlvbjpob3ZlciBpZnJhbWUgeyBmaWx0ZXI6IGdyYXlzY2FsZSguMikgY29udHJhc3QoMSk7IH1cblxuLyog4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXG4gICAyMy4gUkVTUE9OU0lWRVxu4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXG5AbWVkaWEgKG1heC13aWR0aDogMTEwMHB4KSB7XG4gIC5hYm91dF9fZ3JpZCB7IGdhcDogMi41cmVtOyB9XG4gIC5mb290ZXJfX2dyaWQgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7IH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5uYXZiYXJfX25hdiwgLm5hdmJhcl9fYWN0aW9ucyB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLm5hdmJhcl9fYnVyZ2VyIHsgZGlzcGxheTogZmxleDsgfVxuICAuc3RhdHMtcmliYm9uX19ncmlkIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTsgfVxuICAuYWJvdXRfX2dyaWQgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsgZ2FwOiAyLjVyZW07IH1cbiAgLmFib3V0X19oZWFkZXIgeyBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cbiAgLmZyYW5jZV9fY2FyZHMgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsgZ2FwOiAxLjI1cmVtOyB9XG4gIC5hY3Rpdml0eS1jYXJkcyB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7IH1cbiAgLnRlYW1fX2dyaWQgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyB9XG4gIC5jb250YWN0X19ncmlkIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbiAgLnNob3ctbGF5b3V0IHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbiAgLnNob3ctc2lkZWJhciB7IGRpc3BsYXk6IGdyaWQ7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjsgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgOnJvb3QgeyAtLW5hdmJhci1oOiA2OHB4OyB9XG4gIC5zdGF0cy1yaWJib25fX2dyaWQgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpOyBnYXA6IDFyZW07IH1cbiAgLnN0YXQtaXRlbSArIC5zdGF0LWl0ZW06OmJlZm9yZSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLmFjdGl2aXR5LWNhcmRzIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7IH1cbiAgLnRlYW1fX2dyaWQgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsgbWF4LXdpZHRoOiAzMjBweDsgfVxuICAuZnJhbmNlX19jYXJkcyB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyB9XG4gIC5mb290ZXJfX2dyaWQgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsgZ2FwOiAycmVtOyB9XG4gIC5jb250YWN0LWZvcm0td3JhcCB7IHBhZGRpbmc6IDEuNXJlbTsgfVxuICAuZm9ybS1yb3cgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjsgfVxuICAuY3RhLWJhbmRfX2J0bnMgeyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5zaG93LXNpZGViYXIgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5hZG1pbi1jYXJkIHsgcGFkZGluZzogMS41cmVtOyB9XG4gIC5tb2RhbCB7IGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7IG1heC1oZWlnaHQ6IDk1c3ZoOyB9XG4gIC5tb2RhbC1iYWNrZHJvcCB7IHBhZGRpbmc6IC43NXJlbTsgfVxuICAubW9kYWxfX2JvZHkgeyBwYWRkaW5nOiAxLjVyZW07IH1cbiAgLm1vZGFsX19mb290ZXIgeyBwYWRkaW5nOiAxcmVtIDEuNXJlbSAxLjVyZW07IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbn1cbiJdLCJuYW1lcyI6W10sInNvdXJjZVJvb3QiOiIifQ==*/