@charset "UTF-8";
:root {
  --color-bg: #f7f3ee;
  --color-surface: #ffffff;
  --color-surface-alt: #f2ece4;
  --color-border: #e2d9cf;
  --color-border-light: #efe7de;
  --color-text: #2b241d;
  --color-text-muted: #7e7366;
  --color-primary: #3f6b5b;
  --color-primary-strong: #325648;
  --color-secondary: #9b7b56;
  --color-success: #4f7a68;
  --color-danger: #b85b56;
  --color-warning: #c2a04d;
  --color-info: #6f8aa5;
  --color-overlay: rgba(40, 32, 24, 0.4);
  --color-correct: #4f7a68;
  --color-correct-text: #f7f3ee;
  --color-present: #c2a04d;
  --color-present-text: #3a2a14;
  --color-absent: #d1c8bd;
  --color-absent-text: #695f55;
  --color-absent-border: #c4bbaf;
  --color-key: #e8e1d8;
  --color-key-hover: #ded6cc;
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 3rem;
  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --shadow-soft: 0 10px 30px rgba(58, 46, 33, 0.08);
  --shadow-strong: 0 18px 50px rgba(58, 46, 33, 0.16);
  --font-base: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --font-display: "Fraunces", "Georgia", "Times New Roman", serif;
  --font-size-base: 16px;
  --font-size-sm: 0.9rem;
  --font-size-lg: 1.15rem;
}

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

html {
  font-size: var(--font-size-base);
  background-color: var(--color-bg);
  touch-action: manipulation;
}

body {
  margin: 0;
  min-height: 100vh;
  font-family: var(--font-base);
  background-color: var(--color-bg);
  color: var(--color-text);
  line-height: 1.5;
}

body.turbo-native-body {
  padding-bottom: calc(72px + env(safe-area-inset-bottom));
}

h1,
h2,
h3,
h4,
.heading-lg,
.heading-md,
.heading-sm {
  font-family: var(--font-display);
  letter-spacing: 0.01em;
}

body.modal-open {
  overflow: hidden;
}

a {
  color: var(--color-secondary);
  text-decoration: none;
  transition: color 0.2s ease;
}
a:hover {
  color: var(--color-primary);
}

img {
  max-width: 100%;
  display: block;
}

button,
input,
select,
textarea {
  font-family: inherit;
}

.app-container, .container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--space-4);
}
@media (max-width: 768px) {
  .app-container, .container {
    padding: 0 var(--space-3);
  }
}
@media (max-width: 480px) {
  .app-container, .container {
    padding: 0 var(--space-2);
  }
}

.panel {
  background-color: var(--color-surface);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-soft);
  border: 1px solid var(--color-border);
  padding: var(--space-5);
}

.panel-header {
  margin-bottom: var(--space-4);
  border-bottom: 1px solid var(--color-border-light);
  padding-bottom: var(--space-3);
}

.panel-body {
  padding-top: var(--space-3);
}

.result-page {
  min-height: 100vh;
  min-height: 100dvh;
  overflow: hidden;
  position: relative;
  color: #fff;
}

.result-page--wordle {
  --result-accent: #f5d878;
  --result-card-bg: rgba(238, 255, 248, 0.12);
  --result-card-border: rgba(255, 255, 255, 0.2);
  background: linear-gradient(165deg, #3f6e5a 0%, #23463a 54%, #122b26 100%);
}

.result-page--bee {
  --result-accent: #ffd27a;
  --result-card-bg: rgba(255, 240, 218, 0.12);
  --result-card-border: rgba(255, 255, 255, 0.22);
  background: linear-gradient(165deg, #b97f2b 0%, #7f4719 54%, #502a0c 100%);
}

.result-page--connections {
  --result-accent: #9bb1ff;
  --result-card-bg: rgba(227, 232, 255, 0.13);
  --result-card-border: rgba(255, 255, 255, 0.2);
  background: linear-gradient(165deg, #4f61b2 0%, #3b356f 54%, #231d49 100%);
}

.result-page--sudoku {
  --result-accent: #8fe3ea;
  --result-card-bg: rgba(220, 252, 255, 0.12);
  --result-card-border: rgba(255, 255, 255, 0.2);
  background: linear-gradient(165deg, #1c767b 0%, #103952 54%, #061a2c 100%);
}

.result-page::before,
.result-page::after {
  content: "";
  position: absolute;
  border-radius: 999px;
  pointer-events: none;
  z-index: 0;
}

.result-page::before {
  width: clamp(280px, 58vw, 420px);
  height: clamp(280px, 58vw, 420px);
  top: clamp(-150px, -16vw, -70px);
  left: clamp(-190px, -22vw, -90px);
  background: rgba(255, 255, 255, 0.11);
}

.result-page::after {
  width: clamp(200px, 40vw, 320px);
  height: clamp(200px, 40vw, 320px);
  right: clamp(-90px, -12vw, -36px);
  bottom: clamp(24px, 5vw, 74px);
  background: rgba(255, 255, 255, 0.06);
}

.result-shell {
  position: relative;
  z-index: 1;
  height: 100%;
  display: grid;
  grid-template-rows: auto auto minmax(72px, 1fr) auto auto auto;
  gap: clamp(8px, 1.5vh, 16px);
  padding: calc(env(safe-area-inset-top, 0) + 10px) clamp(14px, 4vw, 24px) calc(env(safe-area-inset-bottom, 0) + 12px);
}

.result-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
}

.result-date {
  font-size: clamp(0.86rem, 3.2vw, 1rem);
  color: rgba(255, 255, 255, 0.86);
  font-weight: 600;
  letter-spacing: 0.01em;
}

.result-close {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.26);
  background: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.94);
  display: inline-grid;
  place-items: center;
  text-decoration: none;
  font-size: 1rem;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: background 0.15s ease;
}
.result-close:hover, .result-close:active {
  background: rgba(255, 255, 255, 0.2);
}

.result-header {
  display: grid;
  gap: var(--space-2);
  max-width: 100%;
}

.result-status-badge {
  width: -moz-fit-content;
  width: fit-content;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0.32rem 0.72rem;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.27);
  background: rgba(255, 255, 255, 0.13);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.result-title {
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 8.6vw, 3.35rem);
  line-height: 0.98;
  letter-spacing: -0.02em;
  text-wrap: balance;
}

.result-subtitle {
  margin: 0;
  font-size: 0.72rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.66);
}

.result-visual {
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.result-wordle-grid {
  display: grid;
  gap: 5px;
}

.result-wordle-row {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 5px;
}

.result-wordle-tile {
  width: clamp(25px, 6.2vw, 34px);
  aspect-ratio: 1;
  border-radius: 7px;
  border: 1px solid rgba(255, 255, 255, 0.17);
  background: rgba(255, 255, 255, 0.08);
}
.result-wordle-tile.is-correct {
  background: #5a8f74;
  border-color: rgba(255, 255, 255, 0.35);
}
.result-wordle-tile.is-present {
  background: #b9923a;
  border-color: rgba(255, 255, 255, 0.32);
}
.result-wordle-tile.is-absent {
  background: rgba(255, 255, 255, 0.2);
}
.result-wordle-tile.is-empty {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.1);
}

.result-bee-visual {
  width: min(320px, 86vw);
  display: grid;
  gap: var(--space-2);
  justify-items: center;
}

.result-bee-icon {
  font-size: clamp(2.4rem, 8vw, 3.35rem);
  line-height: 1;
}

.result-bee-rank {
  font-family: var(--font-display);
  font-size: clamp(1rem, 4.1vw, 1.35rem);
  line-height: 1.06;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.92);
}

.result-bee-bar-track {
  width: 100%;
  height: 12px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.15);
  overflow: hidden;
}

.result-bee-bar-fill {
  height: 100%;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.78);
}

.result-bee-progress-label {
  font-size: 0.74rem;
  text-align: center;
  letter-spacing: 0.03em;
  color: rgba(255, 255, 255, 0.76);
}

.result-connections-visual {
  width: min(340px, 88vw);
  display: grid;
  gap: var(--space-2);
  justify-items: center;
}

.result-connections-count {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 6vw, 2.15rem);
  line-height: 1;
  color: #fff;
}

.result-connections-label {
  font-size: 0.72rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.68);
}

.result-conn-groups {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-2);
}

.result-conn-group {
  min-height: 54px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.36);
  display: grid;
  place-items: center;
  font-size: 0.66rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.9);
}
.result-conn-group.is-unsolved {
  opacity: 0.35;
}
.result-conn-group.cat-1 {
  background: rgba(245, 214, 100, 0.33);
}
.result-conn-group.cat-2 {
  background: rgba(100, 185, 125, 0.33);
}
.result-conn-group.cat-3 {
  background: rgba(110, 155, 220, 0.33);
}
.result-conn-group.cat-4 {
  background: rgba(195, 100, 110, 0.33);
}

.result-sudoku-grid {
  width: min(224px, 58vw);
  aspect-ratio: 1;
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  gap: 2px;
}

.result-sudoku-cell {
  border-radius: 2px;
  border: 0;
  background: rgba(255, 255, 255, 0.08);
}
.result-sudoku-cell.is-given {
  background: rgba(255, 255, 255, 0.32);
}
.result-sudoku-cell.is-solved {
  background: rgba(255, 255, 255, 0.17);
}
.result-sudoku-cell.box-right {
  border-right: 2px solid rgba(255, 255, 255, 0.2);
}
.result-sudoku-cell.box-bottom {
  border-bottom: 2px solid rgba(255, 255, 255, 0.2);
}

.result-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(8px, 1.2vh, 12px);
}

.result-stat {
  min-height: clamp(68px, 10.4vh, 88px);
  border-radius: 16px;
  border: 1px solid var(--result-card-border);
  background: var(--result-card-bg);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: clamp(8px, 1.5vh, 14px) 8px;
}

.result-stat__label {
  font-size: 0.63rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.68);
}

.result-stat__value {
  font-family: var(--font-display);
  font-size: clamp(1.65rem, 7.2vw, 2.5rem);
  line-height: 0.95;
  color: #fff;
  text-wrap: balance;
}
.result-stat__value.is-xp {
  color: var(--result-accent);
}

.result-stat__value--small {
  font-size: clamp(1.05rem, 4.8vw, 1.75rem);
}

.result-actions {
  display: grid;
}

.result-share-btn,
.result-detail-btn {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.34);
  background: rgba(255, 255, 255, 0.17);
  padding: clamp(0.72rem, 2.2vh, 0.88rem) 1rem;
  color: #fff;
  font-size: clamp(0.95rem, 4vw, 1.12rem);
  font-weight: 700;
  text-decoration: none;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: background 0.15s ease;
}
.result-share-btn:hover, .result-share-btn:active,
.result-detail-btn:hover,
.result-detail-btn:active {
  background: rgba(255, 255, 255, 0.25);
}

.result-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
}

.result-footer-url {
  font-size: clamp(0.95rem, 3.5vw, 1.08rem);
  font-weight: 700;
  color: rgba(255, 255, 255, 0.85);
}

.result-xp-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.32);
  background: rgba(255, 255, 255, 0.12);
  color: var(--result-accent);
  padding: 0.28rem 0.7rem;
  font-size: clamp(0.72rem, 3vw, 0.86rem);
  font-weight: 800;
  letter-spacing: 0.01em;
  white-space: nowrap;
}

@media (max-height: 760px) {
  .result-shell {
    gap: 8px;
    grid-template-rows: auto auto minmax(50px, 1fr) auto auto auto;
  }
  .result-title {
    font-size: clamp(1.82rem, 8.4vw, 2.72rem);
  }
  .result-wordle-tile {
    width: clamp(21px, 5.4vw, 29px);
  }
  .result-stat {
    min-height: 64px;
  }
}
@media (max-height: 680px) {
  .result-shell {
    padding-top: calc(env(safe-area-inset-top, 0) + 6px);
    padding-bottom: calc(env(safe-area-inset-bottom, 0) + 8px);
  }
  .result-close {
    width: 36px;
    height: 36px;
  }
  .result-subtitle {
    display: none;
  }
  .result-bee-icon {
    font-size: 2rem;
  }
  .result-sudoku-grid {
    width: min(178px, 50vw);
  }
  .result-stat__value {
    font-size: clamp(1.32rem, 6.2vw, 2rem);
  }
}
.result-page--wordle {
  --result-ink: #0b0b0a;
  --result-paper: #fffdf8;
  --result-line: rgba(11, 11, 10, 0.18);
  --result-muted: #5b5650;
  --result-mint: #67b28b;
  --result-mint-bright: #78d2c9;
  --result-mint-soft: #dfeee5;
  --result-yellow: #f4cf4f;
  --result-yellow-soft: #fff0b9;
  --result-lavender: #9276c8;
  --result-lavender-soft: #ece5f5;
  --result-soft: #f4f0e8;
  --result-card-bg: #fff;
  --result-card-border: var(--result-line);
  --result-accent: var(--result-yellow);
  color: var(--result-ink);
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--result-paper);
  background-size: 34px 34px;
}

.result-page--wordle::before,
.result-page--wordle::after {
  content: none;
}

.result-page--wordle .result-shell {
  max-width: 430px;
  min-height: 100vh;
  min-height: 100dvh;
  height: auto;
  margin: 0 auto;
  grid-template-rows: auto auto auto auto auto;
  gap: clamp(8px, 1.35vh, 14px);
  padding: calc(env(safe-area-inset-top, 0) + 4px) clamp(16px, 4.5vw, 24px) calc(env(safe-area-inset-bottom, 0) + 14px);
}

.result-page--wordle .result-topbar {
  position: absolute;
  top: calc(env(safe-area-inset-top, 0) + 4px);
  right: clamp(16px, 4.5vw, 24px);
  z-index: 2;
  align-items: center;
  justify-content: flex-end;
}

.result-page--wordle .result-date {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 0.9rem;
  border: 1px solid var(--result-line);
  border-radius: 999px;
  background: #fff;
  color: var(--result-ink);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  line-height: 1;
  text-transform: uppercase;
}

.result-page--wordle .result-close {
  width: 40px;
  height: 40px;
  border: 1px solid var(--result-ink);
  background: #fff;
  color: var(--result-ink);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.result-page--wordle .result-close:hover,
.result-page--wordle .result-close:active {
  background: var(--result-soft);
}

.result-page--wordle .result-header {
  gap: 0.55rem;
}

.result-page--wordle .result-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem;
}

.result-page--wordle .result-status-badge {
  min-height: 30px;
  padding: 0 0.78rem;
  border: 1px solid var(--result-line);
  border-radius: 999px;
  background: var(--result-mint-soft);
  color: var(--result-ink);
  font-size: 0.74rem;
  font-weight: 900;
  letter-spacing: 0;
}

.result-page--wordle .result-title-row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
}

.result-page--wordle .result-game-icon {
  width: clamp(58px, 14vw, 72px);
  height: clamp(58px, 14vw, 72px);
  flex: 0 0 auto;
  box-sizing: border-box;
  padding: 0.55rem;
  border: 1px solid var(--result-line);
  border-radius: 18px;
  background: var(--result-mint-soft);
  -o-object-fit: contain;
     object-fit: contain;
}

.result-page--wordle .result-title {
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: clamp(3.5rem, 15vw, 5rem);
  font-weight: 800;
  line-height: 0.86;
  letter-spacing: 0;
}

.result-page--wordle .result-title-dot {
  color: var(--result-mint-bright);
}

.result-page--wordle .result-subtitle {
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 0.2rem;
  padding-bottom: 0.18rem;
  border-bottom: 0.28rem solid var(--result-mint-bright);
  color: var(--result-ink);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1.35;
}

.result-page--wordle .result-visual {
  position: relative;
  align-items: center;
  min-height: 0;
  padding: 0.35rem 0;
  border: 1px solid var(--result-line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(11, 11, 10, 0.1);
}

.result-page--wordle .result-visual::before,
.result-page--wordle .result-visual::after {
  content: none;
}

.result-page--wordle .result-wordle-grid {
  position: relative;
  z-index: 1;
  gap: 6px;
  padding: 0.25rem;
  border-radius: 18px;
}

.result-page--wordle .result-wordle-row {
  gap: 6px;
}

.result-page--wordle .result-wordle-tile {
  width: clamp(29px, 8.1vw, 42px);
  border: 2px solid var(--result-ink);
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 3px 0 rgba(11, 11, 10, 0.1);
}

.result-page--wordle .result-wordle-tile.is-correct {
  border-color: var(--result-ink);
  background: var(--result-mint);
}

.result-page--wordle .result-wordle-tile.is-present {
  border-color: var(--result-ink);
  background: var(--result-yellow);
}

.result-page--wordle .result-wordle-tile.is-absent {
  border-color: var(--result-ink);
  background: #77716a;
}

.result-page--wordle .result-wordle-tile.is-empty {
  border-color: var(--result-line);
  background: #fff;
  box-shadow: none;
}

.result-page--wordle .result-stats {
  gap: 0.6rem;
}

.result-page--wordle .result-actions {
  justify-items: center;
  margin-top: clamp(12px, 2vh, 20px);
}

.result-page--wordle .result-stat {
  min-height: 72px;
  padding: 0.72rem 0.65rem;
  border: 1px solid var(--result-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.result-page--wordle .result-stat__label {
  color: var(--result-muted);
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.12em;
}

.result-page--wordle .result-stat__value {
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: clamp(1.65rem, 7vw, 2.25rem);
  font-weight: 800;
  letter-spacing: 0;
}

.result-page--wordle .result-stat__value.is-xp {
  color: var(--result-ink);
}

.result-page--wordle .result-stat--xp {
  background: var(--result-yellow-soft);
}

.result-page--wordle .result-detail-btn {
  width: min(78%, 310px);
  min-height: 50px;
  justify-content: center;
  position: relative;
  padding: 0.55rem 3.4rem 0.55rem 3.4rem;
  border: 1px solid var(--result-ink);
  border-radius: 999px;
  background: var(--result-ink);
  color: #fff;
  font-size: 0.98rem;
  font-weight: 900;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.result-page--wordle .result-detail-btn__icon {
  display: inline-grid;
  position: absolute;
  right: 0.36rem;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 999px;
  background: var(--result-yellow);
  color: var(--result-ink);
  font-size: 1.18rem;
  line-height: 1;
}

.result-page--wordle .result-detail-btn__icon i {
  line-height: 1;
}

.result-page--wordle .result-detail-btn:hover,
.result-page--wordle .result-detail-btn:active {
  background: var(--result-ink);
}

.result-page--wordle .result-footer {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(18px, 3vh, 28px);
  margin-top: 0.2rem;
  color: var(--result-ink);
}

.result-page--wordle .result-footer::before {
  content: "";
  order: 2;
  width: 100%;
  height: 1px;
  background: var(--result-line);
}

.result-page--wordle .result-footer-url {
  order: 3;
  justify-self: start;
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1;
}

.result-page--wordle .result-footer-url::after {
  content: ".";
  color: var(--result-mint-bright);
}

.result-page--wordle .result-xp-badge {
  order: 1;
  justify-self: center;
  min-height: 54px;
  padding: 0 1.5rem;
  border: 1px solid rgba(146, 118, 200, 0.32);
  border-radius: 999px;
  background: var(--result-lavender-soft);
  color: var(--result-ink);
  font-size: 1rem;
  font-weight: 900;
}

.result-page--wordle .result-xp-badge__value {
  color: var(--result-lavender);
  font-size: 1.08em;
}

@media (max-height: 760px) {
  .result-page--wordle .result-shell {
    gap: 8px;
    grid-template-rows: auto auto auto auto auto;
  }
  .result-page--wordle .result-title {
    font-size: clamp(3.1rem, 13vw, 4.4rem);
  }
  .result-page--wordle .result-visual {
    border-radius: 20px;
  }
  .result-page--wordle .result-wordle-grid {
    padding: 0.2rem;
  }
  .result-page--wordle .result-wordle-tile {
    width: clamp(24px, 6.7vw, 34px);
  }
  .result-page--wordle .result-stat {
    min-height: 62px;
  }
}
@media (max-height: 680px) {
  .result-page--wordle .result-shell {
    padding-top: calc(env(safe-area-inset-top, 0) + 2px);
    padding-bottom: calc(env(safe-area-inset-bottom, 0) + 8px);
  }
  .result-page--wordle .result-topbar {
    top: calc(env(safe-area-inset-top, 0) + 2px);
  }
  .result-page--wordle .result-subtitle {
    display: block;
    font-size: 0.66rem;
  }
  .result-page--wordle .result-close {
    width: 36px;
    height: 36px;
  }
  .result-page--wordle .result-detail-btn {
    min-height: 50px;
  }
  .result-page--wordle .result-detail-btn__icon {
    width: 36px;
    height: 36px;
  }
}
.result-page--bee {
  --result-ink: #0b0b0a;
  --result-paper: #fffdf8;
  --result-line: rgba(11, 11, 10, 0.18);
  --result-muted: #5b5650;
  --result-mint-bright: #78d2c9;
  --result-yellow: #f4cf4f;
  --result-yellow-soft: #fff0b9;
  --result-lavender: #9276c8;
  --result-lavender-soft: #ece5f5;
  --result-soft: #f4f0e8;
  --result-card-bg: #fff;
  --result-card-border: var(--result-line);
  --result-accent: var(--result-yellow);
  color: var(--result-ink);
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--result-paper);
  background-size: 34px 34px;
}

.result-page--bee::before,
.result-page--bee::after {
  content: none;
}

.result-page--bee .result-shell {
  max-width: 430px;
  min-height: 100vh;
  min-height: 100dvh;
  height: auto;
  margin: 0 auto;
  grid-template-rows: auto auto auto auto auto;
  align-content: start;
  gap: clamp(8px, 1.35vh, 14px);
  padding: calc(env(safe-area-inset-top, 0) + 4px) clamp(16px, 4.5vw, 24px) calc(env(safe-area-inset-bottom, 0) + 14px);
}

.result-page--bee .result-topbar {
  position: absolute;
  top: calc(env(safe-area-inset-top, 0) + 4px);
  right: clamp(16px, 4.5vw, 24px);
  z-index: 2;
  align-items: center;
  justify-content: flex-end;
}

.result-page--bee .result-close {
  width: 40px;
  height: 40px;
  border: 1px solid var(--result-ink);
  background: #fff;
  color: var(--result-ink);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.result-page--bee .result-close:hover,
.result-page--bee .result-close:active {
  background: var(--result-soft);
}

.result-page--bee .result-header {
  gap: 0.55rem;
}

.result-page--bee .result-title-row {
  display: flex;
  align-items: center;
  gap: 0.72rem;
  min-width: 0;
}

.result-page--bee .result-game-icon {
  width: clamp(58px, 14vw, 72px);
  height: clamp(58px, 14vw, 72px);
  flex: 0 0 auto;
  box-sizing: border-box;
  padding: 0.55rem;
  border: 1px solid var(--result-line);
  border-radius: 18px;
  background: var(--result-yellow-soft);
  -o-object-fit: contain;
     object-fit: contain;
}

.result-page--bee .result-title {
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: clamp(2.9rem, 12.4vw, 4.25rem);
  font-weight: 800;
  line-height: 0.88;
  letter-spacing: 0;
}

.result-page--bee .result-title-dot {
  color: var(--result-yellow);
}

.result-page--bee .result-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem;
}

.result-page--bee .result-status-badge,
.result-page--bee .result-date {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 0.9rem;
  border: 1px solid var(--result-line);
  border-radius: 999px;
  color: var(--result-ink);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  line-height: 1;
  text-transform: uppercase;
}

.result-page--bee .result-status-badge {
  background: var(--result-yellow-soft);
  letter-spacing: 0;
  text-transform: none;
}

.result-page--bee .result-date {
  background: #fff;
}

.result-page--bee .result-visual {
  align-items: center;
  min-height: 0;
  padding: 0.9rem;
  border: 1px solid var(--result-line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(11, 11, 10, 0.1);
}

.result-page--bee .result-bee-visual {
  width: min(310px, 78vw);
  gap: 0.7rem;
  padding: 0;
}

.result-page--bee .result-bee-rank {
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 6vw, 2.05rem);
  font-weight: 800;
  letter-spacing: 0;
  text-transform: none;
}

.result-page--bee .result-bee-bar-track {
  height: 16px;
  border: 1px solid var(--result-line);
  border-radius: 999px;
  background: var(--result-soft);
}

.result-page--bee .result-bee-bar-fill {
  background: var(--result-yellow);
}

.result-page--bee .result-bee-progress-label {
  color: var(--result-muted);
  font-size: 0.86rem;
  font-weight: 900;
  letter-spacing: 0;
}

.result-page--bee .result-stats {
  gap: 0.6rem;
}

.result-page--bee .result-actions {
  justify-items: center;
  margin-top: clamp(12px, 2vh, 20px);
}

.result-page--bee .result-stat {
  min-height: 72px;
  padding: 0.72rem 0.65rem;
  border: 1px solid var(--result-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.result-page--bee .result-stat__label {
  color: var(--result-muted);
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.12em;
}

.result-page--bee .result-stat__value {
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: clamp(1.65rem, 7vw, 2.25rem);
  font-weight: 800;
  letter-spacing: 0;
}

.result-page--bee .result-stat__value.is-xp {
  color: var(--result-ink);
}

.result-page--bee .result-stat--xp {
  background: var(--result-yellow-soft);
}

.result-page--bee .result-detail-btn {
  width: min(78%, 310px);
  min-height: 0;
  height: 46px;
  justify-content: center;
  position: relative;
  padding: 0 3.2rem;
  border: 1px solid var(--result-ink);
  border-radius: 999px;
  background: var(--result-ink);
  color: #fff;
  font-size: 0.98rem;
  font-weight: 900;
  line-height: 1;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.result-page--bee .result-detail-btn__icon {
  display: inline-grid;
  position: absolute;
  right: 0.36rem;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 999px;
  background: var(--result-yellow);
  color: var(--result-ink);
  font-size: 1.08rem;
  line-height: 1;
}

.result-page--bee .result-detail-btn__icon i {
  line-height: 1;
}

.result-page--bee .result-detail-btn:hover,
.result-page--bee .result-detail-btn:active {
  background: var(--result-ink);
}

.result-page--bee .result-footer {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(12px, 2vh, 18px);
  margin-top: 0;
  color: var(--result-ink);
}

.result-page--bee .result-footer::before {
  content: "";
  order: 2;
  width: 100%;
  height: 1px;
  background: var(--result-line);
}

.result-page--bee .result-footer-url {
  order: 3;
  justify-self: start;
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1;
}

.result-page--bee .result-footer-url::after {
  content: ".";
  color: var(--result-mint-bright);
}

.result-page--bee .result-xp-badge {
  order: 1;
  justify-self: center;
  min-height: 54px;
  padding: 0 1.5rem;
  border: 1px solid rgba(146, 118, 200, 0.32);
  border-radius: 999px;
  background: var(--result-lavender-soft);
  color: var(--result-ink);
  font-size: 1rem;
  font-weight: 900;
}

.result-page--bee .result-xp-badge__value {
  color: var(--result-lavender);
  font-size: 1.08em;
}

@media (max-height: 760px) {
  .result-page--bee .result-shell {
    gap: 8px;
  }
  .result-page--bee .result-title {
    font-size: clamp(2.58rem, 11.2vw, 3.7rem);
  }
  .result-page--bee .result-visual {
    padding: 0.72rem;
    border-radius: 20px;
  }
  .result-page--bee .result-stat {
    min-height: 62px;
  }
}
@media (max-height: 680px) {
  .result-page--bee .result-shell {
    padding-top: calc(env(safe-area-inset-top, 0) + 2px);
    padding-bottom: calc(env(safe-area-inset-bottom, 0) + 8px);
  }
  .result-page--bee .result-topbar {
    top: calc(env(safe-area-inset-top, 0) + 2px);
  }
  .result-page--bee .result-close {
    width: 36px;
    height: 36px;
  }
  .result-page--bee .result-detail-btn {
    height: 44px;
    min-height: 0;
  }
  .result-page--bee .result-detail-btn__icon {
    width: 32px;
    height: 32px;
  }
}
.result-page--connections {
  --result-ink: #0b0b0a;
  --result-paper: #fffdf8;
  --result-line: rgba(11, 11, 10, 0.18);
  --result-muted: #5b5650;
  --result-mint-bright: #78d2c9;
  --result-mint: #67b28b;
  --result-yellow: #f4cf4f;
  --result-yellow-soft: #fff0b9;
  --result-lavender: #9276c8;
  --result-lavender-soft: #ece5f5;
  --result-mint-soft: #dfeee5;
  --result-blue: #91b9df;
  --result-blue-soft: #dfeaf4;
  --result-soft: #f4f0e8;
  --result-card-bg: #fff;
  --result-card-border: var(--result-line);
  --result-accent: var(--result-lavender);
  color: var(--result-ink);
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--result-paper);
  background-size: 34px 34px;
}

.result-page--connections::before,
.result-page--connections::after {
  content: none;
}

.result-page--connections .result-shell {
  max-width: 430px;
  min-height: 100vh;
  min-height: 100dvh;
  height: auto;
  margin: 0 auto;
  grid-template-rows: auto auto auto auto auto;
  align-content: start;
  gap: clamp(8px, 1.35vh, 14px);
  padding: calc(env(safe-area-inset-top, 0) + 4px) clamp(16px, 4.5vw, 24px) calc(env(safe-area-inset-bottom, 0) + 14px);
}

.result-page--connections .result-topbar {
  position: absolute;
  top: calc(env(safe-area-inset-top, 0) + 4px);
  right: clamp(16px, 4.5vw, 24px);
  z-index: 2;
  align-items: center;
  justify-content: flex-end;
}

.result-page--connections .result-close {
  width: 40px;
  height: 40px;
  border: 1px solid var(--result-ink);
  background: #fff;
  color: var(--result-ink);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.result-page--connections .result-close:hover,
.result-page--connections .result-close:active {
  background: var(--result-soft);
}

.result-page--connections .result-header {
  gap: 0.55rem;
}

.result-page--connections .result-title-row {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  min-width: 0;
}

.result-page--connections .result-game-icon {
  width: clamp(54px, 13vw, 68px);
  height: clamp(54px, 13vw, 68px);
  flex: 0 0 auto;
  box-sizing: border-box;
  padding: 0.55rem;
  border: 1px solid var(--result-line);
  border-radius: 18px;
  background: var(--result-lavender-soft);
  -o-object-fit: contain;
     object-fit: contain;
}

.result-page--connections .result-title {
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: clamp(2.45rem, 10.4vw, 3.55rem);
  font-weight: 800;
  line-height: 0.9;
  letter-spacing: 0;
}

.result-page--connections .result-title-dot {
  color: var(--result-lavender);
}

.result-page--connections .result-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem;
}

.result-page--connections .result-status-badge,
.result-page--connections .result-date {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 0.9rem;
  border: 1px solid var(--result-line);
  border-radius: 999px;
  color: var(--result-ink);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  line-height: 1;
  text-transform: uppercase;
}

.result-page--connections .result-status-badge {
  background: var(--result-lavender-soft);
  letter-spacing: 0;
  text-transform: none;
}

.result-page--connections .result-date {
  background: #fff;
}

.result-page--connections .result-visual {
  align-items: center;
  min-height: 0;
  padding: 0.8rem;
  border: 1px solid var(--result-line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(11, 11, 10, 0.1);
}

.result-page--connections .result-connections-visual {
  width: min(330px, 82vw);
  gap: 0.55rem;
}

.result-page--connections .result-connections-count {
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: clamp(1.75rem, 7vw, 2.45rem);
  font-weight: 800;
}

.result-page--connections .result-connections-label {
  color: var(--result-muted);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.12em;
}

.result-page--connections .result-conn-groups {
  gap: 0.55rem;
}

.result-page--connections .result-conn-group {
  min-height: 56px;
  border: 1px solid var(--result-line);
  border-radius: 16px;
  color: var(--result-ink);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  box-shadow: 0 4px 0 rgba(11, 11, 10, 0.08);
}

.result-page--connections .result-conn-group.is-unsolved {
  opacity: 1;
  color: rgba(11, 11, 10, 0.58);
  box-shadow: none;
}

.result-page--connections .result-conn-group.cat-1.is-unsolved {
  background: var(--result-yellow-soft);
}

.result-page--connections .result-conn-group.cat-2.is-unsolved {
  background: var(--result-mint-soft);
}

.result-page--connections .result-conn-group.cat-3.is-unsolved {
  background: var(--result-blue-soft);
}

.result-page--connections .result-conn-group.cat-4.is-unsolved {
  background: var(--result-lavender-soft);
}

.result-page--connections .result-conn-group.cat-1.is-solved {
  background: var(--result-yellow);
}

.result-page--connections .result-conn-group.cat-2.is-solved {
  background: var(--result-mint);
}

.result-page--connections .result-conn-group.cat-3.is-solved {
  background: var(--result-blue);
}

.result-page--connections .result-conn-group.cat-4.is-solved {
  background: var(--result-lavender);
}

.result-page--connections .result-conn-group.is-solved {
  color: var(--result-ink);
}

.result-page--connections .result-stats {
  gap: 0.6rem;
}

.result-page--connections .result-actions {
  justify-items: center;
  margin-top: clamp(12px, 2vh, 20px);
}

.result-page--connections .result-stat {
  min-height: 72px;
  padding: 0.72rem 0.65rem;
  border: 1px solid var(--result-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.result-page--connections .result-stat__label {
  color: var(--result-muted);
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.12em;
}

.result-page--connections .result-stat__value {
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: clamp(1.55rem, 6.5vw, 2.12rem);
  font-weight: 800;
  letter-spacing: 0;
}

.result-page--connections .result-stat__value.is-xp {
  color: var(--result-ink);
}

.result-page--connections .result-stat--xp {
  background: var(--result-lavender-soft);
}

.result-page--connections .result-detail-btn {
  width: min(78%, 310px);
  min-height: 0;
  height: 46px;
  justify-content: center;
  position: relative;
  padding: 0 3.2rem;
  border: 1px solid var(--result-ink);
  border-radius: 999px;
  background: var(--result-ink);
  color: #fff;
  font-size: 0.98rem;
  font-weight: 900;
  line-height: 1;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.result-page--connections .result-detail-btn__icon {
  display: inline-grid;
  position: absolute;
  right: 0.36rem;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 999px;
  background: var(--result-yellow);
  color: var(--result-ink);
  font-size: 1.08rem;
  line-height: 1;
}

.result-page--connections .result-detail-btn__icon i {
  line-height: 1;
}

.result-page--connections .result-detail-btn:hover,
.result-page--connections .result-detail-btn:active {
  background: var(--result-ink);
}

.result-page--connections .result-footer {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(12px, 2vh, 18px);
  margin-top: 0;
  color: var(--result-ink);
}

.result-page--connections .result-footer::before {
  content: "";
  order: 2;
  width: 100%;
  height: 1px;
  background: var(--result-line);
}

.result-page--connections .result-footer-url {
  order: 3;
  justify-self: start;
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1;
}

.result-page--connections .result-footer-url::after {
  content: ".";
  color: var(--result-mint-bright);
}

.result-page--connections .result-xp-badge {
  order: 1;
  justify-self: center;
  min-height: 54px;
  padding: 0 1.5rem;
  border: 1px solid rgba(146, 118, 200, 0.32);
  border-radius: 999px;
  background: var(--result-lavender-soft);
  color: var(--result-ink);
  font-size: 1rem;
  font-weight: 900;
}

.result-page--connections .result-xp-badge__value {
  color: var(--result-lavender);
  font-size: 1.08em;
}

@media (max-height: 760px) {
  .result-page--connections .result-shell {
    gap: 8px;
  }
  .result-page--connections .result-title {
    font-size: clamp(2.18rem, 9.2vw, 3.08rem);
  }
  .result-page--connections .result-visual {
    padding: 0.65rem;
    border-radius: 20px;
  }
  .result-page--connections .result-conn-group {
    min-height: 48px;
  }
  .result-page--connections .result-stat {
    min-height: 62px;
  }
}
@media (max-height: 680px) {
  .result-page--connections .result-shell {
    padding-top: calc(env(safe-area-inset-top, 0) + 2px);
    padding-bottom: calc(env(safe-area-inset-bottom, 0) + 8px);
  }
  .result-page--connections .result-topbar {
    top: calc(env(safe-area-inset-top, 0) + 2px);
  }
  .result-page--connections .result-close {
    width: 36px;
    height: 36px;
  }
  .result-page--connections .result-detail-btn {
    height: 44px;
    min-height: 0;
  }
  .result-page--connections .result-detail-btn__icon {
    width: 32px;
    height: 32px;
  }
}
.result-page--sudoku {
  --result-ink: #0b0b0a;
  --result-paper: #fffdf8;
  --result-line: rgba(11, 11, 10, 0.18);
  --result-strong-line: rgba(11, 11, 10, 0.72);
  --result-muted: #5b5650;
  --result-mint-bright: #78d2c9;
  --result-yellow: #f4cf4f;
  --result-lavender: #9276c8;
  --result-lavender-soft: #ece5f5;
  --result-rose: #d58a89;
  --result-rose-soft: #f3dada;
  --result-soft: #f4f0e8;
  --result-card-bg: #fff;
  --result-card-border: var(--result-line);
  --result-accent: var(--result-rose);
  color: var(--result-ink);
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--result-paper);
  background-size: 34px 34px;
}

.result-page--sudoku::before,
.result-page--sudoku::after {
  content: none;
}

.result-page--sudoku .result-shell {
  max-width: 430px;
  min-height: 100vh;
  min-height: 100dvh;
  height: auto;
  margin: 0 auto;
  grid-template-rows: auto auto auto auto auto;
  align-content: start;
  gap: clamp(8px, 1.35vh, 14px);
  padding: calc(env(safe-area-inset-top, 0) + 4px) clamp(16px, 4.5vw, 24px) calc(env(safe-area-inset-bottom, 0) + 14px);
}

.result-page--sudoku .result-topbar {
  position: absolute;
  top: calc(env(safe-area-inset-top, 0) + 4px);
  right: clamp(16px, 4.5vw, 24px);
  z-index: 2;
  align-items: center;
  justify-content: flex-end;
}

.result-page--sudoku .result-close {
  width: 40px;
  height: 40px;
  border: 1px solid var(--result-ink);
  background: #fff;
  color: var(--result-ink);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.result-page--sudoku .result-close:hover,
.result-page--sudoku .result-close:active {
  background: var(--result-soft);
}

.result-page--sudoku .result-header {
  gap: 0.55rem;
}

.result-page--sudoku .result-title-row {
  display: flex;
  align-items: center;
  gap: 0.72rem;
  min-width: 0;
}

.result-page--sudoku .result-game-icon {
  width: clamp(58px, 14vw, 72px);
  height: clamp(58px, 14vw, 72px);
  flex: 0 0 auto;
  box-sizing: border-box;
  padding: 0.55rem;
  border: 1px solid var(--result-line);
  border-radius: 18px;
  background: var(--result-rose-soft);
  -o-object-fit: contain;
     object-fit: contain;
}

.result-page--sudoku .result-title {
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: clamp(3rem, 12.8vw, 4.4rem);
  font-weight: 800;
  line-height: 0.88;
  letter-spacing: 0;
}

.result-page--sudoku .result-title-dot {
  color: var(--result-rose);
}

.result-page--sudoku .result-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.45rem;
}

.result-page--sudoku .result-status-badge,
.result-page--sudoku .result-date {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 0.9rem;
  border: 1px solid var(--result-line);
  border-radius: 999px;
  color: var(--result-ink);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.06em;
  line-height: 1;
  text-transform: uppercase;
}

.result-page--sudoku .result-status-badge {
  background: var(--result-rose-soft);
  letter-spacing: 0;
  text-transform: none;
}

.result-page--sudoku .result-date {
  background: #fff;
}

.result-page--sudoku .result-visual {
  align-items: center;
  min-height: 0;
  padding: 0.78rem;
  border: 1px solid var(--result-line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(11, 11, 10, 0.1);
}

.result-page--sudoku .result-sudoku-grid {
  width: min(232px, 56vw);
  gap: 3px;
  padding: 0.2rem;
  border: 2px solid var(--result-ink);
  border-radius: 14px;
  background: var(--result-ink);
  overflow: hidden;
}

.result-page--sudoku .result-sudoku-cell {
  border-radius: 2px;
  background: #fff;
}

.result-page--sudoku .result-sudoku-cell.is-given {
  background: var(--result-soft);
}

.result-page--sudoku .result-sudoku-cell.is-solved {
  background: var(--result-rose-soft);
}

.result-page--sudoku .result-sudoku-cell.box-right {
  border-right: 2px solid var(--result-strong-line);
}

.result-page--sudoku .result-sudoku-cell.box-bottom {
  border-bottom: 2px solid var(--result-strong-line);
}

.result-page--sudoku .result-stats {
  gap: 0.6rem;
}

.result-page--sudoku .result-actions {
  justify-items: center;
  margin-top: clamp(12px, 2vh, 20px);
}

.result-page--sudoku .result-stat {
  min-height: 72px;
  padding: 0.72rem 0.65rem;
  border: 1px solid var(--result-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.result-page--sudoku .result-stat__label {
  color: var(--result-muted);
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.12em;
}

.result-page--sudoku .result-stat__value {
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: clamp(1.55rem, 6.5vw, 2.12rem);
  font-weight: 800;
  letter-spacing: 0;
}

.result-page--sudoku .result-stat__value--small {
  font-size: clamp(1.05rem, 4.5vw, 1.45rem);
}

.result-page--sudoku .result-stat__value.is-xp {
  color: var(--result-ink);
}

.result-page--sudoku .result-stat--xp {
  background: var(--result-rose-soft);
}

.result-page--sudoku .result-detail-btn {
  width: min(78%, 310px);
  min-height: 0;
  height: 46px;
  justify-content: center;
  position: relative;
  padding: 0 3.2rem;
  border: 1px solid var(--result-ink);
  border-radius: 999px;
  background: var(--result-ink);
  color: #fff;
  font-size: 0.98rem;
  font-weight: 900;
  line-height: 1;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.result-page--sudoku .result-detail-btn__icon {
  display: inline-grid;
  position: absolute;
  right: 0.36rem;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 999px;
  background: var(--result-yellow);
  color: var(--result-ink);
  font-size: 1.08rem;
  line-height: 1;
}

.result-page--sudoku .result-detail-btn__icon i {
  line-height: 1;
}

.result-page--sudoku .result-detail-btn:hover,
.result-page--sudoku .result-detail-btn:active {
  background: var(--result-ink);
}

.result-page--sudoku .result-footer {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(12px, 2vh, 18px);
  margin-top: 0;
  color: var(--result-ink);
}

.result-page--sudoku .result-footer::before {
  content: "";
  order: 2;
  width: 100%;
  height: 1px;
  background: var(--result-line);
}

.result-page--sudoku .result-footer-url {
  order: 3;
  justify-self: start;
  color: var(--result-ink);
  font-family: var(--font-display);
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1;
}

.result-page--sudoku .result-footer-url::after {
  content: ".";
  color: var(--result-mint-bright);
}

.result-page--sudoku .result-xp-badge {
  order: 1;
  justify-self: center;
  min-height: 54px;
  padding: 0 1.5rem;
  border: 1px solid rgba(146, 118, 200, 0.32);
  border-radius: 999px;
  background: var(--result-lavender-soft);
  color: var(--result-ink);
  font-size: 1rem;
  font-weight: 900;
}

.result-page--sudoku .result-xp-badge__value {
  color: var(--result-lavender);
  font-size: 1.08em;
}

@media (max-height: 760px) {
  .result-page--sudoku .result-shell {
    gap: 8px;
  }
  .result-page--sudoku .result-title {
    font-size: clamp(2.7rem, 11.2vw, 3.8rem);
  }
  .result-page--sudoku .result-visual {
    padding: 0.62rem;
    border-radius: 20px;
  }
  .result-page--sudoku .result-sudoku-grid {
    width: min(190px, 50vw);
  }
  .result-page--sudoku .result-stat {
    min-height: 62px;
  }
}
@media (max-height: 680px) {
  .result-page--sudoku .result-shell {
    padding-top: calc(env(safe-area-inset-top, 0) + 2px);
    padding-bottom: calc(env(safe-area-inset-bottom, 0) + 8px);
  }
  .result-page--sudoku .result-topbar {
    top: calc(env(safe-area-inset-top, 0) + 2px);
  }
  .result-page--sudoku .result-close {
    width: 36px;
    height: 36px;
  }
  .result-page--sudoku .result-detail-btn {
    height: 44px;
    min-height: 0;
  }
  .result-page--sudoku .result-detail-btn__icon {
    width: 32px;
    height: 32px;
  }
}
.layout-row {
  display: flex;
  flex-direction: row;
}

.layout-col {
  display: flex;
  flex-direction: column;
}

.justify-center {
  justify-content: center;
}

.justify-between {
  justify-content: space-between;
}

.justify-end {
  justify-content: flex-end;
}

.align-center {
  align-items: center;
}

.align-start {
  align-items: flex-start;
}

.align-end {
  align-items: flex-end;
}

.gap-xs {
  gap: var(--space-2);
}

.gap-sm {
  gap: var(--space-3);
}

.gap-md {
  gap: var(--space-4);
}

.gap-lg {
  gap: var(--space-5);
}

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

.text-right {
  text-align: right;
}

.text-muted {
  color: var(--color-text-muted);
}

.text-gradient {
  background: linear-gradient(135deg, var(--color-secondary), var(--color-primary));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.heading-lg {
  font-size: 2rem;
  font-weight: 600;
  margin: 0 0 var(--space-4);
}

.heading-md {
  font-size: 1.4rem;
  font-weight: 600;
  margin: 0 0 var(--space-3);
}

.heading-sm {
  font-size: 1.1rem;
  font-weight: 600;
  margin: 0 0 var(--space-2);
}

.mt-sm {
  margin-top: var(--space-3);
}

.mt-md {
  margin-top: var(--space-4);
}

.mt-lg {
  margin-top: var(--space-6);
}

.mb-sm {
  margin-bottom: var(--space-3);
}

.mb-md {
  margin-bottom: var(--space-4);
}

.mb-lg {
  margin-bottom: var(--space-6);
}

.px-md {
  padding-left: var(--space-4);
  padding-right: var(--space-4);
}

.py-md {
  padding-top: var(--space-4);
  padding-bottom: var(--space-4);
}

@media (max-width: 768px) {
  .hide-mobile {
    display: none !important;
  }
}

.turbo-native-nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: calc(44px + env(safe-area-inset-top));
  padding: env(safe-area-inset-top) var(--space-4) 0;
  display: flex;
  align-items: center;
  background: transparent;
  z-index: 1100;
  border-bottom: 0;
}

.turbo-native-nav + .app-flash {
  padding-top: calc(44px + env(safe-area-inset-top));
}

.turbo-native-back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--color-text);
  box-shadow: 0 6px 18px rgba(35, 28, 22, 0.08);
  font-size: 1.1rem;
  line-height: 1;
  cursor: pointer;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.turbo-native-back:active {
  transform: translateY(1px);
}

.turbo-native-help {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--color-text);
  box-shadow: 0 6px 18px rgba(35, 28, 22, 0.08);
  cursor: pointer;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.turbo-native-help:active {
  transform: translateY(1px);
}

.turbo-native-tabbar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 10px 28px calc(12px + env(safe-area-inset-bottom));
  display: flex;
  justify-content: space-around;
  align-items: center;
  gap: var(--space-3);
  background: rgba(255, 255, 255, 0.92);
  border-top: 1px solid rgba(48, 38, 28, 0.08);
  box-shadow: 0 -8px 18px rgba(35, 28, 22, 0.05);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  transform: translateZ(0);
  will-change: transform;
  z-index: 1100;
}

.turbo-native-tabbar__item {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  font-size: 0.7rem;
  letter-spacing: 0.04em;
  text-transform: none;
  font-weight: 500;
  color: var(--color-text-muted);
  text-decoration: none;
  position: relative;
}

.turbo-native-tabbar__item i {
  font-size: 1.15rem;
}

.turbo-native-tabbar__item.is-active {
  color: var(--color-text);
}

.turbo-native-tabbar__item.is-active::after {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: var(--color-secondary);
  position: absolute;
  bottom: -6px;
}

@media (min-width: 769px) {
  .hide-desktop {
    display: none !important;
  }
}

.btn, .btn-outline-primary,
.btn-outline-secondary,
.btn-outline-success,
.btn-outline-danger,
.btn-outline-warning,
.btn-outline-info, .btn-info, .btn-danger, .btn-warning, .btn-success {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: 0.65rem 1.5rem;
  border-radius: var(--radius-md);
  font-weight: 600;
  border: 1px solid transparent;
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
  text-transform: none;
  text-decoration: none;
}
.btn:hover, .btn-outline-primary:hover,
.btn-outline-secondary:hover,
.btn-outline-success:hover,
.btn-outline-danger:hover,
.btn-outline-warning:hover,
.btn-outline-info:hover, .btn-info:hover, .btn-danger:hover, .btn-warning:hover, .btn-success:hover {
  transform: translateY(-1px);
  box-shadow: var(--shadow-soft);
}
.btn:active, .btn-outline-primary:active,
.btn-outline-secondary:active,
.btn-outline-success:active,
.btn-outline-danger:active,
.btn-outline-warning:active,
.btn-outline-info:active, .btn-info:active, .btn-danger:active, .btn-warning:active, .btn-success:active {
  transform: translateY(0);
  box-shadow: none;
}

.btn-primary {
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-strong));
  color: #ffffff;
  border-color: var(--color-primary-strong);
}

.btn-secondary {
  background: linear-gradient(135deg, var(--color-secondary), #7f6041);
  color: #ffffff;
  border-color: #7f6041;
}

.btn-outline, .btn-outline-primary,
.btn-outline-secondary,
.btn-outline-success,
.btn-outline-danger,
.btn-outline-warning,
.btn-outline-info {
  background: transparent;
  border: 1px solid var(--color-border-light);
  color: var(--color-text);
}
.btn-outline:hover, .btn-outline-primary:hover,
.btn-outline-secondary:hover,
.btn-outline-success:hover,
.btn-outline-danger:hover,
.btn-outline-warning:hover,
.btn-outline-info:hover {
  background-color: var(--color-border-light);
}

.btn-google {
  background: #ffffff;
  border: 1px solid #dadce0;
  color: #1f1f1f;
  box-shadow: 0 1px 2px rgba(60, 64, 67, 0.2);
}
.btn-google:hover {
  background-color: #f8f9fa;
  border-color: #c6c6c6;
}

.btn-apple {
  background: #000000;
  border: 1px solid #000000;
  color: #ffffff;
}
.btn-apple:hover {
  background: #1a1a1a;
  border-color: #1a1a1a;
}

body:has(.auth-page) {
  --auth-ink: #0b0b0a;
  --auth-paper: #fffdf8;
  --auth-soft: #f4f0e8;
  --auth-line: rgba(11, 11, 10, 0.22);
  --auth-muted: #56524c;
  --auth-mint: #67b28b;
  --auth-mint-bright: #78d2c9;
  --auth-mint-soft: #dfeee5;
  --auth-yellow: #f4cf4f;
  --auth-yellow-soft: #fff0b9;
  --auth-lavender-soft: #ece5f5;
  --auth-rose-soft: #f3dada;
  color: var(--auth-ink);
  background: var(--auth-paper);
}

body:has(.auth-page) .app-header {
  display: none;
}

.auth-page {
  box-sizing: border-box;
  min-height: 100vh;
  min-height: 100dvh;
  padding: calc(env(safe-area-inset-top) + var(--space-5)) var(--space-3) calc(var(--space-6) + env(safe-area-inset-bottom));
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--auth-paper);
  background-size: 34px 34px;
}

.auth-shell {
  box-sizing: border-box;
  display: grid;
  width: 100%;
  max-width: 540px;
  gap: clamp(1rem, 2.4vw, 1.5rem);
  justify-items: center;
  min-width: 0;
  padding-right: 0;
  padding-left: 0;
}

.auth-brand {
  width: -moz-fit-content;
  width: fit-content;
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  padding: 0 1rem;
  border: 1px solid var(--auth-line);
  border-radius: 999px;
  background: #fff;
  color: var(--auth-ink);
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 3vw, 1.75rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
  text-decoration: none;
}

.auth-brand span,
.auth-title span {
  color: var(--auth-mint-bright);
}

.auth-layout {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  min-width: 0;
}

.auth-card {
  box-sizing: border-box;
  display: grid;
  align-content: start;
  width: 100%;
  min-width: 0;
  gap: 0.95rem;
  padding: clamp(1rem, 3vw, 1.45rem);
  border: 1px solid var(--auth-line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 38px rgba(11, 11, 10, 0.07);
}

.auth-card > * {
  min-width: 0;
  max-width: 100%;
}

.auth-card__header {
  display: grid;
  gap: 0.45rem;
  min-width: 0;
}

.auth-eyebrow {
  width: -moz-fit-content;
  width: fit-content;
  min-height: 30px;
  padding: 0 0.8rem;
  border: 1px solid var(--auth-line);
  border-radius: 999px;
  background: var(--auth-mint-soft);
  color: var(--auth-ink);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  line-height: 30px;
  text-transform: uppercase;
}

.auth-title {
  margin: 0;
  color: var(--auth-ink);
  font-family: var(--font-display);
  font-size: clamp(2.45rem, 6.2vw, 3.75rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.9;
  overflow-wrap: anywhere;
}

.auth-subtitle {
  position: relative;
  max-width: 28rem;
  margin: 0 0 0.2rem;
  padding-bottom: 0.34rem;
  color: var(--auth-ink);
  font-size: 1.02rem;
  font-weight: 700;
  line-height: 1.35;
}

.auth-subtitle::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: min(210px, 62%);
  height: 0.28rem;
  border-radius: 999px;
  background: var(--auth-mint-bright);
  transform: rotate(-0.8deg);
}

.auth-social {
  display: grid;
  gap: 0.82rem;
  margin: 0.25rem 0 0.4rem;
  min-width: 0;
  max-width: 100%;
}

.auth-social .button_to,
.auth-social .button_to div {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.auth-provider-btn {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 46px;
  border: 1px solid var(--auth-line);
  border-radius: 999px;
  background: #fff;
  color: var(--auth-ink);
  font-weight: 900;
  box-shadow: none;
}

.auth-provider-btn:hover {
  border-color: var(--auth-ink);
  background: var(--auth-soft);
}

.auth-provider-btn.btn-google {
  border-color: rgba(66, 133, 244, 0.45);
  background: #fff;
  color: var(--auth-ink);
}

.auth-provider-btn.btn-google:hover {
  border-color: #4285f4;
  background: #f8fbff;
}

.auth-provider-btn.btn-apple {
  border-color: #000;
  background: #000;
  color: #fff;
}

.auth-provider-btn.btn-apple:hover {
  border-color: #000;
  background: #1b1b1b;
  color: #fff;
}

.auth-provider-btn.mb-sm {
  margin-bottom: 0;
}

.auth-provider-icon {
  width: 1.2rem;
  height: 1.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.auth-provider-icon svg {
  display: block;
}

.auth-divider {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  margin: 0.5rem 0 0.25rem;
  color: var(--auth-muted);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.auth-divider::before,
.auth-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background-color: var(--auth-line);
}

.auth-divider-tight {
  margin-top: 0;
}

.auth-form {
  box-sizing: border-box;
  display: grid;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  gap: 0.85rem;
}

.auth-page .form-field {
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  margin: 0;
}

.auth-page .field_with_errors {
  box-sizing: border-box;
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.auth-page .form-label {
  margin-bottom: 0.42rem;
  color: var(--auth-ink);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.auth-page .input, .auth-page .form-control {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 50px;
  border: 1px solid var(--auth-line);
  border-radius: 14px;
  background: #fff;
  color: var(--auth-ink);
  font-size: 1rem;
  font-weight: 700;
  box-shadow: none;
}

.auth-page .input:focus, .auth-page .form-control:focus {
  border-color: var(--auth-ink);
  box-shadow: 0 0 0 3px rgba(120, 210, 201, 0.24);
}

.auth-page .field_with_errors .input, .auth-page .field_with_errors .form-control {
  border-color: var(--auth-ink);
  background: var(--auth-rose-soft);
}

.auth-label-row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.4rem 0.8rem;
}

.auth-page .helper-text {
  color: var(--auth-muted);
  font-size: 0.78rem;
  font-weight: 800;
}

.auth-check-row {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  color: var(--auth-ink);
  font-weight: 900;
}

.auth-check-row input {
  width: 18px;
  height: 18px;
  accent-color: var(--auth-mint);
}

.auth-submit {
  box-sizing: border-box;
  position: relative;
  display: inline-flex;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 0.6rem 3.5rem;
  border: 1px solid var(--auth-ink);
  border-radius: 999px;
  background: var(--auth-ink);
  color: #fff;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 900;
}

.auth-submit__icon {
  display: inline-grid;
  position: absolute;
  right: 0.36rem;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 999px;
  background: var(--auth-yellow);
  color: var(--auth-ink);
  font-size: 1.12rem;
}

.auth-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  padding-top: 0.2rem;
  min-width: 0;
  max-width: 100%;
}

.auth-links a {
  display: inline-flex;
  min-height: 32px;
  align-items: center;
  padding: 0 0.78rem;
  border: 1px solid var(--auth-line);
  border-radius: 999px;
  background: #fff;
  color: var(--auth-ink);
  font-size: 0.82rem;
  font-weight: 900;
  text-decoration: none;
}

.auth-visual {
  display: none;
}

.auth-visual__copy {
  position: relative;
  z-index: 2;
  display: grid;
  gap: 0.35rem;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 20rem;
}

.auth-visual__copy span {
  color: var(--auth-muted);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.16em;
}

.auth-visual__copy strong {
  width: -moz-fit-content;
  width: fit-content;
  padding-bottom: 0.18rem;
  border-bottom: 0.28rem solid var(--auth-mint-bright);
  color: var(--auth-ink);
  font-family: var(--font-display);
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 800;
  line-height: 1;
}

.auth-hero-image {
  position: absolute;
  right: -1.2rem;
  bottom: 2.8rem;
  width: min(86%, 500px);
  max-height: 66%;
  -o-object-fit: contain;
     object-fit: contain;
}

.auth-mini-grid {
  position: absolute;
  right: 2rem;
  bottom: 2rem;
  display: grid;
  grid-template-columns: repeat(3, 46px);
  gap: 0.5rem;
}

.auth-mini-grid span {
  width: 46px;
  height: 46px;
  border: 3px solid var(--auth-ink);
  border-radius: 10px;
  background: #fff;
}

.auth-mini-grid .is-mint {
  background: var(--auth-mint-soft);
}

.auth-mini-grid .is-yellow {
  background: var(--auth-yellow);
}

.auth-mini-grid .is-lavender {
  background: var(--auth-lavender-soft);
}

.auth-game-icons {
  position: absolute;
  right: 1.5rem;
  bottom: 1.5rem;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, 58px);
  gap: 0.6rem;
}

.auth-game-icons img {
  width: 58px;
  height: 58px;
  padding: 0.5rem;
  border: 1px solid var(--auth-line);
  border-radius: 16px;
  background: #fff;
  -o-object-fit: contain;
     object-fit: contain;
}

.auth-page .alert-danger {
  border-color: var(--auth-line);
  border-radius: 18px;
  background: var(--auth-rose-soft);
  color: var(--auth-ink);
  font-weight: 800;
}

.auth-page .alert-danger ul {
  padding-left: 1.1rem;
}

.auth-page .alert-heading {
  margin: 0 0 0.4rem;
  font-weight: 900;
}

@media (max-width: 820px) {
  .auth-page {
    padding: calc(env(safe-area-inset-top) + 0.35rem) clamp(0.85rem, 4vw, 1rem) calc(var(--space-5) + env(safe-area-inset-bottom));
  }
  .auth-shell {
    gap: 0;
  }
  .auth-brand {
    display: none;
  }
  .auth-card {
    border-radius: 22px;
    padding: 1rem;
  }
  .auth-title {
    font-size: clamp(2.25rem, 10.5vw, 3rem);
  }
  .auth-hero-image {
    right: -1.4rem;
    bottom: 0.8rem;
    width: min(76%, 360px);
    max-height: 74%;
  }
  .auth-mini-grid {
    right: 1rem;
    bottom: 1rem;
    grid-template-columns: repeat(3, 34px);
    gap: 0.36rem;
  }
  .auth-mini-grid span {
    width: 34px;
    height: 34px;
    border-width: 2px;
    border-radius: 8px;
  }
  .auth-game-icons {
    right: 1rem;
    bottom: 1rem;
    grid-template-columns: repeat(4, 44px);
    gap: 0.4rem;
  }
  .auth-game-icons img {
    width: 44px;
    height: 44px;
    border-radius: 12px;
  }
}
.btn-link {
  background: none;
  border: none;
  color: var(--color-secondary);
  padding: 0;
}
.btn-link:hover {
  color: var(--color-primary);
}

.btn-lg {
  padding: 0.9rem 2rem;
  font-size: 1.1rem;
}

.btn-sm {
  padding: 0.45rem 1rem;
  font-size: 0.85rem;
}

.btn-full {
  width: 100%;
}

.alert {
  border-radius: var(--radius-md);
  padding: var(--space-3) var(--space-4);
  margin-bottom: var(--space-3);
  border: 1px solid transparent;
  font-weight: 500;
}

.alert-success {
  background-color: rgba(79, 122, 104, 0.14);
  border-color: rgba(79, 122, 104, 0.35);
  color: #2f4c3e;
}

.alert-danger {
  background-color: rgba(184, 91, 86, 0.14);
  border-color: rgba(184, 91, 86, 0.35);
  color: #6e2f2b;
}

.alert-warning {
  background-color: rgba(194, 160, 77, 0.16);
  border-color: rgba(194, 160, 77, 0.35);
  color: #5b4521;
}

.alert-info {
  background-color: rgba(111, 138, 165, 0.16);
  border-color: rgba(111, 138, 165, 0.35);
  color: #314254;
}

.alert-dismissible {
  position: relative;
  padding-right: 2.5rem;
}

.btn-close {
  position: absolute;
  top: 50%;
  right: 0.9rem;
  transform: translateY(-50%);
  width: 1.1rem;
  height: 1.1rem;
  border: none;
  background: none;
  color: inherit;
  cursor: pointer;
  opacity: 0.8;
}
.btn-close:after {
  content: "✕";
  display: block;
  line-height: 1;
  font-size: 1rem;
}
.btn-close:hover, .btn-close:focus {
  opacity: 1;
}

.form-field {
  margin-bottom: var(--space-4);
}

.form-label {
  display: block;
  margin-bottom: var(--space-2);
  font-weight: 500;
  font-size: 0.95rem;
}

.input, .form-control,
.select,
.form-select,
.textarea {
  width: 100%;
  padding: 0.65rem 0.85rem;
  border-radius: var(--radius-sm);
  border: 1px solid var(--color-border-light);
  background-color: var(--color-surface-alt);
  color: var(--color-text);
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.input:focus, .form-control:focus,
.select:focus,
.form-select:focus,
.textarea:focus {
  outline: none;
  border-color: var(--color-secondary);
  box-shadow: 0 0 0 2px rgba(155, 123, 86, 0.35);
}

.textarea {
  min-height: 140px;
  resize: vertical;
}

.helper-text {
  font-size: 0.85rem;
  color: var(--color-text-muted);
  margin-top: var(--space-1);
}

.modal {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  padding: var(--space-4);
  z-index: 1000;
}
.modal.is-open {
  display: flex;
}

.modal__backdrop {
  position: absolute;
  inset: 0;
  background-color: var(--color-overlay);
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
}

.modal__dialog {
  position: relative;
  background-color: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-strong);
  width: min(640px, 95vw);
  max-height: 90vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.modal__header,
.modal__footer {
  padding: var(--space-4);
  border-bottom: 1px solid var(--color-border-light);
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.modal__footer {
  border-top: 1px solid var(--color-border-light);
  border-bottom: none;
  gap: var(--space-2);
}

.modal__body {
  padding: var(--space-4);
  overflow-y: auto;
}

.modal__close {
  background: none;
  border: none;
  color: var(--color-text-muted);
  font-size: 1.4rem;
  cursor: pointer;
}

.badge {
  display: inline-flex;
  align-items: center;
  padding: 0.2rem 0.6rem;
  border-radius: 999px;
  font-size: 0.75rem;
  background-color: var(--color-border-light);
  color: var(--color-text);
}

.progress {
  width: 100%;
  height: 12px;
  background-color: var(--color-border-light);
  border-radius: 999px;
  overflow: hidden;
}

.progress__bar {
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(135deg, var(--color-secondary), var(--color-primary));
  transition: width 0.4s ease;
}

/* Legacy layout + utility compatibility */
.row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}

[class*=col-] {
  flex: 1 0 100%;
}

@media (min-width: 576px) {
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media (min-width: 768px) {
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-10 {
    flex: 0 0 83.333%;
    max-width: 83.333%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media (min-width: 992px) {
  .col-lg-4 {
    flex: 0 0 33.333%;
    max-width: 33.333%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-8 {
    flex: 0 0 66.666%;
    max-width: 66.666%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
.d-flex {
  display: flex;
}

.flex-column {
  flex-direction: column;
}

.flex-row {
  flex-direction: row;
}

.justify-content-between {
  justify-content: space-between;
}

.justify-content-center {
  justify-content: center;
}

.align-items-center {
  align-items: center;
}

.align-items-end {
  align-items: flex-end;
}

.align-items-start {
  align-items: flex-start;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.w-100 {
  width: 100%;
}

.h-100 {
  height: 100%;
}

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

.text-end {
  text-align: right;
}

.mt-2 {
  margin-top: var(--space-2);
}

.mt-3 {
  margin-top: var(--space-3);
}

.mt-4 {
  margin-top: var(--space-4);
}

.mt-5 {
  margin-top: var(--space-6);
}

.mb-2 {
  margin-bottom: var(--space-2);
}

.mb-3 {
  margin-bottom: var(--space-3);
}

.mb-4 {
  margin-bottom: var(--space-4);
}

.mb-5 {
  margin-bottom: var(--space-6);
}

.me-1 {
  margin-right: var(--space-2);
}

.me-2 {
  margin-right: var(--space-3);
}

.me-3 {
  margin-right: var(--space-4);
}

.ms-1 {
  margin-left: var(--space-2);
}

.ms-2 {
  margin-left: var(--space-3);
}

.py-4 {
  padding-top: var(--space-4);
  padding-bottom: var(--space-4);
}

.px-3 {
  padding-left: var(--space-3);
  padding-right: var(--space-3);
}

.g-3 {
  gap: var(--space-3);
}

.g-4 {
  gap: var(--space-4);
}

.card {
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-soft);
  margin-bottom: var(--space-4);
}

.card-header {
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-border-light);
}

.card-body {
  padding: var(--space-4);
}

.card-title {
  margin: 0;
  font-size: 1.25rem;
}

.shadow {
  box-shadow: var(--shadow-soft);
}

.table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid var(--color-border);
}

.table th,
.table td {
  padding: var(--space-3);
  border-bottom: 1px solid var(--color-border);
  text-align: left;
}

.table-striped tbody tr:nth-child(odd) {
  background-color: #faf7f2;
}

.table-responsive {
  width: 100%;
  overflow-x: auto;
}

.pagination {
  display: flex;
  gap: var(--space-2);
  list-style: none;
  padding: 0;
  justify-content: center;
}

.page-item {
  list-style: none;
}

.page-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.4rem 0.8rem;
  border-radius: var(--radius-sm);
  border: 1px solid var(--color-border-light);
  color: var(--color-text);
  text-decoration: none;
}

.page-item.active .page-link {
  background-color: var(--color-secondary);
  border-color: var(--color-secondary);
  color: #fff;
}

.btn-success {
  background: linear-gradient(135deg, var(--color-success), #3c6253);
  color: #ffffff;
}

.btn-warning {
  background: linear-gradient(135deg, #b18d3f, #8f6a2b);
  color: #ffffff;
}

.btn-danger {
  background: linear-gradient(135deg, var(--color-danger), #994743);
  color: #ffffff;
}

.btn-info {
  background: linear-gradient(135deg, var(--color-info), #56728e);
  color: #ffffff;
}

.btn-outline-primary {
  border-color: var(--color-secondary);
  color: var(--color-secondary);
}

.btn-outline-secondary {
  border-color: var(--color-border-light);
  color: var(--color-text);
}

.btn-outline-success {
  border-color: var(--color-success);
  color: var(--color-success);
}

.btn-outline-danger {
  border-color: var(--color-danger);
  color: var(--color-danger);
}

.btn-outline-warning {
  border-color: var(--color-warning);
  color: var(--color-warning);
}

.btn-outline-info {
  border-color: var(--color-info);
  color: var(--color-info);
}

.btn-outline-secondary:hover {
  background-color: var(--color-border-light);
}

.bg-primary {
  background-color: var(--color-secondary);
}

.bg-success {
  background-color: var(--color-success);
}

.bg-danger {
  background-color: var(--color-danger);
}

.bg-warning {
  background-color: var(--color-warning);
}

.bg-info {
  background-color: var(--color-info);
}

.bg-secondary {
  background-color: var(--color-surface-alt);
}

.text-success {
  color: var(--color-success);
}

.text-danger {
  color: var(--color-danger);
}

body:has(.home-page) {
  --home-ink: #0b0b0a;
  --home-paper: #fffdf8;
  --home-soft: #f4f0e8;
  --home-line: rgba(11, 11, 10, 0.18);
  --home-muted: #56524c;
  --home-mint: #67b28b;
  --home-mint-soft: #dfeee5;
  --home-yellow: #f4cf4f;
  --home-yellow-soft: #fff0b9;
  --home-lavender: #9276c8;
  --home-lavender-soft: #ece5f5;
  --home-rose: #d58a89;
  --home-rose-soft: #f3dada;
  color: var(--home-ink);
  background: radial-gradient(circle at top left, rgba(103, 178, 139, 0.08), transparent 28rem), var(--home-paper);
}

body:has(.home-page) .app-header {
  background: rgba(255, 253, 248, 0.92);
  border-bottom: 1px solid var(--home-line);
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px);
          backdrop-filter: blur(18px);
}

body:has(.home-page.is-guest) .app-header {
  display: none;
}

body:has(.home-page) .app-brand,
body:has(.home-page) .nav-link {
  color: var(--home-ink);
}

body:has(.home-page) .text-gradient {
  color: var(--home-ink);
  background: none;
  -webkit-text-fill-color: currentColor;
}

body:has(.home-page) .btn-primary {
  border: 1px solid var(--home-ink);
  border-radius: 999px;
  background: var(--home-ink);
  color: #fff;
  box-shadow: none;
}

body:has(.home-page) .nav-avatar-btn {
  border: 1px solid var(--home-ink);
  background: #fff;
  color: var(--home-ink);
  box-shadow: none;
}

body:has(.home-page) .nav-back-btn,
body:has(.home-page) .nav-icon-btn {
  border: 1px solid var(--home-line);
  background: #fff;
  color: var(--home-ink);
  box-shadow: none;
}

.home-page {
  min-height: 100vh;
  overflow-x: hidden;
  padding-bottom: calc(var(--space-7) + env(safe-area-inset-bottom));
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--home-paper);
  background-size: 34px 34px;
}

.home-page .app-container, .home-page .container {
  max-width: 1120px;
}

.home-native-bar {
  position: sticky;
  top: 0;
  z-index: 20;
  padding-top: env(safe-area-inset-top);
  background: rgba(255, 253, 248, 0.94);
  border-bottom: 1px solid var(--home-line);
  -webkit-backdrop-filter: blur(18px);
          backdrop-filter: blur(18px);
}

.home-native-bar__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: var(--space-2) 0;
}

.home-native-bar__right {
  position: absolute;
  right: var(--space-4);
  display: flex;
  align-items: center;
}

.home-date-pill,
.home-native-date {
  display: inline-flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  min-height: 42px;
  padding: 0 1.08rem;
  border: 1px solid var(--home-line);
  border-radius: 999px;
  background: #fff;
  color: var(--home-ink);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}

.home-native-date {
  min-height: 36px;
  background: var(--home-mint);
  color: #fff;
  border-color: transparent;
}

.home-xp-badge {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 0.85rem;
  border: 1px solid rgba(11, 11, 10, 0.12);
  border-radius: 999px;
  background: #fff;
  color: var(--home-ink);
  font-size: 0.78rem;
  font-weight: 900;
}

.home-hero {
  padding: clamp(2rem, 4vw, 4.5rem) 0 var(--space-7);
}

.home-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-5);
  align-items: center;
}

.home-page.is-guest .home-hero-grid {
  grid-template-columns: minmax(0, 0.9fr) minmax(320px, 0.85fr);
  gap: clamp(1.5rem, 4vw, 4rem);
  margin-bottom: var(--space-6);
}

.home-intro {
  min-width: 0;
}

.home-date-pill {
  margin-bottom: var(--space-5);
}

.home-hero-title {
  max-width: 720px;
  margin: 0 0 var(--space-4);
  color: var(--home-ink);
  font-family: var(--font-display);
  font-size: 6.4rem;
  font-weight: 800;
  line-height: 0.91;
  letter-spacing: 0;
}

.home-page.is-guest .home-hero-title {
  max-width: 620px;
  font-size: 7rem;
  line-height: 0.9;
}

.home-hero-accent {
  position: relative;
  display: inline-block;
  color: inherit;
  font-style: normal;
  white-space: nowrap;
}

.home-hero-accent::after {
  content: "";
  position: absolute;
  left: -0.05em;
  right: -0.05em;
  bottom: 0.02em;
  z-index: -1;
  height: 0.14em;
  border-radius: 999px;
  background: var(--home-mint);
}

.home-page.is-guest .home-hero-accent::after {
  height: 0.11em;
  background: #78d2c9;
}

.home-hero-dot {
  display: inline-block;
  width: 0.2em;
  height: 0.2em;
  margin-left: 0.07em;
  border-radius: 999px;
  background: #78d2c9;
  vertical-align: baseline;
}

.home-page.is-guest .home-hero-sub {
  display: grid;
  gap: 0.22rem;
  max-width: 410px;
}

.home-hero-marked {
  position: relative;
  display: inline-block;
  width: -moz-fit-content;
  width: fit-content;
}

.home-hero-marked::after {
  content: "";
  position: absolute;
  left: -0.05em;
  right: -0.05em;
  bottom: -0.18em;
  height: 0.18em;
  border-radius: 999px 52% 60% 999px;
  background: #78d2c9;
  transform: rotate(-0.8deg);
}

.home-hero-sub {
  max-width: 540px;
  margin: 0;
  color: var(--home-ink);
  font-size: 1.24rem;
  line-height: 1.38;
}

.home-hero-sub strong {
  color: var(--home-mint);
  font-weight: 900;
}

.home-hero-actions {
  display: inline-flex;
  align-items: center;
  gap: 0.95rem;
  margin-top: var(--space-5);
}

.home-hero-cta {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
  min-width: min(100%, 300px);
  min-height: 66px;
  padding: 0.55rem 0.62rem 0.55rem 1.7rem;
  border: 0;
  border-radius: 999px;
  background: var(--home-ink);
  color: #fff;
  font-size: 1.15rem;
  font-weight: 900;
  text-decoration: none;
  box-shadow: 0 18px 42px rgba(11, 11, 10, 0.18);
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.home-hero-cta:hover {
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 22px 48px rgba(11, 11, 10, 0.22);
}

.home-sign-in-link {
  color: var(--home-muted);
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
}

.home-sign-in-link:hover,
.home-sign-in-link:active {
  color: var(--home-ink);
  text-decoration: none;
}

.home-btn-circle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: var(--home-yellow);
  color: var(--home-ink);
  flex: 0 0 auto;
}

.home-hero-visual {
  position: relative;
  min-height: 360px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.home-hero-image {
  display: block;
  width: min(100%, 520px);
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  filter: drop-shadow(0 22px 30px rgba(11, 11, 10, 0.08));
}

.home-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
}

.home-section-label,
.home-science-kicker {
  margin: 0;
  color: var(--home-ink);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: uppercase;
}

.home-games {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-5);
}

.home-page.is-guest .home-games {
  display: flex;
  gap: var(--space-4);
  margin-right: calc(var(--space-4) * -1);
  padding: 0 var(--space-4) var(--space-3) 0;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.home-page.is-guest .home-games::-webkit-scrollbar {
  display: none;
}

.home-game-card {
  --game-accent: var(--home-mint);
  --game-accent-soft: var(--home-mint-soft);
  --game-button: #2d4a3a;
  --game-button-circle: #7fb08a;
  --game-completed-tint: #e4efe7;
  --game-button-text: #faf8f0;
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--home-line);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 22px 46px rgba(11, 11, 10, 0.08);
}

.home-game-card__overlay-link {
  position: absolute;
  inset: 0;
  z-index: 2;
  color: transparent;
  text-decoration: none;
}

.home-game-card__overlay-link span {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.home-page.is-guest .home-game-card {
  flex: 0 0 270px;
  display: flex;
  flex-direction: column;
  scroll-snap-align: start;
  box-shadow: none;
}

.home-page.is-authenticated .home-game-card {
  display: flex;
  flex-direction: column;
  min-height: 330px;
}

.home-game-card[data-game=wordle] {
  --game-accent: var(--home-mint);
  --game-accent-soft: var(--home-mint-soft);
  --game-button: #2d4a3a;
  --game-button-circle: #7fb08a;
  --game-completed-tint: #e4efe7;
}

.home-game-card[data-game=spelling_bee] {
  --game-accent: var(--home-yellow);
  --game-accent-soft: var(--home-yellow-soft);
  --game-button: #9a7b2e;
  --game-button-circle: #e8c44d;
  --game-completed-tint: #faf1d4;
}

.home-game-card[data-game=connections] {
  --game-accent: var(--home-lavender);
  --game-accent-soft: var(--home-lavender-soft);
  --game-button: #6b4a8a;
  --game-button-circle: #a584c9;
  --game-completed-tint: #efe8f5;
}

.home-game-card[data-game=sudoku] {
  --game-accent: var(--home-rose);
  --game-accent-soft: var(--home-rose-soft);
  --game-button: #a85a4e;
  --game-button-circle: #d98b7e;
  --game-completed-tint: #f7e6e2;
}

.home-game-card__top {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) auto;
  gap: var(--space-4);
  align-items: start;
  padding: var(--space-5);
}

.home-page.is-guest .home-game-card__top {
  grid-template-columns: 72px minmax(0, 1fr);
  padding: var(--space-4);
}

.home-game-icon {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border-radius: 21px;
  background: var(--game-accent-soft);
  flex: 0 0 auto;
}

.home-page.is-authenticated .home-game-icon {
  width: 76px;
  height: 76px;
}

.home-game-icon__image {
  display: block;
  width: 60px;
  height: 60px;
  -o-object-fit: contain;
     object-fit: contain;
}

.home-game-info {
  min-width: 0;
}

.home-game-title {
  margin: 0;
  color: var(--home-ink);
  font-family: var(--font-display);
  font-size: 1.95rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
}

.home-page.is-guest .home-game-title {
  font-size: 1.45rem;
}

.home-game-desc {
  max-width: 250px;
  min-height: 2.6em;
  margin: 0.72rem 0 0;
  color: var(--home-ink);
  font-size: 1.02rem;
  line-height: 1.28;
}

.home-page.is-guest .home-game-desc {
  font-size: 0.98rem;
}

.home-game-status {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.75rem;
}

.home-status-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 1.05rem;
  border: 1px solid var(--home-ink);
  border-radius: 999px;
  background: #fff;
  color: var(--home-ink);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
}

.home-status-badge.is-soon {
  background: var(--home-soft);
  border-color: var(--home-line);
  color: var(--home-muted);
}

.home-game-card__foot {
  height: 12px;
  margin-top: auto;
  background: var(--game-accent);
}

.home-game-actions {
  display: grid;
  gap: var(--space-3);
  margin-top: auto;
  padding: 0 var(--space-5) var(--space-5);
}

.home-game-btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  width: 100%;
  min-height: 58px;
  padding: 0.68rem 0.74rem 0.68rem 1.2rem;
  border: 0;
  border-radius: 13px;
  background: #fff;
  color: var(--home-ink);
  font-size: 1.05rem;
  font-weight: 900;
  line-height: 1.15;
  text-align: left;
  text-decoration: none;
  transition: transform 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}

.home-game-btn:hover {
  color: var(--home-ink);
  transform: translateY(-1px);
}

.home-game-btn.is-primary {
  justify-content: center;
  min-height: 58px;
  background: var(--game-button);
  color: var(--game-button-text);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.home-game-btn.is-primary:hover {
  color: var(--game-button-text);
  box-shadow: 0 16px 30px rgba(11, 11, 10, 0.14);
}

.home-game-btn.is-primary .home-btn-circle {
  width: 36px;
  height: 36px;
  margin-left: auto;
  background: var(--game-button-circle);
}

.home-game-btn.is-ghost {
  background: var(--home-soft);
}

.home-game-btn.is-ghost span {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
}

.home-game-btn.is-ghost > i {
  color: var(--home-muted);
}

.home-game-secondary-actions {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: var(--space-3);
}

.home-game-btn.is-secondary {
  justify-content: center;
  min-height: 58px;
  padding: 0.62rem 0.76rem;
  font-size: 1rem;
}

.home-game-btn.is-secondary span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.62rem;
}

.home-game-btn.is-archive {
  background: var(--home-soft);
}

.home-game-btn.is-practice {
  background: var(--game-accent-soft);
}

.home-game-btn.is-disabled {
  justify-content: center;
  background: var(--home-soft);
  color: var(--home-muted);
}

.home-science {
  margin-top: var(--space-6);
  padding: clamp(1.4rem, 3vw, 2.5rem);
  border: 1px solid var(--home-line);
  border-radius: 30px;
  background: #f0ebf8;
  box-shadow: 0 22px 48px rgba(11, 11, 10, 0.08);
}

.home-science-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
}

.home-science-controls {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
}

.home-science-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 1px solid var(--home-ink);
  border-radius: 999px;
  background: #fff;
  color: var(--home-ink);
  cursor: pointer;
  transition: opacity 0.16s ease, transform 0.16s ease;
}

.home-science-arrow:hover {
  transform: translateY(-1px);
}

.home-science-arrow:disabled {
  cursor: default;
  opacity: 0.35;
  transform: none;
}

.home-science-track {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.home-science-track::-webkit-scrollbar {
  display: none;
}

.home-science-slide {
  flex: 0 0 100%;
  min-width: 0;
  scroll-snap-align: start;
}

.home-science-content {
  display: block;
}

.home-science-copy {
  max-width: 720px;
}

.home-science-stat {
  margin: 0 0 var(--space-3);
  color: var(--home-ink);
  font-family: var(--font-display);
  font-size: 4.8rem;
  font-weight: 800;
  line-height: 0.92;
  letter-spacing: 0;
}

.home-science-body {
  max-width: 640px;
  margin: 0;
  color: var(--home-ink);
  font-size: 1.05rem;
  line-height: 1.45;
}

.home-science-source {
  margin: var(--space-4) 0 0;
  color: var(--home-ink);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1.45;
  text-transform: uppercase;
}

.home-science-source a {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.22em;
}

.home-science-visual {
  display: flex;
  justify-content: center;
}

.home-science-image {
  width: 140px;
  height: 140px;
  -o-object-fit: contain;
     object-fit: contain;
}

.home-science-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.7rem;
  margin-top: var(--space-4);
}

.home-science-dot {
  width: 30px;
  height: 8px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(11, 11, 10, 0.12);
  cursor: pointer;
}

.home-science-dot.is-active {
  background: var(--home-lavender);
}

@media (prefers-reduced-motion: no-preference) {
  .home-hero-title,
  .home-hero-sub,
  .home-hero-cta,
  .home-hero-visual,
  .home-game-card,
  .home-science {
    animation: home-rise 0.42s cubic-bezier(0.22, 0.61, 0.36, 1) both;
  }
  .home-hero-sub,
  .home-hero-visual {
    animation-delay: 0.05s;
  }
  .home-game-card:nth-child(2) {
    animation-delay: 0.04s;
  }
  .home-game-card:nth-child(3) {
    animation-delay: 0.08s;
  }
  .home-game-card:nth-child(4) {
    animation-delay: 0.12s;
  }
}
@keyframes home-rise {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 980px) {
  .home-page.is-guest .home-hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(220px, 0.76fr);
    gap: var(--space-3);
  }
  .home-hero-visual {
    min-height: 260px;
  }
  .home-hero-image {
    width: min(100%, 400px);
  }
  .home-games {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 760px) {
  .home-page {
    padding-bottom: calc(6rem + env(safe-area-inset-bottom));
  }
  .home-hero {
    padding-top: var(--space-5);
  }
  .home-hero-title {
    font-size: 3.55rem;
  }
  .home-page.is-guest .home-hero-grid {
    position: relative;
    display: block;
    min-height: 250px;
    margin-bottom: var(--space-5);
  }
  .home-page.is-guest .home-intro {
    position: relative;
    z-index: 2;
    max-width: 74%;
  }
  .home-hero-sub {
    font-size: 1.1rem;
  }
  .home-page.is-guest .home-hero-sub {
    max-width: 280px;
  }
  .home-page.is-guest .home-hero-visual {
    position: absolute;
    top: 1.2rem;
    right: -0.75rem;
    z-index: 1;
    align-self: auto;
    min-height: 0;
    margin: 0;
    transform: none;
    pointer-events: none;
  }
  .home-page.is-guest .home-hero-image {
    width: 218px;
    max-width: none;
  }
  .home-game-card__top {
    grid-template-columns: 76px minmax(0, 1fr);
    gap: var(--space-3);
  }
  .home-page.is-authenticated .home-game-card__top {
    grid-template-columns: 76px minmax(0, 1fr) auto;
  }
  .home-game-status {
    grid-column: auto;
    align-self: start;
    justify-self: end;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-start;
  }
  .home-page.is-authenticated .home-status-badge {
    min-height: 34px;
    padding: 0 0.78rem;
    font-size: 0.68rem;
  }
}
@media (max-width: 560px) {
  .home-page .app-container, .home-page .container {
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
  .home-native-bar .home-xp-badge {
    display: none;
  }
  .home-date-pill {
    min-height: 36px;
    margin-bottom: var(--space-4);
    font-size: 0.68rem;
  }
  .home-hero-title {
    font-size: 2.92rem;
  }
  .home-page.is-guest .home-hero-title {
    font-size: 4.18rem;
  }
  .home-hero-sub {
    max-width: 340px;
  }
  .home-hero-cta {
    min-width: min(100%, 280px);
    min-height: 54px;
    font-size: 1.04rem;
    padding: 0.44rem 0.52rem 0.44rem 1.35rem;
  }
  .home-sign-in-link {
    font-size: 0.95rem;
  }
  .home-page.is-guest .home-btn-circle {
    width: 40px;
    height: 40px;
  }
  .home-hero-actions {
    display: flex;
    width: calc(100vw - 2 * var(--space-3));
    max-width: 360px;
    flex-wrap: nowrap;
    gap: 0.7rem;
  }
  .home-page.is-guest .home-hero-cta {
    min-width: 0;
    flex: 1 1 240px;
    gap: 0.6rem;
    padding-left: 1.05rem;
    font-size: 0.96rem;
  }
  .home-hero-visual {
    min-height: 210px;
  }
  .home-page.is-authenticated .home-hero-image {
    width: min(100%, 340px);
  }
  .home-page.is-guest .home-hero-visual {
    top: 1.55rem;
    right: -1rem;
    min-height: 0;
    margin-top: 0;
  }
  .home-page.is-guest .home-hero-image {
    width: 184px;
  }
  .home-section-heading {
    margin-top: var(--space-6);
  }
  .home-page.is-guest .home-games {
    margin-right: calc(var(--space-3) * -1);
    padding-right: var(--space-3);
  }
  .home-page.is-guest .home-game-card {
    flex-basis: 238px;
  }
  .home-page.is-authenticated .home-game-card {
    min-height: 0;
  }
  .home-game-card {
    border-radius: 24px;
  }
  .home-game-card__top {
    grid-template-columns: 64px minmax(0, 1fr);
    padding: var(--space-4);
  }
  .home-page.is-authenticated .home-game-card__top {
    grid-template-columns: 64px minmax(0, 1fr) auto;
    gap: 0.65rem;
  }
  .home-game-icon,
  .home-page.is-authenticated .home-game-icon {
    width: 64px;
    height: 64px;
    border-radius: 18px;
  }
  .home-game-icon__image {
    width: 52px;
    height: 52px;
  }
  .home-game-title {
    font-size: 1.62rem;
  }
  .home-page.is-guest .home-game-title {
    font-size: 1.32rem;
  }
  .home-game-desc {
    font-size: 0.98rem;
  }
  .home-game-actions {
    padding: 0 var(--space-4) var(--space-4);
  }
  .home-page.is-authenticated .home-status-badge {
    min-height: 30px;
    padding: 0 0.66rem;
    font-size: 0.62rem;
  }
  .home-page.is-authenticated .home-game-btn.is-ghost,
  .home-page.is-authenticated .home-game-btn.is-secondary {
    min-height: 48px;
    padding: 0.55rem 0.72rem 0.55rem 1rem;
    font-size: 0.94rem;
  }
  .home-science {
    border-radius: 24px;
  }
  .home-science-header {
    align-items: flex-start;
  }
  .home-science-controls {
    display: none;
  }
  .home-science-stat {
    font-size: 3.2rem;
  }
}
.wordle-page {
  padding: var(--space-5) 0 var(--space-7);
}

.wordle-panel {
  max-width: 720px;
  margin: 0 auto;
  padding: var(--space-4);
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-soft);
}

.game-message {
  min-height: 36px;
  margin-bottom: var(--space-3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
}

.wordle-board {
  display: grid;
  gap: var(--space-2);
  margin: 0 auto var(--space-4);
  max-width: 420px;
}

.wordle-row {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: var(--space-2);
}

.wordle-tile {
  width: 70px;
  height: 70px;
  border-radius: var(--radius-sm);
  border: 2px solid var(--color-border-light);
  display: flex;
  font-size: 2rem;
  font-weight: 700;
  text-transform: uppercase;
  align-items: center;
  justify-content: center;
  background-color: var(--color-surface-alt);
  transition: transform 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}
.wordle-tile.is-filled {
  border-color: var(--color-secondary);
}
.wordle-tile.filled-box {
  border-color: var(--color-secondary);
}
.wordle-tile.correct {
  background-color: var(--color-correct);
  color: var(--color-correct-text);
  border-color: var(--color-primary-strong);
}
.wordle-tile.present {
  background-color: var(--color-present);
  color: var(--color-present-text);
  border-color: #b28a44;
}
.wordle-tile.absent {
  background-color: var(--color-absent);
  color: var(--color-absent-text);
  border-color: var(--color-absent-border);
}
.wordle-tile.animating {
  transform: rotateX(90deg);
}
.wordle-tile.reveal {
  transform: rotateX(0);
}

@media (max-width: 520px) {
  .wordle-tile {
    width: 54px;
    height: 54px;
    font-size: 1.6rem;
  }
}
.wordle-keyboard {
  margin-top: var(--space-5);
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.keyboard-row {
  display: flex;
  justify-content: center;
  gap: var(--space-2);
}

.key-button {
  flex: 1;
  max-width: 52px;
  padding: 0.85rem 0.3rem;
  border-radius: var(--radius-sm);
  border: 1px solid var(--color-border);
  background-color: var(--color-key);
  color: var(--color-text);
  font-weight: 600;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.1s ease;
  -webkit-tap-highlight-color: transparent;
}
.key-button:hover {
  transform: translateY(-1px);
  background-color: var(--color-key-hover);
}
.key-button.correct {
  background-color: var(--color-correct);
  color: var(--color-correct-text);
  border-color: var(--color-primary-strong);
}
.key-button.present {
  background-color: var(--color-present);
  color: var(--color-present-text);
  border-color: #b28a44;
}
.key-button.absent {
  background-color: var(--color-absent);
  color: var(--color-absent-text);
  border-color: var(--color-absent-border);
}

.key-button--wide {
  flex: 1.4;
  max-width: 84px;
}

.wordle-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: var(--space-3);
  margin-bottom: var(--space-4);
}

.wordle-meta-item {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}

.game-modal .modal__dialog {
  width: min(720px, 92vw);
}
.game-modal .modal__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.game-modal__header {
  align-items: flex-start;
  gap: var(--space-4);
  background: linear-gradient(135deg, #f6efe6, #fdfaf6);
}

.game-modal__title {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.result-badge {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  font-family: var(--font-display);
  font-size: 1.4rem;
  letter-spacing: 0.02em;
  color: var(--color-primary-strong);
}

.result-subtitle {
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 0.7rem;
  color: var(--color-text-muted);
}

.completed-results {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  margin-bottom: var(--space-4);
}

.target-word-display {
  font-size: clamp(1.5rem, 4vw, 2rem);
  font-weight: 600;
  letter-spacing: 0.2em;
  background-color: var(--color-surface-alt);
  padding: var(--space-3);
  border-radius: var(--radius-md);
  text-align: center;
}

.summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: var(--space-3);
}

.summary-card {
  background-color: var(--color-surface-alt);
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-md);
  padding: var(--space-3);
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  text-align: center;
}

.summary-label {
  font-size: 0.75rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-text-muted);
}

.summary-value {
  font-family: var(--font-display);
  font-size: 1.35rem;
  color: var(--color-primary-strong);
}

.keyboard-hint {
  margin-top: var(--space-2);
  font-size: 0.85rem;
  color: var(--color-text-muted);
  text-align: center;
}

body:has(.wordle-page) {
  --letris-ink: #0b0b0a;
  --letris-paper: #fffdf8;
  --letris-soft: #f4f0e8;
  --letris-line: rgba(11, 11, 10, 0.18);
  --letris-muted: #5b5650;
  --letris-mint: #67b28b;
  --letris-mint-soft: #dfeee5;
  --letris-yellow: #f4cf4f;
  --letris-yellow-soft: #fff0b9;
  --letris-lavender: #9276c8;
  --letris-rose: #d58a89;
  --letris-absent: #77716a;
  color: var(--letris-ink);
  background: var(--letris-paper);
}

body:has(.wordle-page) .app-header {
  background: rgba(255, 253, 248, 0.92);
  border-bottom: 1px solid var(--letris-line);
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px);
          backdrop-filter: blur(18px);
}

body:has(.wordle-page) .app-brand,
body:has(.wordle-page) .nav-link {
  color: var(--letris-ink);
}

body:has(.wordle-page) .text-gradient {
  color: var(--letris-ink);
  background: none;
  -webkit-text-fill-color: currentColor;
}

.wordle-page {
  min-height: 100vh;
  overflow-x: hidden;
  padding: var(--space-4) 0 calc(var(--space-7) + env(safe-area-inset-bottom));
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--letris-paper);
  background-size: 34px 34px;
}

.wordle-page .app-container, .wordle-page .container {
  max-width: 760px;
}

.wordle-panel {
  position: relative;
  display: grid;
  gap: var(--space-3);
  max-width: 720px;
  margin: 0 auto;
  padding: var(--space-4);
  border: 1px solid var(--letris-line);
  border-radius: 24px;
  background: rgba(255, 253, 248, 0.9);
  box-shadow: 0 22px 46px rgba(11, 11, 10, 0.08);
}

.demo-completion-copy {
  margin: 0;
  color: var(--color-text);
  font-size: 1.05rem;
  line-height: 1.45;
}

.wordle-game-header {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
}

.wordle-game-copy {
  display: flex;
  justify-content: center;
  min-width: 0;
}

.wordle-date-pill {
  display: inline-flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  min-height: 32px;
  margin: 0;
  padding: 0 0.82rem;
  border: 1px solid var(--letris-line);
  border-radius: 999px;
  background: #fff;
  color: var(--letris-ink);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
}

.game-message {
  display: grid;
  min-height: 38px;
  place-items: center;
  margin: 0;
  color: var(--letris-ink);
  font-weight: 900;
}

.message-text {
  width: 100%;
  padding: 0.72rem 0.95rem;
  border: 1px solid var(--letris-line);
  border-radius: 16px;
  background: #fff;
  color: var(--letris-ink);
  text-align: center;
}

.message-success {
  background: var(--letris-mint-soft);
}

.message-warning,
.message-error {
  background: var(--letris-rose);
  color: #fff;
}

.message-info {
  background: #fff;
}

.wordle-board {
  display: grid;
  max-width: 390px;
  gap: 0.52rem;
  margin: 0 auto;
}

.wordle-row {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.52rem;
}

.wordle-tile {
  display: flex;
  width: 70px;
  height: 70px;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--letris-ink);
  border-radius: 16px;
  background: #fff;
  color: var(--letris-ink);
  font-family: var(--font-display);
  font-size: 2.1rem;
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
  box-shadow: 0 3px 0 rgba(11, 11, 10, 0.12);
  transition: transform 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

.wordle-tile.is-filled,
.wordle-tile.filled-box {
  background: var(--letris-soft);
  border-color: var(--letris-ink);
}

.wordle-tile.correct {
  background: var(--letris-mint);
  border-color: var(--letris-ink);
  color: #fff;
}

.wordle-tile.present {
  background: var(--letris-yellow);
  border-color: var(--letris-ink);
  color: var(--letris-ink);
}

.wordle-tile.absent {
  background: var(--letris-absent);
  border-color: var(--letris-absent);
  color: #fff;
}

.wordle-keyboard {
  display: flex;
  flex-direction: column;
  gap: 0.42rem;
  margin-top: 0;
}

.keyboard-row {
  display: flex;
  justify-content: center;
  gap: 0.42rem;
}

.key-button {
  display: inline-flex;
  flex: 1;
  max-width: 52px;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 0 0.32rem;
  border: 1px solid var(--letris-line);
  border-radius: 14px;
  background: #fff;
  color: var(--letris-ink);
  cursor: pointer;
  font-size: 0.9rem;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
  box-shadow: 0 3px 0 rgba(11, 11, 10, 0.1);
  -webkit-tap-highlight-color: transparent;
  transition: transform 0.12s ease, background 0.15s ease, box-shadow 0.12s ease;
}

.key-button:hover {
  background: var(--letris-soft);
  transform: translateY(-1px);
}

.key-button:active {
  box-shadow: 0 1px 0 rgba(11, 11, 10, 0.12);
  transform: translateY(1px);
}

.key-button.correct {
  background: var(--letris-mint);
  border-color: transparent;
  color: #fff;
}

.key-button.present {
  background: var(--letris-yellow);
  border-color: transparent;
  color: var(--letris-ink);
}

.key-button.absent {
  background: var(--letris-absent);
  border-color: transparent;
  color: #fff;
}

.key-button--wide {
  flex: 1.55;
  max-width: 86px;
}

.key-button svg {
  width: 22px;
  height: 22px;
}

.wordle-page .text-center.mt-sm.text-muted {
  margin-top: 0;
  color: var(--letris-muted);
  font-weight: 800;
}

.game-modal .modal__dialog {
  overflow: hidden;
  border: 1px solid var(--letris-line);
  border-radius: 24px;
  background: var(--letris-paper);
  box-shadow: 0 24px 58px rgba(11, 11, 10, 0.18);
}

.game-modal__header {
  align-items: flex-start;
  gap: var(--space-4);
  border-bottom: 1px solid var(--letris-line);
  background: #fff;
}

.result-badge {
  color: var(--letris-ink);
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
}

.result-subtitle {
  color: var(--letris-muted);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.12em;
}

.target-word-display {
  border: 1px solid var(--letris-line);
  border-radius: 18px;
  background: var(--letris-yellow-soft);
  color: var(--letris-ink);
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 4vw, 2rem);
  font-weight: 800;
  letter-spacing: 0.16em;
}

.summary-card {
  border: 1px solid var(--letris-line);
  border-radius: 18px;
  background: #fff;
}

.summary-label {
  color: var(--letris-muted);
  font-weight: 900;
}

.summary-value {
  color: var(--letris-ink);
  font-weight: 800;
}

.demo-completion-modal .modal__backdrop {
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.04) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.04) 1px, transparent 1px), rgba(255, 253, 248, 0.78);
  background-size: 34px 34px;
  -webkit-backdrop-filter: blur(6px);
          backdrop-filter: blur(6px);
}

.demo-completion-modal .demo-result-dialog {
  width: min(520px, 94vw);
  max-height: 88vh;
  overflow-y: auto;
  border: 1px solid var(--letris-line);
  border-radius: 28px;
  background: var(--letris-paper);
  box-shadow: 0 26px 70px rgba(11, 11, 10, 0.2);
}

.demo-completion-modal .demo-result-body {
  display: grid;
  gap: 1.2rem;
  justify-items: stretch;
  padding: 1.5rem;
}

.demo-result-close {
  position: absolute;
  top: 0.9rem;
  right: 0.9rem;
  z-index: 2;
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid transparent;
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.82);
  color: var(--letris-muted);
  font-size: 1.9rem;
  line-height: 1;
}

.demo-result-close:hover,
.demo-result-close:active {
  border-color: var(--letris-line);
  background: #fff;
  color: var(--letris-ink);
}

.demo-result-hero {
  display: grid;
  justify-items: center;
  gap: 1.05rem;
  padding: 1.75rem 1.3rem;
  border: 1px solid var(--letris-line);
  border-radius: 24px;
  background: rgba(255, 253, 248, 0.94);
  box-shadow: 0 18px 38px rgba(11, 11, 10, 0.08);
  text-align: center;
}

.demo-result-brand {
  display: inline-block;
  min-height: 54px;
  color: var(--letris-ink);
  font-family: var(--font-display);
  font-size: 2.7rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.9;
}

.demo-result-brand-dot {
  display: inline-block;
  width: 0.19em;
  height: 0.19em;
  margin-left: 0.07em;
  border-radius: 999px;
  background: #78d2c9;
  vertical-align: baseline;
  transform: translateY(0.08em);
}

.demo-result-title {
  margin: 0;
  max-width: 420px;
  color: var(--letris-ink);
  font-family: var(--font-display);
  font-size: 4.1rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.95;
}

.demo-completion-modal .demo-completion-copy {
  max-width: 390px;
  color: var(--letris-ink);
  font-size: 1.14rem;
  font-weight: 500;
  line-height: 1.42;
  text-align: center;
}

.demo-result-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 66px;
  padding: 0.78rem 0.85rem 0.78rem 1.25rem;
  border: 0;
  border-radius: 16px;
  background: var(--letris-ink);
  color: #fff;
  font-size: 1.18rem;
  font-weight: 900;
  line-height: 1.1;
  text-decoration: none;
  box-shadow: 0 18px 38px rgba(11, 11, 10, 0.16);
}

.demo-result-cta:hover,
.demo-result-cta:active {
  color: #fff;
  transform: translateY(-1px);
}

.demo-result-cta span:last-child {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 999px;
  background: var(--letris-yellow);
  color: var(--letris-ink);
}

.demo-result-secondary {
  justify-self: center;
  padding: 0.35rem 0.5rem;
  color: var(--letris-muted);
  font-size: 0.95rem;
  font-weight: 800;
  text-decoration: none;
}

.demo-result-secondary:hover,
.demo-result-secondary:active {
  color: var(--letris-ink);
  text-decoration: underline;
  text-underline-offset: 0.24em;
}

@media (max-width: 640px) {
  .wordle-page {
    padding: var(--space-3) 0 calc(6rem + env(safe-area-inset-bottom));
  }
  .wordle-page .app-container, .wordle-page .container {
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
  .wordle-panel {
    gap: var(--space-2);
    padding: var(--space-3);
    border-radius: 20px;
  }
  .wordle-game-header {
    min-height: 30px;
  }
  .wordle-date-pill {
    min-height: 28px;
    font-size: 0.58rem;
  }
  .wordle-board {
    max-width: min(100%, 328px);
    gap: 0.42rem;
  }
  .wordle-row {
    gap: 0.42rem;
  }
  .wordle-tile {
    width: 58px;
    height: 58px;
    border-radius: 14px;
    font-size: 1.72rem;
  }
  .keyboard-row {
    gap: 0.24rem;
  }
  .key-button {
    max-width: none;
    min-height: 43px;
    padding: 0 0.18rem;
    border-radius: 10px;
    font-size: 0.78rem;
  }
  .key-button--wide {
    flex: 1.5;
  }
  .demo-completion-modal {
    align-items: flex-end;
    padding: 0.75rem;
  }
  .demo-completion-modal .demo-result-dialog {
    width: 100%;
    max-height: 92vh;
    border-radius: 24px;
  }
  .demo-completion-modal .demo-result-body {
    gap: 1rem;
    padding: 1rem;
  }
  .demo-result-hero {
    padding: 1.4rem 1rem;
  }
  .demo-result-brand {
    min-height: 46px;
    font-size: 2.25rem;
  }
  .demo-result-title {
    font-size: 3.2rem;
  }
  .demo-completion-modal .demo-completion-copy {
    font-size: 1.05rem;
  }
  .demo-result-cta {
    font-size: 1.05rem;
  }
}
@media (max-width: 370px) {
  .wordle-panel {
    padding-left: var(--space-2);
    padding-right: var(--space-2);
  }
  .wordle-board {
    max-width: 296px;
  }
  .wordle-tile {
    width: 52px;
    height: 52px;
    font-size: 1.5rem;
  }
  .key-button {
    min-height: 39px;
    font-size: 0.7rem;
  }
}
.wordle-page.is-completed-detail {
  padding-top: clamp(1rem, 3vw, 2rem);
}

.wordle-page.is-completed-detail .app-container, .wordle-page.is-completed-detail .container {
  display: grid;
  max-width: 880px;
  gap: clamp(1rem, 2.6vw, 1.45rem);
}

.completed-detail-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: clamp(1rem, 4vw, 2rem);
  padding: clamp(1rem, 3vw, 1.4rem);
  border: 1px solid var(--letris-line);
  border-radius: 26px;
  background: rgba(255, 253, 248, 0.92);
  box-shadow: 0 22px 46px rgba(11, 11, 10, 0.08);
}

.completed-detail-title-row {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: clamp(0.8rem, 2.6vw, 1.1rem);
}

.completed-detail-icon {
  width: clamp(58px, 9vw, 76px);
  height: clamp(58px, 9vw, 76px);
  flex: 0 0 auto;
  padding: 0.6rem;
  border: 1px solid var(--letris-line);
  border-radius: 20px;
  background: var(--letris-mint-soft);
  -o-object-fit: contain;
     object-fit: contain;
}

.completed-detail-title {
  margin: 0;
  color: var(--letris-ink);
  font-family: var(--font-display);
  font-size: clamp(3rem, 9vw, 5.2rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.9;
}

.completed-detail-title span {
  color: #78d2c9;
}

.completed-detail-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.7rem;
}

.completed-detail-pill {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  padding: 0 0.9rem;
  border: 1px solid var(--letris-line);
  border-radius: 999px;
  background: var(--letris-mint-soft);
  color: var(--letris-ink);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.02em;
  line-height: 1;
}

.completed-detail-pill.is-date {
  background: #fff;
  text-transform: uppercase;
}

.completed-detail-word {
  display: grid;
  min-width: 190px;
  gap: 0.45rem;
  justify-items: center;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(11, 11, 10, 0.2);
  border-radius: 22px;
  background: var(--letris-yellow-soft);
}

.completed-detail-eyebrow {
  color: var(--letris-muted);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.completed-detail-word strong {
  color: var(--letris-ink);
  font-family: var(--font-display);
  font-size: clamp(1.9rem, 5vw, 2.7rem);
  font-weight: 800;
  letter-spacing: 0.14em;
  line-height: 1;
}

.completed-detail-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}

.completed-detail-stat {
  display: grid;
  min-height: 94px;
  align-content: center;
  justify-items: center;
  gap: 0.35rem;
  padding: 0.85rem;
  border: 1px solid var(--letris-line);
  border-radius: 20px;
  background: #fff;
  text-align: center;
}

.completed-detail-stat.is-xp {
  background: var(--letris-yellow-soft);
}

.completed-detail-stat .summary-label {
  color: var(--letris-muted);
  font-size: 0.68rem;
  letter-spacing: 0.14em;
}

.completed-detail-stat .summary-value {
  color: var(--letris-ink);
  font-size: clamp(1.2rem, 3vw, 1.75rem);
  line-height: 1.05;
}

.completed-detail-card {
  display: grid;
  gap: 1rem;
  padding: clamp(1rem, 3vw, 1.35rem);
  border: 1px solid var(--letris-line);
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(11, 11, 10, 0.07);
}

.completed-detail-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.completed-detail-section-header h2 {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0;
  padding-bottom: 0.18rem;
  border-bottom: 0.28rem solid #78d2c9;
  color: var(--letris-ink);
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 4vw, 2.15rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
}

.completed-detail-note {
  padding: 0.8rem 1rem;
  border: 1px solid rgba(146, 118, 200, 0.28);
  border-radius: 18px;
  background: #ece5f5;
  color: var(--letris-ink);
  font-weight: 800;
}

.completed-detail-board {
  max-width: 382px;
  margin: 0 auto;
}

.completed-detail-keyboard {
  width: min(100%, 680px);
  margin: 0 auto;
}

.completed-detail-keyboard .key-button {
  pointer-events: none;
}

.completed-detail-actions {
  display: flex;
  justify-content: center;
  padding: 0.2rem 0 0.6rem;
}

.completed-detail-done-btn {
  position: relative;
  display: inline-flex;
  width: min(78%, 310px);
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 0.55rem 3.4rem;
  border: 1px solid var(--letris-ink);
  border-radius: 999px;
  background: var(--letris-ink);
  color: #fff;
  font-size: 0.98rem;
  font-weight: 900;
  text-decoration: none;
}

.completed-detail-done-btn span:last-child {
  display: inline-grid;
  position: absolute;
  right: 0.36rem;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 999px;
  background: var(--letris-yellow);
  color: var(--letris-ink);
  font-size: 1.18rem;
}

.completed-detail-done-btn:hover,
.completed-detail-done-btn:active {
  background: var(--letris-ink);
  color: #fff;
}

@media (max-width: 720px) {
  .wordle-page.is-completed-detail {
    padding-top: var(--space-3);
  }
  .wordle-page.is-completed-detail .app-container, .wordle-page.is-completed-detail .container {
    gap: 0.85rem;
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
  .completed-detail-hero {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 0.9rem;
    border-radius: 22px;
  }
  .completed-detail-title-row {
    align-items: flex-start;
  }
  .completed-detail-title {
    font-size: clamp(2.9rem, 15vw, 4.25rem);
  }
  .completed-detail-meta {
    gap: 0.42rem;
    margin-top: 0.55rem;
  }
  .completed-detail-pill {
    min-height: 30px;
    padding: 0 0.74rem;
    font-size: 0.66rem;
  }
  .completed-detail-word {
    width: 100%;
    min-width: 0;
    justify-items: start;
    padding: 0.85rem 0.95rem;
  }
  .completed-detail-word strong {
    font-size: 2rem;
  }
  .completed-detail-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
  }
  .completed-detail-stat {
    min-height: 82px;
    border-radius: 18px;
    padding: 0.72rem;
  }
  .completed-detail-card {
    gap: 0.85rem;
    border-radius: 22px;
  }
  .completed-detail-section-header h2 {
    font-size: 1.55rem;
  }
  .completed-detail-board {
    max-width: 330px;
  }
  .completed-detail-keyboard {
    gap: 0.35rem;
  }
  .completed-detail-keyboard .keyboard-row {
    gap: 0.28rem;
  }
  .completed-detail-keyboard .key-button {
    min-height: 40px;
    border-radius: 10px;
    font-size: 0.72rem;
  }
}
@media (max-width: 370px) {
  .completed-detail-icon {
    width: 54px;
    height: 54px;
    border-radius: 16px;
  }
  .completed-detail-title {
    font-size: 2.75rem;
  }
  .completed-detail-board {
    max-width: 296px;
  }
}
.challenges-page {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  padding-bottom: calc(var(--space-7) + env(safe-area-inset-bottom));
}

.challenges-page[data-game=wordle] {
  background: radial-gradient(circle at 20% 10%, rgba(63, 107, 91, 0.16), transparent 50%), radial-gradient(circle at 80% 25%, rgba(194, 160, 77, 0.1), transparent 45%), linear-gradient(180deg, rgba(255, 255, 255, 0.55), transparent 60%), var(--color-bg);
}

.challenges-page[data-game=spelling_bee] {
  background: radial-gradient(circle at 25% 12%, rgba(194, 160, 77, 0.18), transparent 50%), radial-gradient(circle at 78% 22%, rgba(155, 123, 86, 0.1), transparent 45%), linear-gradient(180deg, rgba(255, 255, 255, 0.55), transparent 60%), var(--color-bg);
}

.challenges-page[data-game=connections] {
  background: radial-gradient(circle at 22% 10%, rgba(111, 138, 165, 0.16), transparent 50%), radial-gradient(circle at 82% 20%, rgba(63, 107, 91, 0.08), transparent 45%), linear-gradient(180deg, rgba(255, 255, 255, 0.55), transparent 60%), var(--color-bg);
}

.challenges-page[data-game=sudoku] {
  background: radial-gradient(circle at 20% 12%, rgba(155, 123, 86, 0.16), transparent 50%), radial-gradient(circle at 80% 18%, rgba(194, 160, 77, 0.1), transparent 45%), linear-gradient(180deg, rgba(255, 255, 255, 0.55), transparent 60%), var(--color-bg);
}

.challenges-page .app-container, .challenges-page .container {
  max-width: 680px;
}

.challenges-hero {
  position: relative;
  padding: var(--space-5) 0 var(--space-6);
}

.challenges-intro {
  text-align: center;
  margin-bottom: var(--space-5);
}

.challenges-icon-wrap {
  display: flex;
  justify-content: center;
  margin-bottom: var(--space-3);
}

.challenges-icon {
  width: 72px;
  height: 72px;
  border-radius: 20px;
  display: grid;
  place-items: center;
  font-size: 2.3rem;
  border: 1px solid transparent;
}

.challenges-page[data-game=wordle] .challenges-icon {
  background: rgba(63, 107, 91, 0.13);
  border-color: rgba(63, 107, 91, 0.25);
}

.challenges-page[data-game=spelling_bee] .challenges-icon {
  background: rgba(194, 160, 77, 0.16);
  border-color: rgba(194, 160, 77, 0.3);
}

.challenges-page[data-game=connections] .challenges-icon {
  background: rgba(111, 138, 165, 0.15);
  border-color: rgba(111, 138, 165, 0.28);
}

.challenges-page[data-game=sudoku] .challenges-icon {
  background: rgba(155, 123, 86, 0.14);
  border-color: rgba(155, 123, 86, 0.27);
}

.challenges-title {
  margin: 0 0 var(--space-2);
  font-family: var(--font-display);
  font-size: clamp(2.4rem, 8vw, 3.2rem);
  font-weight: 700;
  line-height: 1;
  color: var(--color-text);
  letter-spacing: -0.02em;
}

.challenges-subtitle {
  margin: 0;
  color: var(--color-text-muted);
  font-size: 1rem;
  line-height: 1.5;
}

.challenges-section-label {
  font-size: 0.7rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--color-text-muted);
  margin: 0 0 var(--space-3);
}

.challenges-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: var(--space-3);
}

.archive-card {
  background: var(--color-surface);
  border-radius: 16px;
  border: 1px solid var(--color-border);
  box-shadow: 0 2px 12px rgba(58, 46, 33, 0.07), 0 1px 3px rgba(58, 46, 33, 0.05);
  overflow: hidden;
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}
.archive-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(58, 46, 33, 0.12), 0 2px 6px rgba(58, 46, 33, 0.07);
}

.archive-card__top {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
}

.archive-date {
  display: flex;
  align-items: baseline;
  gap: 0.35rem;
}

.date-day {
  font-family: var(--font-display);
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  color: var(--color-text);
}

.date-month {
  font-size: 0.72rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--color-text-muted);
}

.archive-info {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  min-width: 0;
}

.archive-weekday {
  font-size: 0.92rem;
  font-weight: 600;
  color: var(--color-text);
}

.archive-pill {
  display: inline-flex;
  align-items: center;
  padding: 0.18rem 0.55rem;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  background: rgba(155, 123, 86, 0.12);
  color: #6f5235;
  border: 1px solid rgba(155, 123, 86, 0.25);
}

.archive-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 700;
  flex-shrink: 0;
}
.archive-badge.is-won {
  background: rgba(79, 122, 104, 0.14);
  color: var(--color-success);
  border: 1px solid rgba(79, 122, 104, 0.3);
}
.archive-badge.is-lost {
  background: rgba(184, 91, 86, 0.12);
  color: var(--color-danger);
  border: 1px solid rgba(184, 91, 86, 0.25);
}
.archive-badge.is-pending {
  background: rgba(194, 160, 77, 0.12);
  color: #7a5a14;
  border: 1px solid rgba(194, 160, 77, 0.25);
  font-size: 0.85rem;
}
.archive-badge.is-locked {
  background: var(--color-surface-alt);
  color: var(--color-text-muted);
  border: 1px solid var(--color-border-light);
  font-size: 0.85rem;
}

.archive-card__actions {
  padding: 0 var(--space-4) var(--space-3);
}

.archive-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 0.65rem 1rem;
  border-radius: var(--radius-md);
  font-weight: 700;
  font-size: 0.88rem;
  text-decoration: none;
  border: none;
  cursor: pointer;
  transition: opacity 0.15s ease, transform 0.12s ease;
  text-align: center;
}
.archive-btn:active {
  transform: scale(0.985);
  opacity: 0.9;
}

.archive-btn.is-primary {
  color: #fff;
  background: var(--color-primary);
}

.challenges-page[data-game=wordle] .archive-btn.is-primary {
  background: #3a6453;
}

.challenges-page[data-game=spelling_bee] .archive-btn.is-primary {
  background: #9b6e26;
}

.challenges-page[data-game=connections] .archive-btn.is-primary {
  background: #476685;
}

.challenges-page[data-game=sudoku] .archive-btn.is-primary {
  background: #8c6e4a;
}

.archive-btn.is-secondary {
  background: var(--color-surface-alt);
  color: var(--color-text-muted);
  font-weight: 600;
  border: 1px solid var(--color-border-light);
}

.challenges-pagination {
  margin-top: var(--space-5);
}

.pagination-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  flex-wrap: wrap;
}

.pagination-pages {
  display: flex;
  align-items: center;
  gap: 2px;
}

.pagination-page {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  border-radius: var(--radius-sm);
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--color-text-muted);
  text-decoration: none;
  transition: background 0.15s ease;
}
.pagination-page:hover {
  background: rgba(0, 0, 0, 0.05);
}
.pagination-page.is-active {
  background: var(--color-surface);
  color: var(--color-text);
  box-shadow: 0 1px 4px rgba(58, 46, 33, 0.12);
  border: 1px solid var(--color-border);
}

.pagination-dots {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 36px;
  font-size: 0.85rem;
  color: var(--color-text-muted);
}

.pagination-btn {
  display: inline-flex;
  align-items: center;
  padding: 0.45rem 0.85rem;
  border-radius: var(--radius-sm);
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--color-text-muted);
  text-decoration: none;
  transition: background 0.15s ease;
}
.pagination-btn:hover {
  background: rgba(0, 0, 0, 0.05);
}

.challenges-footer {
  margin-top: var(--space-6);
  display: flex;
  justify-content: center;
}

.challenges-back-btn {
  display: inline-flex;
  align-items: center;
  padding: 0.7rem 1.4rem;
  border-radius: var(--radius-md);
  font-weight: 600;
  font-size: 0.9rem;
  color: var(--color-text-muted);
  text-decoration: none;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-soft);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.challenges-back-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(58, 46, 33, 0.1);
}

@media (prefers-reduced-motion: no-preference) {
  .archive-card {
    animation: challenges-card-rise 0.5s cubic-bezier(0.22, 0.61, 0.36, 1) both;
  }
  .archive-card:nth-child(1) {
    animation-delay: 0s;
  }
  .archive-card:nth-child(2) {
    animation-delay: 0.04s;
  }
  .archive-card:nth-child(3) {
    animation-delay: 0.08s;
  }
  .archive-card:nth-child(4) {
    animation-delay: 0.12s;
  }
  .archive-card:nth-child(5) {
    animation-delay: 0.16s;
  }
  .archive-card:nth-child(6) {
    animation-delay: 0.2s;
  }
  .archive-card:nth-child(7) {
    animation-delay: 0.24s;
  }
  .archive-card:nth-child(8) {
    animation-delay: 0.28s;
  }
  .archive-card:nth-child(9) {
    animation-delay: 0.32s;
  }
  .archive-card:nth-child(10) {
    animation-delay: 0.36s;
  }
  .archive-card:nth-child(11) {
    animation-delay: 0.4s;
  }
  .archive-card:nth-child(12) {
    animation-delay: 0.44s;
  }
  .archive-card:nth-child(13) {
    animation-delay: 0.48s;
  }
  .archive-card:nth-child(14) {
    animation-delay: 0.52s;
  }
  .archive-card:nth-child(15) {
    animation-delay: 0.56s;
  }
  .archive-card:nth-child(16) {
    animation-delay: 0.6s;
  }
  .archive-card:nth-child(17) {
    animation-delay: 0.64s;
  }
  .archive-card:nth-child(18) {
    animation-delay: 0.68s;
  }
  .archive-card:nth-child(19) {
    animation-delay: 0.72s;
  }
  .archive-card:nth-child(20) {
    animation-delay: 0.76s;
  }
  .challenges-intro {
    animation: challenges-card-rise 0.45s cubic-bezier(0.22, 0.61, 0.36, 1) both;
  }
}
@keyframes challenges-card-rise {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 639px) {
  .challenges-grid {
    grid-template-columns: 1fr;
  }
}
body:has(.challenges-page) {
  --archive-ink: #0b0b0a;
  --archive-paper: #fffdf8;
  --archive-soft: #f4f0e8;
  --archive-line: rgba(11, 11, 10, 0.18);
  --archive-muted: #5b5650;
  --archive-mint: #67b28b;
  --archive-mint-soft: #dfeee5;
  --archive-yellow: #f4cf4f;
  --archive-yellow-soft: #fff0b9;
  --archive-lavender: #9276c8;
  --archive-lavender-soft: #ece5f5;
  --archive-rose: #d58a89;
  --archive-rose-soft: #f3dada;
  color: var(--archive-ink);
  background: var(--archive-paper);
}

body:has(.challenges-page) .app-header {
  background: rgba(255, 253, 248, 0.92);
  border-bottom: 1px solid var(--archive-line);
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px);
          backdrop-filter: blur(18px);
}

body:has(.challenges-page) .app-brand,
body:has(.challenges-page) .nav-link {
  color: var(--archive-ink);
}

body:has(.challenges-page) .text-gradient {
  color: var(--archive-ink);
  background: none;
  -webkit-text-fill-color: currentColor;
}

.challenges-page,
.challenges-page[data-game=wordle],
.challenges-page[data-game=spelling_bee],
.challenges-page[data-game=connections],
.challenges-page[data-game=sudoku] {
  overflow: visible;
  overflow-x: hidden;
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--archive-paper);
  background-size: 34px 34px;
}

.challenges-page .app-container, .challenges-page .container {
  max-width: 1120px;
}

.challenges-hero {
  padding: var(--space-5) 0 var(--space-6);
}

.challenges-intro {
  position: relative;
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  align-items: center;
  gap: var(--space-4);
  margin: 0 0 var(--space-5);
  text-align: left;
}

.challenges-intro::after {
  content: "";
  display: none;
}

.challenges-page[data-game=spelling_bee] .challenges-subtitle::after {
  border-top-color: var(--archive-yellow);
}

.challenges-page[data-game=connections] .challenges-subtitle::after {
  border-top-color: var(--archive-lavender);
}

.challenges-page[data-game=sudoku] .challenges-subtitle::after {
  border-top-color: var(--archive-rose);
}

.challenges-icon-wrap {
  justify-content: flex-start;
  margin: 0;
}

.challenges-icon,
.challenges-page[data-game=wordle] .challenges-icon,
.challenges-page[data-game=spelling_bee] .challenges-icon,
.challenges-page[data-game=connections] .challenges-icon,
.challenges-page[data-game=sudoku] .challenges-icon {
  display: grid;
  width: 92px;
  height: 92px;
  place-items: center;
  border: 0;
  border-radius: 22px;
  background: var(--archive-mint-soft);
  color: var(--archive-ink);
  font-size: 2rem;
}

.challenges-page[data-game=spelling_bee] .challenges-icon {
  background: var(--archive-yellow-soft);
}

.challenges-page[data-game=connections] .challenges-icon {
  background: var(--archive-lavender-soft);
}

.challenges-page[data-game=sudoku] .challenges-icon {
  background: var(--archive-rose-soft);
}

.challenges-icon__image {
  display: block;
  width: 66px;
  height: 66px;
  -o-object-fit: contain;
     object-fit: contain;
}

.challenges-title {
  margin: 0;
  color: var(--archive-ink);
  font-size: clamp(3.1rem, 7vw, 6.2rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.86;
}

.challenges-title::after {
  content: ".";
  color: #78d2c9;
}

.challenges-page[data-game=spelling_bee] .challenges-title::after {
  color: var(--archive-yellow);
}

.challenges-page[data-game=connections] .challenges-title::after {
  color: var(--archive-lavender);
}

.challenges-page[data-game=sudoku] .challenges-title::after {
  color: var(--archive-rose);
}

.challenges-subtitle {
  position: relative;
  grid-column: 2;
  width: -moz-fit-content;
  width: fit-content;
  max-width: min(620px, 100%);
  margin: calc(var(--space-2) * -1) 0 0;
  padding-bottom: 0.45rem;
  color: var(--archive-ink);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.35;
}

.challenges-subtitle::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 8px;
  border-top: 5px solid var(--archive-mint);
  border-radius: 999px;
  transform: rotate(-1deg);
}

.challenges-section-label {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  margin: 0 0 var(--space-3);
  padding: 0 0.85rem;
  border: 1px solid var(--archive-line);
  border-radius: 999px;
  background: #fff;
  color: var(--archive-ink);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
}

.challenges-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-3);
}

.archive-card {
  position: relative;
  display: grid;
  min-height: 180px;
  overflow: hidden;
  border: 1px solid var(--archive-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(11, 11, 10, 0.07);
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.archive-card::after {
  content: none;
}

.challenges-page[data-game=spelling_bee] .archive-card::after {
  background: var(--archive-yellow);
}

.challenges-page[data-game=connections] .archive-card::after {
  background: var(--archive-lavender);
}

.challenges-page[data-game=sudoku] .archive-card::after {
  background: var(--archive-rose);
}

.archive-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 42px rgba(11, 11, 10, 0.1);
}

.archive-card__top {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: start;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-4) 0;
}

.archive-date {
  display: grid;
  width: 72px;
  height: 72px;
  place-items: center;
  align-content: center;
  gap: 0.1rem;
  border-radius: 18px;
  background: var(--archive-soft);
  color: var(--archive-ink);
}

.date-day {
  color: var(--archive-ink);
  font-size: 2.25rem;
  font-weight: 800;
  line-height: 0.85;
}

.date-month {
  color: var(--archive-muted);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
}

.archive-info {
  display: grid;
  align-content: center;
  gap: 0.42rem;
  min-height: 72px;
  min-width: 0;
}

.archive-weekday {
  overflow: hidden;
  color: var(--archive-ink);
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.archive-pill {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  min-height: 24px;
  align-items: center;
  padding: 0 0.58rem;
  border: 1px solid var(--archive-line);
  border-radius: 999px;
  background: #fff;
  color: var(--archive-ink);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.04em;
}

.archive-badge {
  display: inline-flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--archive-line);
  border-radius: 999px;
  background: #fff;
  color: var(--archive-ink);
  font-size: 0.82rem;
  font-weight: 900;
}

.archive-badge.is-won {
  border-color: transparent;
  background: var(--archive-mint);
  color: #fff;
}

.archive-badge.is-lost {
  border-color: transparent;
  background: var(--archive-rose);
  color: #fff;
}

.archive-badge.is-pending {
  border-color: transparent;
  background: var(--archive-yellow);
  color: var(--archive-ink);
}

.archive-badge.is-locked {
  background: var(--archive-soft);
  color: var(--archive-muted);
}

.archive-card__actions {
  align-self: end;
  padding: var(--space-4) var(--space-4) calc(var(--space-4) + 10px);
}

.archive-btn {
  display: inline-flex;
  width: 100%;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 0 1rem;
  border: 0;
  border-radius: 999px;
  cursor: pointer;
  font-size: 0.92rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}

.archive-btn.is-primary,
.challenges-page[data-game=wordle] .archive-btn.is-primary,
.challenges-page[data-game=spelling_bee] .archive-btn.is-primary,
.challenges-page[data-game=connections] .archive-btn.is-primary,
.challenges-page[data-game=sudoku] .archive-btn.is-primary {
  background: var(--archive-ink);
  color: #fff;
}

.archive-btn.is-secondary {
  border: 1px solid var(--archive-line);
  background: var(--archive-soft);
  color: var(--archive-ink);
  font-weight: 900;
}

.challenges-pagination {
  margin-top: var(--space-5);
}

.pagination-row {
  gap: var(--space-2);
}

.pagination-pages {
  gap: 0.22rem;
}

.pagination-page,
.pagination-btn {
  border-radius: 999px;
  color: var(--archive-ink);
  font-weight: 900;
  text-decoration: none;
}

.pagination-page {
  min-width: 36px;
  height: 36px;
}

.pagination-page.is-active {
  border: 0;
  background: var(--archive-yellow);
  color: var(--archive-ink);
  box-shadow: none;
}

.pagination-btn {
  min-height: 36px;
  padding: 0 0.9rem;
}

.pagination-btn:hover,
.pagination-page:hover {
  background: rgba(244, 207, 79, 0.18);
}

.pagination-dots {
  color: var(--archive-muted);
  font-weight: 900;
}

.challenges-footer {
  margin-top: var(--space-5);
}

.challenges-back-btn {
  min-height: 42px;
  padding: 0 1rem;
  border: 1px solid var(--archive-line);
  border-radius: 999px;
  background: #fff;
  color: var(--archive-ink);
  box-shadow: none;
  font-weight: 900;
}

@media (max-width: 920px) {
  .challenges-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .challenges-page {
    padding-bottom: calc(6rem + env(safe-area-inset-bottom));
  }
  .challenges-page .app-container, .challenges-page .container {
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
  .challenges-hero {
    padding: var(--space-4) 0 var(--space-5);
  }
  .challenges-intro {
    grid-template-columns: 64px minmax(0, 1fr);
    gap: var(--space-3);
    margin-bottom: var(--space-4);
  }
  .challenges-intro::after {
    display: none;
  }
  .challenges-icon,
  .challenges-page[data-game=wordle] .challenges-icon,
  .challenges-page[data-game=spelling_bee] .challenges-icon,
  .challenges-page[data-game=connections] .challenges-icon,
  .challenges-page[data-game=sudoku] .challenges-icon {
    width: 64px;
    height: 64px;
    border-radius: 18px;
  }
  .challenges-icon__image {
    width: 46px;
    height: 46px;
  }
  .challenges-title {
    font-size: 2.65rem;
  }
  .challenges-subtitle {
    grid-column: 1/-1;
    margin-top: 0;
    font-size: 0.88rem;
  }
  .challenges-section-label {
    min-height: 30px;
    font-size: 0.6rem;
  }
  .challenges-grid {
    grid-template-columns: 1fr;
    gap: var(--space-2);
  }
  .archive-card {
    min-height: 150px;
    border-radius: 18px;
  }
  .archive-card__top {
    gap: var(--space-2);
    padding: var(--space-3) var(--space-3) 0;
  }
  .archive-date {
    width: 58px;
    height: 58px;
    border-radius: 16px;
  }
  .date-day {
    font-size: 1.78rem;
  }
  .date-month {
    font-size: 0.58rem;
  }
  .archive-info {
    min-height: 58px;
  }
  .archive-weekday {
    font-size: 1.2rem;
  }
  .archive-badge {
    width: 30px;
    height: 30px;
    font-size: 0.74rem;
  }
  .archive-card__actions {
    padding: var(--space-3) var(--space-3) calc(var(--space-3) + 10px);
  }
  .archive-btn {
    min-height: 42px;
    font-size: 0.86rem;
  }
  .pagination-row {
    justify-content: center;
  }
}
.spelling-bee-page {
  padding: var(--space-5) 0 var(--space-7);
}

.spelling-bee-panel {
  max-width: 760px;
  margin: 0 auto;
  padding: var(--space-4);
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: var(--space-4);
}

.bee-score-strip {
  border: 1px solid var(--color-border-light);
  background: linear-gradient(180deg, #fffcf5 0%, #f8f1df 100%);
  border-radius: 14px;
  padding: var(--space-3);
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

.bee-score-left {
  display: inline-flex;
  align-items: baseline;
  gap: 0.4rem;
  font-size: 0.95rem;
  color: var(--color-text-muted);
}

.bee-score-left strong {
  font-size: 1.1rem;
  color: var(--color-text);
}

.bee-score-right {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
}

.bee-rank-name {
  font-size: 0.82rem;
  font-weight: 700;
  color: #654810;
  background: rgba(242, 185, 59, 0.2);
  border: 1px solid rgba(242, 185, 59, 0.38);
  border-radius: 999px;
  padding: 0.2rem 0.5rem;
}

.bee-rank-progress-track {
  width: 62px;
  height: 6px;
  border-radius: 999px;
  background: rgba(42, 33, 20, 0.14);
  overflow: hidden;
}

.bee-rank-progress-fill {
  display: block;
  height: 100%;
  width: 0%;
  border-radius: inherit;
  background: linear-gradient(90deg, #f2b93b 0%, #f7d070 100%);
  transition: width 220ms ease;
}

.bee-word-capsule {
  position: relative;
  background: #fff9ec;
  border: 1px solid #f0dfb8;
  border-radius: 18px;
  padding: 0.8rem 1rem;
  text-align: center;
  box-shadow: 0 6px 14px rgba(59, 44, 12, 0.08);
}

.bee-current-word {
  font-size: 2rem;
  letter-spacing: 0.16em;
  font-weight: 800;
  color: #33240f;
  min-height: 2.2rem;
}

.bee-feedback-line {
  margin-top: 0.2rem;
  min-height: 1.1rem;
  font-size: 0.86rem;
  font-weight: 600;
  color: var(--color-text-muted);
}

.bee-feedback-line.message-warning {
  color: var(--color-danger);
}

.bee-feedback-line.message-success {
  color: var(--color-success);
}

.bee-feedback-line.message-info {
  color: var(--color-text-muted);
}

.bee-score-float {
  position: absolute;
  top: 4px;
  right: 12px;
  opacity: 0;
  transform: translateY(0);
  color: var(--color-success);
  font-weight: 800;
  pointer-events: none;
}

.bee-score-float.is-visible {
  animation: bee-score-float-up 520ms ease-out forwards;
}

.bee-word-capsule.is-glow {
  animation: bee-capsule-glow 360ms ease-out;
}

.bee-word-capsule.is-shake {
  animation: bee-capsule-shake 360ms ease-in-out;
}

.bee-honeycomb {
  display: grid;
  gap: var(--space-2);
  justify-content: center;
  margin-top: var(--space-1);
  filter: drop-shadow(0 7px 12px rgba(62, 46, 15, 0.14));
}

.bee-row {
  display: flex;
  justify-content: center;
  gap: var(--space-2);
}

.bee-letter {
  width: 98px;
  height: 86px;
  border: none;
  background: #f6e39a;
  color: #362c14;
  font-size: 1.78rem;
  font-weight: 700;
  cursor: pointer;
  clip-path: polygon(25% 6%, 75% 6%, 100% 50%, 75% 94%, 25% 94%, 0 50%);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

@media (hover: hover) and (pointer: fine) {
  .bee-letter:hover:not(:disabled) {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
  }
}
.bee-letter.is-center {
  background: #f2b93b;
}

.bee-controls {
  display: flex;
  justify-content: center;
  gap: var(--space-2);
}

.bee-icon-btn {
  min-width: 44px;
  width: 44px;
  height: 44px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.bee-found-trigger {
  width: 100%;
  border: 1px solid var(--color-border-light);
  border-radius: 12px;
  background: #faf6ee;
  padding: 0.75rem 0.9rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 700;
  color: var(--color-text);
  cursor: pointer;
}

.bee-found-trigger-right {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--color-text-muted);
}

.bee-found-count {
  font-weight: 600;
  color: var(--color-text-muted);
}

.bee-found-list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}

.bee-found-word {
  padding: 0.3rem 0.6rem;
  background: #fff5d6;
  border-radius: var(--radius-sm);
  font-weight: 600;
  text-transform: uppercase;
  font-size: 0.85rem;
  border: 1px solid #f0dca2;
}

.bee-bottom-sheet {
  position: fixed;
  inset: 0;
  z-index: 55;
  pointer-events: none;
}

.bee-sheet-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(22, 16, 9, 0.36);
  opacity: 0;
  transition: opacity 180ms ease;
}

.bee-sheet {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  transform: translateY(104%);
  transition: transform 220ms ease;
  background: var(--color-surface);
  border-radius: 18px 18px 0 0;
  border-top: 1px solid var(--color-border);
  padding: var(--space-4);
  max-height: 72vh;
  overflow: auto;
}

.bee-bottom-sheet.is-open {
  pointer-events: auto;
}

.bee-bottom-sheet.is-open .bee-sheet-backdrop {
  opacity: 1;
}

.bee-bottom-sheet.is-open .bee-sheet {
  transform: translateY(0);
}

.bee-sheet h3 {
  margin: 0 0 var(--space-3);
}

.bee-sheet-handle {
  width: 42px;
  height: 5px;
  border-radius: 999px;
  border: 0;
  background: var(--color-border);
  display: block;
  margin: 0 auto var(--space-3);
}

.bee-sheet-score-line {
  display: inline-flex;
  align-items: baseline;
  gap: 0.4rem;
  font-size: 1rem;
  color: var(--color-text-muted);
}

.bee-sheet-score-line strong {
  font-size: 1.4rem;
  color: var(--color-text);
}

.bee-sheet-rank-line {
  margin: var(--space-2) 0 var(--space-3);
  color: var(--color-text-muted);
}

.bee-points-breakdown {
  display: grid;
  gap: var(--space-2);
  margin-bottom: var(--space-3);
}

.bee-breakdown-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: var(--color-surface-alt);
  border: 1px solid var(--color-border-light);
  border-radius: 10px;
  padding: 0.5rem 0.7rem;
  color: var(--color-text-muted);
}

.bee-breakdown-row strong {
  color: var(--color-text);
}

.bee-rank-ladder {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--space-2);
}

.bee-rank-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: var(--color-surface-alt);
  border: 1px solid var(--color-border-light);
  border-radius: 10px;
  padding: 0.55rem 0.7rem;
  font-weight: 600;
}

.bee-sheet-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-2);
  margin-bottom: var(--space-2);
}

.bee-modal .modal__dialog {
  max-width: 460px;
}

.bee-summary {
  display: grid;
  gap: var(--space-2);
  margin-top: var(--space-3);
}

.bee-summary-label {
  display: block;
  font-size: 0.85rem;
  color: var(--color-text-muted);
}

.bee-summary-value {
  font-size: 1.4rem;
  font-weight: 700;
}

.bee-stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: var(--space-3);
  margin-bottom: var(--space-3);
}

.bee-stat-card {
  padding: var(--space-3);
  border-radius: var(--radius-md);
  border: 1px solid var(--color-border-light);
  background: var(--color-surface-alt);
  display: grid;
  gap: var(--space-2);
}

.bee-stat-number {
  font-size: 2rem;
  font-weight: 700;
}

.recent-games-list {
  display: grid;
  gap: var(--space-3);
}

.recent-game-card {
  padding: var(--space-3);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  background: var(--color-surface);
  box-shadow: var(--shadow-soft);
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.recent-game-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-3);
}

.recent-game-date {
  margin: 0;
  font-size: 0.9rem;
  color: var(--color-text-muted);
}

.recent-game-label {
  margin: var(--space-1) 0 0;
  font-weight: 600;
}

.recent-game-mode {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  flex-wrap: wrap;
  justify-content: flex-end;
}

.mode-badge {
  display: inline-flex;
  align-items: center;
  padding: 0.2rem 0.6rem;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 600;
  background: rgba(63, 107, 91, 0.12);
  color: #3b6c5a;
  border: 1px solid rgba(63, 107, 91, 0.25);
}

.mode-link {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--color-primary-strong);
  text-decoration: none;
}

.mode-link:hover {
  text-decoration: underline;
}

.recent-game-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: var(--space-2);
}

.recent-game-stat {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

.recent-game-stat .stat-label {
  font-size: 0.75rem;
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.recent-game-stat .stat-value {
  font-weight: 600;
}

@media (max-width: 640px) {
  .spelling-bee-panel {
    padding: var(--space-4);
  }
  .bee-letter {
    width: 80px;
    height: 70px;
    font-size: 1.45rem;
  }
  .bee-controls {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  .bee-current-word {
    font-size: 1.7rem;
  }
}
@keyframes bee-score-float-up {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  20% {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translateY(-16px);
  }
}
@keyframes bee-capsule-glow {
  0% {
    box-shadow: 0 6px 14px rgba(59, 44, 12, 0.08);
  }
  50% {
    box-shadow: 0 0 0 6px rgba(79, 122, 104, 0.16), 0 10px 24px rgba(79, 122, 104, 0.16);
  }
  100% {
    box-shadow: 0 6px 14px rgba(59, 44, 12, 0.08);
  }
}
@keyframes bee-capsule-shake {
  0%, 100% {
    transform: translateX(0);
  }
  20% {
    transform: translateX(-6px);
  }
  40% {
    transform: translateX(6px);
  }
  60% {
    transform: translateX(-4px);
  }
  80% {
    transform: translateX(4px);
  }
}
body:has(.spelling-bee-page) {
  --bee-ink: #0b0b0a;
  --bee-paper: #fffdf8;
  --bee-soft: #f4f0e8;
  --bee-line: rgba(11, 11, 10, 0.18);
  --bee-muted: #5b5650;
  --bee-mint: #67b28b;
  --bee-mint-soft: #dfeee5;
  --bee-mint-pressed: #c8e2d2;
  --bee-yellow: #f4cf4f;
  --bee-yellow-soft: #fff0b9;
  --bee-lavender: #9276c8;
  --bee-lavender-soft: #ece5f5;
  --bee-rose: #d58a89;
  color: var(--bee-ink);
  background: var(--bee-paper);
}

body:has(.spelling-bee-page) .app-header {
  background: rgba(255, 253, 248, 0.92);
  border-bottom: 1px solid var(--bee-line);
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px);
          backdrop-filter: blur(18px);
}

body:has(.spelling-bee-page) .app-brand,
body:has(.spelling-bee-page) .nav-link {
  color: var(--bee-ink);
}

body:has(.spelling-bee-page) .text-gradient {
  color: var(--bee-ink);
  background: none;
  -webkit-text-fill-color: currentColor;
}

.spelling-bee-page {
  min-height: 100vh;
  overflow-x: hidden;
  padding: var(--space-4) 0 calc(var(--space-7) + env(safe-area-inset-bottom));
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--bee-paper);
  background-size: 34px 34px;
}

.spelling-bee-page .app-container, .spelling-bee-page .container {
  max-width: 760px;
}

.spelling-bee-panel {
  display: grid;
  gap: var(--space-3);
  max-width: 720px;
  margin: 0 auto;
  padding: var(--space-4);
  border: 1px solid var(--bee-line);
  border-radius: 24px;
  background: rgba(255, 253, 248, 0.9);
  box-shadow: 0 22px 46px rgba(11, 11, 10, 0.08);
}

.bee-game-header {
  display: flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
}

.bee-date-pill {
  display: inline-flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  min-height: 32px;
  margin: 0;
  padding: 0 0.82rem;
  border: 1px solid var(--bee-line);
  border-radius: 999px;
  background: #fff;
  color: var(--bee-ink);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
}

.bee-score-strip {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  min-height: 58px;
  padding: 0 var(--space-3);
  border: 1px solid var(--bee-line);
  border-radius: 18px;
  background: #fff;
  color: var(--bee-ink);
  cursor: pointer;
  box-shadow: 0 10px 24px rgba(11, 11, 10, 0.06);
}

.bee-score-left {
  color: var(--bee-muted);
  font-size: 0.96rem;
  font-weight: 900;
}

.bee-score-left strong {
  color: var(--bee-ink);
  font-family: var(--font-display);
  font-size: 1.85rem;
  font-weight: 800;
  line-height: 1;
}

.bee-score-right {
  gap: var(--space-2);
}

.bee-rank-name {
  min-height: 28px;
  padding: 0 0.72rem;
  border: 0;
  border-radius: 999px;
  background: var(--bee-yellow);
  color: var(--bee-ink);
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 28px;
}

.bee-rank-progress-track {
  width: 72px;
  height: 8px;
  border-radius: 999px;
  background: var(--bee-soft);
  overflow: hidden;
}

.bee-rank-progress-fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--bee-ink);
}

.bee-word-capsule {
  position: relative;
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--bee-line);
  border-radius: 20px;
  background: #fff;
  text-align: center;
  box-shadow: 0 14px 34px rgba(11, 11, 10, 0.07);
}

.bee-current-word {
  min-height: 2.4rem;
  color: var(--bee-ink);
  font-family: var(--font-display);
  font-size: 2.2rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1;
}

.bee-feedback-line {
  min-height: 1.25rem;
  margin-top: 0.35rem;
  color: var(--bee-muted);
  font-size: 0.88rem;
  font-weight: 800;
}

.bee-feedback-line.message-warning {
  color: var(--bee-rose);
}

.bee-feedback-line.message-success {
  color: var(--bee-mint);
}

.bee-score-float {
  color: var(--bee-mint);
  font-weight: 900;
}

.bee-word-capsule.is-glow {
  animation: bee-capsule-glow-new 360ms ease-out;
}

.bee-honeycomb {
  display: grid;
  gap: 0.6rem;
  justify-content: center;
  margin: 0.7rem 0 0.45rem;
  filter: none;
}

.bee-row {
  display: flex;
  justify-content: center;
  gap: 0.6rem;
}

.bee-letter {
  position: relative;
  display: inline-flex;
  width: 96px;
  height: 84px;
  align-items: center;
  justify-content: center;
  border: 0;
  background: var(--bee-ink);
  color: var(--bee-ink);
  cursor: pointer;
  font-family: var(--font-display);
  font-size: 1.85rem;
  font-weight: 800;
  line-height: 1;
  box-shadow: 0 4px 0 rgba(11, 11, 10, 0.12);
  clip-path: polygon(25% 6%, 75% 6%, 100% 50%, 75% 94%, 25% 94%, 0 50%);
  isolation: isolate;
  transition: transform 0.14s ease, box-shadow 0.14s ease;
}

.bee-letter::before {
  content: "";
  position: absolute;
  inset: 3px;
  z-index: -1;
  background: var(--bee-mint-soft);
  clip-path: polygon(25% 6%, 75% 6%, 100% 50%, 75% 94%, 25% 94%, 0 50%);
  transition: background 0.14s ease;
}

@media (hover: hover) and (pointer: fine) {
  .bee-letter:hover:not(:disabled) {
    box-shadow: 0 5px 0 rgba(11, 11, 10, 0.12);
    transform: translateY(-1px);
  }
}
.bee-letter:active:not(:disabled) {
  box-shadow: 0 1px 0 rgba(11, 11, 10, 0.14);
  transform: translateY(2px);
}

.bee-letter:active:not(:disabled)::before {
  background: var(--bee-mint-pressed);
}

.bee-letter.is-center {
  color: var(--bee-ink);
}

.bee-letter.is-center::before,
.bee-letter.is-center:hover::before,
.bee-letter.is-center:active::before {
  background: var(--bee-yellow);
}

.bee-controls {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-2);
  margin: 0.35rem 0 0.55rem;
}

.bee-controls .btn, .bee-controls .btn-success, .bee-controls .btn-warning, .bee-controls .btn-danger, .bee-controls .btn-info, .bee-controls .btn-outline-primary,
.bee-controls .btn-outline-secondary,
.bee-controls .btn-outline-success,
.bee-controls .btn-outline-danger,
.bee-controls .btn-outline-warning,
.bee-controls .btn-outline-info,
.bee-icon-btn {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--bee-line);
  border-radius: 999px;
  background: #fff;
  color: var(--bee-ink);
  font-weight: 900;
  box-shadow: none;
}

.bee-icon-btn {
  width: 46px;
  min-width: 46px;
  padding: 0;
}

.bee-controls .btn-primary {
  min-width: 132px;
  border-color: var(--bee-ink);
  background: var(--bee-ink);
  color: #fff;
}

.bee-found-trigger {
  display: flex;
  width: 100%;
  min-height: 56px;
  align-items: center;
  justify-content: space-between;
  padding: 0 var(--space-3);
  border: 1px solid var(--bee-line);
  border-radius: 18px;
  background: var(--bee-lavender-soft);
  color: var(--bee-ink);
  cursor: pointer;
  font-size: 0.95rem;
  font-weight: 900;
  margin-top: 0.2rem;
}

.bee-found-trigger-right {
  min-height: 30px;
  padding: 0 0.65rem;
  border-radius: 999px;
  background: #fff;
  color: var(--bee-ink);
  font-weight: 900;
}

.bee-bottom-sheet.is-open {
  pointer-events: auto;
}

.bee-sheet-backdrop {
  background: rgba(11, 11, 10, 0.36);
}

.bee-sheet {
  padding: var(--space-4);
  border: 1px solid var(--bee-line);
  border-bottom: 0;
  border-radius: 24px 24px 0 0;
  background: var(--bee-paper);
  color: var(--bee-ink);
  box-shadow: 0 -18px 42px rgba(11, 11, 10, 0.14);
}

.bee-sheet-handle {
  width: 48px;
  height: 5px;
  border: 0;
  border-radius: 999px;
  background: var(--bee-line);
}

.bee-sheet h3,
.bee-sheet-header h3 {
  margin: 0 0 var(--space-3);
  color: var(--bee-ink);
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
}

.bee-sheet-score-line strong,
.bee-summary-value {
  color: var(--bee-ink);
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
}

.bee-sheet-rank-line,
.bee-sheet-score-line,
.bee-summary-label {
  color: var(--bee-muted);
  font-weight: 800;
}

.bee-breakdown-row,
.bee-rank-item {
  border: 1px solid var(--bee-line);
  border-radius: 14px;
  background: #fff;
  color: var(--bee-muted);
  font-weight: 800;
}

.bee-breakdown-row strong,
.bee-rank-item strong {
  color: var(--bee-ink);
}

.bee-found-count {
  color: var(--bee-ink);
  font-weight: 900;
}

.bee-found-word {
  padding: 0.35rem 0.65rem;
  border: 1px solid var(--bee-line);
  border-radius: 999px;
  background: #fff;
  color: var(--bee-ink);
  font-size: 0.82rem;
  font-weight: 900;
}

.bee-modal .modal__dialog {
  overflow: hidden;
  max-width: 460px;
  border: 1px solid var(--bee-line);
  border-radius: 24px;
  background: var(--bee-paper);
  box-shadow: 0 24px 58px rgba(11, 11, 10, 0.18);
}

.bee-modal .modal__header {
  border-bottom: 1px solid var(--bee-line);
  background: #fff;
}

.bee-modal .modal__title {
  color: var(--bee-ink);
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
}

.bee-summary {
  display: grid;
  gap: var(--space-2);
  margin-top: var(--space-3);
}

.bee-summary > div {
  padding: var(--space-3);
  border: 1px solid var(--bee-line);
  border-radius: 18px;
  background: #fff;
}

.bee-modal .btn-outline, .bee-modal .btn-outline-primary,
.bee-modal .btn-outline-secondary,
.bee-modal .btn-outline-success,
.bee-modal .btn-outline-danger,
.bee-modal .btn-outline-warning,
.bee-modal .btn-outline-info {
  border-color: var(--bee-line);
  color: var(--bee-ink);
}

.bee-modal .btn-primary {
  border-color: var(--bee-ink);
  background: var(--bee-ink);
  color: #fff;
}

@media (max-width: 640px) {
  .spelling-bee-page {
    padding: var(--space-3) 0 calc(6rem + env(safe-area-inset-bottom));
  }
  .spelling-bee-page .app-container, .spelling-bee-page .container {
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
  .spelling-bee-panel {
    gap: var(--space-2);
    padding: var(--space-3);
    border-radius: 20px;
  }
  .bee-game-header {
    min-height: 30px;
  }
  .bee-date-pill {
    min-height: 28px;
    font-size: 0.58rem;
  }
  .bee-score-strip {
    min-height: 52px;
    padding: 0 var(--space-2);
  }
  .bee-score-left strong {
    font-size: 1.5rem;
  }
  .bee-rank-progress-track {
    width: 54px;
  }
  .bee-word-capsule {
    padding: var(--space-2) var(--space-3);
  }
  .bee-current-word {
    min-height: 2rem;
    font-size: 1.7rem;
  }
  .bee-honeycomb {
    gap: 0.36rem;
    margin: 0.6rem 0 0.4rem;
  }
  .bee-row {
    gap: 0.36rem;
  }
  .bee-letter {
    width: 82px;
    height: 72px;
    font-size: 1.45rem;
  }
  .bee-controls {
    gap: 0.45rem;
    margin: 0.3rem 0 0.5rem;
  }
  .bee-controls .btn, .bee-controls .btn-success, .bee-controls .btn-warning, .bee-controls .btn-danger, .bee-controls .btn-info, .bee-controls .btn-outline-primary,
  .bee-controls .btn-outline-secondary,
  .bee-controls .btn-outline-success,
  .bee-controls .btn-outline-danger,
  .bee-controls .btn-outline-warning,
  .bee-controls .btn-outline-info,
  .bee-icon-btn {
    min-height: 42px;
  }
  .bee-icon-btn {
    width: 42px;
    min-width: 42px;
  }
  .bee-controls .btn-primary {
    min-width: 120px;
  }
  .bee-found-trigger {
    min-height: 50px;
    padding: 0 var(--space-2);
    font-size: 0.86rem;
  }
}
@media (max-width: 370px) {
  .spelling-bee-panel {
    padding-left: var(--space-2);
    padding-right: var(--space-2);
  }
  .bee-letter {
    width: 72px;
    height: 64px;
    font-size: 1.28rem;
  }
  .bee-rank-progress-track {
    display: none;
  }
}
.spelling-bee-page.is-completed-detail {
  padding-top: clamp(1rem, 3vw, 2rem);
}

.spelling-bee-page.is-completed-detail .app-container, .spelling-bee-page.is-completed-detail .container {
  display: grid;
  max-width: 880px;
  gap: clamp(1rem, 2.6vw, 1.45rem);
}

.bee-detail-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: clamp(1rem, 4vw, 2rem);
  padding: clamp(1rem, 3vw, 1.4rem);
  border: 1px solid var(--bee-line);
  border-radius: 26px;
  background: rgba(255, 253, 248, 0.92);
  box-shadow: 0 22px 46px rgba(11, 11, 10, 0.08);
}

.bee-detail-title-row {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: clamp(0.8rem, 2.6vw, 1.1rem);
}

.bee-detail-icon {
  width: clamp(58px, 9vw, 76px);
  height: clamp(58px, 9vw, 76px);
  flex: 0 0 auto;
  padding: 0.6rem;
  border: 1px solid var(--bee-line);
  border-radius: 20px;
  background: var(--bee-yellow-soft);
  -o-object-fit: contain;
     object-fit: contain;
}

.bee-detail-title {
  margin: 0;
  color: var(--bee-ink);
  font-family: var(--font-display);
  font-size: clamp(3rem, 8vw, 4.8rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.9;
}

.bee-detail-title span {
  color: #78d2c9;
}

.bee-detail-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.7rem;
}

.bee-detail-pill {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  padding: 0 0.9rem;
  border: 1px solid var(--bee-line);
  border-radius: 999px;
  background: var(--bee-yellow-soft);
  color: var(--bee-ink);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.02em;
  line-height: 1;
}

.bee-detail-pill.is-date {
  background: #fff;
  text-transform: uppercase;
}

.bee-detail-letters-card {
  display: grid;
  min-width: 220px;
  gap: 0.45rem;
  justify-items: center;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(11, 11, 10, 0.2);
  border-radius: 22px;
  background: var(--bee-mint-soft);
}

.bee-detail-eyebrow {
  color: var(--bee-muted);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.bee-detail-letters-card strong {
  color: var(--bee-ink);
  font-family: var(--font-display);
  font-size: clamp(1.45rem, 3vw, 2rem);
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1;
}

.bee-detail-progress-card {
  display: grid;
  gap: 0.75rem;
  padding: clamp(1rem, 3vw, 1.35rem);
  border: 1px solid var(--bee-line);
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(11, 11, 10, 0.07);
}

.bee-detail-rank-copy {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.6rem 1rem;
}

.bee-detail-rank-copy strong {
  color: var(--bee-ink);
  font-family: var(--font-display);
  font-size: clamp(2rem, 5vw, 2.8rem);
  font-weight: 800;
  line-height: 1;
}

.bee-detail-progress-track {
  height: 28px;
  padding: 4px;
  border: 1px solid var(--bee-line);
  border-radius: 999px;
  background: var(--bee-soft);
  overflow: hidden;
}

.bee-detail-progress-track span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--bee-yellow);
}

.bee-detail-progress-card p {
  margin: 0;
  color: var(--bee-muted);
  font-size: 0.95rem;
  font-weight: 900;
}

.bee-detail-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}

.bee-detail-stat {
  display: grid;
  min-height: 94px;
  align-content: center;
  justify-items: center;
  gap: 0.35rem;
  padding: 0.85rem;
  border: 1px solid var(--bee-line);
  border-radius: 20px;
  background: #fff;
  text-align: center;
}

.bee-detail-stat.is-xp {
  background: var(--bee-yellow-soft);
}

.bee-detail-stat .summary-label {
  color: var(--bee-muted);
  font-size: 0.68rem;
  letter-spacing: 0.14em;
}

.bee-detail-stat .summary-value {
  color: var(--bee-ink);
  font-size: clamp(1.2rem, 3vw, 1.75rem);
  line-height: 1.05;
}

.bee-detail-card {
  display: grid;
  gap: 1rem;
  padding: clamp(1rem, 3vw, 1.35rem);
  border: 1px solid var(--bee-line);
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(11, 11, 10, 0.07);
}

.bee-detail-card--letters {
  background: rgba(255, 253, 248, 0.94);
}

.bee-detail-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.bee-detail-section-header h2 {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0;
  padding-bottom: 0.18rem;
  border-bottom: 0.28rem solid #78d2c9;
  color: var(--bee-ink);
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 4vw, 2.15rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
}

.bee-detail-section-header > span {
  min-height: 34px;
  padding: 0 0.78rem;
  border: 1px solid var(--bee-line);
  border-radius: 999px;
  background: var(--bee-lavender-soft);
  color: var(--bee-ink);
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 34px;
}

.bee-detail-honeycomb {
  display: grid;
  gap: 0.55rem;
  justify-content: center;
  padding: 0.4rem 0 0.1rem;
}

.bee-detail-row {
  display: flex;
  justify-content: center;
  gap: 0.55rem;
}

.bee-detail-letter {
  position: relative;
  display: inline-flex;
  width: 84px;
  height: 74px;
  align-items: center;
  justify-content: center;
  background: var(--bee-ink);
  color: var(--bee-ink);
  font-family: var(--font-display);
  font-size: 1.65rem;
  font-weight: 800;
  line-height: 1;
  clip-path: polygon(25% 6%, 75% 6%, 100% 50%, 75% 94%, 25% 94%, 0 50%);
  isolation: isolate;
}

.bee-detail-letter::before {
  content: "";
  position: absolute;
  inset: 3px;
  z-index: -1;
  background: var(--bee-mint-soft);
  clip-path: polygon(25% 6%, 75% 6%, 100% 50%, 75% 94%, 25% 94%, 0 50%);
}

.bee-detail-letter.is-center::before {
  background: var(--bee-yellow);
}

.bee-detail-found-list {
  gap: 0.55rem;
}

.bee-detail-found-list .bee-found-word {
  background: #fff;
}

.bee-detail-found-list .bee-found-word.is-pangram {
  background: var(--bee-yellow-soft);
  border-color: rgba(11, 11, 10, 0.28);
}

.bee-detail-actions {
  display: flex;
  justify-content: center;
  padding: 0.2rem 0 0.6rem;
}

.bee-detail-done-btn {
  position: relative;
  display: inline-flex;
  width: min(78%, 310px);
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 0.55rem 3.4rem;
  border: 1px solid var(--bee-ink);
  border-radius: 999px;
  background: var(--bee-ink);
  color: #fff;
  font-size: 0.98rem;
  font-weight: 900;
  text-decoration: none;
}

.bee-detail-done-btn span:last-child {
  display: inline-grid;
  position: absolute;
  right: 0.36rem;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 999px;
  background: var(--bee-yellow);
  color: var(--bee-ink);
  font-size: 1.18rem;
}

.bee-detail-done-btn:hover,
.bee-detail-done-btn:active {
  background: var(--bee-ink);
  color: #fff;
}

@media (max-width: 720px) {
  .spelling-bee-page.is-completed-detail {
    padding-top: var(--space-3);
  }
  .spelling-bee-page.is-completed-detail .app-container, .spelling-bee-page.is-completed-detail .container {
    gap: 0.85rem;
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
  .bee-detail-hero {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 0.9rem;
    border-radius: 22px;
  }
  .bee-detail-title-row {
    align-items: flex-start;
  }
  .bee-detail-title {
    font-size: clamp(2.65rem, 13vw, 3.75rem);
  }
  .bee-detail-meta {
    gap: 0.42rem;
    margin-top: 0.55rem;
  }
  .bee-detail-pill {
    min-height: 30px;
    padding: 0 0.74rem;
    font-size: 0.66rem;
  }
  .bee-detail-letters-card {
    width: 100%;
    min-width: 0;
    justify-items: start;
    padding: 0.85rem 0.95rem;
  }
  .bee-detail-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
  }
  .bee-detail-stat {
    min-height: 82px;
    border-radius: 18px;
    padding: 0.72rem;
  }
  .bee-detail-card,
  .bee-detail-progress-card {
    gap: 0.85rem;
    border-radius: 22px;
  }
  .bee-detail-section-header {
    align-items: flex-start;
  }
  .bee-detail-section-header h2 {
    font-size: 1.55rem;
  }
  .bee-detail-honeycomb {
    gap: 0.4rem;
  }
  .bee-detail-row {
    gap: 0.4rem;
  }
  .bee-detail-letter {
    width: 72px;
    height: 64px;
    font-size: 1.35rem;
  }
}
@media (max-width: 370px) {
  .bee-detail-icon {
    width: 54px;
    height: 54px;
    border-radius: 16px;
  }
  .bee-detail-title {
    font-size: 2.45rem;
  }
  .bee-detail-letter {
    width: 64px;
    height: 57px;
    font-size: 1.18rem;
  }
}
@keyframes bee-capsule-glow-new {
  0% {
    box-shadow: 0 14px 34px rgba(11, 11, 10, 0.07);
  }
  50% {
    box-shadow: 0 0 0 6px rgba(244, 207, 79, 0.22), 0 18px 38px rgba(11, 11, 10, 0.09);
  }
  100% {
    box-shadow: 0 14px 34px rgba(11, 11, 10, 0.07);
  }
}
.spelling-bee-page .bee-next-rank {
  font-size: 0.75rem;
  line-height: 1.35;
  text-wrap: balance;
}

.uses-point-ranks .bee-score-strip {
  min-height: 80px;
  gap: 1rem;
}
.uses-point-ranks .bee-score-left {
  flex-direction: column;
  gap: 0.2rem;
  font-size: 0.75rem;
}
.uses-point-ranks .bee-score-right {
  display: grid;
  grid-template-columns: auto auto;
  gap: 0.35rem 0.7rem;
}
.uses-point-ranks .bee-rank-name {
  grid-column: 1;
  grid-row: 1;
}
.uses-point-ranks .bee-rank-progress-track {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
}
.uses-point-ranks .bee-next-rank {
  grid-column: 1/-1;
  grid-row: 2;
  text-align: right;
}

.connections-page {
  padding: var(--space-3) 0 var(--space-6);
}
.connections-page.is-native {
  padding-top: calc(44px + env(safe-area-inset-top) + var(--space-2));
}

.connections-panel {
  max-width: 820px;
  margin: 0 auto;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  display: grid;
  gap: var(--space-3);
}

.connections-toast-lane {
  min-height: 0;
  display: flex;
  align-items: center;
}

.connections-message {
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  border-radius: 999px;
  font-weight: 600;
  font-size: 0.86rem;
  color: transparent;
  background: transparent;
  opacity: 0;
  transform: translateY(-6px);
  transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.15s ease;
}

.connections-message.message-warning,
.connections-message.message-success,
.connections-message.message-error,
.connections-message.message-info {
  padding: 0.4rem 0.75rem;
  opacity: 1;
  transform: translateY(0);
}

.connections-message.message-warning {
  color: #8d4a10;
  background: #fff1d9;
  border: 1px solid #efd4aa;
}

.connections-message.message-success {
  color: #245d4a;
  background: #e9f6ef;
  border: 1px solid #bddfcf;
}

.connections-message.message-error {
  color: #872f2c;
  background: #fee9e8;
  border: 1px solid #efc0bd;
}

.connections-message.message-info {
  color: var(--color-text-muted);
  background: #f3f0ea;
  border: 1px solid var(--color-border-light);
}

.connections-solved-area {
  display: grid;
  gap: var(--space-2);
}
.connections-solved-area:empty {
  display: none;
}

.connections-attempts-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.45rem;
}

.connections-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  transition: background-color 0.25s ease, transform 0.25s ease, opacity 0.25s ease;
}
.connections-dot.is-filled {
  background: var(--color-warning);
  box-shadow: 0 0 6px rgba(194, 160, 77, 0.3);
}
.connections-dot.is-empty {
  background: var(--color-border-light);
  opacity: 0.6;
  transform: scale(0.85);
}

.connections-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.6rem;
}

.connections-tile {
  min-height: 56px;
  padding: 0.65rem 0.35rem;
  border-radius: 12px;
  border: 1.5px solid #e4d9cb;
  background: linear-gradient(180deg, #ffffff 0%, #f9f5ef 100%);
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.8) inset, 0 2px 4px rgba(44, 31, 18, 0.06), 0 4px 8px rgba(44, 31, 18, 0.04);
  font-size: clamp(0.6rem, 1rem - var(--char-count, 6) * 0.026rem, 0.9rem);
  font-weight: 700;
  color: #2a231a;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  line-height: 1.2;
  overflow-wrap: break-word;
  word-break: break-word;
  -webkit-hyphens: auto;
          hyphens: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-tap-highlight-color: transparent;
  transition: transform 0.15s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.15s ease, border-color 0.15s ease, background 0.15s ease;
}

.connections-tile:hover {
  border-color: #d0c1ae;
  box-shadow: 0 1px 0 0 rgba(255, 255, 255, 0.8) inset, 0 3px 8px rgba(44, 31, 18, 0.09), 0 5px 12px rgba(44, 31, 18, 0.05);
}

.connections-tile:active {
  transform: scale(0.97);
  border-color: #c5af92;
}

.connections-tile:focus-visible {
  outline: 2px solid rgba(194, 160, 77, 0.48);
  outline-offset: 1px;
}

.connections-tile.is-selected {
  background: linear-gradient(180deg, #f5e6c8 0%, #ebdabc 100%);
  border-color: #c4a460;
  box-shadow: 0 0 0 2.5px rgba(194, 160, 77, 0.25), 0 1px 0 0 rgba(255, 255, 255, 0.5) inset, 0 4px 12px rgba(44, 31, 18, 0.12);
  transform: scale(1.03);
  color: #3a2a14;
}

.connections-tile.is-entering {
  animation: connections-tile-in 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.connections-tile.is-shaking {
  animation: connections-shake 0.4s ease;
}

.connections-tile.is-pulsing {
  animation: connections-pulse 0.32s ease;
}

.connections-sticky-bar {
  position: sticky;
  bottom: calc(env(safe-area-inset-bottom) + 8px);
  z-index: 15;
  background: rgba(247, 243, 238, 0.92);
  border: 1px solid var(--color-border-light);
  border-radius: 20px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 -2px 16px rgba(42, 32, 20, 0.05), 0 8px 24px rgba(42, 32, 20, 0.1);
  padding: 0.55rem;
  display: grid;
  grid-template-columns: 44px 1fr 44px;
  gap: 0.55rem;
}

.connections-sticky-bar .btn, .connections-sticky-bar .btn-success, .connections-sticky-bar .btn-warning, .connections-sticky-bar .btn-danger, .connections-sticky-bar .btn-info, .connections-sticky-bar .btn-outline-primary,
.connections-sticky-bar .btn-outline-secondary,
.connections-sticky-bar .btn-outline-success,
.connections-sticky-bar .btn-outline-danger,
.connections-sticky-bar .btn-outline-warning,
.connections-sticky-bar .btn-outline-info {
  min-height: 44px;
}

.connections-sticky-bar .btn-primary:not([disabled]) {
  box-shadow: 0 2px 12px rgba(63, 107, 91, 0.3);
}

.connections-icon-btn {
  width: 44px;
  min-width: 44px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.connections-clear-btn {
  min-height: 44px;
  min-width: 44px;
  font-size: 1rem;
  padding: 0;
}

.connections-clear-btn:focus-visible {
  outline: 2px solid rgba(63, 107, 91, 0.35);
  outline-offset: 2px;
  border-radius: 8px;
}

.connections-solved,
.connections-reveal-row {
  border-radius: 12px;
  padding: 0.85rem 1rem;
  border: 1px solid transparent;
  box-shadow: 0 4px 10px rgba(35, 24, 14, 0.06);
}

.connections-solved {
  animation: connections-solved-in 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.connections-solved-header,
.connections-reveal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-2);
  margin-bottom: 0.45rem;
}

.connections-category {
  font-size: 0.86rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.connections-difficulty-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  border-radius: 999px;
  padding: 0.2rem 0.5rem;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.connections-difficulty-pill::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: currentColor;
}

.connections-words {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.connections-word-chip {
  border-radius: 999px;
  padding: 0.2rem 0.45rem;
  font-size: 0.74rem;
  font-weight: 600;
  background: rgba(255, 255, 255, 0.55);
  border: 1px solid rgba(255, 255, 255, 0.7);
  color: #3a3024;
}

.connections-reveal {
  display: none;
  gap: var(--space-2);
}

.connections-reveal.is-visible {
  display: grid;
}

.difficulty-yellow {
  background: linear-gradient(135deg, rgba(247, 223, 132, 0.45) 0%, rgba(240, 210, 100, 0.3) 100%);
  border-color: rgba(194, 160, 77, 0.45);
}

.connections-difficulty-yellow {
  color: #7e640f;
  background: rgba(247, 223, 132, 0.5);
}

.difficulty-green {
  background: linear-gradient(135deg, rgba(168, 205, 185, 0.45) 0%, rgba(140, 190, 165, 0.3) 100%);
  border-color: rgba(79, 122, 104, 0.4);
}

.connections-difficulty-green {
  color: #245a45;
  background: rgba(168, 205, 185, 0.5);
}

.difficulty-blue {
  background: linear-gradient(135deg, rgba(160, 186, 215, 0.45) 0%, rgba(140, 170, 205, 0.3) 100%);
  border-color: rgba(111, 138, 165, 0.4);
}

.connections-difficulty-blue {
  color: #244f79;
  background: rgba(160, 186, 215, 0.5);
}

.difficulty-purple {
  background: linear-gradient(135deg, rgba(196, 175, 214, 0.45) 0%, rgba(180, 155, 200, 0.3) 100%);
  border-color: rgba(130, 106, 162, 0.4);
}

.connections-difficulty-purple {
  color: #5b3f7e;
  background: rgba(196, 175, 214, 0.55);
}

@keyframes connections-tile-in {
  0% {
    opacity: 0;
    transform: scale(0.9) translateY(8px);
  }
  100% {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
@keyframes connections-solved-in {
  0% {
    opacity: 0;
    transform: translateY(-8px) scale(0.96);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes connections-shake {
  0%, 100% {
    transform: translateX(0) rotate(0);
  }
  15% {
    transform: translateX(-5px) rotate(-1deg);
  }
  30% {
    transform: translateX(4px) rotate(0.5deg);
  }
  45% {
    transform: translateX(-3px) rotate(-0.5deg);
  }
  60% {
    transform: translateX(2px) rotate(0.3deg);
  }
  75% {
    transform: translateX(-1px);
  }
}
@keyframes connections-pulse {
  0% {
    transform: scale(1);
  }
  30% {
    transform: scale(1.08);
  }
  60% {
    transform: scale(0.97);
  }
  100% {
    transform: scale(1);
  }
}
@media (max-width: 768px) {
  .connections-page .app-container, .connections-page .container {
    padding: 0 16px;
  }
  .connections-grid {
    gap: 0.45rem;
  }
  .connections-tile {
    min-height: 50px;
    padding: 0.55rem 0.25rem;
  }
}
body:has(.connections-page) {
  --connections-ink: #0b0b0a;
  --connections-paper: #fffdf8;
  --connections-soft: #f4f0e8;
  --connections-line: rgba(11, 11, 10, 0.18);
  --connections-muted: #5b5650;
  --connections-mint: #67b28b;
  --connections-mint-soft: #dfeee5;
  --connections-yellow: #f4cf4f;
  --connections-yellow-soft: #fff0b9;
  --connections-lavender: #9276c8;
  --connections-lavender-soft: #ece5f5;
  --connections-rose: #d58a89;
  --connections-rose-soft: #f3dada;
  --connections-blue: #91b9df;
  --connections-blue-soft: #dfeaf4;
  color: var(--connections-ink);
  background: var(--connections-paper);
}

body:has(.connections-page) .app-header {
  background: rgba(255, 253, 248, 0.92);
  border-bottom: 1px solid var(--connections-line);
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px);
          backdrop-filter: blur(18px);
}

body:has(.connections-page) .app-brand,
body:has(.connections-page) .nav-link {
  color: var(--connections-ink);
}

body:has(.connections-page) .text-gradient {
  color: var(--connections-ink);
  background: none;
  -webkit-text-fill-color: currentColor;
}

.connections-page {
  min-height: 100vh;
  overflow-x: hidden;
  padding: var(--space-4) 0 calc(var(--space-7) + env(safe-area-inset-bottom));
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--connections-paper);
  background-size: 34px 34px;
}

.connections-page.is-native {
  padding-top: calc(44px + env(safe-area-inset-top) + var(--space-2));
}

.connections-page .app-container, .connections-page .container {
  max-width: 760px;
}

.connections-panel {
  max-width: 720px;
  gap: var(--space-3);
  margin: 0 auto;
}

.connections-toast-lane {
  min-height: 34px;
  justify-content: center;
}

.connections-message {
  min-height: 32px;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  color: transparent;
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1;
}

.connections-message.message-warning,
.connections-message.message-success,
.connections-message.message-error,
.connections-message.message-info {
  display: inline-flex;
  padding: 0 0.9rem;
  border-color: var(--connections-line);
  background: #fff;
  color: var(--connections-ink);
  box-shadow: 0 8px 20px rgba(11, 11, 10, 0.05);
}

.connections-message.message-success {
  background: var(--connections-mint-soft);
}

.connections-message.message-warning,
.connections-message.message-info {
  background: var(--connections-yellow-soft);
}

.connections-message.message-error {
  background: var(--connections-rose-soft);
}

.connections-solved-area {
  gap: 0.65rem;
}

.connections-attempts-dots {
  gap: 0.5rem;
  min-height: 20px;
}

.connections-dot {
  width: 10px;
  height: 10px;
  border: 1px solid var(--connections-line);
}

.connections-dot.is-filled {
  background: var(--connections-yellow);
  box-shadow: none;
}

.connections-dot.is-empty {
  background: #fff;
  opacity: 1;
  transform: none;
}

.connections-grid {
  gap: 0.7rem;
}

.connections-tile {
  min-height: 68px;
  padding: 0.72rem 0.45rem;
  border: 1px solid var(--connections-line);
  border-radius: 18px;
  background: #fff;
  color: var(--connections-ink);
  font-family: var(--font-sans);
  font-size: clamp(0.62rem, 1.03rem - var(--char-count, 6) * 0.027rem, 0.92rem);
  font-weight: 900;
  letter-spacing: 0.02em;
  box-shadow: 0 5px 0 rgba(11, 11, 10, 0.1);
}

.connections-tile:hover {
  border-color: var(--connections-ink);
  background: var(--connections-soft);
  box-shadow: 0 6px 0 rgba(11, 11, 10, 0.1);
}

.connections-tile:active {
  border-color: var(--connections-ink);
  transform: translateY(2px);
  box-shadow: 0 2px 0 rgba(11, 11, 10, 0.12);
}

.connections-tile:focus-visible {
  outline: 3px solid rgba(103, 178, 139, 0.34);
  outline-offset: 2px;
}

.connections-tile.is-selected {
  border-color: var(--connections-ink);
  background: var(--connections-yellow);
  color: var(--connections-ink);
  box-shadow: 0 5px 0 rgba(11, 11, 10, 0.16);
  transform: translateY(-2px);
}

.connections-sticky-bar {
  bottom: calc(env(safe-area-inset-bottom) + 8px);
  grid-template-columns: 46px 1fr 46px;
  gap: 0.55rem;
  padding: var(--space-2);
  border: 1px solid var(--connections-line);
  border-radius: 22px;
  background: rgba(255, 253, 248, 0.94);
  box-shadow: 0 18px 42px rgba(11, 11, 10, 0.12);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.connections-sticky-bar .btn, .connections-sticky-bar .btn-success, .connections-sticky-bar .btn-warning, .connections-sticky-bar .btn-danger, .connections-sticky-bar .btn-info, .connections-sticky-bar .btn-outline-primary,
.connections-sticky-bar .btn-outline-secondary,
.connections-sticky-bar .btn-outline-success,
.connections-sticky-bar .btn-outline-danger,
.connections-sticky-bar .btn-outline-warning,
.connections-sticky-bar .btn-outline-info {
  min-height: 46px;
  border-radius: 999px;
  font-weight: 900;
  box-shadow: none;
}

.connections-sticky-bar .btn-outline, .connections-sticky-bar .btn-outline-primary,
.connections-sticky-bar .btn-outline-secondary,
.connections-sticky-bar .btn-outline-success,
.connections-sticky-bar .btn-outline-danger,
.connections-sticky-bar .btn-outline-warning,
.connections-sticky-bar .btn-outline-info {
  border: 1px solid var(--connections-line);
  background: #fff;
  color: var(--connections-ink);
}

.connections-sticky-bar .btn-outline:hover, .connections-sticky-bar .btn-outline-primary:hover,
.connections-sticky-bar .btn-outline-secondary:hover,
.connections-sticky-bar .btn-outline-success:hover,
.connections-sticky-bar .btn-outline-danger:hover,
.connections-sticky-bar .btn-outline-warning:hover,
.connections-sticky-bar .btn-outline-info:hover {
  border-color: var(--connections-ink);
  background: var(--connections-soft);
}

.connections-sticky-bar .btn-primary {
  border: 1px solid var(--connections-ink);
  background: var(--connections-ink);
  color: #fff;
}

.connections-sticky-bar .btn-primary:not([disabled]) {
  box-shadow: none;
}

.connections-sticky-bar .btn-primary:disabled {
  border-color: var(--connections-line);
  background: #fff;
  color: var(--connections-muted);
  opacity: 1;
}

.connections-icon-btn,
.connections-clear-btn {
  width: 46px;
  min-width: 46px;
  min-height: 46px;
  padding: 0;
}

.connections-solved,
.connections-reveal-row {
  padding: 0.9rem 1rem;
  border: 1px solid var(--connections-line);
  border-radius: 18px;
  color: var(--connections-ink);
  box-shadow: 0 10px 24px rgba(11, 11, 10, 0.07);
}

.connections-solved-header,
.connections-reveal-header {
  margin-bottom: 0.55rem;
}

.connections-category {
  color: var(--connections-ink);
  font-size: 0.9rem;
  font-weight: 900;
  letter-spacing: 0.04em;
}

.connections-difficulty-pill {
  min-height: 26px;
  padding: 0 0.62rem;
  border: 1px solid rgba(11, 11, 10, 0.14);
  background: #fff;
  color: var(--connections-ink);
  font-size: 0.64rem;
  font-weight: 900;
  line-height: 26px;
}

.connections-word-chip {
  border: 1px solid rgba(11, 11, 10, 0.12);
  background: rgba(255, 255, 255, 0.7);
  color: var(--connections-ink);
  font-size: 0.74rem;
  font-weight: 900;
}

.difficulty-yellow {
  background: var(--connections-yellow-soft);
  border-color: rgba(11, 11, 10, 0.18);
}

.connections-difficulty-yellow {
  color: var(--connections-ink);
  background: var(--connections-yellow);
}

.difficulty-green {
  background: var(--connections-mint-soft);
  border-color: rgba(11, 11, 10, 0.18);
}

.connections-difficulty-green {
  color: var(--connections-ink);
  background: var(--connections-mint);
}

.difficulty-blue {
  background: var(--connections-blue-soft);
  border-color: rgba(11, 11, 10, 0.18);
}

.connections-difficulty-blue {
  color: var(--connections-ink);
  background: #bed3e7;
}

.difficulty-purple {
  background: var(--connections-lavender-soft);
  border-color: rgba(11, 11, 10, 0.18);
}

.connections-difficulty-purple {
  color: var(--connections-ink);
  background: #d8cbed;
}

.connections-modal .modal__dialog {
  overflow: hidden;
  max-width: 460px;
  border: 1px solid var(--connections-line);
  border-radius: 24px;
  background: var(--connections-paper);
  box-shadow: 0 24px 58px rgba(11, 11, 10, 0.18);
}

.connections-modal .modal__header {
  border-bottom: 1px solid var(--connections-line);
  background: #fff;
}

.connections-modal .modal__title {
  color: var(--connections-ink);
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
}

.connections-modal .modal__body {
  color: var(--connections-ink);
  font-weight: 800;
}

.connections-modal .btn-outline, .connections-modal .btn-outline-primary,
.connections-modal .btn-outline-secondary,
.connections-modal .btn-outline-success,
.connections-modal .btn-outline-danger,
.connections-modal .btn-outline-warning,
.connections-modal .btn-outline-info {
  border-color: var(--connections-line);
  color: var(--connections-ink);
}

.connections-modal .btn-primary {
  border-color: var(--connections-ink);
  background: var(--connections-ink);
  color: #fff;
}

.connections-page.is-completed-detail {
  padding-top: clamp(1rem, 3vw, 2rem);
}

.connections-page.is-completed-detail .app-container, .connections-page.is-completed-detail .container {
  display: grid;
  max-width: 880px;
  gap: clamp(1rem, 2.6vw, 1.45rem);
}

.connections-detail-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: clamp(1rem, 4vw, 2rem);
  padding: clamp(1rem, 3vw, 1.4rem);
  border: 1px solid var(--connections-line);
  border-radius: 26px;
  background: rgba(255, 253, 248, 0.92);
  box-shadow: 0 22px 46px rgba(11, 11, 10, 0.08);
}

.connections-detail-title-row {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: clamp(0.8rem, 2.6vw, 1.1rem);
}

.connections-detail-icon {
  width: clamp(58px, 9vw, 76px);
  height: clamp(58px, 9vw, 76px);
  flex: 0 0 auto;
  padding: 0.6rem;
  border: 1px solid var(--connections-line);
  border-radius: 20px;
  background: var(--connections-lavender-soft);
  -o-object-fit: contain;
     object-fit: contain;
}

.connections-detail-title {
  margin: 0;
  color: var(--connections-ink);
  font-family: var(--font-display);
  font-size: clamp(2.8rem, 7.4vw, 4.65rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.9;
}

.connections-detail-title span {
  color: #78d2c9;
}

.connections-detail-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.7rem;
}

.connections-detail-pill {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  padding: 0 0.9rem;
  border: 1px solid var(--connections-line);
  border-radius: 999px;
  background: var(--connections-lavender-soft);
  color: var(--connections-ink);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.02em;
  line-height: 1;
}

.connections-detail-pill.is-date {
  background: #fff;
  text-transform: uppercase;
}

.connections-detail-count-card {
  display: grid;
  min-width: 190px;
  gap: 0.45rem;
  justify-items: center;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(11, 11, 10, 0.2);
  border-radius: 22px;
  background: var(--connections-yellow-soft);
}

.connections-detail-eyebrow {
  color: var(--connections-muted);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.connections-detail-count-card strong {
  color: var(--connections-ink);
  font-family: var(--font-display);
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 800;
  line-height: 1;
}

.connections-detail-overview-card {
  padding: clamp(1rem, 3vw, 1.35rem);
  border: 1px solid var(--connections-line);
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(11, 11, 10, 0.07);
}

.connections-detail-group-meter {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}

.connections-detail-meter-cell {
  display: grid;
  min-height: 76px;
  place-items: center;
  padding: 0.8rem 0.5rem;
  border: 1px solid var(--connections-line);
  border-radius: 18px;
  color: var(--connections-ink);
  font-size: 0.78rem;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
}

.connections-detail-meter-cell.is-missed {
  color: var(--connections-muted);
}

.connections-detail-meter-cell.cat-1.is-missed {
  background: var(--connections-yellow-soft);
}

.connections-detail-meter-cell.cat-2.is-missed {
  background: var(--connections-mint-soft);
}

.connections-detail-meter-cell.cat-3.is-missed {
  background: var(--connections-blue-soft);
}

.connections-detail-meter-cell.cat-4.is-missed {
  background: var(--connections-lavender-soft);
}

.connections-detail-meter-cell.cat-1.is-solved {
  background: var(--connections-yellow);
}

.connections-detail-meter-cell.cat-2.is-solved {
  background: var(--connections-mint);
}

.connections-detail-meter-cell.cat-3.is-solved {
  background: var(--connections-blue);
}

.connections-detail-meter-cell.cat-4.is-solved {
  background: var(--connections-lavender);
}

.connections-detail-meter-cell.is-solved {
  color: var(--connections-ink);
}

.connections-detail-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}

.connections-detail-stat {
  display: grid;
  min-height: 94px;
  align-content: center;
  justify-items: center;
  gap: 0.35rem;
  padding: 0.85rem;
  border: 1px solid var(--connections-line);
  border-radius: 20px;
  background: #fff;
  text-align: center;
}

.connections-detail-stat.is-xp {
  background: var(--connections-yellow-soft);
}

.connections-detail-stat .summary-label {
  color: var(--connections-muted);
  font-size: 0.68rem;
  letter-spacing: 0.14em;
}

.connections-detail-stat .summary-value {
  color: var(--connections-ink);
  font-size: clamp(1.2rem, 3vw, 1.75rem);
  line-height: 1.05;
}

.connections-detail-card {
  display: grid;
  gap: 1rem;
  padding: clamp(1rem, 3vw, 1.35rem);
  border: 1px solid var(--connections-line);
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(11, 11, 10, 0.07);
}

.connections-detail-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.connections-detail-section-header h2 {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0;
  padding-bottom: 0.18rem;
  border-bottom: 0.28rem solid #78d2c9;
  color: var(--connections-ink);
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 4vw, 2.15rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
}

.connections-detail-section-header > span {
  min-height: 34px;
  padding: 0 0.78rem;
  border: 1px solid var(--connections-line);
  border-radius: 999px;
  background: var(--connections-lavender-soft);
  color: var(--connections-ink);
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 34px;
}

.connections-detail-groups {
  display: grid;
  gap: 0.85rem;
}

.connections-detail-group {
  display: grid;
  gap: 0.85rem;
  padding: 1rem;
  border: 1px solid var(--connections-line);
  border-radius: 20px;
  color: var(--connections-ink);
}

.connections-detail-group.difficulty-yellow.is-missed {
  background: var(--connections-yellow-soft);
}

.connections-detail-group.difficulty-green.is-missed {
  background: var(--connections-mint-soft);
}

.connections-detail-group.difficulty-blue.is-missed {
  background: var(--connections-blue-soft);
}

.connections-detail-group.difficulty-purple.is-missed {
  background: var(--connections-lavender-soft);
}

.connections-detail-group.difficulty-yellow.is-solved {
  background: var(--connections-yellow);
}

.connections-detail-group.difficulty-green.is-solved {
  background: var(--connections-mint);
}

.connections-detail-group.difficulty-blue.is-solved {
  background: var(--connections-blue);
}

.connections-detail-group.difficulty-purple.is-solved {
  background: var(--connections-lavender);
}

.connections-detail-group-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.connections-detail-group-header h3 {
  margin: 0;
  color: var(--connections-ink);
  font-family: var(--font-display);
  font-size: clamp(1.35rem, 3vw, 1.75rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
}

.connections-detail-group-status,
.connections-detail-difficulty {
  display: inline-flex;
  min-height: 28px;
  align-items: center;
  padding: 0 0.65rem;
  border: 1px solid rgba(11, 11, 10, 0.16);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.72);
  color: var(--connections-ink);
  font-size: 0.64rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
}

.connections-detail-words {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.55rem;
}

.connections-detail-words span {
  display: grid;
  min-height: 46px;
  place-items: center;
  padding: 0.5rem 0.35rem;
  border: 1px solid rgba(11, 11, 10, 0.14);
  border-radius: 14px;
  background: #fff;
  color: var(--connections-ink);
  font-size: clamp(0.62rem, 2vw, 0.78rem);
  font-weight: 900;
  line-height: 1.15;
  overflow-wrap: anywhere;
  text-align: center;
  text-transform: uppercase;
}

.connections-detail-actions {
  display: flex;
  justify-content: center;
  padding: 0.2rem 0 0.6rem;
}

.connections-detail-done-btn {
  position: relative;
  display: inline-flex;
  width: min(78%, 310px);
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 0.55rem 3.4rem;
  border: 1px solid var(--connections-ink);
  border-radius: 999px;
  background: var(--connections-ink);
  color: #fff;
  font-size: 0.98rem;
  font-weight: 900;
  text-decoration: none;
}

.connections-detail-done-btn span:last-child {
  display: inline-grid;
  position: absolute;
  right: 0.36rem;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 999px;
  background: var(--connections-yellow);
  color: var(--connections-ink);
  font-size: 1.18rem;
}

.connections-detail-done-btn:hover,
.connections-detail-done-btn:active {
  background: var(--connections-ink);
  color: #fff;
}

@media (max-width: 768px) {
  .connections-page {
    padding: var(--space-3) 0 calc(6rem + env(safe-area-inset-bottom));
  }
  .connections-page .app-container, .connections-page .container {
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
  .connections-panel {
    gap: var(--space-2);
  }
  .connections-toast-lane {
    min-height: 30px;
  }
  .connections-grid {
    gap: 0.45rem;
  }
  .connections-tile {
    min-height: 58px;
    padding: 0.58rem 0.28rem;
    border-radius: 14px;
    font-size: clamp(0.54rem, 0.92rem - var(--char-count, 6) * 0.023rem, 0.78rem);
    box-shadow: 0 3px 0 rgba(11, 11, 10, 0.1);
  }
  .connections-tile.is-selected {
    transform: translateY(-1px);
    box-shadow: 0 3px 0 rgba(11, 11, 10, 0.16);
  }
  .connections-solved,
  .connections-reveal-row {
    padding: 0.75rem;
    border-radius: 16px;
  }
  .connections-category {
    font-size: 0.78rem;
  }
  .connections-word-chip {
    font-size: 0.68rem;
  }
  .connections-sticky-bar {
    grid-template-columns: 42px 1fr 42px;
    gap: 0.45rem;
    padding: 0.55rem;
    border-radius: 20px;
  }
  .connections-sticky-bar .btn, .connections-sticky-bar .btn-success, .connections-sticky-bar .btn-warning, .connections-sticky-bar .btn-danger, .connections-sticky-bar .btn-info, .connections-sticky-bar .btn-outline-primary,
  .connections-sticky-bar .btn-outline-secondary,
  .connections-sticky-bar .btn-outline-success,
  .connections-sticky-bar .btn-outline-danger,
  .connections-sticky-bar .btn-outline-warning,
  .connections-sticky-bar .btn-outline-info {
    min-height: 42px;
  }
  .connections-icon-btn,
  .connections-clear-btn {
    width: 42px;
    min-width: 42px;
    min-height: 42px;
  }
  .connections-page.is-completed-detail {
    padding-top: var(--space-3);
  }
  .connections-page.is-completed-detail .app-container, .connections-page.is-completed-detail .container {
    gap: 0.85rem;
  }
  .connections-detail-hero {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 0.9rem;
    border-radius: 22px;
  }
  .connections-detail-title-row {
    align-items: flex-start;
  }
  .connections-detail-title {
    font-size: clamp(2.2rem, 10.8vw, 3.4rem);
  }
  .connections-detail-meta {
    gap: 0.42rem;
    margin-top: 0.55rem;
  }
  .connections-detail-pill {
    min-height: 30px;
    padding: 0 0.74rem;
    font-size: 0.66rem;
  }
  .connections-detail-count-card {
    width: 100%;
    min-width: 0;
    justify-items: start;
    padding: 0.85rem 0.95rem;
  }
  .connections-detail-group-meter,
  .connections-detail-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
  }
  .connections-detail-meter-cell {
    min-height: 62px;
    border-radius: 16px;
    font-size: 0.7rem;
  }
  .connections-detail-stat {
    min-height: 82px;
    border-radius: 18px;
    padding: 0.72rem;
  }
  .connections-detail-card,
  .connections-detail-overview-card {
    gap: 0.85rem;
    border-radius: 22px;
  }
  .connections-detail-section-header {
    align-items: flex-start;
  }
  .connections-detail-section-header h2 {
    font-size: 1.55rem;
  }
  .connections-detail-group {
    border-radius: 18px;
    padding: 0.85rem;
  }
  .connections-detail-group-header {
    display: grid;
    gap: 0.55rem;
  }
  .connections-detail-words {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.45rem;
  }
}
@media (max-width: 370px) {
  .connections-page .app-container, .connections-page .container {
    padding-left: var(--space-2);
    padding-right: var(--space-2);
  }
  .connections-grid {
    gap: 0.34rem;
  }
  .connections-tile {
    min-height: 52px;
    border-radius: 12px;
    font-size: clamp(0.48rem, 0.84rem - var(--char-count, 6) * 0.02rem, 0.72rem);
  }
  .connections-detail-icon {
    width: 54px;
    height: 54px;
    border-radius: 16px;
  }
  .connections-detail-title {
    font-size: 2.1rem;
  }
}
.sudoku-page .sudoku-status {
  display: grid;
  justify-items: center;
}
.sudoku-page .sudoku-reload-notice {
  padding: 1rem;
  border: 1px solid var(--sudoku-line);
  border-radius: 16px;
  background: var(--sudoku-yellow-soft);
  color: var(--sudoku-ink);
  text-align: center;
}
.sudoku-page .sudoku-reload-notice p {
  margin: 0 0 0.75rem;
}
.sudoku-page.is-stale .sudoku-message {
  display: none;
}
.sudoku-page.is-stale .sudoku-board, .sudoku-page.is-stale .sudoku-bottom-controls {
  opacity: 0.55;
}
.sudoku-page .sudoku-practice-options {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0.5rem 0;
  font-size: 0.85rem;
}
.sudoku-page .sudoku-practice-options .form-select {
  width: auto;
  min-width: 6rem;
}
.sudoku-page .sudoku-play {
  min-height: calc(100svh - 130px);
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 0.5rem;
}
.sudoku-page .sudoku-message {
  min-height: 1.2rem;
  margin-bottom: 0.1rem;
  text-align: center;
  font-size: 0.88rem;
  font-weight: 600;
  color: transparent;
}
.sudoku-page .sudoku-message.message-warning {
  color: #8d4a10;
}
.sudoku-page .sudoku-message.message-success {
  color: #245d4a;
}
.sudoku-page .sudoku-message.message-error {
  color: #9f2b29;
}
.sudoku-page .sudoku-message.message-info {
  color: var(--color-text-muted);
}
.sudoku-page .sudoku-board-wrap {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  margin: 0;
  padding: 0;
}
.sudoku-page .sudoku-board {
  display: grid;
  grid-template-columns: repeat(9, 1fr);
  width: min(100%, min(92vw, 62svh));
  max-width: 620px;
  aspect-ratio: 1;
  border: 1.5px solid #b7bfc9;
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 8px 20px rgba(32, 27, 20, 0.06);
}
.sudoku-page .sudoku-cell {
  position: relative;
  border: 1px solid #e5e9ef;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: clamp(1rem, 3.8vw, 1.45rem);
  color: #35507a;
  background: #fff;
  transition: background-color 120ms ease, box-shadow 120ms ease;
}
.sudoku-page .sudoku-cell[data-col="2"],
.sudoku-page .sudoku-cell[data-col="5"] {
  border-right: 2px solid #c2cad5;
}
.sudoku-page .sudoku-cell[data-row="2"],
.sudoku-page .sudoku-cell[data-row="5"] {
  border-bottom: 2px solid #c2cad5;
}
.sudoku-page .sudoku-cell.is-given {
  background: #f7f9fc;
  color: #1f2937;
}
.sudoku-page .sudoku-given-value {
  font-weight: 800;
  color: #1f2937;
}
.sudoku-page .sudoku-cell.is-related {
  background: #f4f8ff;
}
.sudoku-page .sudoku-cell.is-related-box {
  background: #edf3fe;
}
.sudoku-page .sudoku-cell.is-same-number {
  background: #e8f0ff;
}
.sudoku-page .sudoku-cell.is-active {
  background: #deebff;
  box-shadow: inset 0 0 0 2px #4c78ba;
  z-index: 2;
}
.sudoku-page .sudoku-cell.is-given.is-conflict {
  background: #feeaec;
  color: #b63034;
}
.sudoku-page .sudoku-cell.is-conflict {
  background: #fff0f1;
  color: #b63034;
  box-shadow: inset 0 0 0 1px rgba(182, 48, 52, 0.32);
}
.sudoku-page .sudoku-cell.is-conflict-shake {
  animation: sudoku-cell-shake 260ms ease;
}
.sudoku-page .sudoku-cell input {
  width: 100%;
  height: 100%;
  border: 0;
  text-align: center;
  font-size: inherit;
  font-weight: 650;
  color: #35507a;
  background: transparent;
  outline: none;
  caret-color: transparent;
  position: relative;
  z-index: 2;
}
.sudoku-page .sudoku-cell.is-conflict input {
  color: #b63034;
}
.sudoku-page .sudoku-note-layer {
  position: absolute;
  inset: 2px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  pointer-events: none;
  z-index: 1;
}
.sudoku-page .sudoku-note {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(0.48rem, 1.7vw, 0.64rem);
  line-height: 1;
  color: #7b8796;
  font-weight: 600;
}
.sudoku-page .sudoku-bottom-controls {
  position: sticky;
  bottom: calc(env(safe-area-inset-bottom) + 4px);
  background: rgba(247, 243, 238, 0.94);
  border: 1px solid var(--color-border-light);
  border-radius: 16px;
  padding: 0.55rem;
  box-shadow: 0 10px 24px rgba(32, 27, 20, 0.08);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.sudoku-page .sudoku-tools-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr) auto;
  gap: 0.45rem;
  margin-bottom: 0.5rem;
}
.sudoku-page .sudoku-tool-btn {
  min-height: 44px;
  border: 1px solid #d6dde7;
  border-radius: 11px;
  background: #fff;
  color: #2d3d54;
  font-size: 0.82rem;
  font-weight: 650;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.3rem;
  transition: transform 90ms ease, border-color 120ms ease, background-color 120ms ease;
}
.sudoku-page .sudoku-tool-btn i {
  font-size: 0.95rem;
}
.sudoku-page .sudoku-tool-btn:hover {
  border-color: #4c78ba;
  background: #e8f0ff;
  color: #214673;
}
.sudoku-page .sudoku-tool-btn.is-active {
  border-color: #4c78ba;
  background: #e8f0ff;
  color: #214673;
}
.sudoku-page .sudoku-tool-btn:active {
  transform: scale(0.98);
  border-color: #9eaec2;
}
.sudoku-page .sudoku-check-btn {
  min-height: 44px;
  padding: 0 0.9rem;
  font-size: 0.84rem;
  white-space: nowrap;
}
.sudoku-page .sudoku-keyboard {
  margin: 0 auto;
  max-width: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}
.sudoku-page .sudoku-keyboard-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.35rem;
}
.sudoku-page .sudoku-key-button {
  border: 1px solid #d9e0e9;
  border-radius: 11px;
  background: #ffffff;
  color: #22354d;
  font-weight: 700;
  font-size: 1.18rem;
  min-height: 46px;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: transform 0.1s ease, background-color 0.15s ease, border-color 0.15s ease;
}
.sudoku-page .sudoku-key-button:hover {
  background: #f8fbff;
}
.sudoku-page .sudoku-key-button:active {
  transform: scale(0.98);
  border-color: #9eaec2;
}
.sudoku-page .sudoku-key-button.is-complete {
  background: #e1e8f2;
  border-color: #b8c4d4;
  color: #1b2e45;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.6);
}
.sudoku-page .sudoku-key-button.is-placeholder {
  visibility: hidden;
  pointer-events: none;
}
.sudoku-page .sudoku-board.is-readonly .sudoku-cell {
  background: #f9fafb;
  color: #111827;
}
@media (max-width: 768px) {
  .sudoku-page .app-container, .sudoku-page .container {
    padding: 0 16px;
  }
  .sudoku-page .sudoku-play {
    min-height: calc(100svh - 120px);
    gap: 0.35rem;
  }
  .sudoku-page .sudoku-board {
    width: min(100%, min(92vw, 64svh));
  }
  .sudoku-page .sudoku-tools-row {
    grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
    gap: 0.35rem;
  }
  .sudoku-page .sudoku-tool-btn {
    font-size: 0.74rem;
  }
}
body.turbo-native-body .sudoku-page .sudoku-play {
  padding-top: 1.5rem;
}
@media (min-width: 900px) {
  .sudoku-page .sudoku-board {
    width: min(72vh, 620px);
  }
}
@keyframes sudoku-cell-shake {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-3px);
  }
  50% {
    transform: translateX(3px);
  }
  75% {
    transform: translateX(-2px);
  }
  100% {
    transform: translateX(0);
  }
}
.sudoku-page .share-card--sudoku .share-card__backdrop {
  background: linear-gradient(135deg, #0f766e, #0f172a);
}

body:has(.sudoku-page) {
  --sudoku-ink: #0b0b0a;
  --sudoku-paper: #fffdf8;
  --sudoku-soft: #f4f0e8;
  --sudoku-line: rgba(11, 11, 10, 0.18);
  --sudoku-strong-line: rgba(11, 11, 10, 0.74);
  --sudoku-muted: #5b5650;
  --sudoku-mint: #67b28b;
  --sudoku-mint-soft: #dfeee5;
  --sudoku-yellow: #f4cf4f;
  --sudoku-yellow-soft: #fff0b9;
  --sudoku-lavender-soft: #ece5f5;
  --sudoku-rose: #d58a89;
  --sudoku-rose-soft: #f3dada;
  --sudoku-row-highlight: #e8f1eb;
  --sudoku-box-highlight: #e8f1eb;
  --sudoku-given-highlight: #d2dfd5;
  --sudoku-match-highlight: #f4cf4f;
  color: var(--sudoku-ink);
  background: var(--sudoku-paper);
}

body:has(.sudoku-page) .app-header {
  background: rgba(255, 253, 248, 0.92);
  border-bottom: 1px solid var(--sudoku-line);
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px);
          backdrop-filter: blur(18px);
}

body:has(.sudoku-page) .app-brand,
body:has(.sudoku-page) .nav-link {
  color: var(--sudoku-ink);
}

body:has(.sudoku-page) .text-gradient {
  color: var(--sudoku-ink);
  background: none;
  -webkit-text-fill-color: currentColor;
}

.sudoku-page {
  min-height: 100vh;
  overflow-x: hidden;
  padding: var(--space-4) 0 calc(var(--space-7) + env(safe-area-inset-bottom));
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--sudoku-paper);
  background-size: 34px 34px;
}

.sudoku-page .app-container, .sudoku-page .container {
  max-width: 760px;
}

.sudoku-page .sudoku-play {
  position: relative;
  min-height: calc(100svh - 150px);
  gap: var(--space-3);
}

.sudoku-page .sudoku-message {
  display: flex;
  min-height: 34px;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  align-items: center;
  justify-content: center;
  justify-self: center;
  margin: 0;
  padding: 0 0.9rem;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: transparent;
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1;
}

.sudoku-page .sudoku-message.message-warning,
.sudoku-page .sudoku-message.message-success,
.sudoku-page .sudoku-message.message-error,
.sudoku-page .sudoku-message.message-info {
  border-color: var(--sudoku-line);
  background: #fff;
  color: var(--sudoku-ink);
  box-shadow: 0 8px 20px rgba(11, 11, 10, 0.05);
}

.sudoku-page .sudoku-message.message-success {
  background: var(--sudoku-mint-soft);
}

.sudoku-page .sudoku-message.message-warning,
.sudoku-page .sudoku-message.message-info {
  background: var(--sudoku-yellow-soft);
}

.sudoku-page .sudoku-message.message-error {
  background: var(--sudoku-rose-soft);
}

.sudoku-page .sudoku-board-wrap {
  align-items: center;
  padding: 0;
}

.sudoku-page .sudoku-board {
  width: min(100%, min(92vw, 62svh));
  max-width: 620px;
  border: 2px solid var(--sudoku-ink);
  border-radius: 20px;
  background: var(--sudoku-ink);
  box-shadow: 0 20px 46px rgba(11, 11, 10, 0.12);
}

.sudoku-page .sudoku-cell {
  border: 1px solid rgba(11, 11, 10, 0.16);
  background: #fff;
  color: var(--sudoku-ink);
  font-family: var(--font-display);
  font-size: clamp(1.05rem, 3.8vw, 1.55rem);
  font-weight: 800;
  transition: background-color 120ms ease, box-shadow 120ms ease, color 120ms ease;
}

.sudoku-page .sudoku-cell[data-col="2"],
.sudoku-page .sudoku-cell[data-col="5"] {
  border-right: 2px solid var(--sudoku-strong-line);
}

.sudoku-page .sudoku-cell[data-row="2"],
.sudoku-page .sudoku-cell[data-row="5"] {
  border-bottom: 2px solid var(--sudoku-strong-line);
}

.sudoku-page .sudoku-cell.is-given {
  background: #ebe4dc;
  color: var(--sudoku-ink);
  cursor: pointer;
}

.sudoku-page .sudoku-cell.is-given:focus {
  outline: none;
}

.sudoku-page .sudoku-given-value {
  color: var(--sudoku-ink);
  font-family: var(--font-display);
  font-weight: 900;
}

.sudoku-page .sudoku-cell.is-related {
  background: var(--sudoku-row-highlight);
}

.sudoku-page .sudoku-cell.is-related-box {
  background: var(--sudoku-box-highlight);
}

.sudoku-page .sudoku-cell.is-given.is-related,
.sudoku-page .sudoku-cell.is-given.is-related-box {
  background: var(--sudoku-given-highlight);
}

.sudoku-page .sudoku-cell.is-same-number,
.sudoku-page .sudoku-cell.is-given.is-same-number {
  background: var(--sudoku-match-highlight);
}

.sudoku-page .sudoku-cell.is-active {
  background: #fff;
  box-shadow: inset 0 0 0 3px var(--sudoku-mint);
  z-index: 2;
}

.sudoku-page .sudoku-cell.is-conflict,
.sudoku-page .sudoku-cell.is-given.is-conflict {
  background: var(--sudoku-rose-soft);
  color: var(--sudoku-ink);
  box-shadow: inset 0 0 0 2px var(--sudoku-rose);
}

.sudoku-page .sudoku-cell input {
  color: #2b241d;
  font-family: var(--font-display);
  font-weight: 700;
}

.sudoku-page .sudoku-cell.is-conflict input {
  color: var(--sudoku-ink);
}

.sudoku-page .sudoku-note {
  color: var(--sudoku-muted);
  font-family: var(--font-sans);
  font-weight: 900;
}

.sudoku-page .sudoku-bottom-controls {
  bottom: calc(env(safe-area-inset-bottom) + 8px);
  padding: var(--space-2);
  border: 1px solid var(--sudoku-line);
  border-radius: 22px;
  background: rgba(255, 253, 248, 0.94);
  box-shadow: 0 18px 42px rgba(11, 11, 10, 0.12);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

.sudoku-page .sudoku-tools-row {
  gap: 0.5rem;
  margin-bottom: 0.65rem;
}

.sudoku-page .sudoku-tool-btn,
.sudoku-page .sudoku-check-btn {
  min-height: 44px;
  border: 1px solid var(--sudoku-line);
  border-radius: 999px;
  background: #fff;
  color: var(--sudoku-ink);
  font-size: 0.78rem;
  font-weight: 900;
  box-shadow: none;
}

.sudoku-page .sudoku-tool-btn:hover,
.sudoku-page .sudoku-tool-btn.is-active {
  border-color: var(--sudoku-ink);
  background: var(--sudoku-yellow);
  color: var(--sudoku-ink);
}

.sudoku-page .sudoku-tool-btn:active,
.sudoku-page .sudoku-check-btn:active,
.sudoku-page .sudoku-key-button:active {
  transform: translateY(1px);
}

.sudoku-page .sudoku-check-btn {
  border-color: var(--sudoku-ink);
  background: var(--sudoku-ink);
  color: #fff;
}

.sudoku-page .sudoku-keyboard {
  gap: 0.45rem;
}

.sudoku-page .sudoku-keyboard-row {
  gap: 0.45rem;
}

.sudoku-page .sudoku-key-button {
  min-height: 50px;
  border: 1px solid var(--sudoku-line);
  border-radius: 16px;
  background: #fff;
  color: var(--sudoku-ink);
  cursor: pointer;
  font-family: var(--font-display);
  font-size: 1.35rem;
  font-weight: 800;
  box-shadow: 0 4px 0 rgba(11, 11, 10, 0.1);
}

.sudoku-page .sudoku-key-button:hover {
  background: var(--sudoku-soft);
}

.sudoku-page .sudoku-key-button.is-complete {
  border-color: transparent;
  background: var(--sudoku-mint);
  color: #fff;
  box-shadow: 0 4px 0 rgba(11, 11, 10, 0.12);
}

.sudoku-page .sudoku-board.is-readonly .sudoku-cell {
  background: var(--sudoku-soft);
  color: var(--sudoku-ink);
}

.sudoku-modal .modal__dialog {
  overflow: hidden;
  max-width: 460px;
  border: 1px solid var(--sudoku-line);
  border-radius: 24px;
  background: var(--sudoku-paper);
  box-shadow: 0 24px 58px rgba(11, 11, 10, 0.18);
}

.sudoku-modal .modal__header {
  border-bottom: 1px solid var(--sudoku-line);
  background: #fff;
}

.sudoku-modal .modal__title {
  color: var(--sudoku-ink);
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
}

.sudoku-modal .modal__body {
  color: var(--sudoku-ink);
  font-weight: 800;
}

.sudoku-modal .text-muted {
  color: var(--sudoku-muted);
}

.sudoku-modal .btn-outline, .sudoku-modal .btn-outline-primary,
.sudoku-modal .btn-outline-secondary,
.sudoku-modal .btn-outline-success,
.sudoku-modal .btn-outline-danger,
.sudoku-modal .btn-outline-warning,
.sudoku-modal .btn-outline-info {
  border-color: var(--sudoku-line);
  color: var(--sudoku-ink);
}

.sudoku-modal .btn-primary {
  border-color: var(--sudoku-ink);
  background: var(--sudoku-ink);
  color: #fff;
}

.sudoku-page.is-completed-detail {
  padding-top: clamp(1rem, 3vw, 2rem);
}

.sudoku-page.is-completed-detail .app-container, .sudoku-page.is-completed-detail .container {
  display: grid;
  max-width: 880px;
  gap: clamp(1rem, 2.6vw, 1.45rem);
}

.sudoku-detail-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: clamp(1rem, 4vw, 2rem);
  padding: clamp(1rem, 3vw, 1.4rem);
  border: 1px solid var(--sudoku-line);
  border-radius: 26px;
  background: rgba(255, 253, 248, 0.92);
  box-shadow: 0 22px 46px rgba(11, 11, 10, 0.08);
}

.sudoku-detail-title-row {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: clamp(0.8rem, 2.6vw, 1.1rem);
}

.sudoku-detail-icon {
  width: clamp(58px, 9vw, 76px);
  height: clamp(58px, 9vw, 76px);
  flex: 0 0 auto;
  padding: 0.6rem;
  border: 1px solid var(--sudoku-line);
  border-radius: 20px;
  background: var(--sudoku-rose-soft);
  -o-object-fit: contain;
     object-fit: contain;
}

.sudoku-detail-title {
  margin: 0;
  color: var(--sudoku-ink);
  font-family: var(--font-display);
  font-size: clamp(3rem, 8vw, 4.8rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.9;
}

.sudoku-detail-title span {
  color: var(--sudoku-rose);
}

.sudoku-detail-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.7rem;
}

.sudoku-detail-pill {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  padding: 0 0.9rem;
  border: 1px solid var(--sudoku-line);
  border-radius: 999px;
  background: var(--sudoku-rose-soft);
  color: var(--sudoku-ink);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.02em;
  line-height: 1;
}

.sudoku-detail-pill.is-date {
  background: #fff;
  text-transform: uppercase;
}

.sudoku-detail-difficulty-card {
  display: grid;
  min-width: 190px;
  gap: 0.45rem;
  justify-items: center;
  padding: 1rem 1.15rem;
  border: 1px solid rgba(11, 11, 10, 0.2);
  border-radius: 22px;
  background: var(--sudoku-yellow-soft);
}

.sudoku-detail-eyebrow {
  color: var(--sudoku-muted);
  font-size: 0.66rem;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.sudoku-detail-difficulty-card strong {
  color: var(--sudoku-ink);
  font-family: var(--font-display);
  font-size: clamp(1.9rem, 5vw, 2.7rem);
  font-weight: 800;
  line-height: 1;
}

.sudoku-detail-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}

.sudoku-detail-stat {
  display: grid;
  min-height: 94px;
  align-content: center;
  justify-items: center;
  gap: 0.35rem;
  padding: 0.85rem;
  border: 1px solid var(--sudoku-line);
  border-radius: 20px;
  background: #fff;
  text-align: center;
}

.sudoku-detail-stat.is-xp {
  background: var(--sudoku-rose-soft);
}

.sudoku-detail-stat .summary-label {
  color: var(--sudoku-muted);
  font-size: 0.68rem;
  letter-spacing: 0.14em;
}

.sudoku-detail-stat .summary-value {
  color: var(--sudoku-ink);
  font-size: clamp(1.2rem, 3vw, 1.75rem);
  line-height: 1.05;
}

.sudoku-detail-card {
  display: grid;
  gap: 1rem;
  padding: clamp(1rem, 3vw, 1.35rem);
  border: 1px solid var(--sudoku-line);
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(11, 11, 10, 0.07);
}

.sudoku-detail-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.sudoku-detail-section-header h2 {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0;
  padding-bottom: 0.18rem;
  border-bottom: 0.28rem solid var(--sudoku-rose);
  color: var(--sudoku-ink);
  font-family: var(--font-display);
  font-size: clamp(1.6rem, 4vw, 2.15rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
}

.sudoku-detail-board-wrap {
  display: flex;
  justify-content: center;
}

.sudoku-page .sudoku-detail-board {
  width: min(100%, 560px);
  max-width: 560px;
  border-radius: 22px;
}

.sudoku-page .sudoku-detail-board .sudoku-cell {
  font-size: clamp(0.95rem, 3.1vw, 1.38rem);
}

.sudoku-page .sudoku-detail-board .sudoku-cell.is-filled {
  background: var(--sudoku-rose-soft);
}

.sudoku-page .sudoku-detail-board .sudoku-cell.is-given {
  background: var(--sudoku-soft);
}

.sudoku-detail-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.sudoku-detail-legend span {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  gap: 0.55rem;
  padding: 0 0.8rem;
  border: 1px solid var(--sudoku-line);
  border-radius: 999px;
  background: #fff;
  color: var(--sudoku-ink);
  font-size: 0.82rem;
  font-weight: 900;
}

.sudoku-detail-legend i {
  width: 16px;
  height: 16px;
  border: 1px solid var(--sudoku-line);
  border-radius: 5px;
}

.sudoku-detail-legend i.is-given {
  background: var(--sudoku-soft);
}

.sudoku-detail-legend i.is-filled {
  background: var(--sudoku-rose-soft);
}

.sudoku-detail-actions {
  display: flex;
  justify-content: center;
  padding: 0.2rem 0 0.6rem;
}

.sudoku-detail-done-btn {
  position: relative;
  display: inline-flex;
  width: min(78%, 310px);
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 0.55rem 3.4rem;
  border: 1px solid var(--sudoku-ink);
  border-radius: 999px;
  background: var(--sudoku-ink);
  color: #fff;
  font-size: 0.98rem;
  font-weight: 900;
  text-decoration: none;
}

.sudoku-detail-done-btn span:last-child {
  display: inline-grid;
  position: absolute;
  right: 0.36rem;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 999px;
  background: var(--sudoku-yellow);
  color: var(--sudoku-ink);
  font-size: 1.18rem;
}

.sudoku-detail-done-btn:hover,
.sudoku-detail-done-btn:active {
  background: var(--sudoku-ink);
  color: #fff;
}

@media (max-width: 768px) {
  .sudoku-page {
    padding: var(--space-3) 0 calc(6rem + env(safe-area-inset-bottom));
  }
  .sudoku-page .app-container, .sudoku-page .container {
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
  .sudoku-page .sudoku-play {
    min-height: calc(100svh - 124px);
    gap: var(--space-2);
  }
  .sudoku-page .sudoku-board {
    width: min(100%, min(92vw, 62svh));
    border-radius: 16px;
  }
  .sudoku-page .sudoku-bottom-controls {
    padding: 0.55rem;
    border-radius: 20px;
  }
  .sudoku-page .sudoku-tools-row {
    gap: 0.35rem;
    margin-bottom: 0.55rem;
  }
  .sudoku-page .sudoku-tool-btn,
  .sudoku-page .sudoku-check-btn {
    min-height: 40px;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    font-size: 0.72rem;
  }
  .sudoku-page .sudoku-tool-btn {
    gap: 0.25rem;
  }
  .sudoku-page .sudoku-keyboard,
  .sudoku-page .sudoku-keyboard-row {
    gap: 0.34rem;
  }
  .sudoku-page .sudoku-key-button {
    min-height: 46px;
    border-radius: 14px;
    font-size: 1.18rem;
  }
  .sudoku-page.is-completed-detail {
    padding-top: var(--space-3);
  }
  .sudoku-page.is-completed-detail .app-container, .sudoku-page.is-completed-detail .container {
    gap: 0.85rem;
  }
  .sudoku-detail-hero {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 0.9rem;
    border-radius: 22px;
  }
  .sudoku-detail-title-row {
    align-items: flex-start;
  }
  .sudoku-detail-title {
    font-size: clamp(2.7rem, 13vw, 3.8rem);
  }
  .sudoku-detail-meta {
    gap: 0.42rem;
    margin-top: 0.55rem;
  }
  .sudoku-detail-pill {
    min-height: 30px;
    padding: 0 0.74rem;
    font-size: 0.66rem;
  }
  .sudoku-detail-difficulty-card {
    width: 100%;
    min-width: 0;
    justify-items: start;
    padding: 0.85rem 0.95rem;
  }
  .sudoku-detail-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
  }
  .sudoku-detail-stat {
    min-height: 82px;
    border-radius: 18px;
    padding: 0.72rem;
  }
  .sudoku-detail-card {
    gap: 0.85rem;
    border-radius: 22px;
  }
  .sudoku-detail-section-header h2 {
    font-size: 1.55rem;
  }
  .sudoku-page .sudoku-detail-board {
    width: min(100%, 88vw);
    border-radius: 18px;
  }
}
@media (max-width: 390px) {
  .sudoku-page .sudoku-tools-row {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .sudoku-page .sudoku-tool-btn span {
    display: none;
  }
  .sudoku-page .sudoku-check-btn {
    min-width: 0;
    font-size: 0.68rem;
  }
  .sudoku-detail-icon {
    width: 54px;
    height: 54px;
    border-radius: 16px;
  }
  .sudoku-detail-title {
    font-size: 2.6rem;
  }
}
.app-header {
  background-color: var(--color-surface);
  border-bottom: 1px solid var(--color-border);
  padding: var(--space-3) 0;
  position: sticky;
  top: 0;
  z-index: 200;
}

.app-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}

.app-nav__left,
.app-nav__right {
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.app-nav__auth {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}

.app-brand {
  font-weight: 700;
  font-size: 1.3rem;
  letter-spacing: 0.08em;
  text-decoration: none;
}

.nav-back-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: var(--color-surface-alt);
  border: 1px solid var(--color-border);
  color: var(--color-text);
  text-decoration: none;
  font-size: 0.85rem;
  transition: background 0.15s ease;
}
.nav-back-btn:hover {
  background: var(--color-border-light);
  color: var(--color-text);
}

.nav-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: none;
  cursor: pointer;
  color: var(--color-text-muted);
  padding: 0;
  transition: color 0.15s ease;
}
.nav-icon-btn:hover {
  color: var(--color-text);
}

.nav-links {
  display: flex;
  gap: var(--space-3);
  flex-wrap: wrap;
}

.nav-link {
  color: var(--color-text-muted);
  text-decoration: none;
  font-weight: 500;
  font-size: 0.95rem;
  padding: 0.4rem 0.6rem;
  border-radius: var(--radius-sm);
  transition: color 0.2s ease, background-color 0.2s ease;
}
.nav-link.is-active, .nav-link:hover {
  color: var(--color-text);
  background-color: var(--color-surface-alt);
}

.help-link {
  border: none;
  background: none;
  cursor: pointer;
}

.help-link__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 1px solid var(--color-border);
  color: var(--color-text);
  font-weight: 700;
  font-size: 0.95rem;
  line-height: 1;
  background: var(--color-surface-alt);
}

.nav-avatar-wrapper {
  position: relative;
}

.nav-avatar-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--color-secondary), var(--color-primary));
  border: none;
  color: #fff;
  font-weight: 700;
  font-size: 0.78rem;
  letter-spacing: 0.04em;
  cursor: pointer;
  transition: opacity 0.15s ease, transform 0.15s ease;
}
.nav-avatar-btn:hover {
  opacity: 0.88;
  transform: scale(1.06);
}
.nav-avatar-btn:active {
  transform: scale(1);
}

.nav-dropdown__menu {
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 210px;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-strong);
  z-index: 300;
  overflow: hidden;
}
.nav-dropdown__menu.is-open {
  display: block;
}

.nav-dropdown__header {
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--color-border-light);
  background: var(--color-surface-alt);
}

.nav-dropdown__name {
  display: block;
  font-weight: 600;
  font-size: 0.95rem;
  color: var(--color-text);
  line-height: 1.3;
}

.nav-dropdown__handle {
  display: block;
  font-size: 0.8rem;
  color: var(--color-text-muted);
  margin-top: 2px;
}

.nav-dropdown__items {
  padding: var(--space-2) 0;
}

.nav-dropdown__item {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  color: var(--color-text);
  text-decoration: none;
  font-size: 0.95rem;
  background: none;
  border: none;
  width: 100%;
  text-align: left;
  cursor: pointer;
  transition: background 0.15s ease;
}
.nav-dropdown__item i {
  width: 16px;
  font-size: 0.85rem;
  color: var(--color-text-muted);
  flex-shrink: 0;
}
.nav-dropdown__item:hover {
  background: var(--color-surface-alt);
  color: var(--color-text);
}
.nav-dropdown__item.is-danger {
  color: var(--color-danger);
}
.nav-dropdown__item.is-danger i {
  color: var(--color-danger);
}
.nav-dropdown__item.is-danger:hover {
  background: rgba(184, 91, 86, 0.08);
}

.nav-dropdown__divider {
  height: 1px;
  background: var(--color-border-light);
  margin: var(--space-2) 0;
}

.admin-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-5);
  margin-top: var(--space-5);
}

.data-table {
  width: 100%;
  border-collapse: collapse;
  border-radius: var(--radius-lg);
  overflow: hidden;
  border: 1px solid var(--color-border);
  background-color: var(--color-surface);
}

.data-table thead {
  background-color: rgba(255, 255, 255, 0.04);
}

.data-table th,
.data-table td {
  text-align: left;
  padding: var(--space-3);
  border-bottom: 1px solid var(--color-border);
}

.data-table th {
  font-weight: 600;
  font-size: 0.95rem;
  color: var(--color-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.data-table tbody tr:hover {
  background-color: rgba(255, 255, 255, 0.02);
}

.form-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: var(--space-4);
}

.form-group {
  display: flex;
  flex-direction: column;
}

.pager {
  display: flex;
  justify-content: center;
  gap: var(--space-2);
  margin-top: var(--space-4);
}

.pager__link {
  padding: 0.45rem 0.9rem;
  border-radius: var(--radius-sm);
  border: 1px solid var(--color-border-light);
  color: var(--color-text);
  text-decoration: none;
  font-size: 0.9rem;
}
.pager__link.is-active {
  background-color: var(--color-secondary);
  border-color: var(--color-secondary);
  color: white;
}

.auth-card {
  max-width: 440px;
  margin: var(--space-6) auto;
  padding: var(--space-5);
  background-color: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow-soft);
}

.auth-title {
  margin-bottom: var(--space-4);
  text-align: center;
}

.admin-overview {
  min-height: calc(100vh - 64px);
  padding: var(--space-6) 0 calc(var(--space-6) * 1.5);
  background: radial-gradient(circle at 92% 0%, rgba(155, 123, 86, 0.1), transparent 28rem), var(--color-background);
}

.admin-overview__header,
.admin-section-heading,
.admin-panel-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-4);
}

.admin-overview__header {
  margin-bottom: var(--space-5);
}

.admin-overview__header h1 {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1;
}

.admin-overview__subtitle {
  margin: var(--space-2) 0 0;
  color: var(--color-text-muted);
  font-size: 1.05rem;
}

.admin-eyebrow {
  margin: 0 0 var(--space-2);
  color: var(--color-secondary);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.admin-overview__updated {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: 0.55rem 0.85rem;
  border: 1px solid var(--color-border);
  border-radius: 999px;
  background: var(--color-surface);
  color: var(--color-text-muted);
  font-size: 0.82rem;
  white-space: nowrap;
}

.status-dot {
  width: 9px;
  height: 9px;
  flex: 0 0 9px;
  border-radius: 999px;
  background: var(--color-text-muted);
  box-shadow: 0 0 0 4px rgba(108, 102, 95, 0.1);
}

.status-dot--success {
  background: var(--color-success);
  box-shadow: 0 0 0 4px rgba(72, 111, 91, 0.12);
}

.status-dot--warning {
  background: var(--color-warning);
  box-shadow: 0 0 0 4px rgba(177, 141, 63, 0.12);
}

.status-dot--danger {
  background: var(--color-danger);
  box-shadow: 0 0 0 4px rgba(184, 91, 86, 0.12);
}

.admin-dashboard-filters {
  margin-bottom: var(--space-6);
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: rgba(255, 255, 255, 0.64);
  box-shadow: var(--shadow-soft);
}

.admin-dashboard-filters__form {
  display: grid;
  grid-template-columns: minmax(150px, 0.8fr) minmax(180px, 1fr) minmax(210px, 1.2fr) auto;
  gap: var(--space-3);
  align-items: end;
}

.admin-filter-field {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.admin-filter-field label {
  color: var(--color-text-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.admin-dashboard-filters__submit {
  min-height: 42px;
}

.admin-dashboard-filters__context {
  margin: var(--space-3) 0 0;
  color: var(--color-text-muted);
  font-size: 0.83rem;
}

.admin-alert-stack {
  margin-bottom: var(--space-6);
}

.admin-section-heading {
  align-items: flex-end;
  margin-bottom: var(--space-4);
}

.admin-section-heading h2,
.admin-panel-header h2 {
  margin: 0;
  font-size: clamp(1.35rem, 2vw, 1.75rem);
}

.admin-section-heading > p {
  margin: 0;
  color: var(--color-text-muted);
  font-size: 0.85rem;
}

.admin-count-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 28px;
  border-radius: 999px;
  background: var(--color-danger);
  color: white;
  font-size: 0.82rem;
  font-weight: 700;
}

.admin-alert-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
}

.admin-alert {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  color: var(--color-text);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.admin-alert:hover {
  color: var(--color-text);
  transform: translateY(-1px);
  box-shadow: var(--shadow-soft);
}

.admin-alert--danger {
  border-left: 4px solid var(--color-danger);
}

.admin-alert--warning {
  border-left: 4px solid var(--color-warning);
}

.admin-alert__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: var(--color-surface-alt);
  font-weight: 800;
}

.admin-alert strong,
.admin-alert small {
  display: block;
}

.admin-alert small {
  margin-top: 2px;
  color: var(--color-text-muted);
  font-size: 0.78rem;
}

.admin-alert > i {
  color: var(--color-text-muted);
  font-size: 0.72rem;
}

.admin-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-3);
  margin-bottom: var(--space-6);
}

.admin-kpi-card,
.admin-dashboard-panel {
  border: 1px solid var(--color-border);
  background: var(--color-surface);
  box-shadow: var(--shadow-soft);
}

.admin-kpi-card {
  min-width: 0;
  padding: var(--space-4);
  border-radius: var(--radius-lg);
}

.admin-kpi-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-2);
  margin-bottom: var(--space-4);
}

.admin-kpi-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: var(--color-surface-alt);
  color: var(--color-secondary);
}

.admin-kpi-card__hint {
  overflow: hidden;
  color: var(--color-text-muted);
  font-size: 0.72rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.admin-kpi-card__label {
  margin: 0;
  color: var(--color-text-muted);
  font-size: 0.85rem;
  font-weight: 600;
}

.admin-kpi-card__value {
  margin: var(--space-2) 0;
  color: var(--color-text);
  font-family: var(--font-display);
  font-size: clamp(1.9rem, 3vw, 2.7rem);
  font-weight: 700;
  line-height: 1;
}

.admin-kpi-card__value small {
  color: var(--color-text-muted);
  font-size: 0.48em;
}

.admin-kpi-card__delta {
  margin: 0;
  font-size: 0.73rem;
}

.admin-kpi-card__delta.is-positive,
.is-positive {
  color: var(--color-success);
}

.admin-kpi-card__delta.is-negative,
.is-negative {
  color: var(--color-danger);
}

.admin-kpi-card__delta.is-neutral,
.admin-game-table .is-neutral {
  color: var(--color-text-muted);
}

.admin-live-label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--color-text-muted);
  font-size: 0.7rem;
  text-transform: uppercase;
}

.admin-live-label span {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--color-success);
  animation: admin-pulse 1.8s ease-in-out infinite;
}

@keyframes admin-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.35;
  }
}
.admin-dashboard-split {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(300px, 0.8fr);
  gap: var(--space-4);
  margin-bottom: var(--space-4);
}

.admin-dashboard-split--business {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: var(--space-4);
}

.admin-dashboard-panel {
  min-width: 0;
  padding: var(--space-5);
  border-radius: var(--radius-lg);
}

.admin-panel-header {
  align-items: center;
  margin-bottom: var(--space-4);
}

.admin-chart-legend {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: var(--space-3);
  color: var(--color-text-muted);
  font-size: 0.74rem;
}

.admin-chart-legend span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.admin-chart-legend i {
  width: 18px;
  height: 3px;
  border-radius: 999px;
}

.admin-chart-legend .is-signups,
.admin-chart-line.is-signups {
  background: #b58d57;
  stroke: #b58d57;
}

.admin-chart-legend .is-players,
.admin-chart-line.is-players {
  background: #557d6c;
  stroke: #557d6c;
}

.admin-chart-legend .is-completions,
.admin-chart-line.is-completions {
  background: #aa5b58;
  stroke: #aa5b58;
}

.admin-trend-chart {
  position: relative;
  padding-bottom: 28px;
}

.admin-trend-chart svg {
  display: block;
  width: 100%;
  height: 240px;
  overflow: visible;
}

.admin-chart-gridline {
  stroke: var(--color-border-light);
  stroke-width: 1;
}

.admin-chart-line {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 3;
  vector-effect: non-scaling-stroke;
}

.admin-chart-axis {
  position: absolute;
  right: 2%;
  bottom: 12px;
  left: 2%;
  height: 16px;
}

.admin-chart-axis span {
  position: absolute;
  color: var(--color-text-muted);
  font-size: 0.65rem;
  transform: translateX(-50%);
  white-space: nowrap;
}

.admin-engagement-bars {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding-top: var(--space-3);
}

.admin-engagement-row {
  display: grid;
  grid-template-columns: 72px minmax(80px, 1fr) 32px;
  align-items: center;
  gap: var(--space-3);
  color: var(--color-text-muted);
  font-size: 0.82rem;
}

.admin-engagement-track {
  height: 12px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--color-surface-alt);
}

.admin-engagement-track span {
  display: block;
  min-width: 2px;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--color-secondary), var(--color-primary));
}

.admin-panel-note {
  margin: var(--space-4) 0 0;
  color: var(--color-text-muted);
  font-size: 0.75rem;
}

.admin-game-table-wrap {
  overflow-x: auto;
}

.admin-game-table {
  width: 100%;
  min-width: 980px;
  border-collapse: collapse;
}

.admin-game-table th,
.admin-game-table td {
  padding: var(--space-3);
  border-bottom: 1px solid var(--color-border-light);
  text-align: left;
  vertical-align: middle;
}

.admin-game-table th {
  color: var(--color-text-muted);
  font-size: 0.65rem;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  white-space: nowrap;
}

.admin-game-table td {
  font-size: 0.83rem;
}

.admin-game-table tbody tr:last-child td {
  border-bottom: 0;
}

.admin-game-table td small {
  display: block;
  margin-top: 3px;
  font-size: 0.68rem;
  white-space: nowrap;
}

.admin-status-badge {
  display: inline-flex;
  align-items: center;
  padding: 0.28rem 0.55rem;
  border-radius: 999px;
  font-size: 0.67rem;
  font-weight: 700;
  white-space: nowrap;
}

.admin-status-badge.is-success {
  background: rgba(72, 111, 91, 0.12);
  color: var(--color-success);
}

.admin-status-badge.is-warning {
  background: rgba(177, 141, 63, 0.15);
  color: #85651f;
}

.admin-status-badge.is-danger {
  background: rgba(184, 91, 86, 0.12);
  color: var(--color-danger);
}

.admin-mini-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
}

.admin-mini-metrics > div {
  padding: var(--space-3);
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-md);
  background: var(--color-surface-alt);
}

.admin-mini-metrics span,
.admin-mini-metrics small,
.admin-mini-metrics strong {
  display: block;
}

.admin-mini-metrics span,
.admin-mini-metrics small {
  color: var(--color-text-muted);
  font-size: 0.72rem;
}

.admin-mini-metrics strong {
  margin: 4px 0;
  font-family: var(--font-display);
  font-size: 1.7rem;
}

.admin-task-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.admin-task-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3);
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-md);
}

.admin-task-row strong,
.admin-task-row small {
  display: block;
}

.admin-task-row small {
  margin-top: 2px;
  color: var(--color-text-muted);
  font-size: 0.72rem;
}

.admin-quick-links {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-3);
  margin-top: var(--space-4);
}

.admin-quick-links a {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-4);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  background: var(--color-surface);
  color: var(--color-text);
  box-shadow: var(--shadow-soft);
}

.admin-quick-links a:hover {
  color: var(--color-text);
  border-color: var(--color-secondary);
  transform: translateY(-1px);
}

.admin-quick-links i {
  width: 20px;
  color: var(--color-secondary);
  text-align: center;
}

.admin-quick-links strong,
.admin-quick-links small {
  display: block;
}

.admin-quick-links small {
  margin-top: 2px;
  color: var(--color-text-muted);
  font-size: 0.7rem;
}

.admin-analytics-exclusion-field {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-3);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface-alt);
}

.admin-analytics-exclusion-field input {
  width: 18px;
  height: 18px;
  margin-top: 3px;
}

.admin-analytics-exclusion-field .form-label {
  margin-bottom: 2px;
}

@media (max-width: 1024px) {
  .admin-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .admin-dashboard-split,
  .admin-dashboard-split--business {
    grid-template-columns: 1fr;
  }
  .admin-quick-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  .admin-overview {
    padding-top: var(--space-4);
  }
  .admin-overview__header,
  .admin-section-heading,
  .admin-panel-header {
    align-items: flex-start;
    flex-direction: column;
  }
  .admin-overview__updated {
    white-space: normal;
  }
  .admin-dashboard-filters__form {
    grid-template-columns: 1fr;
  }
  .admin-dashboard-filters__submit {
    width: 100%;
  }
  .admin-alert-grid,
  .admin-kpi-grid,
  .admin-mini-metrics,
  .admin-quick-links {
    grid-template-columns: 1fr;
  }
  .admin-dashboard-panel {
    padding: var(--space-4);
  }
  .admin-chart-legend {
    justify-content: flex-start;
  }
  .admin-trend-chart svg {
    height: 190px;
  }
}
.flash-stack {
  position: fixed;
  top: var(--space-3);
  right: var(--space-3);
  max-width: 320px;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  z-index: 999;
}

.scheduled-task-page-header {
  margin-bottom: var(--space-5);
}

.scheduled-task-page-header p {
  margin-top: 0;
}

.scheduled-task-actions {
  flex-wrap: wrap;
}

.scheduled-task-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: var(--space-4);
}

.scheduled-task-card {
  display: grid;
  gap: var(--space-4);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-soft);
  padding: var(--space-5);
}

.scheduled-task-card__header,
.scheduled-task-card__footer,
.scheduled-task-history-header {
  flex-wrap: wrap;
}

.scheduled-task-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-3);
}

.scheduled-task-card__header p,
.scheduled-task-card__footer span,
.scheduled-task-history-header p {
  margin: 0;
}

.scheduled-task-card__name,
.scheduled-task-code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 0.86rem;
  overflow-wrap: anywhere;
}

.scheduled-task-card__name {
  margin: 0;
  color: var(--color-text-muted);
}

.scheduled-task-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
  margin: 0;
}

.scheduled-task-metrics div {
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-sm);
  background: var(--color-surface-alt);
  padding: var(--space-3);
}

.scheduled-task-metrics dt {
  color: var(--color-text-muted);
  font-size: 0.78rem;
  font-weight: 700;
  margin-bottom: var(--space-1);
  text-transform: uppercase;
}

.scheduled-task-metrics dd {
  margin: 0;
  font-size: 1.2rem;
  font-weight: 700;
}

.scheduled-task-card__footer {
  display: flex;
  justify-content: space-between;
  gap: var(--space-3);
  color: var(--color-text-muted);
  font-size: 0.86rem;
}

.scheduled-task-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.65rem;
  padding: 0.2rem 0.65rem;
  border-radius: 999px;
  border: 1px solid transparent;
  font-size: 0.76rem;
  font-weight: 700;
  white-space: nowrap;
}

.scheduled-task-badge--success {
  background: rgba(79, 122, 104, 0.14);
  border-color: rgba(79, 122, 104, 0.35);
  color: #2f4c3e;
}

.scheduled-task-badge--failure,
.scheduled-task-badge--danger {
  background: rgba(184, 91, 86, 0.14);
  border-color: rgba(184, 91, 86, 0.35);
  color: #6e2f2b;
}

.scheduled-task-badge--running,
.scheduled-task-badge--info {
  background: rgba(111, 138, 165, 0.16);
  border-color: rgba(111, 138, 165, 0.35);
  color: #314254;
}

.scheduled-task-badge--warning {
  background: rgba(194, 160, 77, 0.16);
  border-color: rgba(194, 160, 77, 0.35);
  color: #5b4521;
}

.scheduled-task-badge--neutral {
  background: var(--color-border-light);
  border-color: var(--color-border);
  color: var(--color-text-muted);
}

.scheduled-task-table-wrap {
  overflow-x: auto;
}

.scheduled-task-history th,
.scheduled-task-history td {
  vertical-align: top;
}

.scheduled-task-error {
  max-width: 320px;
  overflow-wrap: anywhere;
}

.scheduled-task-metadata summary {
  color: var(--color-secondary);
  cursor: pointer;
  font-weight: 600;
}

.scheduled-task-metadata pre {
  max-width: 360px;
  max-height: 240px;
  overflow: auto;
  margin: var(--space-2) 0 0;
  padding: var(--space-3);
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-sm);
  background: var(--color-surface-alt);
  color: var(--color-text);
  font-size: 0.78rem;
}

@media (max-width: 640px) {
  .scheduled-task-page-header,
  .scheduled-task-card__header {
    flex-direction: column;
  }
  .scheduled-task-summary-grid,
  .scheduled-task-metrics {
    grid-template-columns: minmax(0, 1fr);
  }
}
.admin-challenge-content {
  border: 1px solid var(--color-border);
  border-radius: 12px;
  overflow: hidden;
}
.admin-challenge-content > summary {
  padding: 16px;
  cursor: pointer;
  background: var(--color-surface-alt);
}
.admin-challenge-content > summary span {
  display: block;
  margin-top: 4px;
  font-size: 0.85rem;
}
.admin-challenge-content__body {
  padding: 16px;
}
.admin-challenge-content fieldset {
  min-width: 0;
  border: 0;
  margin: 0;
  padding: 0;
}
.admin-challenge-content legend {
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: 12px;
}
.admin-challenge-content fieldset[hidden] {
  display: none;
}
.admin-challenge-content summary:focus-visible {
  outline: 2px solid var(--color-text);
  outline-offset: -3px;
}

.admin-challenge-answer {
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-weight: 700;
  font-size: 1.25rem;
}

.admin-challenge-word-list summary {
  cursor: pointer;
}
.admin-challenge-word-list p {
  max-height: 240px;
  overflow-y: auto;
}

.admin-challenge-group {
  border: 1px solid var(--color-border);
  border-left: 6px solid var(--color-border);
  border-radius: 8px;
  padding: 16px;
}
.admin-challenge-group[data-difficulty=yellow] {
  border-left-color: #d4ad22;
}
.admin-challenge-group[data-difficulty=green] {
  border-left-color: #6b943d;
}
.admin-challenge-group[data-difficulty=blue] {
  border-left-color: #4e83c4;
}
.admin-challenge-group[data-difficulty=purple] {
  border-left-color: #9864b5;
}

.admin-challenge-sudoku {
  width: 100%;
  max-width: 414px;
  table-layout: fixed;
  border-collapse: collapse;
  border: 2px solid var(--color-text);
}
.admin-challenge-sudoku td {
  padding: 0;
  border: 1px solid var(--color-border);
}
.admin-challenge-sudoku td:nth-child(3n) {
  border-right: 2px solid var(--color-text);
}
.admin-challenge-sudoku tr:nth-child(3n) td {
  border-bottom: 2px solid var(--color-text);
}
.admin-challenge-sudoku input {
  display: block;
  width: 100%;
  min-width: 0;
  aspect-ratio: 1;
  border: 0;
  border-radius: 0;
  padding: 0;
  text-align: center;
  font-size: clamp(0.85rem, 3vw, 1.25rem);
  background: var(--color-surface);
  color: var(--color-text);
}
.admin-challenge-sudoku input:focus {
  outline: 2px solid var(--color-text);
  outline-offset: -2px;
  background: var(--color-surface-alt);
}

.admin-sudoku-preview td span {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  font-size: clamp(0.85rem, 3vw, 1.25rem);
}

.admin-bulk-challenges .code-block {
  overflow-x: auto;
}

.sudoku-schedule-actions {
  flex-wrap: wrap;
}

.sudoku-weekly-pattern {
  border: 0;
  padding: 0;
  min-width: 0;
}

.sudoku-pattern-days {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: var(--space-3);
}

.sudoku-generation-progress {
  width: 100%;
}

.sudoku-calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: var(--space-2);
}

.sudoku-calendar-heading {
  text-align: center;
  font-weight: 600;
}

.sudoku-calendar-day {
  min-width: 0;
  padding: var(--space-2);
  background: var(--color-surface-alt);
  border-radius: var(--radius-sm);
}
.sudoku-calendar-day .select, .sudoku-calendar-day .form-select {
  width: 100%;
  min-width: 0;
  padding: var(--space-2);
  font-size: 0.875rem;
}
.sudoku-calendar-day time {
  display: block;
  margin-bottom: var(--space-2);
}
.sudoku-calendar-day.is-occupied {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
}

.sudoku-calendar-weekday {
  display: none;
}

.sudoku-calendar-label {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

.sudoku-calendar-existing, .sudoku-date-override {
  font-size: 0.875rem;
}

@media (max-width: 700px) {
  .sudoku-calendar-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .sudoku-calendar-heading, .sudoku-calendar-blank {
    display: none;
  }
  .sudoku-calendar-weekday {
    display: inline;
  }
  .sudoku-calendar-day {
    display: grid;
    grid-template-columns: minmax(90px, 1fr) minmax(0, 1.5fr);
    align-items: center;
    gap: var(--space-2);
  }
  .sudoku-calendar-day time {
    margin-bottom: 0;
  }
}
.ad-gate-page {
  --ad-ink: #0b0b0a;
  --ad-paper: #fffdf8;
  --ad-line: rgba(11, 11, 10, 0.18);
  --ad-muted: #5f5951;
  --ad-soft: #f4f0e8;
  --ad-mint: #78d2c9;
  --ad-mint-soft: #dfeee5;
  --ad-yellow: #f4cf4f;
  --ad-lavender-soft: #ece5f5;
  min-height: calc(100vh - 72px);
  display: flex;
  align-items: center;
  padding: clamp(1.5rem, 5vw, 3rem) 0;
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.03) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.03) 1px, transparent 1px), var(--ad-paper);
  background-size: 34px 34px;
  color: var(--ad-ink);
}

.ad-gate-page .app-container, .ad-gate-page .container {
  width: min(100%, 760px);
}

.ad-gate-panel {
  display: grid;
  gap: clamp(1rem, 3vw, 1.35rem);
  width: 100%;
  margin: 0 auto;
  padding: clamp(1rem, 3.4vw, 1.6rem);
  border: 1px solid var(--ad-line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 38px rgba(11, 11, 10, 0.07);
}

.ad-gate-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.ad-gate-kicker {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 0.9rem;
  border: 1px solid var(--ad-line);
  border-radius: 999px;
  background: var(--ad-mint-soft);
  color: var(--ad-ink);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.ad-gate-slot {
  min-height: clamp(230px, 44vw, 340px);
  display: grid;
  place-items: center;
  overflow: hidden;
  position: relative;
  border: 1px solid var(--ad-line);
  border-radius: 18px;
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--ad-soft);
  background-size: 28px 28px;
}

.ad-gate-slot::before {
  content: "";
  position: absolute;
  inset: 1rem;
  border: 1px dashed rgba(11, 11, 10, 0.2);
  border-radius: 14px;
  pointer-events: none;
}

.ad-gate-slot__body {
  display: grid;
  justify-items: center;
  gap: 0.35rem;
  max-width: 18rem;
  padding: 1.5rem;
  text-align: center;
  color: var(--ad-muted);
}

.ad-gate-slot__mark {
  display: inline-grid;
  width: 58px;
  height: 58px;
  place-items: center;
  border: 2px solid var(--ad-ink);
  border-radius: 14px;
  background: var(--ad-yellow);
  color: var(--ad-ink);
  font-family: var(--font-display);
  font-size: 1.65rem;
  font-weight: 800;
  line-height: 1;
  transform: rotate(-2deg);
}

.ad-gate-slot__body p {
  margin: 0;
  font-size: 0.9rem;
  font-weight: 700;
}

.ad-gate-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 1rem;
}

.ad-gate-game {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.85rem;
}

.ad-gate-game__icon {
  width: 52px;
  height: 52px;
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid var(--ad-line);
  border-radius: 16px;
  background: var(--ad-mint-soft);
  font-size: 1.35rem;
}

.ad-gate-game__image {
  width: 34px;
  height: 34px;
  -o-object-fit: contain;
     object-fit: contain;
}

.ad-gate-game h1 {
  margin: 0;
  color: var(--ad-ink);
  font-family: var(--font-display);
  font-size: clamp(1.85rem, 5vw, 3rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.95;
}

.ad-gate-game p {
  max-width: 25rem;
  margin: 0.42rem 0 0;
  color: var(--ad-muted);
  font-size: 0.96rem;
  font-weight: 700;
  line-height: 1.3;
}

.ad-gate-game strong {
  color: var(--ad-ink);
}

.ad-gate-timer {
  display: inline-flex;
  align-items: center;
  gap: 0.42rem;
  color: var(--ad-muted);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ad-gate-progress {
  --ad-progress: 0%;
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  position: relative;
  border-radius: 50%;
  background: conic-gradient(var(--ad-mint) var(--ad-progress), var(--ad-soft) 0);
}

.ad-gate-progress::before {
  content: "";
  position: absolute;
  inset: 5px;
  border: 1px solid var(--ad-line);
  border-radius: inherit;
  background: #fff;
}

.ad-gate-progress span {
  position: relative;
  z-index: 1;
  color: var(--ad-ink);
  font-family: var(--font-display);
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1;
}

.ad-gate-actions {
  display: flex;
  justify-content: flex-end;
}

.ad-gate-continue {
  min-width: min(100%, 250px);
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 0.65rem 4rem 0.65rem 2rem;
  border: 1px solid var(--ad-ink);
  border-radius: 999px;
  background: var(--ad-ink);
  color: #fff;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 900;
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.ad-gate-continue:disabled {
  pointer-events: none;
  opacity: 0;
  transform: translateY(6px);
}

.ad-gate-continue__icon {
  display: inline-grid;
  position: absolute;
  right: 0.38rem;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 999px;
  background: var(--ad-yellow);
  color: var(--ad-ink);
  font-size: 1rem;
}

.ad-gate-continue.is-ready {
  opacity: 1;
  transform: translateY(0);
}

.ad-gate-page .text-muted {
  margin: 0;
  color: var(--ad-muted);
  font-weight: 700;
}

@media (max-width: 640px) {
  .ad-gate-page {
    min-height: 100vh;
    min-height: 100dvh;
    align-items: stretch;
    padding: calc(env(safe-area-inset-top) + 0.75rem) 0 calc(env(safe-area-inset-bottom) + 1rem);
  }
  .ad-gate-page .app-container, .ad-gate-page .container {
    display: flex;
  }
  .ad-gate-panel {
    align-content: start;
    border-radius: 22px;
  }
  .ad-gate-slot {
    min-height: 260px;
  }
  .ad-gate-content {
    grid-template-columns: 1fr;
  }
  .ad-gate-game {
    align-items: flex-start;
  }
  .ad-gate-game h1 {
    font-size: clamp(2rem, 11vw, 2.75rem);
  }
  .ad-gate-actions {
    justify-content: stretch;
  }
  .ad-gate-continue {
    width: 100%;
  }
}
.help-modal .modal__dialog {
  width: min(680px, 95vw);
}
.help-modal .modal__title {
  font-size: 1.3rem;
  font-weight: 700;
  margin: 0;
}

.help-lead {
  font-size: 1rem;
  margin-bottom: var(--space-3);
  color: var(--color-text);
}

.help-steps {
  margin: 0 0 var(--space-4);
  padding-left: 1.2rem;
  display: grid;
  gap: var(--space-2);
  color: var(--color-text);
}
.help-steps li {
  line-height: 1.5;
}

.help-example {
  background: var(--color-surface-alt);
  border: 1px solid var(--color-border-light);
  border-radius: var(--radius-md);
  padding: var(--space-3);
  display: grid;
  gap: var(--space-2);
}

.help-label {
  font-size: 0.85rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-text-muted);
}

.help-caption {
  font-size: 0.9rem;
  color: var(--color-text-muted);
  margin: 0;
}

.help-wordle-row {
  display: grid;
  grid-template-columns: repeat(5, minmax(36px, 48px));
  gap: var(--space-6);
  justify-content: start;
}

.help-bee-demo {
  display: flex;
  justify-content: center;
}

.help-bee-demo .bee-honeycomb {
  gap: var(--space-2);
}

.help-bee-demo .bee-row {
  gap: var(--space-2);
}

.help-bee-demo .bee-letter {
  width: 54px;
  height: 48px;
  font-size: 1rem;
  cursor: default;
  pointer-events: none;
  box-shadow: none;
  transition: none;
}

.help-bee-word {
  font-weight: 700;
  letter-spacing: 0.08em;
}

.help-highlight {
  color: var(--color-secondary);
}

.help-connections-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-2);
}

.help-connections-row .connections-tile {
  pointer-events: none;
}

/* PWA-specific styles */
/* Hide browser UI elements when running as PWA */
@media (display-mode: standalone) {
  body {
    /* Ensure full screen experience */
    margin: 0;
    padding: 0;
    overflow-x: hidden;
  }
  /* Hide scrollbars on mobile */
  ::-webkit-scrollbar {
    display: none;
  }
  /* Prevent text selection on buttons */
  .btn, .btn-success, .btn-warning, .btn-danger, .btn-info, .btn-outline-primary,
  .btn-outline-secondary,
  .btn-outline-success,
  .btn-outline-danger,
  .btn-outline-warning,
  .btn-outline-info {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
  }
}
/* Offline indicator styles */
body.offline {
  position: relative;
}

body.offline::before {
  content: "Sin conexión";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background-color: #ff6b6b;
  color: white;
  text-align: center;
  padding: 4px;
  font-size: 12px;
  z-index: 9999;
}

/* PWA mode specific styles */
body.pwa-mode {
  /* Add any PWA-specific styling */
}

/* Better touch targets for mobile */
@media (max-width: 768px) {
  .btn, .btn-success, .btn-warning, .btn-danger, .btn-info, .btn-outline-primary,
  .btn-outline-secondary,
  .btn-outline-success,
  .btn-outline-danger,
  .btn-outline-warning,
  .btn-outline-info {
    min-height: 44px;
    min-width: 44px;
  }
  input, select, textarea {
    font-size: 16px; /* Prevents zoom on iOS */
  }
}
/* Safe area insets for notched devices */
@supports (padding: max(0px)) {
  body {
    padding-left: max(0px, env(safe-area-inset-left));
    padding-right: max(0px, env(safe-area-inset-right));
    padding-top: max(0px, env(safe-area-inset-top));
    padding-bottom: max(0px, env(safe-area-inset-bottom));
  }
}
.policy-page {
  padding: var(--space-6) 0 var(--space-7);
}

.policy-card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-soft);
  overflow: hidden;
}

.policy-header {
  padding: var(--space-5) var(--space-5) var(--space-4);
  border-bottom: 1px solid var(--color-border-light);
  background: linear-gradient(180deg, #fbf7f1 0%, #fff 100%);
}

.policy-title {
  font-family: var(--font-display);
  font-size: 2.1rem;
  margin: 0 0 var(--space-2);
}

.policy-meta {
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
}

.policy-body {
  padding: var(--space-5);
}

.policy-content {
  font-size: 1.05rem;
  line-height: 1.75;
  color: var(--color-text);
}
.policy-content p {
  margin: 0 0 var(--space-3);
}
.policy-content h2 {
  font-family: var(--font-display);
  font-size: 1.4rem;
  margin: var(--space-5) 0 var(--space-2);
}
.policy-content h3 {
  font-family: var(--font-display);
  font-size: 1.15rem;
  margin: var(--space-4) 0 var(--space-2);
}
.policy-content ul {
  margin: 0 0 var(--space-3);
  padding-left: var(--space-5);
}
.policy-content li {
  margin-bottom: var(--space-2);
}
.policy-content strong {
  color: var(--color-text);
}

@media (max-width: 768px) {
  .policy-page {
    padding: var(--space-5) 0 var(--space-6);
  }
  .policy-header,
  .policy-body {
    padding: var(--space-4);
  }
  .policy-title {
    font-size: 1.75rem;
  }
}
body:has(.support-page) {
  --home-ink: #0b0b0a;
  --home-paper: #fffdf8;
  --home-soft: #f4f0e8;
  --home-line: rgba(11, 11, 10, 0.18);
  --home-muted: #56524c;
  --home-mint: #67b28b;
  --home-yellow: #f4cf4f;
  color: var(--home-ink);
  background: radial-gradient(circle at top left, rgba(103, 178, 139, 0.08), transparent 28rem), var(--home-paper);
}

.support-page {
  min-height: 100vh;
  overflow-x: hidden;
  padding-bottom: calc(var(--space-7) + env(safe-area-inset-bottom));
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--home-paper);
  background-size: 34px 34px;
}

.support-page .app-container, .support-page .container {
  max-width: 760px;
}

.support-hero {
  padding: clamp(2rem, 4vw, 4rem) 0 var(--space-5);
}

.support-kicker {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  margin-bottom: var(--space-4);
  padding: 0 1rem;
  border: 1px solid var(--home-line);
  border-radius: 999px;
  background: #fff;
  color: var(--home-ink);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}

.support-hero-title {
  max-width: 16ch;
  margin: 0 0 var(--space-3);
  color: var(--home-ink);
  font-family: var(--font-display);
  font-size: clamp(3rem, 8vw, 5rem);
  font-weight: 800;
  line-height: 0.94;
  letter-spacing: 0;
}

.support-hero-accent {
  position: relative;
  display: inline-block;
  white-space: nowrap;
}

.support-hero-accent::after {
  content: "";
  position: absolute;
  left: -0.05em;
  right: -0.05em;
  bottom: 0.02em;
  z-index: -1;
  height: 0.14em;
  border-radius: 999px;
  background: var(--home-mint);
}

.support-hero-sub {
  max-width: 48ch;
  margin: 0;
  color: var(--home-ink);
  font-size: 1.2rem;
  line-height: 1.4;
}

.support-body {
  padding-bottom: var(--space-6);
}

.support-contact-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.2rem;
  width: 100%;
  min-height: 78px;
  padding: 0.6rem 0.66rem 0.6rem 1.7rem;
  border: 0;
  border-radius: 999px;
  background: var(--home-ink);
  color: #fff;
  text-decoration: none;
  box-shadow: 0 18px 42px rgba(11, 11, 10, 0.18);
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.support-contact-cta:hover {
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 22px 48px rgba(11, 11, 10, 0.22);
}

.support-contact-cta__text {
  display: flex;
  flex-direction: column;
  gap: 0.18rem;
  min-width: 0;
}

.support-contact-cta__label {
  color: rgba(255, 255, 255, 0.66);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.2;
}

.support-contact-cta__email {
  font-size: 1.32rem;
  font-weight: 900;
  line-height: 1.1;
  overflow: hidden;
  text-overflow: ellipsis;
}

.support-section-heading {
  margin: var(--space-6) 0 var(--space-4);
}

.support-section-label {
  margin: 0;
  color: var(--home-ink);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1.2;
  text-transform: uppercase;
}

.support-faq {
  overflow: hidden;
  border: 1px solid var(--home-line);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 22px 46px rgba(11, 11, 10, 0.08);
}

.faq-item {
  border-bottom: 1px solid var(--home-line);
}
.faq-item:last-child {
  border-bottom: none;
}

.faq-question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-5);
  cursor: pointer;
  list-style: none;
  color: var(--home-ink);
  font-size: 1.08rem;
  font-weight: 900;
  line-height: 1.25;
  transition: background 0.15s ease;
}
.faq-question::-webkit-details-marker {
  display: none;
}
.faq-question::after {
  content: "+"; /* + */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  flex-shrink: 0;
  border-radius: 999px;
  background: var(--home-soft);
  color: var(--home-ink);
  font-size: 1.2rem;
  line-height: 1;
}
.faq-question:hover {
  background: rgba(11, 11, 10, 0.02);
}

.faq-item[open] > .faq-question::after {
  content: "−"; /* − */
  background: var(--home-yellow);
}

.faq-answer {
  padding: 0 var(--space-5) var(--space-5);
  color: var(--home-ink);
  font-size: 1.02rem;
  line-height: 1.6;
}
.faq-answer p {
  margin: 0;
}
.faq-answer a {
  color: var(--home-ink);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}

.support-links {
  margin-top: var(--space-5);
  text-align: center;
  color: var(--home-muted);
  font-weight: 700;
}

.support-link {
  color: var(--home-ink);
  text-decoration: none;
}
.support-link:hover {
  text-decoration: underline;
}

.support-links__sep {
  margin: 0 var(--space-2);
}

@media (prefers-reduced-motion: no-preference) {
  .support-hero-title,
  .support-hero-sub,
  .support-contact-cta,
  .support-faq {
    animation: support-rise 0.42s cubic-bezier(0.22, 0.61, 0.36, 1) both;
  }
  .support-contact-cta {
    animation-delay: 0.04s;
  }
  .support-faq {
    animation-delay: 0.08s;
  }
}
@keyframes support-rise {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 560px) {
  .support-page .app-container, .support-page .container {
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
  .support-hero {
    padding-top: var(--space-5);
  }
  .support-contact-cta {
    min-height: 70px;
    padding-left: 1.3rem;
  }
  .support-contact-cta__email {
    font-size: 1.12rem;
  }
  .faq-question {
    padding: var(--space-4);
    font-size: 1.02rem;
  }
  .faq-answer {
    padding: 0 var(--space-4) var(--space-4);
  }
}
body:has(.profile-page) {
  --profile-ink: #0b0b0a;
  --profile-paper: #fffdf8;
  --profile-soft: #f4f0e8;
  --profile-line: rgba(11, 11, 10, 0.18);
  --profile-muted: #5b5650;
  --profile-mint: #67b28b;
  --profile-mint-soft: #dfeee5;
  --profile-yellow: #f4cf4f;
  --profile-yellow-soft: #fff0b9;
  --profile-lavender: #9276c8;
  --profile-lavender-soft: #ece5f5;
  --profile-rose: #d58a89;
  --profile-rose-soft: #f3dada;
  color: var(--profile-ink);
  background: var(--profile-paper);
}

body:has(.profile-page) .app-header {
  background: rgba(255, 253, 248, 0.92);
  border-bottom: 1px solid var(--profile-line);
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px);
          backdrop-filter: blur(18px);
}

body:has(.profile-page) .app-brand,
body:has(.profile-page) .nav-link {
  color: var(--profile-ink);
}

body:has(.profile-page) .text-gradient {
  color: var(--profile-ink);
  background: none;
  -webkit-text-fill-color: currentColor;
}

.profile-page {
  min-height: 100vh;
  overflow-x: hidden;
  padding-bottom: calc(var(--space-7) + env(safe-area-inset-bottom));
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--profile-paper);
  background-size: 34px 34px;
}

.profile-page .app-container, .profile-page .container {
  max-width: 760px;
}

.profile-hero {
  padding: var(--space-5) 0 var(--space-3);
}

.profile-native-topbar {
  display: flex;
  justify-content: flex-end;
  margin-bottom: var(--space-2);
}

.native-settings-btn {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid var(--profile-line);
  border-radius: 999px;
  background: #fff;
  color: var(--profile-ink);
  font-size: 0.92rem;
  text-decoration: none;
  box-shadow: 0 10px 28px rgba(11, 11, 10, 0.08);
}

.profile-identity {
  position: relative;
  display: grid;
  justify-items: center;
  gap: var(--space-2);
  padding: var(--space-3) 0 var(--space-2);
  text-align: center;
}

.profile-identity::before {
  content: "";
  position: absolute;
  pointer-events: none;
}

.profile-identity::before {
  top: 1rem;
  left: calc(50% - 96px);
  width: 28px;
  height: 34px;
  border-left: 3px solid var(--profile-ink);
  border-radius: 50%;
  transform: rotate(18deg);
}

.profile-avatar {
  display: grid;
  width: 96px;
  height: 96px;
  place-items: center;
  border: 2px solid var(--profile-ink);
  border-radius: 999px;
  background: var(--profile-yellow);
  color: var(--profile-ink);
  font-size: 1.55rem;
  font-weight: 900;
  letter-spacing: 0;
  box-shadow: 0 14px 32px rgba(11, 11, 10, 0.1);
}

.profile-name {
  max-width: 100%;
  margin: 0;
  overflow-wrap: anywhere;
  color: var(--profile-ink);
  font-family: var(--font-display);
  font-size: clamp(2.35rem, 6.2vw, 4.35rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.9;
}

.profile-handle {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  margin: 0;
  padding: 0 0.88rem;
  border: 1px solid var(--profile-line);
  border-radius: 999px;
  background: #fff;
  color: var(--profile-muted);
  font-size: 0.85rem;
  font-weight: 900;
}

.profile-row-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1fr);
  align-items: stretch;
  margin-top: var(--space-3);
  overflow: hidden;
  border: 1px solid var(--profile-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(11, 11, 10, 0.07);
}

.profile-row-card--stats {
  margin-top: var(--space-2);
  background: var(--profile-mint-soft);
}

.profile-row-cell {
  display: grid;
  min-width: 0;
  gap: 0.28rem;
  align-content: center;
  justify-items: center;
  min-height: 84px;
  padding: var(--space-3);
  color: inherit;
  text-align: center;
  text-decoration: none;
}

.profile-row-cell.is-link {
  cursor: pointer;
}

.profile-row-cell.is-link:hover {
  background: rgba(244, 207, 79, 0.14);
}

.profile-row-num {
  color: var(--profile-ink);
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
  line-height: 0.9;
}

.profile-row-num.is-xp {
  color: var(--profile-ink);
}

.profile-row-lbl {
  color: var(--profile-muted);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
}

.profile-row-sep {
  width: 1px;
  background: var(--profile-line);
}

.profile-action {
  margin-top: var(--space-3);
}

.profile-action form {
  width: 100%;
}

.profile-btn {
  display: inline-flex;
  width: 100%;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 0 1.4rem;
  border: 0;
  border-radius: 999px;
  background: var(--profile-ink);
  color: #fff;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 12px 28px rgba(11, 11, 10, 0.14);
}

.profile-btn:hover {
  color: #fff;
  transform: translateY(-1px);
}

.profile-btn--following {
  border: 1px solid var(--profile-line);
  background: #fff;
  color: var(--profile-ink);
  box-shadow: none;
}

.profile-btn--following:hover {
  background: var(--profile-rose-soft);
  color: var(--profile-ink);
}

.profile-seg-control {
  display: flex;
  width: 100%;
  max-width: none;
  min-width: 0;
  gap: var(--space-2);
  margin: var(--space-4) 0 var(--space-3);
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  box-shadow: none;
}

.profile-seg-control .seg-control__option {
  display: inline-flex;
  flex: 1;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: var(--profile-ink);
  cursor: pointer;
  font-family: var(--font-base);
  font-size: 0.88rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

.profile-seg-control .seg-control__option.is-active {
  background: var(--profile-yellow);
  color: var(--profile-ink);
}

.profile-games {
  display: grid;
  gap: var(--space-3);
  padding-bottom: var(--space-4);
}

.profile-game-card {
  position: relative;
  display: grid;
  gap: var(--space-3);
  overflow: hidden;
  min-height: 186px;
  padding: var(--space-4);
  border: 1px solid var(--profile-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(11, 11, 10, 0.07);
}

.profile-game-card.is-link {
  color: inherit;
  text-decoration: none;
}

.profile-game-card.is-link:hover {
  transform: translateY(-1px);
  box-shadow: 0 18px 38px rgba(11, 11, 10, 0.1);
}

.profile-game-card__header {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) 22px;
  align-items: center;
  gap: var(--space-3);
}

.profile-game-card__chevron {
  color: var(--profile-muted);
  font-size: 0.8rem;
}

.profile-game-icon {
  display: grid;
  width: 64px;
  height: 64px;
  place-items: center;
  border-radius: 18px;
  background: var(--profile-mint-soft);
  color: var(--profile-ink);
  font-size: 1.6rem;
  font-weight: 900;
}

.profile-game-card[data-game=spelling_bee] .profile-game-icon {
  background: var(--profile-yellow-soft);
}

.profile-game-card[data-game=connections] .profile-game-icon {
  background: var(--profile-lavender-soft);
}

.profile-game-card[data-game=sudoku] .profile-game-icon {
  background: var(--profile-rose-soft);
}

.profile-game-icon__image {
  display: block;
  width: 46px;
  height: 46px;
  -o-object-fit: contain;
     object-fit: contain;
}

.profile-game-meta {
  min-width: 0;
}

.profile-game-title {
  margin: 0;
  overflow: hidden;
  color: var(--profile-ink);
  font-family: var(--font-display);
  font-size: 1.45rem;
  font-weight: 800;
  line-height: 1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.profile-game-sub {
  margin: 0.35rem 0 0;
  color: var(--profile-muted);
  font-size: 0.86rem;
  font-weight: 700;
  line-height: 1.25;
}

.profile-game-stats {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 1px minmax(0, 1fr);
  align-items: stretch;
  overflow: hidden;
  border: 1px solid var(--profile-line);
  border-radius: 16px;
  background: var(--profile-paper);
}

.profile-game-stat {
  display: grid;
  min-height: 72px;
  align-content: center;
  justify-items: center;
  gap: 0.2rem;
  padding: var(--space-2);
}

.profile-game-stat__val {
  color: var(--profile-ink);
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
  line-height: 0.9;
}

.profile-game-stat__unit {
  margin-left: 1px;
  color: var(--profile-muted);
  font-size: 1rem;
}

.profile-game-stat__lbl {
  color: var(--profile-muted);
  font-size: 0.64rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
}

.profile-game-stat__sep {
  width: 1px;
  background: var(--profile-line);
}

.profile-game-empty {
  display: grid;
  min-height: 72px;
  place-items: center;
  margin: 0;
  border: 1px solid var(--profile-line);
  border-radius: 16px;
  background: var(--profile-paper);
  color: var(--profile-muted);
  font-size: 0.86rem;
  font-weight: 800;
  text-align: center;
}

.analytics-page {
  padding-top: var(--space-4);
}

.analytics-hero {
  display: grid;
  gap: var(--space-4);
  padding: var(--space-2) 0 var(--space-3);
}

.analytics-back {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid var(--profile-line);
  border-radius: 999px;
  background: #fff;
  color: var(--profile-ink);
  text-decoration: none;
  box-shadow: 0 10px 28px rgba(11, 11, 10, 0.08);
}

.analytics-title-row {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  align-items: center;
  gap: var(--space-3);
}

.analytics-game-icon {
  width: 72px;
  height: 72px;
  border-radius: 20px;
}

.analytics-page[data-game=spelling_bee] .analytics-game-icon {
  background: var(--profile-yellow-soft);
}

.analytics-page[data-game=connections] .analytics-game-icon {
  background: var(--profile-lavender-soft);
}

.analytics-page[data-game=sudoku] .analytics-game-icon {
  background: var(--profile-rose-soft);
}

.analytics-kicker {
  margin: 0 0 0.25rem;
  color: var(--profile-muted);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.analytics-title {
  margin: 0;
  color: var(--profile-ink);
  font-family: var(--font-display);
  font-size: clamp(2.2rem, 8vw, 4rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.92;
}

.analytics-subtitle {
  margin: 0.45rem 0 0;
  color: var(--profile-muted);
  font-size: 0.96rem;
  font-weight: 700;
  line-height: 1.35;
}

.analytics-window-toggle {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-2);
  margin-bottom: var(--space-3);
}

.analytics-window-option {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--profile-line);
  border-radius: 999px;
  background: #fff;
  color: var(--profile-ink);
  font-size: 0.82rem;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
}

.analytics-window-option.is-active {
  border-color: transparent;
  background: var(--profile-yellow);
}

.analytics-insight,
.analytics-section,
.analytics-number-card {
  border: 1px solid var(--profile-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(11, 11, 10, 0.07);
}

.analytics-insight {
  margin-bottom: var(--space-3);
  padding: var(--space-4);
  background: var(--profile-yellow-soft);
}

.analytics-insight p {
  margin: 0;
  color: var(--profile-ink);
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.35;
}

.analytics-section {
  margin-bottom: var(--space-3);
  padding: var(--space-4);
}

.analytics-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  margin-bottom: var(--space-3);
}

.analytics-section-header h2 {
  margin: 0;
  color: var(--profile-ink);
  font-family: var(--font-display);
  font-size: 1.45rem;
  font-weight: 800;
  line-height: 1;
}

.analytics-section-header span {
  color: var(--profile-muted);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.analytics-bars {
  display: grid;
  gap: 0.72rem;
}

.analytics-bar-row {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) 44px;
  align-items: center;
  gap: var(--space-2);
}

.analytics-bar-label,
.analytics-bar-value {
  color: var(--profile-muted);
  font-size: 0.76rem;
  font-weight: 900;
}

.analytics-bar-value {
  color: var(--profile-ink);
  text-align: right;
}

.analytics-bar-track {
  height: 14px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--profile-soft);
}

.analytics-bar-fill {
  display: block;
  height: 100%;
  min-width: 3px;
  border-radius: inherit;
  background: var(--profile-mint);
}

.analytics-page[data-game=spelling_bee] .analytics-bar-fill {
  background: #d9b83f;
}

.analytics-page[data-game=connections] .analytics-bar-fill {
  background: var(--profile-lavender);
}

.analytics-page[data-game=sudoku] .analytics-bar-fill {
  background: var(--profile-rose);
}

.analytics-trend svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.analytics-trend-axis {
  stroke: rgba(11, 11, 10, 0.14);
  stroke-width: 1;
}

.analytics-trend-grid {
  stroke: rgba(11, 11, 10, 0.08);
  stroke-width: 1;
}

.analytics-trend-line {
  fill: none;
  stroke: var(--profile-ink);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 3.5;
}

.analytics-trend-point {
  fill: var(--profile-ink);
  stroke: #fff;
  stroke-width: 2;
}

.analytics-trend-label {
  fill: var(--profile-muted);
  color: var(--profile-muted);
  font-size: 0.63rem;
  font-weight: 900;
  letter-spacing: 0;
}

.analytics-trend-label--y {
  dominant-baseline: middle;
  text-anchor: end;
}

.analytics-trend-label--x {
  dominant-baseline: hanging;
}

.analytics-empty {
  display: grid;
  min-height: 96px;
  place-items: center;
  margin: 0;
  border-radius: 16px;
  background: var(--profile-paper);
  color: var(--profile-muted);
  font-size: 0.88rem;
  font-weight: 800;
  text-align: center;
}

.analytics-number-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-3);
  margin-bottom: var(--space-3);
}

.analytics-number-card {
  display: grid;
  min-height: 122px;
  align-content: center;
  gap: 0.4rem;
  padding: var(--space-3);
}

.analytics-number-label,
.analytics-number-detail {
  color: var(--profile-muted);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

.analytics-number-detail {
  letter-spacing: 0;
  text-transform: none;
}

.analytics-number-value {
  color: var(--profile-ink);
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
  line-height: 0.95;
}

.analytics-number-card.is-positive .analytics-number-detail {
  color: #2f7558;
}

.analytics-collection-meter {
  display: grid;
  gap: var(--space-3);
}

.analytics-collection-meter strong {
  display: block;
  color: var(--profile-ink);
  font-size: 1rem;
  font-weight: 900;
}

.analytics-collection-meter span {
  display: block;
  margin-top: 0.25rem;
  color: var(--profile-muted);
  font-size: 0.84rem;
  font-weight: 700;
}

.analytics-collection-track {
  height: 16px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--profile-soft);
}

.analytics-collection-track span {
  display: block;
  height: 100%;
  margin: 0;
  border-radius: inherit;
  background: var(--profile-ink);
}

.analytics-lifetime-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--profile-line);
  border-radius: 16px;
  background: var(--profile-paper);
}

.analytics-lifetime-row div {
  display: grid;
  min-height: 84px;
  align-content: center;
  justify-items: center;
  gap: 0.25rem;
  padding: var(--space-3);
  text-align: center;
}

.analytics-lifetime-row div + div {
  border-left: 1px solid var(--profile-line);
}

.analytics-lifetime-row strong {
  color: var(--profile-ink);
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
  line-height: 0.95;
}

.analytics-lifetime-row span {
  color: var(--profile-muted);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.history-feed {
  padding-bottom: var(--space-4);
}

.history-day-label {
  margin: var(--space-4) 0 var(--space-2);
  color: var(--profile-ink);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.history-day-label:first-child {
  margin-top: 0;
}

.history-day-date {
  color: var(--profile-muted);
  font-weight: 800;
  letter-spacing: 0.06em;
}

.history-day-group {
  overflow: hidden;
  border: 1px solid var(--profile-line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(11, 11, 10, 0.07);
}

.history-row {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--space-3);
  min-height: 72px;
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--profile-line);
}

.history-row:last-child {
  border-bottom: 0;
}

.history-icon {
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  border-radius: 16px;
  background: var(--profile-mint-soft);
  color: var(--profile-ink);
  font-size: 1.32rem;
}

.history-icon__image {
  display: block;
  width: 32px;
  height: 32px;
  -o-object-fit: contain;
     object-fit: contain;
}

.history-icon[data-game=spelling_bee] {
  background: var(--profile-yellow-soft);
}

.history-icon[data-game=connections] {
  background: var(--profile-lavender-soft);
}

.history-icon[data-game=sudoku] {
  background: var(--profile-rose-soft);
}

.history-info {
  display: grid;
  min-width: 0;
  gap: 0.18rem;
}

.history-game-name {
  overflow: hidden;
  color: var(--profile-ink);
  font-size: 0.96rem;
  font-weight: 900;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.history-stat-line {
  overflow: hidden;
  color: var(--profile-muted);
  font-size: 0.78rem;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.history-right {
  display: grid;
  justify-items: end;
  gap: 0.25rem;
}

.history-xp {
  color: var(--profile-ink);
  font-size: 0.9rem;
  font-weight: 900;
  white-space: nowrap;
}

.history-result {
  font-size: 0.72rem;
  font-weight: 900;
  white-space: nowrap;
}

.history-result.is-won {
  color: var(--profile-mint);
}

.history-result.is-perfect {
  color: #b48500;
}

.history-result.is-lost {
  color: var(--profile-muted);
}

.history-empty {
  display: grid;
  justify-items: center;
  gap: var(--space-2);
  padding: var(--space-6) var(--space-4);
  border: 1px solid var(--profile-line);
  border-radius: 20px;
  background: #fff;
  text-align: center;
  box-shadow: 0 14px 34px rgba(11, 11, 10, 0.07);
}

.history-empty__icon {
  display: grid;
  width: 64px;
  height: 64px;
  place-items: center;
  margin: 0;
  border-radius: 18px;
  background: var(--profile-yellow-soft);
  font-size: 1.8rem;
}

.history-empty__title {
  margin: 0;
  color: var(--profile-ink);
  font-family: var(--font-display);
  font-size: 1.8rem;
  font-weight: 800;
  line-height: 1;
}

.history-empty__sub {
  margin: 0;
  color: var(--profile-muted);
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.35;
}

@media (prefers-reduced-motion: no-preference) {
  .profile-avatar,
  .profile-row-card,
  .profile-action,
  .profile-seg-control,
  .profile-game-card,
  .history-day-group,
  .history-empty {
    animation: profile-rise 0.42s cubic-bezier(0.22, 0.61, 0.36, 1) both;
  }
}
@keyframes profile-rise {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (min-width: 560px) {
  .profile-btn {
    width: auto;
    min-width: 220px;
  }
  .profile-action {
    display: flex;
    justify-content: center;
  }
  .profile-action form {
    width: auto;
  }
}
@media (min-width: 720px) {
  .profile-games {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 520px) {
  .profile-page {
    padding-bottom: calc(6rem + env(safe-area-inset-bottom));
  }
  .profile-page .app-container, .profile-page .container {
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
  .profile-hero {
    padding: var(--space-4) 0 var(--space-2);
  }
  .profile-identity {
    padding-top: var(--space-2);
  }
  .profile-identity::before {
    display: none;
  }
  .profile-avatar {
    width: 76px;
    height: 76px;
    font-size: 1.16rem;
  }
  .profile-name {
    font-size: 2.45rem;
  }
  .profile-handle {
    min-height: 30px;
    font-size: 0.78rem;
  }
  .profile-row-cell {
    min-height: 76px;
    padding: var(--space-2);
  }
  .profile-row-num {
    font-size: 1.62rem;
  }
  .profile-btn {
    min-height: 48px;
    font-size: 0.94rem;
  }
  .profile-seg-control .seg-control__option {
    min-height: 34px;
    font-size: 0.8rem;
  }
  .profile-game-card {
    min-height: 164px;
    padding: var(--space-3) var(--space-3) calc(var(--space-3) + 10px);
    border-radius: 18px;
  }
  .profile-game-card__header {
    grid-template-columns: 56px minmax(0, 1fr) 18px;
    gap: var(--space-2);
  }
  .profile-game-icon {
    width: 56px;
    height: 56px;
    border-radius: 16px;
  }
  .profile-game-icon__image {
    width: 40px;
    height: 40px;
  }
  .profile-game-title {
    font-size: 1.25rem;
  }
  .profile-game-sub {
    font-size: 0.8rem;
  }
  .profile-game-stat {
    min-height: 64px;
  }
  .profile-game-stat__val {
    font-size: 1.62rem;
  }
  .analytics-section,
  .analytics-insight {
    padding: var(--space-3);
    border-radius: 18px;
  }
  .analytics-section-header {
    display: grid;
    gap: var(--space-2);
  }
  .analytics-title-row {
    grid-template-columns: 60px minmax(0, 1fr);
  }
  .analytics-game-icon {
    width: 60px;
    height: 60px;
    border-radius: 18px;
  }
  .analytics-window-toggle {
    gap: 0.45rem;
  }
  .analytics-window-option {
    min-height: 34px;
    font-size: 0.74rem;
  }
  .analytics-number-grid {
    gap: var(--space-2);
  }
  .analytics-number-card {
    min-height: 108px;
  }
  .analytics-number-value,
  .analytics-lifetime-row strong {
    font-size: 1.55rem;
  }
  .analytics-bar-row {
    grid-template-columns: 64px minmax(0, 1fr) 38px;
  }
  .history-row {
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: var(--space-2);
    min-height: 68px;
    padding: var(--space-2) var(--space-3);
  }
  .history-icon {
    width: 40px;
    height: 40px;
    border-radius: 14px;
    font-size: 1.12rem;
  }
  .history-icon__image {
    width: 28px;
    height: 28px;
  }
  .history-game-name {
    font-size: 0.88rem;
  }
  .history-stat-line,
  .history-result {
    font-size: 0.68rem;
  }
  .history-xp {
    font-size: 0.82rem;
  }
}
.friends-page {
  --friends-ink: #0b0b0a;
  --friends-paper: #fffdf8;
  --friends-line: rgba(11, 11, 10, 0.18);
  --friends-muted: #5f5951;
  --friends-soft: #f4f0e8;
  --friends-mint: #67b28b;
  --friends-mint-soft: #dfeee5;
  --friends-yellow: #f4cf4f;
  --friends-lavender-soft: #ece5f5;
  --friends-rose-soft: #f3dada;
  min-height: calc(100vh - 70px);
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.03) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.03) 1px, transparent 1px), var(--friends-paper);
  background-size: 34px 34px;
  color: var(--friends-ink);
}

body:has(.friends-page) .app-header {
  background: rgba(255, 253, 248, 0.92);
  border-bottom: 1px solid var(--friends-line);
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px);
          backdrop-filter: blur(18px);
}

body:has(.friends-page) .app-brand,
body:has(.friends-page) .nav-link {
  color: var(--friends-ink);
}

body:has(.friends-page) .text-gradient {
  color: var(--friends-ink);
  background: none;
  -webkit-text-fill-color: currentColor;
}

.friends-hero {
  padding: clamp(1.4rem, 4vw, 2.4rem) 0 clamp(2.5rem, 6vw, 4rem);
}

.friends-page .app-container, .friends-page .container {
  max-width: 880px;
}

.friends-intro {
  display: grid;
  gap: 0.55rem;
  margin-bottom: clamp(1rem, 3vw, 1.5rem);
}

.friends-badge {
  width: -moz-fit-content;
  width: fit-content;
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  padding: 0 0.9rem;
  border: 1px solid var(--friends-line);
  border-radius: 999px;
  background: var(--friends-mint-soft);
  color: var(--friends-ink);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.friends-title {
  display: grid;
  gap: 0.35rem;
  margin: 0;
  color: var(--friends-ink);
  font-family: var(--font-display);
  font-size: clamp(3rem, 10vw, 5.8rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 0.88;
}

.friends-title-dot {
  color: #78d2c9;
}

.friends-title-context {
  display: block;
  color: var(--friends-muted);
  font-family: var(--font-sans);
  font-size: clamp(0.95rem, 2.5vw, 1.2rem);
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

.friends-subtitle {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 34rem;
  margin: 0;
  padding-bottom: 0.34rem;
  color: var(--friends-ink);
  font-size: clamp(1rem, 2.4vw, 1.25rem);
  font-weight: 700;
  line-height: 1.3;
}

.friends-subtitle::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: min(250px, 62%);
  height: 0.28rem;
  border-radius: 999px;
  background: #78d2c9;
  transform: rotate(-0.8deg);
}

.friends-panel,
.friends-list-wrapper {
  border: 1px solid var(--friends-line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 38px rgba(11, 11, 10, 0.07);
  padding: clamp(1rem, 3vw, 1.35rem);
}

.friends-list-wrapper {
  margin-top: 1rem;
}

.friends-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

.friends-section-head h2 {
  margin: 0;
  color: var(--friends-ink);
  font-family: var(--font-display);
  font-size: clamp(1.7rem, 4vw, 2.35rem);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1;
}

.friends-section-kicker {
  display: block;
  margin-bottom: 0.3rem;
  color: var(--friends-muted);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.friends-section-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}

.friends-count-pill {
  display: inline-grid;
  min-width: 42px;
  min-height: 34px;
  place-items: center;
  padding: 0 0.85rem;
  border: 1px solid var(--friends-line);
  border-radius: 999px;
  background: var(--friends-yellow);
  color: var(--friends-ink);
  font-weight: 900;
}

.friends-link-btn {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  padding: 0 0.9rem;
  border: 1px solid var(--friends-line);
  border-radius: 999px;
  background: #fff;
  color: var(--friends-ink);
  font-size: 0.85rem;
  font-weight: 900;
  text-decoration: none;
}

.friends-link-btn.is-primary {
  border-color: var(--friends-ink);
  background: var(--friends-ink);
  color: #fff;
}

.friends-form {
  display: grid;
  gap: 0.55rem;
}

.friends-label {
  color: var(--friends-ink);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.friends-form-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.75rem;
}

.friends-input {
  width: 100%;
  min-width: 0;
  min-height: 54px;
  border: 1px solid var(--friends-line);
  border-radius: 999px;
  background: #fff;
  color: var(--friends-ink);
  font-size: 1rem;
  font-weight: 800;
  padding: 0.7rem 1.05rem;
}

.friends-input:focus {
  outline: none;
  border-color: var(--friends-ink);
  box-shadow: 0 0 0 3px rgba(120, 210, 201, 0.24);
}

.friends-submit,
.friends-follow {
  min-height: 54px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border: 1px solid var(--friends-ink);
  border-radius: 999px;
  background: var(--friends-ink);
  color: #fff;
  cursor: pointer;
  font-size: 0.95rem;
  font-weight: 900;
}

.friends-submit {
  min-width: 160px;
  padding: 0.65rem 3.5rem 0.65rem 1.35rem;
}

.friends-submit__icon {
  display: inline-grid;
  position: absolute;
  right: 0.38rem;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 999px;
  background: var(--friends-yellow);
  color: var(--friends-ink);
  font-size: 1rem;
}

.friends-follow {
  min-width: 104px;
  padding: 0.55rem 1rem;
}

.friends-list {
  display: grid;
  gap: 0.75rem;
  margin-top: 1rem;
}

.friends-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 0.8rem;
  min-width: 0;
  border: 1px solid var(--friends-line);
  border-radius: 18px;
  background: #fff;
  padding: 0.85rem;
}

.friends-card:nth-child(4n+1) .friends-avatar {
  background: var(--friends-mint-soft);
}

.friends-card:nth-child(4n+2) .friends-avatar {
  background: var(--friends-yellow);
}

.friends-card:nth-child(4n+3) .friends-avatar {
  background: var(--friends-lavender-soft);
}

.friends-card:nth-child(4n) .friends-avatar {
  background: var(--friends-rose-soft);
}

.friends-card-profile {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.8rem;
  color: inherit;
  text-decoration: none;
}

.friends-avatar {
  width: 52px;
  height: 52px;
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid var(--friends-line);
  border-radius: 999px;
  color: var(--friends-ink);
  font-weight: 900;
}

.friends-card-copy {
  display: grid;
  min-width: 0;
}

.friends-name {
  overflow: hidden;
  color: var(--friends-ink);
  font-size: 1.02rem;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.friends-username {
  overflow: hidden;
  color: var(--friends-muted);
  font-size: 0.92rem;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.friends-email {
  margin: 0.2rem 0 0;
  color: var(--friends-muted);
  font-size: 0.84rem;
}

.friends-stats {
  display: flex;
  gap: 0.65rem;
  color: var(--friends-muted);
  font-size: 0.88rem;
  font-weight: 800;
  white-space: nowrap;
}

.friends-stats strong {
  color: var(--friends-ink);
  font-weight: 900;
}

.friends-remove {
  min-height: 40px;
  border: 1px solid rgba(184, 91, 86, 0.28);
  border-radius: 999px;
  background: var(--friends-rose-soft);
  color: #8f3d38;
  cursor: pointer;
  font-weight: 900;
  padding: 0.45rem 0.9rem;
}

.friends-empty {
  display: grid;
  gap: 0.35rem;
  margin-top: 1rem;
  border: 1px dashed var(--friends-line);
  border-radius: 18px;
  background: var(--friends-soft);
  padding: clamp(1rem, 3vw, 1.35rem);
}

.friends-empty-title {
  margin: 0;
  color: var(--friends-ink);
  font-family: var(--font-display);
  font-size: 1.45rem;
  font-weight: 800;
  line-height: 1;
}

.friends-empty-copy {
  margin: 0;
  color: var(--friends-muted);
  font-weight: 700;
}

@media (max-width: 720px) {
  .friends-page {
    min-height: 100vh;
    min-height: 100dvh;
  }
  .friends-title {
    font-size: clamp(2.45rem, 13vw, 3.5rem);
  }
  .friends-form-row {
    grid-template-columns: 1fr;
  }
  .friends-submit {
    width: 100%;
  }
  .friends-card {
    grid-template-columns: 1fr auto;
  }
  .friends-stats {
    grid-column: 1/-1;
    order: 3;
    padding-left: calc(52px + 0.8rem);
    white-space: normal;
  }
}
@media (max-width: 480px) {
  .friends-card {
    grid-template-columns: 1fr;
  }
  .friends-stats {
    padding-left: 0;
  }
  .friends-follow,
  .friends-remove {
    width: 100%;
  }
}
body:has(.standings-page) {
  --standings-ink: #0b0b0a;
  --standings-paper: #fffdf8;
  --standings-soft: #f4f0e8;
  --standings-line: rgba(11, 11, 10, 0.18);
  --standings-muted: #5b5650;
  --standings-mint: #67b28b;
  --standings-mint-soft: #dfeee5;
  --standings-yellow: #f4cf4f;
  --standings-yellow-soft: #fff0b9;
  --standings-lavender: #9276c8;
  --standings-lavender-soft: #ece5f5;
  --standings-rose: #d58a89;
  --standings-rose-soft: #f3dada;
  color: var(--standings-ink);
  background: var(--standings-paper);
}

body:has(.standings-page) .app-header {
  background: rgba(255, 253, 248, 0.92);
  border-bottom: 1px solid var(--standings-line);
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px);
          backdrop-filter: blur(18px);
}

body:has(.standings-page) .app-brand,
body:has(.standings-page) .nav-link {
  color: var(--standings-ink);
}

body:has(.standings-page) .text-gradient {
  color: var(--standings-ink);
  background: none;
  -webkit-text-fill-color: currentColor;
}

.standings-page {
  min-height: 100vh;
  overflow-x: hidden;
  padding-bottom: calc(var(--space-7) + env(safe-area-inset-bottom));
  background: linear-gradient(90deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), linear-gradient(180deg, rgba(11, 11, 10, 0.025) 1px, transparent 1px), var(--standings-paper);
  background-size: 34px 34px;
}

.standings-page .app-container, .standings-page .container {
  max-width: 1180px;
}

.standings-hero {
  padding: var(--space-5) 0 var(--space-3);
}

.standings-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: var(--space-5);
}

.standings-title {
  margin: 0 0 var(--space-3);
  color: var(--standings-ink);
  font-family: var(--font-display);
  font-size: 5.35rem;
  font-weight: 800;
  line-height: 0.9;
  letter-spacing: 0;
}

.standings-title::after {
  content: ".";
  color: #78d2c9;
}

.standings-week-label {
  display: inline-flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  min-height: 42px;
  margin: 0;
  padding: 0 1.08rem;
  border: 1px solid var(--standings-line);
  border-radius: 999px;
  background: #fff;
  color: var(--standings-ink);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1;
  text-transform: uppercase;
}

.standings-my-position {
  display: flex;
  flex-direction: column;
  min-width: 120px;
  gap: 0.55rem;
  justify-items: end;
  align-items: flex-end;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.standings-my-position__rank {
  color: var(--standings-ink);
  font-family: var(--font-display);
  font-size: 2.75rem;
  font-weight: 800;
  line-height: 0.9;
}

.standings-my-position__xp {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 0.8rem;
  border-radius: 999px;
  background: var(--standings-yellow);
  color: var(--standings-ink);
  font-size: 0.82rem;
  font-weight: 900;
  white-space: nowrap;
}

.standings-my-position--empty .standings-my-position__rank {
  color: var(--standings-muted);
}

.standings-my-position--empty .standings-my-position__xp {
  background: var(--standings-soft);
  color: var(--standings-muted);
}

.standings-filters {
  position: sticky;
  top: 0;
  z-index: 50;
  padding: var(--space-2) 0 var(--space-3);
  background: rgba(255, 253, 248, 0.92);
  border-top: 0;
  border-bottom: 0;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

body:not(.turbo-native-body) .standings-filters {
  top: 65px;
}

.standings-page .seg-control {
  display: flex;
  width: 100%;
  gap: 0;
  padding: 3px;
  border: 1px solid var(--standings-line);
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(11, 11, 10, 0.08);
}

.standings-page .seg-control__option {
  display: inline-flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  gap: 0.48rem;
  min-height: 36px;
  padding: 0 1rem;
  border-radius: 999px;
  color: var(--standings-muted);
  font-size: 0.92rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
  text-decoration: none;
}

.standings-page .seg-control__option.is-active {
  background: var(--standings-ink);
  color: #fff;
}

.standings-page .seg-control__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.standings-page .filter-row {
  display: flex;
  gap: var(--space-3);
  margin-top: var(--space-3);
}

.standings-page .filter-row--scroll {
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.standings-page .filter-row--scroll::-webkit-scrollbar {
  display: none;
}

.standings-page .filter-tab {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 0.52rem;
  min-height: 38px;
  padding: 0 0.8rem;
  border: 1px solid transparent;
  border-radius: 999px;
  background: transparent;
  color: var(--standings-ink);
  font-size: 0.9rem;
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}

.standings-page .filter-tab.is-active {
  background: var(--standings-yellow);
  border-color: transparent;
  color: var(--standings-ink);
}

.standings-page .filter-tab__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.standings-page .filter-tab__image {
  display: block;
  width: 22px;
  height: 22px;
  -o-object-fit: contain;
     object-fit: contain;
}

.standings-podium {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: end;
  gap: var(--space-3);
  max-width: 760px;
  margin: var(--space-4) auto 0;
  padding-top: 1.8rem;
}

.podium-slot {
  position: relative;
  display: grid;
  min-width: 0;
  justify-items: center;
  gap: 0.45rem;
  padding: 0 var(--space-2);
  background: transparent;
  overflow: visible;
}

.podium-slot.is-first {
  order: 2;
  min-height: 250px;
}

.podium-slot.is-second {
  order: 1;
  min-height: 210px;
}

.podium-slot.is-third {
  order: 3;
  min-height: 194px;
}

.podium-crown {
  display: grid;
  place-items: center;
  width: 42px;
  height: 32px;
  margin-bottom: -0.2rem;
  border: 0;
  background: transparent;
  font-size: 1.55rem;
  transform: rotate(-4deg);
}

.podium-crown::before,
.podium-slot.is-second::before,
.podium-slot.is-third::before {
  content: "";
  position: absolute;
  width: 28px;
  height: 24px;
  border-top: 3px solid var(--standings-ink);
  border-left: 3px solid transparent;
  pointer-events: none;
}

.podium-crown::before {
  top: -0.4rem;
  right: calc(50% - 58px);
  transform: rotate(72deg);
}

.podium-slot.is-second::before {
  left: 1rem;
  top: 4.6rem;
  width: 18px;
  height: 34px;
  border-top: 0;
  border-left: 3px solid var(--standings-ink);
  border-radius: 50%;
  transform: rotate(12deg);
}

.podium-slot.is-third::before {
  right: 1rem;
  top: 4.2rem;
  transform: rotate(-28deg);
}

.podium-user-link {
  display: grid;
  min-width: 0;
  justify-items: center;
  gap: 0.45rem;
  color: inherit;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

.podium-user-link:active {
  transform: translateY(1px);
}

.podium-user-link:focus-visible {
  outline: 3px solid rgba(120, 210, 201, 0.55);
  outline-offset: 5px;
  border-radius: 18px;
}

.podium-avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 78px;
  height: 78px;
  border: 0;
  border-radius: 999px;
  background: var(--standings-yellow);
  color: var(--standings-ink);
  font-weight: 900;
  font-size: 1.15rem;
}

.podium-avatar.is-me {
  box-shadow: 0 0 0 4px rgba(103, 178, 139, 0.28);
}

.podium-slot.is-second .podium-avatar {
  width: 68px;
  height: 68px;
  background: #dce3e8;
}

.podium-slot.is-third .podium-avatar {
  width: 64px;
  height: 64px;
  background: #e8b98e;
}

.podium-name {
  max-width: 100%;
  margin: 0;
  overflow: hidden;
  color: var(--standings-ink);
  font-size: 0.94rem;
  font-weight: 900;
  line-height: 1.1;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.podium-xp {
  margin: 0;
  color: var(--standings-ink);
  font-size: 0.82rem;
  font-weight: 800;
  text-align: center;
  white-space: nowrap;
}

.podium-bar {
  display: flex;
  width: 100%;
  min-height: 76px;
  align-items: center;
  justify-content: center;
  margin-top: auto;
  border: 0;
  border-radius: 12px 12px 0 0;
  background: var(--standings-yellow-soft);
}

.podium-medal {
  display: inline-flex;
  width: 26px;
  height: 26px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--standings-ink);
  color: #fff;
  font-size: 0;
  font-weight: 900;
}

.podium-medal::before {
  font-size: 0.86rem;
}

.podium-slot.is-first .podium-medal::before {
  content: "1";
}

.podium-slot.is-second .podium-medal::before {
  content: "2";
}

.podium-slot.is-third .podium-medal::before {
  content: "3";
}

.podium-slot.is-second .podium-bar {
  min-height: 58px;
  background: #eef0f0;
}

.podium-slot.is-third .podium-bar {
  min-height: 48px;
  background: #f2ded2;
}

.standings-list {
  max-width: 100%;
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid var(--standings-line);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 22px 46px rgba(11, 11, 10, 0.08);
}

.standings-row {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) minmax(112px, auto);
  align-items: center;
  gap: var(--space-3);
  min-height: 76px;
  padding: 0.72rem var(--space-4);
  border-bottom: 1px solid var(--standings-line);
}

.standings-row:last-child {
  border-bottom: 0;
}

.standings-row.is-me {
  background: linear-gradient(90deg, rgba(103, 178, 139, 0.16), rgba(103, 178, 139, 0.06));
  box-shadow: inset 4px 0 0 var(--standings-mint);
}

.standings-rank-col {
  display: flex;
  align-items: center;
  justify-content: center;
}

.standings-rank-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 30px;
  min-height: 30px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--standings-ink);
  font-family: var(--font-sans);
  font-size: 1.1rem;
  font-weight: 800;
}

.standings-row:nth-child(1) .standings-rank-num {
  background: transparent;
}

.standings-row:nth-child(2) .standings-rank-num {
  background: transparent;
  color: var(--standings-ink);
}

.standings-row:nth-child(3) .standings-rank-num {
  background: transparent;
  color: var(--standings-ink);
}

.standings-avatar {
  display: flex;
  width: 50px;
  height: 50px;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 999px;
  background: #6f7f5d;
  color: var(--standings-ink);
  font-size: 0.82rem;
  font-weight: 900;
  flex-shrink: 0;
}

.standings-avatar.rank-1 {
  background: var(--standings-yellow);
}

.standings-avatar.rank-2 {
  background: #dce3e8;
}

.standings-avatar.rank-3 {
  background: #e8b98e;
}

.standings-avatar.rank-4 {
  background: #657251;
  color: #fff;
}

.standings-user-link {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
  gap: var(--space-3);
  min-width: 0;
  color: inherit;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

.standings-user-link:active {
  transform: translateY(1px);
}

.standings-user-link:focus-visible {
  outline: 3px solid rgba(120, 210, 201, 0.55);
  outline-offset: 4px;
  border-radius: 14px;
}

.standings-info {
  min-width: 0;
}

.standings-player-name {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  overflow: hidden;
  color: var(--standings-ink);
  font-size: 1rem;
  font-weight: 900;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.standings-you-tag {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 0.5rem;
  border: 1px solid var(--standings-line);
  border-radius: 999px;
  background: #fff;
  color: var(--standings-ink);
  font-size: 0.68rem;
  font-weight: 900;
  text-transform: uppercase;
  flex-shrink: 0;
}

.standings-player-handle {
  display: block;
  margin-top: 0.15rem;
  overflow: hidden;
  color: var(--standings-muted);
  font-size: 0.82rem;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.standings-right {
  display: grid;
  justify-items: end;
  gap: 0.22rem;
}

.standings-xp-val {
  color: var(--standings-ink);
  font-size: 1rem;
  font-weight: 900;
  white-space: nowrap;
}

.standings-sessions-val {
  color: var(--standings-muted);
  font-size: 0.78rem;
  font-weight: 800;
  white-space: nowrap;
}

.standings-empty {
  max-width: 520px;
  margin: var(--space-6) auto 0;
  padding: var(--space-6);
  border: 1px solid var(--standings-line);
  border-radius: 28px;
  background: #fff;
  text-align: center;
  box-shadow: 0 22px 46px rgba(11, 11, 10, 0.08);
}

.standings-empty__icon {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  margin: 0 auto var(--space-4);
  border-radius: 22px;
  background: var(--standings-yellow-soft);
  font-size: 2rem;
}

.standings-empty__title {
  margin: 0 0 var(--space-2);
  color: var(--standings-ink);
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
}

.standings-empty__sub {
  margin: 0;
  color: var(--standings-muted);
  font-size: 1rem;
  line-height: 1.4;
}

@media (prefers-reduced-motion: no-preference) {
  .standings-hero,
  .standings-filters,
  .standings-podium,
  .standings-list,
  .standings-empty {
    animation: standings-rise 0.42s cubic-bezier(0.22, 0.61, 0.36, 1) both;
  }
}
@keyframes standings-rise {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (min-width: 720px) {
  .standings-page .seg-control {
    width: 390px;
  }
  .standings-filters .app-container, .standings-filters .container {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: var(--space-4);
  }
  .standings-page .filter-row {
    margin-top: 0;
  }
}
@media (max-width: 760px) {
  .standings-page {
    padding-bottom: calc(6rem + env(safe-area-inset-bottom));
  }
  .standings-hero {
    padding: var(--space-4) 0 var(--space-2);
  }
  .standings-hero__inner {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--space-3);
  }
  .standings-title {
    font-size: 3.55rem;
  }
  .standings-my-position {
    min-width: 88px;
    align-items: flex-end;
  }
  .standings-my-position__rank {
    font-size: 1.95rem;
  }
  .standings-my-position__xp {
    min-height: 28px;
    padding: 0 0.62rem;
    font-size: 0.74rem;
  }
  .standings-podium {
    gap: var(--space-1);
    margin-top: var(--space-2);
    padding-top: 1rem;
    width: 100%;
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
  }
  .podium-slot {
    padding: 0 var(--space-1);
    gap: 0.32rem;
  }
  .podium-slot.is-first {
    min-height: 168px;
  }
  .podium-slot.is-second {
    min-height: 128px;
  }
  .podium-slot.is-third {
    min-height: 110px;
  }
  .podium-crown {
    width: 30px;
    height: 20px;
    font-size: 1rem;
  }
  .podium-avatar {
    width: 48px;
    height: 48px;
    font-size: 0.78rem;
  }
  .podium-slot.is-second .podium-avatar {
    width: 42px;
    height: 42px;
    font-size: 0.68rem;
  }
  .podium-slot.is-third .podium-avatar {
    width: 38px;
    height: 38px;
    font-size: 0.64rem;
  }
  .podium-name {
    font-size: 0.72rem;
  }
  .podium-xp {
    font-size: 0.66rem;
  }
  .podium-bar {
    min-height: 64px;
  }
  .podium-slot.is-second .podium-bar {
    min-height: 42px;
  }
  .podium-slot.is-third .podium-bar {
    min-height: 30px;
  }
  .standings-list {
    border-radius: 18px;
  }
  .standings-row {
    grid-template-columns: 28px minmax(0, 1fr) minmax(74px, auto);
    gap: 0.62rem;
    min-height: 72px;
    padding: 0.62rem 0.78rem;
  }
  .standings-user-link {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 0.62rem;
  }
  .standings-right {
    grid-column: auto;
    justify-items: end;
    margin-top: 0;
  }
  .standings-rank-num {
    min-width: 24px;
    min-height: 24px;
    font-size: 1rem;
  }
  .standings-avatar {
    width: 40px;
    height: 40px;
    font-size: 0.66rem;
  }
  .standings-player-name {
    font-size: 0.88rem;
  }
  .standings-xp-val {
    font-size: 0.9rem;
  }
  .standings-sessions-val {
    font-size: 0.72rem;
  }
}
@media (max-width: 480px) {
  .standings-page .app-container, .standings-page .container {
    padding-left: var(--space-3);
    padding-right: var(--space-3);
  }
  .standings-title {
    font-size: 3.05rem;
  }
  .standings-week-label {
    min-height: 30px;
    padding: 0 0.72rem;
    font-size: 0.58rem;
  }
  .standings-filters {
    padding: 0.4rem 0 0.72rem;
  }
  .standings-page .seg-control__option,
  .standings-page .filter-tab {
    min-height: 34px;
    font-size: 0.78rem;
  }
  .standings-page .filter-tab__image {
    width: 19px;
    height: 19px;
  }
  .standings-page .filter-row {
    gap: 0.85rem;
    margin-top: 0.7rem;
  }
  .standings-podium {
    max-width: 100%;
    padding-left: 0.2rem;
    padding-right: 0.2rem;
  }
  .podium-slot.is-second::before,
  .podium-slot.is-third::before,
  .podium-crown::before {
    display: none;
  }
  .standings-player-handle {
    font-size: 0.74rem;
  }
  .standings-you-tag {
    min-height: 18px;
    padding: 0 0.38rem;
    font-size: 0.58rem;
  }
}
.pro-page {
  padding: 2rem 1rem 4rem;
}

.pro-offer {
  max-width: 540px;
  margin: auto;
  padding: 2rem;
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: 20px;
  box-shadow: var(--shadow-soft);
}

.pro-eyebrow {
  color: var(--color-primary);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
}

.pro-offer-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
}

.pro-offer-top a {
  font-size: 0.9rem;
  white-space: nowrap;
}

body:has(.pro-page) #pwa-install-prompt {
  display: none;
}

.pro-offer h1 {
  margin: 0.4rem 0;
  font-size: 2.8rem;
}

.pro-offer h1 span {
  color: var(--color-primary);
}

.pro-lead {
  font-size: 1.15rem;
}

.pro-benefits {
  padding: 0;
  list-style: none;
  display: grid;
  gap: 1rem;
  margin: 1.5rem 0;
}

.pro-benefits li {
  padding-left: 1rem;
  border-left: 3px solid var(--color-primary);
}

.pro-benefits span, .pro-periods span {
  display: block;
  color: var(--color-text-muted);
  font-size: 0.95rem;
}

.pro-periods {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
}

.pro-periods > div {
  padding: 0.8rem;
  border: 1px solid var(--color-border);
  border-radius: 10px;
}

.pro-periods > div:first-child {
  background: var(--color-surface-alt);
  border-color: var(--color-primary);
}

.pro-availability {
  padding: 1rem;
  background: var(--color-surface-alt);
  border-radius: 10px;
}

.pro-terms, .pro-free {
  font-size: 0.9rem;
  color: var(--color-text-muted);
}

.pro-actions {
  display: grid;
  gap: 1rem;
  text-align: center;
  margin-top: 1.5rem;
}

.pro-dialog {
  border: 0;
  background: transparent;
  padding: 1rem;
  max-width: 580px;
  width: 100%;
  max-height: 90dvh;
  color: var(--color-text);
}

.pro-dialog::backdrop {
  background: var(--color-overlay);
}

@media (max-width: 480px) {
  .pro-offer {
    padding: 1.25rem;
  }
  .pro-page {
    padding: 1rem 0.75rem;
  }
  .pro-offer h1 {
    font-size: 2.3rem;
  }
}

/*# sourceMappingURL=data:application/json;base64,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Z0I7RUFDaEIsV0FBVztFQUNYLGlCQUFpQjtFQUNqQix3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRSxnQ0FBZ0M7QUFDbEM7O0FBRUE7RUFDRTtJQUNFLGdCQUFnQjtFQUNsQjtFQUNBO0lBQ0UscUJBQXFCO0VBQ3ZCO0VBQ0E7SUFDRSxpQkFBaUI7RUFDbkI7QUFDRiIsImZpbGUiOiJhcHBsaWNhdGlvbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG46cm9vdCB7XG4gIC0tY29sb3ItYmc6ICNmN2YzZWU7XG4gIC0tY29sb3Itc3VyZmFjZTogI2ZmZmZmZjtcbiAgLS1jb2xvci1zdXJmYWNlLWFsdDogI2YyZWNlNDtcbiAgLS1jb2xvci1ib3JkZXI6ICNlMmQ5Y2Y7XG4gIC0tY29sb3ItYm9yZGVyLWxpZ2h0OiAjZWZlN2RlO1xuICAtLWNvbG9yLXRleHQ6ICMyYjI0MWQ7XG4gIC0tY29sb3ItdGV4dC1tdXRlZDogIzdlNzM2NjtcbiAgLS1jb2xvci1wcmltYXJ5OiAjM2Y2YjViO1xuICAtLWNvbG9yLXByaW1hcnktc3Ryb25nOiAjMzI1NjQ4O1xuICAtLWNvbG9yLXNlY29uZGFyeTogIzliN2I1NjtcbiAgLS1jb2xvci1zdWNjZXNzOiAjNGY3YTY4O1xuICAtLWNvbG9yLWRhbmdlcjogI2I4NWI1NjtcbiAgLS1jb2xvci13YXJuaW5nOiAjYzJhMDRkO1xuICAtLWNvbG9yLWluZm86ICM2ZjhhYTU7XG4gIC0tY29sb3Itb3ZlcmxheTogcmdiYSg0MCwgMzIsIDI0LCAwLjQpO1xuICAtLWNvbG9yLWNvcnJlY3Q6ICM0ZjdhNjg7XG4gIC0tY29sb3ItY29ycmVjdC10ZXh0OiAjZjdmM2VlO1xuICAtLWNvbG9yLXByZXNlbnQ6ICNjMmEwNGQ7XG4gIC0tY29sb3ItcHJlc2VudC10ZXh0OiAjM2EyYTE0O1xuICAtLWNvbG9yLWFic2VudDogI2QxYzhiZDtcbiAgLS1jb2xvci1hYnNlbnQtdGV4dDogIzY5NWY1NTtcbiAgLS1jb2xvci1hYnNlbnQtYm9yZGVyOiAjYzRiYmFmO1xuICAtLWNvbG9yLWtleTogI2U4ZTFkODtcbiAgLS1jb2xvci1rZXktaG92ZXI6ICNkZWQ2Y2M7XG4gIC0tc3BhY2UtMTogMC4yNXJlbTtcbiAgLS1zcGFjZS0yOiAwLjVyZW07XG4gIC0tc3BhY2UtMzogMC43NXJlbTtcbiAgLS1zcGFjZS00OiAxcmVtO1xuICAtLXNwYWNlLTU6IDEuNXJlbTtcbiAgLS1zcGFjZS02OiAycmVtO1xuICAtLXNwYWNlLTc6IDNyZW07XG4gIC0tcmFkaXVzLXhzOiA0cHg7XG4gIC0tcmFkaXVzLXNtOiA2cHg7XG4gIC0tcmFkaXVzLW1kOiAxMHB4O1xuICAtLXJhZGl1cy1sZzogMTZweDtcbiAgLS1zaGFkb3ctc29mdDogMCAxMHB4IDMwcHggcmdiYSg1OCwgNDYsIDMzLCAwLjA4KTtcbiAgLS1zaGFkb3ctc3Ryb25nOiAwIDE4cHggNTBweCByZ2JhKDU4LCA0NiwgMzMsIDAuMTYpO1xuICAtLWZvbnQtYmFzZTogXCJTb3VyY2UgU2FucyAzXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIC0tZm9udC1kaXNwbGF5OiBcIkZyYXVuY2VzXCIsIFwiR2VvcmdpYVwiLCBcIlRpbWVzIE5ldyBSb21hblwiLCBzZXJpZjtcbiAgLS1mb250LXNpemUtYmFzZTogMTZweDtcbiAgLS1mb250LXNpemUtc206IDAuOXJlbTtcbiAgLS1mb250LXNpemUtbGc6IDEuMTVyZW07XG59XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmcpO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWJhc2UpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZyk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuYm9keS50dXJiby1uYXRpdmUtYm9keSB7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDcycHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO1xufVxuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbi5oZWFkaW5nLWxnLFxuLmhlYWRpbmctbWQsXG4uaGVhZGluZy1zbSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMWVtO1xufVxuXG5ib2R5Lm1vZGFsLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5hIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBlYXNlO1xufVxuYTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuXG4uYXBwLWNvbnRhaW5lciwgLmNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtNCk7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmFwcC1jb250YWluZXIsIC5jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtMyk7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuYXBwLWNvbnRhaW5lciwgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS0yKTtcbiAgfVxufVxuXG4ucGFuZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS01KTtcbn1cblxuLnBhbmVsLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLTMpO1xufVxuXG4ucGFuZWwtYm9keSB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLnJlc3VsdC1wYWdlIHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnJlc3VsdC1wYWdlLS13b3JkbGUge1xuICAtLXJlc3VsdC1hY2NlbnQ6ICNmNWQ4Nzg7XG4gIC0tcmVzdWx0LWNhcmQtYmc6IHJnYmEoMjM4LCAyNTUsIDI0OCwgMC4xMik7XG4gIC0tcmVzdWx0LWNhcmQtYm9yZGVyOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNjVkZWcsICMzZjZlNWEgMCUsICMyMzQ2M2EgNTQlLCAjMTIyYjI2IDEwMCUpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSB7XG4gIC0tcmVzdWx0LWFjY2VudDogI2ZmZDI3YTtcbiAgLS1yZXN1bHQtY2FyZC1iZzogcmdiYSgyNTUsIDI0MCwgMjE4LCAwLjEyKTtcbiAgLS1yZXN1bHQtY2FyZC1ib3JkZXI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yMik7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNjVkZWcsICNiOTdmMmIgMCUsICM3ZjQ3MTkgNTQlLCAjNTAyYTBjIDEwMCUpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIHtcbiAgLS1yZXN1bHQtYWNjZW50OiAjOWJiMWZmO1xuICAtLXJlc3VsdC1jYXJkLWJnOiByZ2JhKDIyNywgMjMyLCAyNTUsIDAuMTMpO1xuICAtLXJlc3VsdC1jYXJkLWJvcmRlcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTY1ZGVnLCAjNGY2MWIyIDAlLCAjM2IzNTZmIDU0JSwgIzIzMWQ0OSAxMDAlKTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3Uge1xuICAtLXJlc3VsdC1hY2NlbnQ6ICM4ZmUzZWE7XG4gIC0tcmVzdWx0LWNhcmQtYmc6IHJnYmEoMjIwLCAyNTIsIDI1NSwgMC4xMik7XG4gIC0tcmVzdWx0LWNhcmQtYm9yZGVyOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNjVkZWcsICMxYzc2N2IgMCUsICMxMDM5NTIgNTQlLCAjMDYxYTJjIDEwMCUpO1xufVxuXG4ucmVzdWx0LXBhZ2U6OmJlZm9yZSxcbi5yZXN1bHQtcGFnZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMDtcbn1cblxuLnJlc3VsdC1wYWdlOjpiZWZvcmUge1xuICB3aWR0aDogY2xhbXAoMjgwcHgsIDU4dncsIDQyMHB4KTtcbiAgaGVpZ2h0OiBjbGFtcCgyODBweCwgNTh2dywgNDIwcHgpO1xuICB0b3A6IGNsYW1wKC0xNTBweCwgLTE2dncsIC03MHB4KTtcbiAgbGVmdDogY2xhbXAoLTE5MHB4LCAtMjJ2dywgLTkwcHgpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTEpO1xufVxuXG4ucmVzdWx0LXBhZ2U6OmFmdGVyIHtcbiAgd2lkdGg6IGNsYW1wKDIwMHB4LCA0MHZ3LCAzMjBweCk7XG4gIGhlaWdodDogY2xhbXAoMjAwcHgsIDQwdncsIDMyMHB4KTtcbiAgcmlnaHQ6IGNsYW1wKC05MHB4LCAtMTJ2dywgLTM2cHgpO1xuICBib3R0b206IGNsYW1wKDI0cHgsIDV2dywgNzRweCk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNik7XG59XG5cbi5yZXN1bHQtc2hlbGwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gbWlubWF4KDcycHgsIDFmcikgYXV0byBhdXRvIGF1dG87XG4gIGdhcDogY2xhbXAoOHB4LCAxLjV2aCwgMTZweCk7XG4gIHBhZGRpbmc6IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC10b3AsIDApICsgMTBweCkgY2xhbXAoMTRweCwgNHZ3LCAyNHB4KSBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tLCAwKSArIDEycHgpO1xufVxuXG4ucmVzdWx0LXRvcGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLnJlc3VsdC1kYXRlIHtcbiAgZm9udC1zaXplOiBjbGFtcCgwLjg2cmVtLCAzLjJ2dywgMXJlbSk7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODYpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMWVtO1xufVxuXG4ucmVzdWx0LWNsb3NlIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNik7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTQpO1xuICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDFyZW07XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZTtcbn1cbi5yZXN1bHQtY2xvc2U6aG92ZXIsIC5yZXN1bHQtY2xvc2U6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuXG4ucmVzdWx0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogdmFyKC0tc3BhY2UtMik7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnJlc3VsdC1zdGF0dXMtYmFkZ2Uge1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDZweDtcbiAgcGFkZGluZzogMC4zMnJlbSAwLjcycmVtO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI3KTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEzKTtcbiAgZm9udC1zaXplOiAwLjc4cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xufVxuXG4ucmVzdWx0LXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiBjbGFtcCgycmVtLCA4LjZ2dywgMy4zNXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiAwLjk4O1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgdGV4dC13cmFwOiBiYWxhbmNlO1xufVxuXG4ucmVzdWx0LXN1YnRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzJyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjE0ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjYpO1xufVxuXG4ucmVzdWx0LXZpc3VhbCB7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ucmVzdWx0LXdvcmRsZS1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiA1cHg7XG59XG5cbi5yZXN1bHQtd29yZGxlLXJvdyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIG1pbm1heCgwLCAxZnIpKTtcbiAgZ2FwOiA1cHg7XG59XG5cbi5yZXN1bHQtd29yZGxlLXRpbGUge1xuICB3aWR0aDogY2xhbXAoMjVweCwgNi4ydncsIDM0cHgpO1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE3KTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbn1cbi5yZXN1bHQtd29yZGxlLXRpbGUuaXMtY29ycmVjdCB7XG4gIGJhY2tncm91bmQ6ICM1YThmNzQ7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTtcbn1cbi5yZXN1bHQtd29yZGxlLXRpbGUuaXMtcHJlc2VudCB7XG4gIGJhY2tncm91bmQ6ICNiOTkyM2E7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMyKTtcbn1cbi5yZXN1bHQtd29yZGxlLXRpbGUuaXMtYWJzZW50IHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnJlc3VsdC13b3JkbGUtdGlsZS5pcy1lbXB0eSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuXG4ucmVzdWx0LWJlZS12aXN1YWwge1xuICB3aWR0aDogbWluKDMyMHB4LCA4NnZ3KTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xufVxuXG4ucmVzdWx0LWJlZS1pY29uIHtcbiAgZm9udC1zaXplOiBjbGFtcCgyLjRyZW0sIDh2dywgMy4zNXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ucmVzdWx0LWJlZS1yYW5rIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMXJlbSwgNC4xdncsIDEuMzVyZW0pO1xuICBsaW5lLWhlaWdodDogMS4wNjtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45Mik7XG59XG5cbi5yZXN1bHQtYmVlLWJhci10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucmVzdWx0LWJlZS1iYXItZmlsbCB7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43OCk7XG59XG5cbi5yZXN1bHQtYmVlLXByb2dyZXNzLWxhYmVsIHtcbiAgZm9udC1zaXplOiAwLjc0cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzYpO1xufVxuXG4ucmVzdWx0LWNvbm5lY3Rpb25zLXZpc3VhbCB7XG4gIHdpZHRoOiBtaW4oMzQwcHgsIDg4dncpO1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5yZXN1bHQtY29ubmVjdGlvbnMtY291bnQge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDZ2dywgMi4xNXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnJlc3VsdC1jb25uZWN0aW9ucy1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC43MnJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTZlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42OCk7XG59XG5cbi5yZXN1bHQtY29ubi1ncm91cHMge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xufVxuXG4ucmVzdWx0LWNvbm4tZ3JvdXAge1xuICBtaW4taGVpZ2h0OiA1NHB4O1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzYpO1xuICBkaXNwbGF5OiBncmlkO1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IDAuNjZyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjEyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4ucmVzdWx0LWNvbm4tZ3JvdXAuaXMtdW5zb2x2ZWQge1xuICBvcGFjaXR5OiAwLjM1O1xufVxuLnJlc3VsdC1jb25uLWdyb3VwLmNhdC0xIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNDUsIDIxNCwgMTAwLCAwLjMzKTtcbn1cbi5yZXN1bHQtY29ubi1ncm91cC5jYXQtMiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTAwLCAxODUsIDEyNSwgMC4zMyk7XG59XG4ucmVzdWx0LWNvbm4tZ3JvdXAuY2F0LTMge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDExMCwgMTU1LCAyMjAsIDAuMzMpO1xufVxuLnJlc3VsdC1jb25uLWdyb3VwLmNhdC00IHtcbiAgYmFja2dyb3VuZDogcmdiYSgxOTUsIDEwMCwgMTEwLCAwLjMzKTtcbn1cblxuLnJlc3VsdC1zdWRva3UtZ3JpZCB7XG4gIHdpZHRoOiBtaW4oMjI0cHgsIDU4dncpO1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDksIDFmcik7XG4gIGdhcDogMnB4O1xufVxuXG4ucmVzdWx0LXN1ZG9rdS1jZWxsIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG59XG4ucmVzdWx0LXN1ZG9rdS1jZWxsLmlzLWdpdmVuIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMyKTtcbn1cbi5yZXN1bHQtc3Vkb2t1LWNlbGwuaXMtc29sdmVkIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE3KTtcbn1cbi5yZXN1bHQtc3Vkb2t1LWNlbGwuYm94LXJpZ2h0IHtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xufVxuLnJlc3VsdC1zdWRva3UtY2VsbC5ib3gtYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbn1cblxuLnJlc3VsdC1zdGF0cyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcbiAgZ2FwOiBjbGFtcCg4cHgsIDEuMnZoLCAxMnB4KTtcbn1cblxuLnJlc3VsdC1zdGF0IHtcbiAgbWluLWhlaWdodDogY2xhbXAoNjhweCwgMTAuNHZoLCA4OHB4KTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmVzdWx0LWNhcmQtYm9yZGVyKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LWNhcmQtYmcpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEycHgpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiA0cHg7XG4gIHBhZGRpbmc6IGNsYW1wKDhweCwgMS41dmgsIDE0cHgpIDhweDtcbn1cblxuLnJlc3VsdC1zdGF0X19sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC42M3JlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTZlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42OCk7XG59XG5cbi5yZXN1bHQtc3RhdF9fdmFsdWUge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjY1cmVtLCA3LjJ2dywgMi41cmVtKTtcbiAgbGluZS1oZWlnaHQ6IDAuOTU7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG59XG4ucmVzdWx0LXN0YXRfX3ZhbHVlLmlzLXhwIHtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1hY2NlbnQpO1xufVxuXG4ucmVzdWx0LXN0YXRfX3ZhbHVlLS1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMS4wNXJlbSwgNC44dncsIDEuNzVyZW0pO1xufVxuXG4ucmVzdWx0LWFjdGlvbnMge1xuICBkaXNwbGF5OiBncmlkO1xufVxuXG4ucmVzdWx0LXNoYXJlLWJ0bixcbi5yZXN1bHQtZGV0YWlsLWJ0biB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2UtMik7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzQpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTcpO1xuICBwYWRkaW5nOiBjbGFtcCgwLjcycmVtLCAyLjJ2aCwgMC44OHJlbSkgMXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMC45NXJlbSwgNHZ3LCAxLjEycmVtKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlO1xufVxuLnJlc3VsdC1zaGFyZS1idG46aG92ZXIsIC5yZXN1bHQtc2hhcmUtYnRuOmFjdGl2ZSxcbi5yZXN1bHQtZGV0YWlsLWJ0bjpob3Zlcixcbi5yZXN1bHQtZGV0YWlsLWJ0bjphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xufVxuXG4ucmVzdWx0LWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLnJlc3VsdC1mb290ZXItdXJsIHtcbiAgZm9udC1zaXplOiBjbGFtcCgwLjk1cmVtLCAzLjV2dywgMS4wOHJlbSk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xufVxuXG4ucmVzdWx0LXhwLWJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogNnB4O1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMyKTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1hY2NlbnQpO1xuICBwYWRkaW5nOiAwLjI4cmVtIDAuN3JlbTtcbiAgZm9udC1zaXplOiBjbGFtcCgwLjcycmVtLCAzdncsIDAuODZyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMWVtO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG5AbWVkaWEgKG1heC1oZWlnaHQ6IDc2MHB4KSB7XG4gIC5yZXN1bHQtc2hlbGwge1xuICAgIGdhcDogOHB4O1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIG1pbm1heCg1MHB4LCAxZnIpIGF1dG8gYXV0byBhdXRvO1xuICB9XG4gIC5yZXN1bHQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS44MnJlbSwgOC40dncsIDIuNzJyZW0pO1xuICB9XG4gIC5yZXN1bHQtd29yZGxlLXRpbGUge1xuICAgIHdpZHRoOiBjbGFtcCgyMXB4LCA1LjR2dywgMjlweCk7XG4gIH1cbiAgLnJlc3VsdC1zdGF0IHtcbiAgICBtaW4taGVpZ2h0OiA2NHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC1oZWlnaHQ6IDY4MHB4KSB7XG4gIC5yZXN1bHQtc2hlbGwge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLCAwKSArIDZweCk7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20sIDApICsgOHB4KTtcbiAgfVxuICAucmVzdWx0LWNsb3NlIHtcbiAgICB3aWR0aDogMzZweDtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gIH1cbiAgLnJlc3VsdC1zdWJ0aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAucmVzdWx0LWJlZS1pY29uIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbiAgLnJlc3VsdC1zdWRva3UtZ3JpZCB7XG4gICAgd2lkdGg6IG1pbigxNzhweCwgNTB2dyk7XG4gIH1cbiAgLnJlc3VsdC1zdGF0X192YWx1ZSB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjMycmVtLCA2LjJ2dywgMnJlbSk7XG4gIH1cbn1cbi5yZXN1bHQtcGFnZS0td29yZGxlIHtcbiAgLS1yZXN1bHQtaW5rOiAjMGIwYjBhO1xuICAtLXJlc3VsdC1wYXBlcjogI2ZmZmRmODtcbiAgLS1yZXN1bHQtbGluZTogcmdiYSgxMSwgMTEsIDEwLCAwLjE4KTtcbiAgLS1yZXN1bHQtbXV0ZWQ6ICM1YjU2NTA7XG4gIC0tcmVzdWx0LW1pbnQ6ICM2N2IyOGI7XG4gIC0tcmVzdWx0LW1pbnQtYnJpZ2h0OiAjNzhkMmM5O1xuICAtLXJlc3VsdC1taW50LXNvZnQ6ICNkZmVlZTU7XG4gIC0tcmVzdWx0LXllbGxvdzogI2Y0Y2Y0ZjtcbiAgLS1yZXN1bHQteWVsbG93LXNvZnQ6ICNmZmYwYjk7XG4gIC0tcmVzdWx0LWxhdmVuZGVyOiAjOTI3NmM4O1xuICAtLXJlc3VsdC1sYXZlbmRlci1zb2Z0OiAjZWNlNWY1O1xuICAtLXJlc3VsdC1zb2Z0OiAjZjRmMGU4O1xuICAtLXJlc3VsdC1jYXJkLWJnOiAjZmZmO1xuICAtLXJlc3VsdC1jYXJkLWJvcmRlcjogdmFyKC0tcmVzdWx0LWxpbmUpO1xuICAtLXJlc3VsdC1hY2NlbnQ6IHZhcigtLXJlc3VsdC15ZWxsb3cpO1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCksIHZhcigtLXJlc3VsdC1wYXBlcik7XG4gIGJhY2tncm91bmQtc2l6ZTogMzRweCAzNHB4O1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZTo6YmVmb3JlLFxuLnJlc3VsdC1wYWdlLS13b3JkbGU6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLnJlc3VsdC1wYWdlLS13b3JkbGUgLnJlc3VsdC1zaGVsbCB7XG4gIG1heC13aWR0aDogNDMwcHg7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBtaW4taGVpZ2h0OiAxMDBkdmg7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIGF1dG8gYXV0byBhdXRvO1xuICBnYXA6IGNsYW1wKDhweCwgMS4zNXZoLCAxNHB4KTtcbiAgcGFkZGluZzogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMCkgKyA0cHgpIGNsYW1wKDE2cHgsIDQuNXZ3LCAyNHB4KSBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tLCAwKSArIDE0cHgpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LXRvcGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLCAwKSArIDRweCk7XG4gIHJpZ2h0OiBjbGFtcCgxNnB4LCA0LjV2dywgMjRweCk7XG4gIHotaW5kZXg6IDI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtZGF0ZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtaW4taGVpZ2h0OiAzNHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwIDAuOXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmVzdWx0LWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBmb250LXNpemU6IDAuNjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA2ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LWNsb3NlIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmVzdWx0LWluayk7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBub25lO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogbm9uZTtcbn1cblxuLnJlc3VsdC1wYWdlLS13b3JkbGUgLnJlc3VsdC1jbG9zZTpob3Zlcixcbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtY2xvc2U6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LXNvZnQpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LWhlYWRlciB7XG4gIGdhcDogMC41NXJlbTtcbn1cblxuLnJlc3VsdC1wYWdlLS13b3JkbGUgLnJlc3VsdC1tZXRhLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjQ1cmVtO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LXN0YXR1cy1iYWRnZSB7XG4gIG1pbi1oZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmc6IDAgMC43OHJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmVzdWx0LWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LW1pbnQtc29mdCk7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgZm9udC1zaXplOiAwLjc0cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbn1cblxuLnJlc3VsdC1wYWdlLS13b3JkbGUgLnJlc3VsdC10aXRsZS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNzVyZW07XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLnJlc3VsdC1wYWdlLS13b3JkbGUgLnJlc3VsdC1nYW1lLWljb24ge1xuICB3aWR0aDogY2xhbXAoNThweCwgMTR2dywgNzJweCk7XG4gIGhlaWdodDogY2xhbXAoNThweCwgMTR2dywgNzJweCk7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwLjU1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1yZXN1bHQtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC1taW50LXNvZnQpO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LXRpdGxlIHtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgzLjVyZW0sIDE1dncsIDVyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMC44NjtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtdGl0bGUtZG90IHtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1taW50LWJyaWdodCk7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtc3VidGl0bGUge1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMThyZW07XG4gIGJvcmRlci1ib3R0b206IDAuMjhyZW0gc29saWQgdmFyKC0tcmVzdWx0LW1pbnQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBmb250LXNpemU6IDAuNzJyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LXZpc3VhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogMDtcbiAgcGFkZGluZzogMC4zNXJlbSAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1yZXN1bHQtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMThweCA0MnB4IHJnYmEoMTEsIDExLCAxMCwgMC4xKTtcbn1cblxuLnJlc3VsdC1wYWdlLS13b3JkbGUgLnJlc3VsdC12aXN1YWw6OmJlZm9yZSxcbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtdmlzdWFsOjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtd29yZGxlLWdyaWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGdhcDogNnB4O1xuICBwYWRkaW5nOiAwLjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LXdvcmRsZS1yb3cge1xuICBnYXA6IDZweDtcbn1cblxuLnJlc3VsdC1wYWdlLS13b3JkbGUgLnJlc3VsdC13b3JkbGUtdGlsZSB7XG4gIHdpZHRoOiBjbGFtcCgyOXB4LCA4LjF2dywgNDJweCk7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXJlc3VsdC1pbmspO1xuICBib3JkZXItcmFkaXVzOiA5cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgM3B4IDAgcmdiYSgxMSwgMTEsIDEwLCAwLjEpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LXdvcmRsZS10aWxlLmlzLWNvcnJlY3Qge1xuICBib3JkZXItY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQtbWludCk7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtd29yZGxlLXRpbGUuaXMtcHJlc2VudCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC15ZWxsb3cpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LXdvcmRsZS10aWxlLmlzLWFic2VudCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG4gIGJhY2tncm91bmQ6ICM3NzcxNmE7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtd29yZGxlLXRpbGUuaXMtZW1wdHkge1xuICBib3JkZXItY29sb3I6IHZhcigtLXJlc3VsdC1saW5lKTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnJlc3VsdC1wYWdlLS13b3JkbGUgLnJlc3VsdC1zdGF0cyB7XG4gIGdhcDogMC42cmVtO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LWFjdGlvbnMge1xuICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IGNsYW1wKDEycHgsIDJ2aCwgMjBweCk7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtc3RhdCB7XG4gIG1pbi1oZWlnaHQ6IDcycHg7XG4gIHBhZGRpbmc6IDAuNzJyZW0gMC42NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmVzdWx0LWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZHJvcC1maWx0ZXI6IG5vbmU7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBub25lO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LXN0YXRfX2xhYmVsIHtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC42MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTJlbTtcbn1cblxuLnJlc3VsdC1wYWdlLS13b3JkbGUgLnJlc3VsdC1zdGF0X192YWx1ZSB7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMS42NXJlbSwgN3Z3LCAyLjI1cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtc3RhdF9fdmFsdWUuaXMteHAge1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtc3RhdC0teHAge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQteWVsbG93LXNvZnQpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LWRldGFpbC1idG4ge1xuICB3aWR0aDogbWluKDc4JSwgMzEwcHgpO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwLjU1cmVtIDMuNHJlbSAwLjU1cmVtIDMuNHJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmVzdWx0LWluayk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMC45OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBub25lO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogbm9uZTtcbn1cblxuLnJlc3VsdC1wYWdlLS13b3JkbGUgLnJlc3VsdC1kZXRhaWwtYnRuX19pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDAuMzZyZW07XG4gIHdpZHRoOiAzOHB4O1xuICBoZWlnaHQ6IDM4cHg7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQteWVsbG93KTtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBmb250LXNpemU6IDEuMThyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LWRldGFpbC1idG5fX2ljb24gaSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LWRldGFpbC1idG46aG92ZXIsXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LWRldGFpbC1idG46YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LWluayk7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtZm9vdGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdhcDogY2xhbXAoMThweCwgM3ZoLCAyOHB4KTtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtZm9vdGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBvcmRlcjogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQtbGluZSk7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtZm9vdGVyLXVybCB7XG4gIG9yZGVyOiAzO1xuICBqdXN0aWZ5LXNlbGY6IHN0YXJ0O1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDEuMzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LWZvb3Rlci11cmw6OmFmdGVyIHtcbiAgY29udGVudDogXCIuXCI7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtbWludC1icmlnaHQpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LXhwLWJhZGdlIHtcbiAgb3JkZXI6IDE7XG4gIGp1c3RpZnktc2VsZjogY2VudGVyO1xuICBtaW4taGVpZ2h0OiA1NHB4O1xuICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNDYsIDExOCwgMjAwLCAwLjMyKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC1sYXZlbmRlci1zb2Z0KTtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQteHAtYmFkZ2VfX3ZhbHVlIHtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1sYXZlbmRlcik7XG4gIGZvbnQtc2l6ZTogMS4wOGVtO1xufVxuXG5AbWVkaWEgKG1heC1oZWlnaHQ6IDc2MHB4KSB7XG4gIC5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtc2hlbGwge1xuICAgIGdhcDogOHB4O1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIGF1dG8gYXV0byBhdXRvO1xuICB9XG4gIC5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMy4xcmVtLCAxM3Z3LCA0LjRyZW0pO1xuICB9XG4gIC5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtdmlzdWFsIHtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICB9XG4gIC5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtd29yZGxlLWdyaWQge1xuICAgIHBhZGRpbmc6IDAuMnJlbTtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LXdvcmRsZS10aWxlIHtcbiAgICB3aWR0aDogY2xhbXAoMjRweCwgNi43dncsIDM0cHgpO1xuICB9XG4gIC5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtc3RhdCB7XG4gICAgbWluLWhlaWdodDogNjJweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtaGVpZ2h0OiA2ODBweCkge1xuICAucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LXNoZWxsIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMCkgKyAycHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tLCAwKSArIDhweCk7XG4gIH1cbiAgLnJlc3VsdC1wYWdlLS13b3JkbGUgLnJlc3VsdC10b3BiYXIge1xuICAgIHRvcDogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMCkgKyAycHgpO1xuICB9XG4gIC5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtc3VidGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMC42NnJlbTtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLXdvcmRsZSAucmVzdWx0LWNsb3NlIHtcbiAgICB3aWR0aDogMzZweDtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gIH1cbiAgLnJlc3VsdC1wYWdlLS13b3JkbGUgLnJlc3VsdC1kZXRhaWwtYnRuIHtcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICB9XG4gIC5yZXN1bHQtcGFnZS0td29yZGxlIC5yZXN1bHQtZGV0YWlsLWJ0bl9faWNvbiB7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICB9XG59XG4ucmVzdWx0LXBhZ2UtLWJlZSB7XG4gIC0tcmVzdWx0LWluazogIzBiMGIwYTtcbiAgLS1yZXN1bHQtcGFwZXI6ICNmZmZkZjg7XG4gIC0tcmVzdWx0LWxpbmU6IHJnYmEoMTEsIDExLCAxMCwgMC4xOCk7XG4gIC0tcmVzdWx0LW11dGVkOiAjNWI1NjUwO1xuICAtLXJlc3VsdC1taW50LWJyaWdodDogIzc4ZDJjOTtcbiAgLS1yZXN1bHQteWVsbG93OiAjZjRjZjRmO1xuICAtLXJlc3VsdC15ZWxsb3ctc29mdDogI2ZmZjBiOTtcbiAgLS1yZXN1bHQtbGF2ZW5kZXI6ICM5Mjc2Yzg7XG4gIC0tcmVzdWx0LWxhdmVuZGVyLXNvZnQ6ICNlY2U1ZjU7XG4gIC0tcmVzdWx0LXNvZnQ6ICNmNGYwZTg7XG4gIC0tcmVzdWx0LWNhcmQtYmc6ICNmZmY7XG4gIC0tcmVzdWx0LWNhcmQtYm9yZGVyOiB2YXIoLS1yZXN1bHQtbGluZSk7XG4gIC0tcmVzdWx0LWFjY2VudDogdmFyKC0tcmVzdWx0LXllbGxvdyk7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCksIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMTEsIDExLCAxMCwgMC4wMjUpIDFweCwgdHJhbnNwYXJlbnQgMXB4KSwgdmFyKC0tcmVzdWx0LXBhcGVyKTtcbiAgYmFja2dyb3VuZC1zaXplOiAzNHB4IDM0cHg7XG59XG5cbi5yZXN1bHQtcGFnZS0tYmVlOjpiZWZvcmUsXG4ucmVzdWx0LXBhZ2UtLWJlZTo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LXNoZWxsIHtcbiAgbWF4LXdpZHRoOiA0MzBweDtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gYXV0byBhdXRvIGF1dG87XG4gIGFsaWduLWNvbnRlbnQ6IHN0YXJ0O1xuICBnYXA6IGNsYW1wKDhweCwgMS4zNXZoLCAxNHB4KTtcbiAgcGFkZGluZzogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMCkgKyA0cHgpIGNsYW1wKDE2cHgsIDQuNXZ3LCAyNHB4KSBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tLCAwKSArIDE0cHgpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LXRvcGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLCAwKSArIDRweCk7XG4gIHJpZ2h0OiBjbGFtcCgxNnB4LCA0LjV2dywgMjRweCk7XG4gIHotaW5kZXg6IDI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtY2xvc2Uge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZHJvcC1maWx0ZXI6IG5vbmU7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBub25lO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LWNsb3NlOmhvdmVyLFxuLnJlc3VsdC1wYWdlLS1iZWUgLnJlc3VsdC1jbG9zZTphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQtc29mdCk7XG59XG5cbi5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtaGVhZGVyIHtcbiAgZ2FwOiAwLjU1cmVtO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LXRpdGxlLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC43MnJlbTtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LWdhbWUtaWNvbiB7XG4gIHdpZHRoOiBjbGFtcCg1OHB4LCAxNHZ3LCA3MnB4KTtcbiAgaGVpZ2h0OiBjbGFtcCg1OHB4LCAxNHZ3LCA3MnB4KTtcbiAgZmxleDogMCAwIGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDAuNTVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXJlc3VsdC1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LXllbGxvdy1zb2Z0KTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLnJlc3VsdC1wYWdlLS1iZWUgLnJlc3VsdC10aXRsZSB7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMi45cmVtLCAxMi40dncsIDQuMjVyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMC44ODtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5cbi5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtdGl0bGUtZG90IHtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC15ZWxsb3cpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LW1ldGEtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNDVyZW07XG59XG5cbi5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtc3RhdHVzLWJhZGdlLFxuLnJlc3VsdC1wYWdlLS1iZWUgLnJlc3VsdC1kYXRlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1pbi1oZWlnaHQ6IDM0cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMC45cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1yZXN1bHQtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG4gIGZvbnQtc2l6ZTogMC42OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtc3RhdHVzLWJhZGdlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LXllbGxvdy1zb2Z0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LWRhdGUge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LXZpc3VhbCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIHBhZGRpbmc6IDAuOXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmVzdWx0LWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAyNHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDE4cHggNDJweCByZ2JhKDExLCAxMSwgMTAsIDAuMSk7XG59XG5cbi5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtYmVlLXZpc3VhbCB7XG4gIHdpZHRoOiBtaW4oMzEwcHgsIDc4dncpO1xuICBnYXA6IDAuN3JlbTtcbiAgcGFkZGluZzogMDtcbn1cblxuLnJlc3VsdC1wYWdlLS1iZWUgLnJlc3VsdC1iZWUtcmFuayB7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMS4zNXJlbSwgNnZ3LCAyLjA1cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LWJlZS1iYXItdHJhY2sge1xuICBoZWlnaHQ6IDE2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXJlc3VsdC1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC1zb2Z0KTtcbn1cblxuLnJlc3VsdC1wYWdlLS1iZWUgLnJlc3VsdC1iZWUtYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQteWVsbG93KTtcbn1cblxuLnJlc3VsdC1wYWdlLS1iZWUgLnJlc3VsdC1iZWUtcHJvZ3Jlc3MtbGFiZWwge1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjg2cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbn1cblxuLnJlc3VsdC1wYWdlLS1iZWUgLnJlc3VsdC1zdGF0cyB7XG4gIGdhcDogMC42cmVtO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LWFjdGlvbnMge1xuICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IGNsYW1wKDEycHgsIDJ2aCwgMjBweCk7XG59XG5cbi5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtc3RhdCB7XG4gIG1pbi1oZWlnaHQ6IDcycHg7XG4gIHBhZGRpbmc6IDAuNzJyZW0gMC42NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmVzdWx0LWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZHJvcC1maWx0ZXI6IG5vbmU7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBub25lO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LXN0YXRfX2xhYmVsIHtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC42MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTJlbTtcbn1cblxuLnJlc3VsdC1wYWdlLS1iZWUgLnJlc3VsdC1zdGF0X192YWx1ZSB7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMS42NXJlbSwgN3Z3LCAyLjI1cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5cbi5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtc3RhdF9fdmFsdWUuaXMteHAge1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG59XG5cbi5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtc3RhdC0teHAge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQteWVsbG93LXNvZnQpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LWRldGFpbC1idG4ge1xuICB3aWR0aDogbWluKDc4JSwgMzEwcHgpO1xuICBtaW4taGVpZ2h0OiAwO1xuICBoZWlnaHQ6IDQ2cHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAgMy4ycmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC1pbmspO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAwLjk4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBub25lO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogbm9uZTtcbn1cblxuLnJlc3VsdC1wYWdlLS1iZWUgLnJlc3VsdC1kZXRhaWwtYnRuX19pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDAuMzZyZW07XG4gIHdpZHRoOiAzNHB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQteWVsbG93KTtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBmb250LXNpemU6IDEuMDhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LWRldGFpbC1idG5fX2ljb24gaSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LWRldGFpbC1idG46aG92ZXIsXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LWRldGFpbC1idG46YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LWluayk7XG59XG5cbi5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtZm9vdGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdhcDogY2xhbXAoMTJweCwgMnZoLCAxOHB4KTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LWZvb3Rlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgb3JkZXI6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LWxpbmUpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LWZvb3Rlci11cmwge1xuICBvcmRlcjogMztcbiAganVzdGlmeS1zZWxmOiBzdGFydDtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiAxLjM1cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnJlc3VsdC1wYWdlLS1iZWUgLnJlc3VsdC1mb290ZXItdXJsOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLlwiO1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LW1pbnQtYnJpZ2h0KTtcbn1cblxuLnJlc3VsdC1wYWdlLS1iZWUgLnJlc3VsdC14cC1iYWRnZSB7XG4gIG9yZGVyOiAxO1xuICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogNTRweDtcbiAgcGFkZGluZzogMCAxLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTQ2LCAxMTgsIDIwMCwgMC4zMik7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQtbGF2ZW5kZXItc29mdCk7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LXhwLWJhZGdlX192YWx1ZSB7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtbGF2ZW5kZXIpO1xuICBmb250LXNpemU6IDEuMDhlbTtcbn1cblxuQG1lZGlhIChtYXgtaGVpZ2h0OiA3NjBweCkge1xuICAucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LXNoZWxsIHtcbiAgICBnYXA6IDhweDtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IGNsYW1wKDIuNThyZW0sIDExLjJ2dywgMy43cmVtKTtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LXZpc3VhbCB7XG4gICAgcGFkZGluZzogMC43MnJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICB9XG4gIC5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtc3RhdCB7XG4gICAgbWluLWhlaWdodDogNjJweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtaGVpZ2h0OiA2ODBweCkge1xuICAucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LXNoZWxsIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMCkgKyAycHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tLCAwKSArIDhweCk7XG4gIH1cbiAgLnJlc3VsdC1wYWdlLS1iZWUgLnJlc3VsdC10b3BiYXIge1xuICAgIHRvcDogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMCkgKyAycHgpO1xuICB9XG4gIC5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtY2xvc2Uge1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzZweDtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLWJlZSAucmVzdWx0LWRldGFpbC1idG4ge1xuICAgIGhlaWdodDogNDRweDtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG4gIC5yZXN1bHQtcGFnZS0tYmVlIC5yZXN1bHQtZGV0YWlsLWJ0bl9faWNvbiB7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICB9XG59XG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIHtcbiAgLS1yZXN1bHQtaW5rOiAjMGIwYjBhO1xuICAtLXJlc3VsdC1wYXBlcjogI2ZmZmRmODtcbiAgLS1yZXN1bHQtbGluZTogcmdiYSgxMSwgMTEsIDEwLCAwLjE4KTtcbiAgLS1yZXN1bHQtbXV0ZWQ6ICM1YjU2NTA7XG4gIC0tcmVzdWx0LW1pbnQtYnJpZ2h0OiAjNzhkMmM5O1xuICAtLXJlc3VsdC1taW50OiAjNjdiMjhiO1xuICAtLXJlc3VsdC15ZWxsb3c6ICNmNGNmNGY7XG4gIC0tcmVzdWx0LXllbGxvdy1zb2Z0OiAjZmZmMGI5O1xuICAtLXJlc3VsdC1sYXZlbmRlcjogIzkyNzZjODtcbiAgLS1yZXN1bHQtbGF2ZW5kZXItc29mdDogI2VjZTVmNTtcbiAgLS1yZXN1bHQtbWludC1zb2Z0OiAjZGZlZWU1O1xuICAtLXJlc3VsdC1ibHVlOiAjOTFiOWRmO1xuICAtLXJlc3VsdC1ibHVlLXNvZnQ6ICNkZmVhZjQ7XG4gIC0tcmVzdWx0LXNvZnQ6ICNmNGYwZTg7XG4gIC0tcmVzdWx0LWNhcmQtYmc6ICNmZmY7XG4gIC0tcmVzdWx0LWNhcmQtYm9yZGVyOiB2YXIoLS1yZXN1bHQtbGluZSk7XG4gIC0tcmVzdWx0LWFjY2VudDogdmFyKC0tcmVzdWx0LWxhdmVuZGVyKTtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMTEsIDExLCAxMCwgMC4wMjUpIDFweCwgdHJhbnNwYXJlbnQgMXB4KSwgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCB2YXIoLS1yZXN1bHQtcGFwZXIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMzRweDtcbn1cblxuLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9uczo6YmVmb3JlLFxuLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9uczo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtc2hlbGwge1xuICBtYXgtd2lkdGg6IDQzMHB4O1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgbWluLWhlaWdodDogMTAwZHZoO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMCBhdXRvO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byBhdXRvIGF1dG8gYXV0bztcbiAgYWxpZ24tY29udGVudDogc3RhcnQ7XG4gIGdhcDogY2xhbXAoOHB4LCAxLjM1dmgsIDE0cHgpO1xuICBwYWRkaW5nOiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLCAwKSArIDRweCkgY2xhbXAoMTZweCwgNC41dncsIDI0cHgpIGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20sIDApICsgMTRweCk7XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC10b3BiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMCkgKyA0cHgpO1xuICByaWdodDogY2xhbXAoMTZweCwgNC41dncsIDI0cHgpO1xuICB6LWluZGV4OiAyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtY2xvc2Uge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZHJvcC1maWx0ZXI6IG5vbmU7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBub25lO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtY2xvc2U6aG92ZXIsXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtY2xvc2U6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LXNvZnQpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtaGVhZGVyIHtcbiAgZ2FwOiAwLjU1cmVtO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtdGl0bGUtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjdyZW07XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9ucyAucmVzdWx0LWdhbWUtaWNvbiB7XG4gIHdpZHRoOiBjbGFtcCg1NHB4LCAxM3Z3LCA2OHB4KTtcbiAgaGVpZ2h0OiBjbGFtcCg1NHB4LCAxM3Z3LCA2OHB4KTtcbiAgZmxleDogMCAwIGF1dG87XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDAuNTVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXJlc3VsdC1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LWxhdmVuZGVyLXNvZnQpO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtdGl0bGUge1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IGNsYW1wKDIuNDVyZW0sIDEwLjR2dywgMy41NXJlbSk7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjk7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtdGl0bGUtZG90IHtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1sYXZlbmRlcik7XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC1tZXRhLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjQ1cmVtO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtc3RhdHVzLWJhZGdlLFxuLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9ucyAucmVzdWx0LWRhdGUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWluLWhlaWdodDogMzRweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAwLjlyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXJlc3VsdC1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgZm9udC1zaXplOiAwLjY4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9ucyAucmVzdWx0LXN0YXR1cy1iYWRnZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC1sYXZlbmRlci1zb2Z0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtZGF0ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC12aXN1YWwge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwLjhyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXJlc3VsdC1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAxOHB4IDQycHggcmdiYSgxMSwgMTEsIDEwLCAwLjEpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtY29ubmVjdGlvbnMtdmlzdWFsIHtcbiAgd2lkdGg6IG1pbigzMzBweCwgODJ2dyk7XG4gIGdhcDogMC41NXJlbTtcbn1cblxuLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9ucyAucmVzdWx0LWNvbm5lY3Rpb25zLWNvdW50IHtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjc1cmVtLCA3dncsIDIuNDVyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtY29ubmVjdGlvbnMtbGFiZWwge1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjcycmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtY29ubi1ncm91cHMge1xuICBnYXA6IDAuNTVyZW07XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC1jb25uLWdyb3VwIHtcbiAgbWluLWhlaWdodDogNTZweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmVzdWx0LWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG4gIGZvbnQtc2l6ZTogMC42OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgYm94LXNoYWRvdzogMCA0cHggMCByZ2JhKDExLCAxMSwgMTAsIDAuMDgpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtY29ubi1ncm91cC5pcy11bnNvbHZlZCB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiByZ2JhKDExLCAxMSwgMTAsIDAuNTgpO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtY29ubi1ncm91cC5jYXQtMS5pcy11bnNvbHZlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC15ZWxsb3ctc29mdCk7XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC1jb25uLWdyb3VwLmNhdC0yLmlzLXVuc29sdmVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LW1pbnQtc29mdCk7XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC1jb25uLWdyb3VwLmNhdC0zLmlzLXVuc29sdmVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LWJsdWUtc29mdCk7XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC1jb25uLWdyb3VwLmNhdC00LmlzLXVuc29sdmVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LWxhdmVuZGVyLXNvZnQpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtY29ubi1ncm91cC5jYXQtMS5pcy1zb2x2ZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQteWVsbG93KTtcbn1cblxuLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9ucyAucmVzdWx0LWNvbm4tZ3JvdXAuY2F0LTIuaXMtc29sdmVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LW1pbnQpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtY29ubi1ncm91cC5jYXQtMy5pcy1zb2x2ZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQtYmx1ZSk7XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC1jb25uLWdyb3VwLmNhdC00LmlzLXNvbHZlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC1sYXZlbmRlcik7XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC1jb25uLWdyb3VwLmlzLXNvbHZlZCB7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbn1cblxuLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9ucyAucmVzdWx0LXN0YXRzIHtcbiAgZ2FwOiAwLjZyZW07XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC1hY3Rpb25zIHtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tdG9wOiBjbGFtcCgxMnB4LCAydmgsIDIwcHgpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtc3RhdCB7XG4gIG1pbi1oZWlnaHQ6IDcycHg7XG4gIHBhZGRpbmc6IDAuNzJyZW0gMC42NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmVzdWx0LWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZHJvcC1maWx0ZXI6IG5vbmU7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBub25lO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtc3RhdF9fbGFiZWwge1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjYycmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtc3RhdF9fdmFsdWUge1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IGNsYW1wKDEuNTVyZW0sIDYuNXZ3LCAyLjEycmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC1zdGF0X192YWx1ZS5pcy14cCB7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbn1cblxuLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9ucyAucmVzdWx0LXN0YXQtLXhwIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LWxhdmVuZGVyLXNvZnQpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtZGV0YWlsLWJ0biB7XG4gIHdpZHRoOiBtaW4oNzglLCAzMTBweCk7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIGhlaWdodDogNDZweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMCAzLjJyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXJlc3VsdC1pbmspO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LWluayk7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDAuOThyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZHJvcC1maWx0ZXI6IG5vbmU7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBub25lO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtZGV0YWlsLWJ0bl9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ncmlkO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwLjM2cmVtO1xuICB3aWR0aDogMzRweDtcbiAgaGVpZ2h0OiAzNHB4O1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LXllbGxvdyk7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgZm9udC1zaXplOiAxLjA4cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9ucyAucmVzdWx0LWRldGFpbC1idG5fX2ljb24gaSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtZGV0YWlsLWJ0bjpob3Zlcixcbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC1kZXRhaWwtYnRuOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC1pbmspO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtZm9vdGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdhcDogY2xhbXAoMTJweCwgMnZoLCAxOHB4KTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xufVxuXG4ucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtZm9vdGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBvcmRlcjogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQtbGluZSk7XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC1mb290ZXItdXJsIHtcbiAgb3JkZXI6IDM7XG4gIGp1c3RpZnktc2VsZjogc3RhcnQ7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC1mb290ZXItdXJsOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLlwiO1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LW1pbnQtYnJpZ2h0KTtcbn1cblxuLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9ucyAucmVzdWx0LXhwLWJhZGdlIHtcbiAgb3JkZXI6IDE7XG4gIGp1c3RpZnktc2VsZjogY2VudGVyO1xuICBtaW4taGVpZ2h0OiA1NHB4O1xuICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNDYsIDExOCwgMjAwLCAwLjMyKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC1sYXZlbmRlci1zb2Z0KTtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC14cC1iYWRnZV9fdmFsdWUge1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWxhdmVuZGVyKTtcbiAgZm9udC1zaXplOiAxLjA4ZW07XG59XG5cbkBtZWRpYSAobWF4LWhlaWdodDogNzYwcHgpIHtcbiAgLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9ucyAucmVzdWx0LXNoZWxsIHtcbiAgICBnYXA6IDhweDtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMi4xOHJlbSwgOS4ydncsIDMuMDhyZW0pO1xuICB9XG4gIC5yZXN1bHQtcGFnZS0tY29ubmVjdGlvbnMgLnJlc3VsdC12aXN1YWwge1xuICAgIHBhZGRpbmc6IDAuNjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtY29ubi1ncm91cCB7XG4gICAgbWluLWhlaWdodDogNDhweDtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtc3RhdCB7XG4gICAgbWluLWhlaWdodDogNjJweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtaGVpZ2h0OiA2ODBweCkge1xuICAucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtc2hlbGwge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLCAwKSArIDJweCk7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20sIDApICsgOHB4KTtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtdG9wYmFyIHtcbiAgICB0b3A6IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC10b3AsIDApICsgMnB4KTtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtY2xvc2Uge1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzZweDtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLWNvbm5lY3Rpb25zIC5yZXN1bHQtZGV0YWlsLWJ0biB7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cbiAgLnJlc3VsdC1wYWdlLS1jb25uZWN0aW9ucyAucmVzdWx0LWRldGFpbC1idG5fX2ljb24ge1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgfVxufVxuLnJlc3VsdC1wYWdlLS1zdWRva3Uge1xuICAtLXJlc3VsdC1pbms6ICMwYjBiMGE7XG4gIC0tcmVzdWx0LXBhcGVyOiAjZmZmZGY4O1xuICAtLXJlc3VsdC1saW5lOiByZ2JhKDExLCAxMSwgMTAsIDAuMTgpO1xuICAtLXJlc3VsdC1zdHJvbmctbGluZTogcmdiYSgxMSwgMTEsIDEwLCAwLjcyKTtcbiAgLS1yZXN1bHQtbXV0ZWQ6ICM1YjU2NTA7XG4gIC0tcmVzdWx0LW1pbnQtYnJpZ2h0OiAjNzhkMmM5O1xuICAtLXJlc3VsdC15ZWxsb3c6ICNmNGNmNGY7XG4gIC0tcmVzdWx0LWxhdmVuZGVyOiAjOTI3NmM4O1xuICAtLXJlc3VsdC1sYXZlbmRlci1zb2Z0OiAjZWNlNWY1O1xuICAtLXJlc3VsdC1yb3NlOiAjZDU4YTg5O1xuICAtLXJlc3VsdC1yb3NlLXNvZnQ6ICNmM2RhZGE7XG4gIC0tcmVzdWx0LXNvZnQ6ICNmNGYwZTg7XG4gIC0tcmVzdWx0LWNhcmQtYmc6ICNmZmY7XG4gIC0tcmVzdWx0LWNhcmQtYm9yZGVyOiB2YXIoLS1yZXN1bHQtbGluZSk7XG4gIC0tcmVzdWx0LWFjY2VudDogdmFyKC0tcmVzdWx0LXJvc2UpO1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCksIHZhcigtLXJlc3VsdC1wYXBlcik7XG4gIGJhY2tncm91bmQtc2l6ZTogMzRweCAzNHB4O1xufVxuXG4ucmVzdWx0LXBhZ2UtLXN1ZG9rdTo6YmVmb3JlLFxuLnJlc3VsdC1wYWdlLS1zdWRva3U6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1zaGVsbCB7XG4gIG1heC13aWR0aDogNDMwcHg7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBtaW4taGVpZ2h0OiAxMDBkdmg7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIGF1dG8gYXV0byBhdXRvO1xuICBhbGlnbi1jb250ZW50OiBzdGFydDtcbiAgZ2FwOiBjbGFtcCg4cHgsIDEuMzV2aCwgMTRweCk7XG4gIHBhZGRpbmc6IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC10b3AsIDApICsgNHB4KSBjbGFtcCgxNnB4LCA0LjV2dywgMjRweCkgY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSwgMCkgKyAxNHB4KTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC10b3BiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMCkgKyA0cHgpO1xuICByaWdodDogY2xhbXAoMTZweCwgNC41dncsIDI0cHgpO1xuICB6LWluZGV4OiAyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXN1ZG9rdSAucmVzdWx0LWNsb3NlIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmVzdWx0LWluayk7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBub25lO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogbm9uZTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1jbG9zZTpob3Zlcixcbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtY2xvc2U6YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LXNvZnQpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXN1ZG9rdSAucmVzdWx0LWhlYWRlciB7XG4gIGdhcDogMC41NXJlbTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC10aXRsZS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNzJyZW07XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1nYW1lLWljb24ge1xuICB3aWR0aDogY2xhbXAoNThweCwgMTR2dywgNzJweCk7XG4gIGhlaWdodDogY2xhbXAoNThweCwgMTR2dywgNzJweCk7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwLjU1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1yZXN1bHQtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC1yb3NlLXNvZnQpO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXN1ZG9rdSAucmVzdWx0LXRpdGxlIHtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgzcmVtLCAxMi44dncsIDQuNHJlbSk7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjg4O1xuICBsZXR0ZXItc3BhY2luZzogMDtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC10aXRsZS1kb3Qge1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LXJvc2UpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXN1ZG9rdSAucmVzdWx0LW1ldGEtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNDVyZW07XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3RhdHVzLWJhZGdlLFxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1kYXRlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1pbi1oZWlnaHQ6IDM0cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMC45cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1yZXN1bHQtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG4gIGZvbnQtc2l6ZTogMC42OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3RhdHVzLWJhZGdlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LXJvc2Utc29mdCk7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1kYXRlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC12aXN1YWwge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAwO1xuICBwYWRkaW5nOiAwLjc4cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1yZXN1bHQtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMThweCA0MnB4IHJnYmEoMTEsIDExLCAxMCwgMC4xKTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1zdWRva3UtZ3JpZCB7XG4gIHdpZHRoOiBtaW4oMjMycHgsIDU2dncpO1xuICBnYXA6IDNweDtcbiAgcGFkZGluZzogMC4ycmVtO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LWluayk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3Vkb2t1LWNlbGwge1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3Vkb2t1LWNlbGwuaXMtZ2l2ZW4ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQtc29mdCk7XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3Vkb2t1LWNlbGwuaXMtc29sdmVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LXJvc2Utc29mdCk7XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3Vkb2t1LWNlbGwuYm94LXJpZ2h0IHtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgdmFyKC0tcmVzdWx0LXN0cm9uZy1saW5lKTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1zdWRva3UtY2VsbC5ib3gtYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLXJlc3VsdC1zdHJvbmctbGluZSk7XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3RhdHMge1xuICBnYXA6IDAuNnJlbTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1hY3Rpb25zIHtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tdG9wOiBjbGFtcCgxMnB4LCAydmgsIDIwcHgpO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXN1ZG9rdSAucmVzdWx0LXN0YXQge1xuICBtaW4taGVpZ2h0OiA3MnB4O1xuICBwYWRkaW5nOiAwLjcycmVtIDAuNjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXJlc3VsdC1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBub25lO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogbm9uZTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1zdGF0X19sYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuNjJyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjEyZW07XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3RhdF9fdmFsdWUge1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IGNsYW1wKDEuNTVyZW0sIDYuNXZ3LCAyLjEycmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3RhdF9fdmFsdWUtLXNtYWxsIHtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjA1cmVtLCA0LjV2dywgMS40NXJlbSk7XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3RhdF9fdmFsdWUuaXMteHAge1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3RhdC0teHAge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQtcm9zZS1zb2Z0KTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1kZXRhaWwtYnRuIHtcbiAgd2lkdGg6IG1pbig3OCUsIDMxMHB4KTtcbiAgbWluLWhlaWdodDogMDtcbiAgaGVpZ2h0OiA0NnB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDMuMnJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmVzdWx0LWluayk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMC45OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tkcm9wLWZpbHRlcjogbm9uZTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IG5vbmU7XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtZGV0YWlsLWJ0bl9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ncmlkO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwLjM2cmVtO1xuICB3aWR0aDogMzRweDtcbiAgaGVpZ2h0OiAzNHB4O1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LXllbGxvdyk7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgZm9udC1zaXplOiAxLjA4cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1kZXRhaWwtYnRuX19pY29uIGkge1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1kZXRhaWwtYnRuOmhvdmVyLFxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1kZXRhaWwtYnRuOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC1pbmspO1xufVxuXG4ucmVzdWx0LXBhZ2UtLXN1ZG9rdSAucmVzdWx0LWZvb3RlciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBnYXA6IGNsYW1wKDEycHgsIDJ2aCwgMThweCk7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1mb290ZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIG9yZGVyOiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXJlc3VsdC1saW5lKTtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1mb290ZXItdXJsIHtcbiAgb3JkZXI6IDM7XG4gIGp1c3RpZnktc2VsZjogc3RhcnQ7XG4gIGNvbG9yOiB2YXIoLS1yZXN1bHQtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtZm9vdGVyLXVybDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIi5cIjtcbiAgY29sb3I6IHZhcigtLXJlc3VsdC1taW50LWJyaWdodCk7XG59XG5cbi5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQteHAtYmFkZ2Uge1xuICBvcmRlcjogMTtcbiAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IDU0cHg7XG4gIHBhZGRpbmc6IDAgMS41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0NiwgMTE4LCAyMDAsIDAuMzIpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcmVzdWx0LWxhdmVuZGVyLXNvZnQpO1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWluayk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC14cC1iYWRnZV9fdmFsdWUge1xuICBjb2xvcjogdmFyKC0tcmVzdWx0LWxhdmVuZGVyKTtcbiAgZm9udC1zaXplOiAxLjA4ZW07XG59XG5cbkBtZWRpYSAobWF4LWhlaWdodDogNzYwcHgpIHtcbiAgLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC1zaGVsbCB7XG4gICAgZ2FwOiA4cHg7XG4gIH1cbiAgLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC10aXRsZSB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgyLjdyZW0sIDExLjJ2dywgMy44cmVtKTtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLXN1ZG9rdSAucmVzdWx0LXZpc3VhbCB7XG4gICAgcGFkZGluZzogMC42MnJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICB9XG4gIC5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3Vkb2t1LWdyaWQge1xuICAgIHdpZHRoOiBtaW4oMTkwcHgsIDUwdncpO1xuICB9XG4gIC5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtc3RhdCB7XG4gICAgbWluLWhlaWdodDogNjJweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtaGVpZ2h0OiA2ODBweCkge1xuICAucmVzdWx0LXBhZ2UtLXN1ZG9rdSAucmVzdWx0LXNoZWxsIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMCkgKyAycHgpO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tLCAwKSArIDhweCk7XG4gIH1cbiAgLnJlc3VsdC1wYWdlLS1zdWRva3UgLnJlc3VsdC10b3BiYXIge1xuICAgIHRvcDogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMCkgKyAycHgpO1xuICB9XG4gIC5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtY2xvc2Uge1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzZweDtcbiAgfVxuICAucmVzdWx0LXBhZ2UtLXN1ZG9rdSAucmVzdWx0LWRldGFpbC1idG4ge1xuICAgIGhlaWdodDogNDRweDtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG4gIC5yZXN1bHQtcGFnZS0tc3Vkb2t1IC5yZXN1bHQtZGV0YWlsLWJ0bl9faWNvbiB7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICB9XG59XG4ubGF5b3V0LXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi5sYXlvdXQtY29sIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmp1c3RpZnktY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5qdXN0aWZ5LWJldHdlZW4ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5qdXN0aWZ5LWVuZCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5hbGlnbi1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uYWxpZ24tc3RhcnQge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLmFsaWduLWVuZCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cblxuLmdhcC14cyB7XG4gIGdhcDogdmFyKC0tc3BhY2UtMik7XG59XG5cbi5nYXAtc20ge1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uZ2FwLW1kIHtcbiAgZ2FwOiB2YXIoLS1zcGFjZS00KTtcbn1cblxuLmdhcC1sZyB7XG4gIGdhcDogdmFyKC0tc3BhY2UtNSk7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG59XG5cbi50ZXh0LWdyYWRpZW50IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tY29sb3Itc2Vjb25kYXJ5KSwgdmFyKC0tY29sb3ItcHJpbWFyeSkpO1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uaGVhZGluZy1sZyB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5oZWFkaW5nLW1kIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbjogMCAwIHZhcigtLXNwYWNlLTMpO1xufVxuXG4uaGVhZGluZy1zbSB7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW46IDAgMCB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLm10LXNtIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5tdC1tZCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTQpO1xufVxuXG4ubXQtbGcge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS02KTtcbn1cblxuLm1iLXNtIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5tYi1tZCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTQpO1xufVxuXG4ubWItbGcge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS02KTtcbn1cblxuLnB4LW1kIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS00KTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5weS1tZCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS00KTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLTQpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGUtbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnR1cmJvLW5hdGl2ZS1uYXYge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogY2FsYyg0NHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC10b3ApKTtcbiAgcGFkZGluZzogZW52KHNhZmUtYXJlYS1pbnNldC10b3ApIHZhcigtLXNwYWNlLTQpIDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB6LWluZGV4OiAxMTAwO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4udHVyYm8tbmF0aXZlLW5hdiArIC5hcHAtZmxhc2gge1xuICBwYWRkaW5nLXRvcDogY2FsYyg0NHB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC10b3ApKTtcbn1cblxuLnR1cmJvLW5hdGl2ZS1iYWNrIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTIpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gIGJveC1zaGFkb3c6IDAgNnB4IDE4cHggcmdiYSgzNSwgMjgsIDIyLCAwLjA4KTtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMnB4KTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7XG59XG4udHVyYm8tbmF0aXZlLWJhY2s6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG59XG5cbi50dXJiby1uYXRpdmUtaGVscCB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45Mik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgYm94LXNoYWRvdzogMCA2cHggMThweCByZ2JhKDM1LCAyOCwgMjIsIDAuMDgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMnB4KTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7XG59XG4udHVyYm8tbmF0aXZlLWhlbHA6YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG59XG5cbi50dXJiby1uYXRpdmUtdGFiYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBwYWRkaW5nOiAxMHB4IDI4cHggY2FsYygxMnB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45Mik7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDQ4LCAzOCwgMjgsIDAuMDgpO1xuICBib3gtc2hhZG93OiAwIC04cHggMThweCByZ2JhKDM1LCAyOCwgMjIsIDAuMDUpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMThweCk7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE4cHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG4gIHotaW5kZXg6IDExMDA7XG59XG5cbi50dXJiby1uYXRpdmUtdGFiYmFyX19pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogNHB4O1xuICBmb250LXNpemU6IDAuN3JlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi50dXJiby1uYXRpdmUtdGFiYmFyX19pdGVtIGkge1xuICBmb250LXNpemU6IDEuMTVyZW07XG59XG5cbi50dXJiby1uYXRpdmUtdGFiYmFyX19pdGVtLmlzLWFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbn1cblxuLnR1cmJvLW5hdGl2ZS10YWJiYXJfX2l0ZW0uaXMtYWN0aXZlOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogNnB4O1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC02cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAuaGlkZS1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJ0biwgLmJ0bi1vdXRsaW5lLXByaW1hcnksXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5LFxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsXG4uYnRuLW91dGxpbmUtZGFuZ2VyLFxuLmJ0bi1vdXRsaW5lLXdhcm5pbmcsXG4uYnRuLW91dGxpbmUtaW5mbywgLmJ0bi1pbmZvLCAuYnRuLWRhbmdlciwgLmJ0bi13YXJuaW5nLCAuYnRuLXN1Y2Nlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2UtMik7XG4gIHBhZGRpbmc6IDAuNjVyZW0gMS41cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZSwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYnRuOmhvdmVyLCAuYnRuLW91dGxpbmUtcHJpbWFyeTpob3Zlcixcbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIsXG4uYnRuLW91dGxpbmUtc3VjY2Vzczpob3Zlcixcbi5idG4tb3V0bGluZS1kYW5nZXI6aG92ZXIsXG4uYnRuLW91dGxpbmUtd2FybmluZzpob3Zlcixcbi5idG4tb3V0bGluZS1pbmZvOmhvdmVyLCAuYnRuLWluZm86aG92ZXIsIC5idG4tZGFuZ2VyOmhvdmVyLCAuYnRuLXdhcm5pbmc6aG92ZXIsIC5idG4tc3VjY2Vzczpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xufVxuLmJ0bjphY3RpdmUsIC5idG4tb3V0bGluZS1wcmltYXJ5OmFjdGl2ZSxcbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6YWN0aXZlLFxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6YWN0aXZlLFxuLmJ0bi1vdXRsaW5lLWRhbmdlcjphY3RpdmUsXG4uYnRuLW91dGxpbmUtd2FybmluZzphY3RpdmUsXG4uYnRuLW91dGxpbmUtaW5mbzphY3RpdmUsIC5idG4taW5mbzphY3RpdmUsIC5idG4tZGFuZ2VyOmFjdGl2ZSwgLmJ0bi13YXJuaW5nOmFjdGl2ZSwgLmJ0bi1zdWNjZXNzOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmJ0bi1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tY29sb3ItcHJpbWFyeSksIHZhcigtLWNvbG9yLXByaW1hcnktc3Ryb25nKSk7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnktc3Ryb25nKTtcbn1cblxuLmJ0bi1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1jb2xvci1zZWNvbmRhcnkpLCAjN2Y2MDQxKTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlci1jb2xvcjogIzdmNjA0MTtcbn1cblxuLmJ0bi1vdXRsaW5lLCAuYnRuLW91dGxpbmUtcHJpbWFyeSxcbi5idG4tb3V0bGluZS1zZWNvbmRhcnksXG4uYnRuLW91dGxpbmUtc3VjY2Vzcyxcbi5idG4tb3V0bGluZS1kYW5nZXIsXG4uYnRuLW91dGxpbmUtd2FybmluZyxcbi5idG4tb3V0bGluZS1pbmZvIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbn1cbi5idG4tb3V0bGluZTpob3ZlciwgLmJ0bi1vdXRsaW5lLXByaW1hcnk6aG92ZXIsXG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmhvdmVyLFxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6aG92ZXIsXG4uYnRuLW91dGxpbmUtZGFuZ2VyOmhvdmVyLFxuLmJ0bi1vdXRsaW5lLXdhcm5pbmc6aG92ZXIsXG4uYnRuLW91dGxpbmUtaW5mbzpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG59XG5cbi5idG4tZ29vZ2xlIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RhZGNlMDtcbiAgY29sb3I6ICMxZjFmMWY7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDYwLCA2NCwgNjcsIDAuMik7XG59XG4uYnRuLWdvb2dsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIGJvcmRlci1jb2xvcjogI2M2YzZjNjtcbn1cblxuLmJ0bi1hcHBsZSB7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMDAwMDA7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLmJ0bi1hcHBsZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMxYTFhMWE7XG4gIGJvcmRlci1jb2xvcjogIzFhMWExYTtcbn1cblxuYm9keTpoYXMoLmF1dGgtcGFnZSkge1xuICAtLWF1dGgtaW5rOiAjMGIwYjBhO1xuICAtLWF1dGgtcGFwZXI6ICNmZmZkZjg7XG4gIC0tYXV0aC1zb2Z0OiAjZjRmMGU4O1xuICAtLWF1dGgtbGluZTogcmdiYSgxMSwgMTEsIDEwLCAwLjIyKTtcbiAgLS1hdXRoLW11dGVkOiAjNTY1MjRjO1xuICAtLWF1dGgtbWludDogIzY3YjI4YjtcbiAgLS1hdXRoLW1pbnQtYnJpZ2h0OiAjNzhkMmM5O1xuICAtLWF1dGgtbWludC1zb2Z0OiAjZGZlZWU1O1xuICAtLWF1dGgteWVsbG93OiAjZjRjZjRmO1xuICAtLWF1dGgteWVsbG93LXNvZnQ6ICNmZmYwYjk7XG4gIC0tYXV0aC1sYXZlbmRlci1zb2Z0OiAjZWNlNWY1O1xuICAtLWF1dGgtcm9zZS1zb2Z0OiAjZjNkYWRhO1xuICBjb2xvcjogdmFyKC0tYXV0aC1pbmspO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1hdXRoLXBhcGVyKTtcbn1cblxuYm9keTpoYXMoLmF1dGgtcGFnZSkgLmFwcC1oZWFkZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYXV0aC1wYWdlIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbiAgcGFkZGluZzogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCkgKyB2YXIoLS1zcGFjZS01KSkgdmFyKC0tc3BhY2UtMykgY2FsYyh2YXIoLS1zcGFjZS02KSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCksIHZhcigtLWF1dGgtcGFwZXIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMzRweDtcbn1cblxuLmF1dGgtc2hlbGwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBncmlkO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA1NDBweDtcbiAgZ2FwOiBjbGFtcCgxcmVtLCAyLjR2dywgMS41cmVtKTtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmF1dGgtYnJhbmQge1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1pbi1oZWlnaHQ6IDQwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWF1dGgtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tYXV0aC1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjM1cmVtLCAzdncsIDEuNzVyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmF1dGgtYnJhbmQgc3Bhbixcbi5hdXRoLXRpdGxlIHNwYW4ge1xuICBjb2xvcjogdmFyKC0tYXV0aC1taW50LWJyaWdodCk7XG59XG5cbi5hdXRoLWxheW91dCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uYXV0aC1jYXJkIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgYWxpZ24tY29udGVudDogc3RhcnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG4gIGdhcDogMC45NXJlbTtcbiAgcGFkZGluZzogY2xhbXAoMXJlbSwgM3Z3LCAxLjQ1cmVtKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYXV0aC1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAxOHB4IDM4cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA3KTtcbn1cblxuLmF1dGgtY2FyZCA+ICoge1xuICBtaW4td2lkdGg6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmF1dGgtY2FyZF9faGVhZGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAwLjQ1cmVtO1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5hdXRoLWV5ZWJyb3cge1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1pbi1oZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmc6IDAgMC44cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1hdXRoLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXV0aC1taW50LXNvZnQpO1xuICBjb2xvcjogdmFyKC0tYXV0aC1pbmspO1xuICBmb250LXNpemU6IDAuNjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE0ZW07XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYXV0aC10aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWF1dGgtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMi40NXJlbSwgNi4ydncsIDMuNzVyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG59XG5cbi5hdXRoLXN1YnRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDI4cmVtO1xuICBtYXJnaW46IDAgMCAwLjJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjM0cmVtO1xuICBjb2xvcjogdmFyKC0tYXV0aC1pbmspO1xuICBmb250LXNpemU6IDEuMDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xufVxuXG4uYXV0aC1zdWJ0aXRsZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IG1pbigyMTBweCwgNjIlKTtcbiAgaGVpZ2h0OiAwLjI4cmVtO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXV0aC1taW50LWJyaWdodCk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjhkZWcpO1xufVxuXG4uYXV0aC1zb2NpYWwge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDAuODJyZW07XG4gIG1hcmdpbjogMC4yNXJlbSAwIDAuNHJlbTtcbiAgbWluLXdpZHRoOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5hdXRoLXNvY2lhbCAuYnV0dG9uX3RvLFxuLmF1dGgtc29jaWFsIC5idXR0b25fdG8gZGl2IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uYXV0aC1wcm92aWRlci1idG4ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG4gIG1pbi1oZWlnaHQ6IDQ2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWF1dGgtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tYXV0aC1pbmspO1xuICBmb250LXdlaWdodDogOTAwO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uYXV0aC1wcm92aWRlci1idG46aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLWF1dGgtaW5rKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXV0aC1zb2Z0KTtcbn1cblxuLmF1dGgtcHJvdmlkZXItYnRuLmJ0bi1nb29nbGUge1xuICBib3JkZXItY29sb3I6IHJnYmEoNjYsIDEzMywgMjQ0LCAwLjQ1KTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLWF1dGgtaW5rKTtcbn1cblxuLmF1dGgtcHJvdmlkZXItYnRuLmJ0bi1nb29nbGU6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICM0Mjg1ZjQ7XG4gIGJhY2tncm91bmQ6ICNmOGZiZmY7XG59XG5cbi5hdXRoLXByb3ZpZGVyLWJ0bi5idG4tYXBwbGUge1xuICBib3JkZXItY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYXV0aC1wcm92aWRlci1idG4uYnRuLWFwcGxlOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kOiAjMWIxYjFiO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmF1dGgtcHJvdmlkZXItYnRuLm1iLXNtIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmF1dGgtcHJvdmlkZXItaWNvbiB7XG4gIHdpZHRoOiAxLjJyZW07XG4gIGhlaWdodDogMS4ycmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uYXV0aC1wcm92aWRlci1pY29uIHN2ZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYXV0aC1kaXZpZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgbWFyZ2luOiAwLjVyZW0gMCAwLjI1cmVtO1xuICBjb2xvcjogdmFyKC0tYXV0aC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC42OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmF1dGgtZGl2aWRlcjo6YmVmb3JlLFxuLmF1dGgtZGl2aWRlcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBmbGV4OiAxO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYXV0aC1saW5lKTtcbn1cblxuLmF1dGgtZGl2aWRlci10aWdodCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5hdXRoLWZvcm0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBncmlkO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG4gIGdhcDogMC44NXJlbTtcbn1cblxuLmF1dGgtcGFnZSAuZm9ybS1maWVsZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIG1pbi13aWR0aDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYXV0aC1wYWdlIC5maWVsZF93aXRoX2Vycm9ycyB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5hdXRoLXBhZ2UgLmZvcm0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwLjQycmVtO1xuICBjb2xvcjogdmFyKC0tYXV0aC1pbmspO1xuICBmb250LXNpemU6IDAuNzhyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5hdXRoLXBhZ2UgLmlucHV0LCAuYXV0aC1wYWdlIC5mb3JtLWNvbnRyb2wge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWF1dGgtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDE0cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1hdXRoLWluayk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmF1dGgtcGFnZSAuaW5wdXQ6Zm9jdXMsIC5hdXRoLXBhZ2UgLmZvcm0tY29udHJvbDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYXV0aC1pbmspO1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgxMjAsIDIxMCwgMjAxLCAwLjI0KTtcbn1cblxuLmF1dGgtcGFnZSAuZmllbGRfd2l0aF9lcnJvcnMgLmlucHV0LCAuYXV0aC1wYWdlIC5maWVsZF93aXRoX2Vycm9ycyAuZm9ybS1jb250cm9sIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1hdXRoLWluayk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWF1dGgtcm9zZS1zb2Z0KTtcbn1cblxuLmF1dGgtbGFiZWwtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiAwLjRyZW0gMC44cmVtO1xufVxuXG4uYXV0aC1wYWdlIC5oZWxwZXItdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1hdXRoLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjc4cmVtO1xuICBmb250LXdlaWdodDogODAwO1xufVxuXG4uYXV0aC1jaGVjay1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNTVyZW07XG4gIGNvbG9yOiB2YXIoLS1hdXRoLWluayk7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5hdXRoLWNoZWNrLXJvdyBpbnB1dCB7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGFjY2VudC1jb2xvcjogdmFyKC0tYXV0aC1taW50KTtcbn1cblxuLmF1dGgtc3VibWl0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMC42cmVtIDMuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYXV0aC1pbmspO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXV0aC1pbmspO1xuICBjb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5hdXRoLXN1Ym1pdF9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ncmlkO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwLjM2cmVtO1xuICB3aWR0aDogMzhweDtcbiAgaGVpZ2h0OiAzOHB4O1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXV0aC15ZWxsb3cpO1xuICBjb2xvcjogdmFyKC0tYXV0aC1pbmspO1xuICBmb250LXNpemU6IDEuMTJyZW07XG59XG5cbi5hdXRoLWxpbmtzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDAuNTVyZW07XG4gIHBhZGRpbmctdG9wOiAwLjJyZW07XG4gIG1pbi13aWR0aDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uYXV0aC1saW5rcyBhIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1pbi1oZWlnaHQ6IDMycHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMC43OHJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYXV0aC1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1hdXRoLWluayk7XG4gIGZvbnQtc2l6ZTogMC44MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYXV0aC12aXN1YWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYXV0aC12aXN1YWxfX2NvcHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogMC4zNXJlbTtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBtYXgtd2lkdGg6IDIwcmVtO1xufVxuXG4uYXV0aC12aXN1YWxfX2NvcHkgc3BhbiB7XG4gIGNvbG9yOiB2YXIoLS1hdXRoLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjcycmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xNmVtO1xufVxuXG4uYXV0aC12aXN1YWxfX2NvcHkgc3Ryb25nIHtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBwYWRkaW5nLWJvdHRvbTogMC4xOHJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMC4yOHJlbSBzb2xpZCB2YXIoLS1hdXRoLW1pbnQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWF1dGgtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMnJlbSwgNXZ3LCAzcmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5hdXRoLWhlcm8taW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtMS4ycmVtO1xuICBib3R0b206IDIuOHJlbTtcbiAgd2lkdGg6IG1pbig4NiUsIDUwMHB4KTtcbiAgbWF4LWhlaWdodDogNjYlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4uYXV0aC1taW5pLWdyaWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAycmVtO1xuICBib3R0b206IDJyZW07XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDQ2cHgpO1xuICBnYXA6IDAuNXJlbTtcbn1cblxuLmF1dGgtbWluaS1ncmlkIHNwYW4ge1xuICB3aWR0aDogNDZweDtcbiAgaGVpZ2h0OiA0NnB4O1xuICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1hdXRoLWluayk7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5hdXRoLW1pbmktZ3JpZCAuaXMtbWludCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWF1dGgtbWludC1zb2Z0KTtcbn1cblxuLmF1dGgtbWluaS1ncmlkIC5pcy15ZWxsb3cge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1hdXRoLXllbGxvdyk7XG59XG5cbi5hdXRoLW1pbmktZ3JpZCAuaXMtbGF2ZW5kZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1hdXRoLWxhdmVuZGVyLXNvZnQpO1xufVxuXG4uYXV0aC1nYW1lLWljb25zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMS41cmVtO1xuICBib3R0b206IDEuNXJlbTtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgNThweCk7XG4gIGdhcDogMC42cmVtO1xufVxuXG4uYXV0aC1nYW1lLWljb25zIGltZyB7XG4gIHdpZHRoOiA1OHB4O1xuICBoZWlnaHQ6IDU4cHg7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYXV0aC1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLmF1dGgtcGFnZSAuYWxlcnQtZGFuZ2VyIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1hdXRoLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1hdXRoLXJvc2Utc29mdCk7XG4gIGNvbG9yOiB2YXIoLS1hdXRoLWluayk7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbi5hdXRoLXBhZ2UgLmFsZXJ0LWRhbmdlciB1bCB7XG4gIHBhZGRpbmctbGVmdDogMS4xcmVtO1xufVxuXG4uYXV0aC1wYWdlIC5hbGVydC1oZWFkaW5nIHtcbiAgbWFyZ2luOiAwIDAgMC40cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogODIwcHgpIHtcbiAgLmF1dGgtcGFnZSB7XG4gICAgcGFkZGluZzogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCkgKyAwLjM1cmVtKSBjbGFtcCgwLjg1cmVtLCA0dncsIDFyZW0pIGNhbGModmFyKC0tc3BhY2UtNSkgKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO1xuICB9XG4gIC5hdXRoLXNoZWxsIHtcbiAgICBnYXA6IDA7XG4gIH1cbiAgLmF1dGgtYnJhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmF1dGgtY2FyZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMjJweDtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5hdXRoLXRpdGxlIHtcbiAgICBmb250LXNpemU6IGNsYW1wKDIuMjVyZW0sIDEwLjV2dywgM3JlbSk7XG4gIH1cbiAgLmF1dGgtaGVyby1pbWFnZSB7XG4gICAgcmlnaHQ6IC0xLjRyZW07XG4gICAgYm90dG9tOiAwLjhyZW07XG4gICAgd2lkdGg6IG1pbig3NiUsIDM2MHB4KTtcbiAgICBtYXgtaGVpZ2h0OiA3NCU7XG4gIH1cbiAgLmF1dGgtbWluaS1ncmlkIHtcbiAgICByaWdodDogMXJlbTtcbiAgICBib3R0b206IDFyZW07XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMzRweCk7XG4gICAgZ2FwOiAwLjM2cmVtO1xuICB9XG4gIC5hdXRoLW1pbmktZ3JpZCBzcGFuIHtcbiAgICB3aWR0aDogMzRweDtcbiAgICBoZWlnaHQ6IDM0cHg7XG4gICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICB9XG4gIC5hdXRoLWdhbWUtaWNvbnMge1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIGJvdHRvbTogMXJlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCA0NHB4KTtcbiAgICBnYXA6IDAuNHJlbTtcbiAgfVxuICAuYXV0aC1nYW1lLWljb25zIGltZyB7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIH1cbn1cbi5idG4tbGluayB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gIHBhZGRpbmc6IDA7XG59XG4uYnRuLWxpbms6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG59XG5cbi5idG4tbGcge1xuICBwYWRkaW5nOiAwLjlyZW0gMnJlbTtcbiAgZm9udC1zaXplOiAxLjFyZW07XG59XG5cbi5idG4tc20ge1xuICBwYWRkaW5nOiAwLjQ1cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbn1cblxuLmJ0bi1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hbGVydCB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpIHZhcigtLXNwYWNlLTQpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0zKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg3OSwgMTIyLCAxMDQsIDAuMTQpO1xuICBib3JkZXItY29sb3I6IHJnYmEoNzksIDEyMiwgMTA0LCAwLjM1KTtcbiAgY29sb3I6ICMyZjRjM2U7XG59XG5cbi5hbGVydC1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4NCwgOTEsIDg2LCAwLjE0KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDE4NCwgOTEsIDg2LCAwLjM1KTtcbiAgY29sb3I6ICM2ZTJmMmI7XG59XG5cbi5hbGVydC13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxOTQsIDE2MCwgNzcsIDAuMTYpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMTk0LCAxNjAsIDc3LCAwLjM1KTtcbiAgY29sb3I6ICM1YjQ1MjE7XG59XG5cbi5hbGVydC1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMTEsIDEzOCwgMTY1LCAwLjE2KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDExMSwgMTM4LCAxNjUsIDAuMzUpO1xuICBjb2xvcjogIzMxNDI1NDtcbn1cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjVyZW07XG59XG5cbi5idG4tY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMC45cmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiAxLjFyZW07XG4gIGhlaWdodDogMS4xcmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDAuODtcbn1cbi5idG4tY2xvc2U6YWZ0ZXIge1xuICBjb250ZW50OiBcIuKclVwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5idG4tY2xvc2U6aG92ZXIsIC5idG4tY2xvc2U6Zm9jdXMge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZm9ybS1maWVsZCB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTQpO1xufVxuXG4uZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0yKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAwLjk1cmVtO1xufVxuXG4uaW5wdXQsIC5mb3JtLWNvbnRyb2wsXG4uc2VsZWN0LFxuLmZvcm0tc2VsZWN0LFxuLnRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuNjVyZW0gMC44NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZS1hbHQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xufVxuLmlucHV0OmZvY3VzLCAuZm9ybS1jb250cm9sOmZvY3VzLFxuLnNlbGVjdDpmb2N1cyxcbi5mb3JtLXNlbGVjdDpmb2N1cyxcbi50ZXh0YXJlYTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoMTU1LCAxMjMsIDg2LCAwLjM1KTtcbn1cblxuLnRleHRhcmVhIHtcbiAgbWluLWhlaWdodDogMTQwcHg7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi5oZWxwZXItdGV4dCB7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0xKTtcbn1cblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBpbnNldDogMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTQpO1xuICB6LWluZGV4OiAxMDAwO1xufVxuLm1vZGFsLmlzLW9wZW4ge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4ubW9kYWxfX2JhY2tkcm9wIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itb3ZlcmxheSk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cig0cHgpO1xufVxuXG4ubW9kYWxfX2RpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zdHJvbmcpO1xuICB3aWR0aDogbWluKDY0MHB4LCA5NXZ3KTtcbiAgbWF4LWhlaWdodDogOTB2aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLm1vZGFsX19oZWFkZXIsXG4ubW9kYWxfX2Zvb3RlciB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ubW9kYWxfX2Zvb3RlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xufVxuXG4ubW9kYWxfX2JvZHkge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS00KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLm1vZGFsX19jbG9zZSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC4ycmVtIDAuNnJlbTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xufVxuXG4ucHJvZ3Jlc3Mge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnByb2dyZXNzX19iYXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWNvbG9yLXNlY29uZGFyeSksIHZhcigtLWNvbG9yLXByaW1hcnkpKTtcbiAgdHJhbnNpdGlvbjogd2lkdGggMC40cyBlYXNlO1xufVxuXG4vKiBMZWdhY3kgbGF5b3V0ICsgdXRpbGl0eSBjb21wYXRpYmlsaXR5ICovXG4ucm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xufVxuXG5bY2xhc3MqPWNvbC1dIHtcbiAgZmxleDogMSAwIDEwMCU7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY29sLXNtLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1zbS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1tZC02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5jb2wtbWQtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzJTtcbiAgfVxuICAuY29sLW1kLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29sLWxnLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzJTtcbiAgfVxuICAuY29sLWxnLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1sZy04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NiU7XG4gIH1cbiAgLmNvbC1sZy0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG4uZC1mbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLmZsZXgtY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmZsZXgtcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuLmp1c3RpZnktY29udGVudC1iZXR3ZWVuIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4uanVzdGlmeS1jb250ZW50LWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYWxpZ24taXRlbXMtY2VudGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmFsaWduLWl0ZW1zLWVuZCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cblxuLmFsaWduLWl0ZW1zLXN0YXJ0IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5teC1hdXRvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnctMTAwIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5oLTEwMCB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGV4dC1lbmQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLm10LTIge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLm10LTMge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLm10LTQge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS00KTtcbn1cblxuLm10LTUge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS02KTtcbn1cblxuLm1iLTIge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLm1iLTMge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLm1iLTQge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS00KTtcbn1cblxuLm1iLTUge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS02KTtcbn1cblxuLm1lLTEge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXNwYWNlLTIpO1xufVxuXG4ubWUtMiB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5tZS0zIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS00KTtcbn1cblxuLm1zLTEge1xuICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2UtMik7XG59XG5cbi5tcy0yIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4ucHktNCB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS00KTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLTQpO1xufVxuXG4ucHgtMyB7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtMyk7XG4gIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uZy0zIHtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLmctNCB7XG4gIGdhcDogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5jYXJkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zb2Z0KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpIHZhcigtLXNwYWNlLTQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbn1cblxuLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTQpO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuXG4uc2hhZG93IHtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xufVxuXG4udGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbn1cblxuLnRhYmxlIHRoLFxuLnRhYmxlIHRkIHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMyk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGFibGUtc3RyaXBlZCB0Ym9keSB0cjpudGgtY2hpbGQob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWY3ZjI7XG59XG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5wYWdlLWl0ZW0ge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwLjRyZW0gMC44cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBhZ2UtaXRlbS5hY3RpdmUgLnBhZ2UtbGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5idG4tc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWNvbG9yLXN1Y2Nlc3MpLCAjM2M2MjUzKTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5idG4td2FybmluZyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNiMThkM2YsICM4ZjZhMmIpO1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLmJ0bi1kYW5nZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1jb2xvci1kYW5nZXIpLCAjOTk0NzQzKTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5idG4taW5mbyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWNvbG9yLWluZm8pLCAjNTY3MjhlKTtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbn1cblxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xufVxuXG4uYnRuLW91dGxpbmUtc3VjY2VzcyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3Itc3VjY2Vzcyk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1zdWNjZXNzKTtcbn1cblxuLmJ0bi1vdXRsaW5lLWRhbmdlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZGFuZ2VyKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWRhbmdlcik7XG59XG5cbi5idG4tb3V0bGluZS13YXJuaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci13YXJuaW5nKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXdhcm5pbmcpO1xufVxuXG4uYnRuLW91dGxpbmUtaW5mbyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItaW5mbyk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1pbmZvKTtcbn1cblxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG59XG5cbi5iZy1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbn1cblxuLmJnLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdWNjZXNzKTtcbn1cblxuLmJnLWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWRhbmdlcik7XG59XG5cbi5iZy13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itd2FybmluZyk7XG59XG5cbi5iZy1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItaW5mbyk7XG59XG5cbi5iZy1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlLWFsdCk7XG59XG5cbi50ZXh0LXN1Y2Nlc3Mge1xuICBjb2xvcjogdmFyKC0tY29sb3Itc3VjY2Vzcyk7XG59XG5cbi50ZXh0LWRhbmdlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1kYW5nZXIpO1xufVxuXG5ib2R5OmhhcyguaG9tZS1wYWdlKSB7XG4gIC0taG9tZS1pbms6ICMwYjBiMGE7XG4gIC0taG9tZS1wYXBlcjogI2ZmZmRmODtcbiAgLS1ob21lLXNvZnQ6ICNmNGYwZTg7XG4gIC0taG9tZS1saW5lOiByZ2JhKDExLCAxMSwgMTAsIDAuMTgpO1xuICAtLWhvbWUtbXV0ZWQ6ICM1NjUyNGM7XG4gIC0taG9tZS1taW50OiAjNjdiMjhiO1xuICAtLWhvbWUtbWludC1zb2Z0OiAjZGZlZWU1O1xuICAtLWhvbWUteWVsbG93OiAjZjRjZjRmO1xuICAtLWhvbWUteWVsbG93LXNvZnQ6ICNmZmYwYjk7XG4gIC0taG9tZS1sYXZlbmRlcjogIzkyNzZjODtcbiAgLS1ob21lLWxhdmVuZGVyLXNvZnQ6ICNlY2U1ZjU7XG4gIC0taG9tZS1yb3NlOiAjZDU4YTg5O1xuICAtLWhvbWUtcm9zZS1zb2Z0OiAjZjNkYWRhO1xuICBjb2xvcjogdmFyKC0taG9tZS1pbmspO1xuICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDEwMywgMTc4LCAxMzksIDAuMDgpLCB0cmFuc3BhcmVudCAyOHJlbSksIHZhcigtLWhvbWUtcGFwZXIpO1xufVxuXG5ib2R5OmhhcyguaG9tZS1wYWdlKSAuYXBwLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTMsIDI0OCwgMC45Mik7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ob21lLWxpbmUpO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMThweCk7XG59XG5cbmJvZHk6aGFzKC5ob21lLXBhZ2UuaXMtZ3Vlc3QpIC5hcHAtaGVhZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuYm9keTpoYXMoLmhvbWUtcGFnZSkgLmFwcC1icmFuZCxcbmJvZHk6aGFzKC5ob21lLXBhZ2UpIC5uYXYtbGluayB7XG4gIGNvbG9yOiB2YXIoLS1ob21lLWluayk7XG59XG5cbmJvZHk6aGFzKC5ob21lLXBhZ2UpIC50ZXh0LWdyYWRpZW50IHtcbiAgY29sb3I6IHZhcigtLWhvbWUtaW5rKTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuYm9keTpoYXMoLmhvbWUtcGFnZSkgLmJ0bi1wcmltYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taG9tZS1pbmspO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0taG9tZS1pbmspO1xuICBjb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuYm9keTpoYXMoLmhvbWUtcGFnZSkgLm5hdi1hdmF0YXItYnRuIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taG9tZS1pbmspO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0taG9tZS1pbmspO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG5ib2R5OmhhcyguaG9tZS1wYWdlKSAubmF2LWJhY2stYnRuLFxuYm9keTpoYXMoLmhvbWUtcGFnZSkgLm5hdi1pY29uLWJ0biB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWhvbWUtbGluZSk7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1ob21lLWluayk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5ob21lLXBhZ2Uge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyh2YXIoLS1zcGFjZS03KSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCksIHZhcigtLWhvbWUtcGFwZXIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMzRweDtcbn1cblxuLmhvbWUtcGFnZSAuYXBwLWNvbnRhaW5lciwgLmhvbWUtcGFnZSAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiAxMTIwcHg7XG59XG5cbi5ob21lLW5hdGl2ZS1iYXIge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDIwO1xuICBwYWRkaW5nLXRvcDogZW52KHNhZmUtYXJlYS1pbnNldC10b3ApO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjUzLCAyNDgsIDAuOTQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0taG9tZS1saW5lKTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE4cHgpO1xufVxuXG4uaG9tZS1uYXRpdmUtYmFyX19pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtaW4taGVpZ2h0OiA1NnB4O1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0yKSAwO1xufVxuXG4uaG9tZS1uYXRpdmUtYmFyX19yaWdodCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IHZhcigtLXNwYWNlLTQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uaG9tZS1kYXRlLXBpbGwsXG4uaG9tZS1uYXRpdmUtZGF0ZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1pbi1oZWlnaHQ6IDQycHg7XG4gIHBhZGRpbmc6IDAgMS4wOHJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taG9tZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1ob21lLWluayk7XG4gIGZvbnQtc2l6ZTogMC43NnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uaG9tZS1uYXRpdmUtZGF0ZSB7XG4gIG1pbi1oZWlnaHQ6IDM2cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWhvbWUtbWludCk7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uaG9tZS14cC1iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAzNHB4O1xuICBwYWRkaW5nOiAwIDAuODVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTEsIDExLCAxMCwgMC4xMik7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0taG9tZS1pbmspO1xuICBmb250LXNpemU6IDAuNzhyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5ob21lLWhlcm8ge1xuICBwYWRkaW5nOiBjbGFtcCgycmVtLCA0dncsIDQuNXJlbSkgMCB2YXIoLS1zcGFjZS03KTtcbn1cblxuLmhvbWUtaGVyby1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKTtcbiAgZ2FwOiB2YXIoLS1zcGFjZS01KTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmhvbWUtcGFnZS5pcy1ndWVzdCAuaG9tZS1oZXJvLWdyaWQge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAwLjlmcikgbWlubWF4KDMyMHB4LCAwLjg1ZnIpO1xuICBnYXA6IGNsYW1wKDEuNXJlbSwgNHZ3LCA0cmVtKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNik7XG59XG5cbi5ob21lLWludHJvIHtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uaG9tZS1kYXRlLXBpbGwge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS01KTtcbn1cblxuLmhvbWUtaGVyby10aXRsZSB7XG4gIG1heC13aWR0aDogNzIwcHg7XG4gIG1hcmdpbjogMCAwIHZhcigtLXNwYWNlLTQpO1xuICBjb2xvcjogdmFyKC0taG9tZS1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiA2LjRyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjkxO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbn1cblxuLmhvbWUtcGFnZS5pcy1ndWVzdCAuaG9tZS1oZXJvLXRpdGxlIHtcbiAgbWF4LXdpZHRoOiA2MjBweDtcbiAgZm9udC1zaXplOiA3cmVtO1xuICBsaW5lLWhlaWdodDogMC45O1xufVxuXG4uaG9tZS1oZXJvLWFjY2VudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uaG9tZS1oZXJvLWFjY2VudDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0wLjA1ZW07XG4gIHJpZ2h0OiAtMC4wNWVtO1xuICBib3R0b206IDAuMDJlbTtcbiAgei1pbmRleDogLTE7XG4gIGhlaWdodDogMC4xNGVtO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0taG9tZS1taW50KTtcbn1cblxuLmhvbWUtcGFnZS5pcy1ndWVzdCAuaG9tZS1oZXJvLWFjY2VudDo6YWZ0ZXIge1xuICBoZWlnaHQ6IDAuMTFlbTtcbiAgYmFja2dyb3VuZDogIzc4ZDJjOTtcbn1cblxuLmhvbWUtaGVyby1kb3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwLjJlbTtcbiAgaGVpZ2h0OiAwLjJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuMDdlbTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICM3OGQyYzk7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLmhvbWUtcGFnZS5pcy1ndWVzdCAuaG9tZS1oZXJvLXN1YiB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogMC4yMnJlbTtcbiAgbWF4LXdpZHRoOiA0MTBweDtcbn1cblxuLmhvbWUtaGVyby1tYXJrZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xufVxuXG4uaG9tZS1oZXJvLW1hcmtlZDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0wLjA1ZW07XG4gIHJpZ2h0OiAtMC4wNWVtO1xuICBib3R0b206IC0wLjE4ZW07XG4gIGhlaWdodDogMC4xOGVtO1xuICBib3JkZXItcmFkaXVzOiA5OTlweCA1MiUgNjAlIDk5OXB4O1xuICBiYWNrZ3JvdW5kOiAjNzhkMmM5O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC44ZGVnKTtcbn1cblxuLmhvbWUtaGVyby1zdWIge1xuICBtYXgtd2lkdGg6IDU0MHB4O1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1ob21lLWluayk7XG4gIGZvbnQtc2l6ZTogMS4yNHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzg7XG59XG5cbi5ob21lLWhlcm8tc3ViIHN0cm9uZyB7XG4gIGNvbG9yOiB2YXIoLS1ob21lLW1pbnQpO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4uaG9tZS1oZXJvLWFjdGlvbnMge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjk1cmVtO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS01KTtcbn1cblxuLmhvbWUtaGVyby1jdGEge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IDEuMnJlbTtcbiAgbWluLXdpZHRoOiBtaW4oMTAwJSwgMzAwcHgpO1xuICBtaW4taGVpZ2h0OiA2NnB4O1xuICBwYWRkaW5nOiAwLjU1cmVtIDAuNjJyZW0gMC41NXJlbSAxLjdyZW07XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWhvbWUtaW5rKTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3gtc2hhZG93OiAwIDE4cHggNDJweCByZ2JhKDExLCAxMSwgMTAsIDAuMTgpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNnMgZWFzZSwgYm94LXNoYWRvdyAwLjE2cyBlYXNlO1xufVxuXG4uaG9tZS1oZXJvLWN0YTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIGJveC1zaGFkb3c6IDAgMjJweCA0OHB4IHJnYmEoMTEsIDExLCAxMCwgMC4yMik7XG59XG5cbi5ob21lLXNpZ24taW4tbGluayB7XG4gIGNvbG9yOiB2YXIoLS1ob21lLW11dGVkKTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5ob21lLXNpZ24taW4tbGluazpob3Zlcixcbi5ob21lLXNpZ24taW4tbGluazphY3RpdmUge1xuICBjb2xvcjogdmFyKC0taG9tZS1pbmspO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5ob21lLWJ0bi1jaXJjbGUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiA0OHB4O1xuICBoZWlnaHQ6IDQ4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ob21lLXllbGxvdyk7XG4gIGNvbG9yOiB2YXIoLS1ob21lLWluayk7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4uaG9tZS1oZXJvLXZpc3VhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMzYwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uaG9tZS1oZXJvLWltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBtaW4oMTAwJSwgNTIwcHgpO1xuICBoZWlnaHQ6IGF1dG87XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMCAyMnB4IDMwcHggcmdiYSgxMSwgMTEsIDEwLCAwLjA4KSk7XG59XG5cbi5ob21lLXNlY3Rpb24taGVhZGluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5ob21lLXNlY3Rpb24tbGFiZWwsXG4uaG9tZS1zY2llbmNlLWtpY2tlciB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWhvbWUtaW5rKTtcbiAgZm9udC1zaXplOiAwLjc4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmhvbWUtZ2FtZXMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gIGdhcDogdmFyKC0tc3BhY2UtNSk7XG59XG5cbi5ob21lLXBhZ2UuaXMtZ3Vlc3QgLmhvbWUtZ2FtZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IHZhcigtLXNwYWNlLTQpO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tc3BhY2UtNCkgKiAtMSk7XG4gIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtNCkgdmFyKC0tc3BhY2UtMykgMDtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xufVxuXG4uaG9tZS1wYWdlLmlzLWd1ZXN0IC5ob21lLWdhbWVzOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ob21lLWdhbWUtY2FyZCB7XG4gIC0tZ2FtZS1hY2NlbnQ6IHZhcigtLWhvbWUtbWludCk7XG4gIC0tZ2FtZS1hY2NlbnQtc29mdDogdmFyKC0taG9tZS1taW50LXNvZnQpO1xuICAtLWdhbWUtYnV0dG9uOiAjMmQ0YTNhO1xuICAtLWdhbWUtYnV0dG9uLWNpcmNsZTogIzdmYjA4YTtcbiAgLS1nYW1lLWNvbXBsZXRlZC10aW50OiAjZTRlZmU3O1xuICAtLWdhbWUtYnV0dG9uLXRleHQ6ICNmYWY4ZjA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLXdpZHRoOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ob21lLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAyOHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDIycHggNDZweCByZ2JhKDExLCAxMSwgMTAsIDAuMDgpO1xufVxuXG4uaG9tZS1nYW1lLWNhcmRfX292ZXJsYXktbGluayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uaG9tZS1nYW1lLWNhcmRfX292ZXJsYXktbGluayBzcGFuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi5ob21lLXBhZ2UuaXMtZ3Vlc3QgLmhvbWUtZ2FtZS1jYXJkIHtcbiAgZmxleDogMCAwIDI3MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5ob21lLXBhZ2UuaXMtYXV0aGVudGljYXRlZCAuaG9tZS1nYW1lLWNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4taGVpZ2h0OiAzMzBweDtcbn1cblxuLmhvbWUtZ2FtZS1jYXJkW2RhdGEtZ2FtZT13b3JkbGVdIHtcbiAgLS1nYW1lLWFjY2VudDogdmFyKC0taG9tZS1taW50KTtcbiAgLS1nYW1lLWFjY2VudC1zb2Z0OiB2YXIoLS1ob21lLW1pbnQtc29mdCk7XG4gIC0tZ2FtZS1idXR0b246ICMyZDRhM2E7XG4gIC0tZ2FtZS1idXR0b24tY2lyY2xlOiAjN2ZiMDhhO1xuICAtLWdhbWUtY29tcGxldGVkLXRpbnQ6ICNlNGVmZTc7XG59XG5cbi5ob21lLWdhbWUtY2FyZFtkYXRhLWdhbWU9c3BlbGxpbmdfYmVlXSB7XG4gIC0tZ2FtZS1hY2NlbnQ6IHZhcigtLWhvbWUteWVsbG93KTtcbiAgLS1nYW1lLWFjY2VudC1zb2Z0OiB2YXIoLS1ob21lLXllbGxvdy1zb2Z0KTtcbiAgLS1nYW1lLWJ1dHRvbjogIzlhN2IyZTtcbiAgLS1nYW1lLWJ1dHRvbi1jaXJjbGU6ICNlOGM0NGQ7XG4gIC0tZ2FtZS1jb21wbGV0ZWQtdGludDogI2ZhZjFkNDtcbn1cblxuLmhvbWUtZ2FtZS1jYXJkW2RhdGEtZ2FtZT1jb25uZWN0aW9uc10ge1xuICAtLWdhbWUtYWNjZW50OiB2YXIoLS1ob21lLWxhdmVuZGVyKTtcbiAgLS1nYW1lLWFjY2VudC1zb2Z0OiB2YXIoLS1ob21lLWxhdmVuZGVyLXNvZnQpO1xuICAtLWdhbWUtYnV0dG9uOiAjNmI0YThhO1xuICAtLWdhbWUtYnV0dG9uLWNpcmNsZTogI2E1ODRjOTtcbiAgLS1nYW1lLWNvbXBsZXRlZC10aW50OiAjZWZlOGY1O1xufVxuXG4uaG9tZS1nYW1lLWNhcmRbZGF0YS1nYW1lPXN1ZG9rdV0ge1xuICAtLWdhbWUtYWNjZW50OiB2YXIoLS1ob21lLXJvc2UpO1xuICAtLWdhbWUtYWNjZW50LXNvZnQ6IHZhcigtLWhvbWUtcm9zZS1zb2Z0KTtcbiAgLS1nYW1lLWJ1dHRvbjogI2E4NWE0ZTtcbiAgLS1nYW1lLWJ1dHRvbi1jaXJjbGU6ICNkOThiN2U7XG4gIC0tZ2FtZS1jb21wbGV0ZWQtdGludDogI2Y3ZTZlMjtcbn1cblxuLmhvbWUtZ2FtZS1jYXJkX190b3Age1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDc2cHggbWlubWF4KDAsIDFmcikgYXV0bztcbiAgZ2FwOiB2YXIoLS1zcGFjZS00KTtcbiAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS01KTtcbn1cblxuLmhvbWUtcGFnZS5pcy1ndWVzdCAuaG9tZS1nYW1lLWNhcmRfX3RvcCB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNzJweCBtaW5tYXgoMCwgMWZyKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5ob21lLWdhbWUtaWNvbiB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiA3MnB4O1xuICBoZWlnaHQ6IDcycHg7XG4gIGJvcmRlci1yYWRpdXM6IDIxcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdhbWUtYWNjZW50LXNvZnQpO1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLmhvbWUtcGFnZS5pcy1hdXRoZW50aWNhdGVkIC5ob21lLWdhbWUtaWNvbiB7XG4gIHdpZHRoOiA3NnB4O1xuICBoZWlnaHQ6IDc2cHg7XG59XG5cbi5ob21lLWdhbWUtaWNvbl9faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogNjBweDtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLmhvbWUtZ2FtZS1pbmZvIHtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uaG9tZS1nYW1lLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogdmFyKC0taG9tZS1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiAxLjk1cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5cbi5ob21lLXBhZ2UuaXMtZ3Vlc3QgLmhvbWUtZ2FtZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS40NXJlbTtcbn1cblxuLmhvbWUtZ2FtZS1kZXNjIHtcbiAgbWF4LXdpZHRoOiAyNTBweDtcbiAgbWluLWhlaWdodDogMi42ZW07XG4gIG1hcmdpbjogMC43MnJlbSAwIDA7XG4gIGNvbG9yOiB2YXIoLS1ob21lLWluayk7XG4gIGZvbnQtc2l6ZTogMS4wMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjg7XG59XG5cbi5ob21lLXBhZ2UuaXMtZ3Vlc3QgLmhvbWUtZ2FtZS1kZXNjIHtcbiAgZm9udC1zaXplOiAwLjk4cmVtO1xufVxuXG4uaG9tZS1nYW1lLXN0YXR1cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgZ2FwOiAwLjc1cmVtO1xufVxuXG4uaG9tZS1zdGF0dXMtYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IDQycHg7XG4gIHBhZGRpbmc6IDAgMS4wNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taG9tZS1pbmspO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLWhvbWUtaW5rKTtcbiAgZm9udC1zaXplOiAwLjc4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5ob21lLXN0YXR1cy1iYWRnZS5pcy1zb29uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0taG9tZS1zb2Z0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ob21lLWxpbmUpO1xuICBjb2xvcjogdmFyKC0taG9tZS1tdXRlZCk7XG59XG5cbi5ob21lLWdhbWUtY2FyZF9fZm9vdCB7XG4gIGhlaWdodDogMTJweDtcbiAgbWFyZ2luLXRvcDogYXV0bztcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2FtZS1hY2NlbnQpO1xufVxuXG4uaG9tZS1nYW1lLWFjdGlvbnMge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBwYWRkaW5nOiAwIHZhcigtLXNwYWNlLTUpIHZhcigtLXNwYWNlLTUpO1xufVxuXG4uaG9tZS1nYW1lLWJ0biB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDU4cHg7XG4gIHBhZGRpbmc6IDAuNjhyZW0gMC43NHJlbSAwLjY4cmVtIDEuMnJlbTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxM3B4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0taG9tZS1pbmspO1xuICBmb250LXNpemU6IDEuMDVyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE2cyBlYXNlLCBib3gtc2hhZG93IDAuMTZzIGVhc2UsIGJhY2tncm91bmQgMC4xNnMgZWFzZTtcbn1cblxuLmhvbWUtZ2FtZS1idG46aG92ZXIge1xuICBjb2xvcjogdmFyKC0taG9tZS1pbmspO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG59XG5cbi5ob21lLWdhbWUtYnRuLmlzLXByaW1hcnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogNThweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2FtZS1idXR0b24pO1xuICBjb2xvcjogdmFyKC0tZ2FtZS1idXR0b24tdGV4dCk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xufVxuXG4uaG9tZS1nYW1lLWJ0bi5pcy1wcmltYXJ5OmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWdhbWUtYnV0dG9uLXRleHQpO1xuICBib3gtc2hhZG93OiAwIDE2cHggMzBweCByZ2JhKDExLCAxMSwgMTAsIDAuMTQpO1xufVxuXG4uaG9tZS1nYW1lLWJ0bi5pcy1wcmltYXJ5IC5ob21lLWJ0bi1jaXJjbGUge1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2FtZS1idXR0b24tY2lyY2xlKTtcbn1cblxuLmhvbWUtZ2FtZS1idG4uaXMtZ2hvc3Qge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ob21lLXNvZnQpO1xufVxuXG4uaG9tZS1nYW1lLWJ0bi5pcy1naG9zdCBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC43cmVtO1xufVxuXG4uaG9tZS1nYW1lLWJ0bi5pcy1naG9zdCA+IGkge1xuICBjb2xvcjogdmFyKC0taG9tZS1tdXRlZCk7XG59XG5cbi5ob21lLWdhbWUtc2Vjb25kYXJ5LWFjdGlvbnMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDAuOWZyIDEuMWZyO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uaG9tZS1nYW1lLWJ0bi5pcy1zZWNvbmRhcnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogNThweDtcbiAgcGFkZGluZzogMC42MnJlbSAwLjc2cmVtO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5ob21lLWdhbWUtYnRuLmlzLXNlY29uZGFyeSBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDAuNjJyZW07XG59XG5cbi5ob21lLWdhbWUtYnRuLmlzLWFyY2hpdmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ob21lLXNvZnQpO1xufVxuXG4uaG9tZS1nYW1lLWJ0bi5pcy1wcmFjdGljZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdhbWUtYWNjZW50LXNvZnQpO1xufVxuXG4uaG9tZS1nYW1lLWJ0bi5pcy1kaXNhYmxlZCB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ob21lLXNvZnQpO1xuICBjb2xvcjogdmFyKC0taG9tZS1tdXRlZCk7XG59XG5cbi5ob21lLXNjaWVuY2Uge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS02KTtcbiAgcGFkZGluZzogY2xhbXAoMS40cmVtLCAzdncsIDIuNXJlbSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWhvbWUtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gIGJhY2tncm91bmQ6ICNmMGViZjg7XG4gIGJveC1zaGFkb3c6IDAgMjJweCA0OHB4IHJnYmEoMTEsIDExLCAxMCwgMC4wOCk7XG59XG5cbi5ob21lLXNjaWVuY2UtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS00KTtcbn1cblxuLmhvbWUtc2NpZW5jZS1jb250cm9scyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNTVyZW07XG59XG5cbi5ob21lLXNjaWVuY2UtYXJyb3cge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWhvbWUtaW5rKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1ob21lLWluayk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE2cyBlYXNlLCB0cmFuc2Zvcm0gMC4xNnMgZWFzZTtcbn1cblxuLmhvbWUtc2NpZW5jZS1hcnJvdzpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbn1cblxuLmhvbWUtc2NpZW5jZS1hcnJvdzpkaXNhYmxlZCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgb3BhY2l0eTogMC4zNTtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4uaG9tZS1zY2llbmNlLXRyYWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICBvdmVyc2Nyb2xsLWJlaGF2aW9yLXg6IGNvbnRhaW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xufVxuXG4uaG9tZS1zY2llbmNlLXRyYWNrOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ob21lLXNjaWVuY2Utc2xpZGUge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQ7XG59XG5cbi5ob21lLXNjaWVuY2UtY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaG9tZS1zY2llbmNlLWNvcHkge1xuICBtYXgtd2lkdGg6IDcyMHB4O1xufVxuXG4uaG9tZS1zY2llbmNlLXN0YXQge1xuICBtYXJnaW46IDAgMCB2YXIoLS1zcGFjZS0zKTtcbiAgY29sb3I6IHZhcigtLWhvbWUtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogNC44cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMC45MjtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5cbi5ob21lLXNjaWVuY2UtYm9keSB7XG4gIG1heC13aWR0aDogNjQwcHg7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWhvbWUtaW5rKTtcbiAgZm9udC1zaXplOiAxLjA1cmVtO1xuICBsaW5lLWhlaWdodDogMS40NTtcbn1cblxuLmhvbWUtc2NpZW5jZS1zb3VyY2Uge1xuICBtYXJnaW46IHZhcigtLXNwYWNlLTQpIDAgMDtcbiAgY29sb3I6IHZhcigtLWhvbWUtaW5rKTtcbiAgZm9udC1zaXplOiAwLjcycmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5ob21lLXNjaWVuY2Utc291cmNlIGEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweDtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjIyZW07XG59XG5cbi5ob21lLXNjaWVuY2UtdmlzdWFsIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5ob21lLXNjaWVuY2UtaW1hZ2Uge1xuICB3aWR0aDogMTQwcHg7XG4gIGhlaWdodDogMTQwcHg7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi5ob21lLXNjaWVuY2UtZG90cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDAuN3JlbTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5ob21lLXNjaWVuY2UtZG90IHtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogOHB4O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDExLCAxMSwgMTAsIDAuMTIpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5ob21lLXNjaWVuY2UtZG90LmlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWhvbWUtbGF2ZW5kZXIpO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgLmhvbWUtaGVyby10aXRsZSxcbiAgLmhvbWUtaGVyby1zdWIsXG4gIC5ob21lLWhlcm8tY3RhLFxuICAuaG9tZS1oZXJvLXZpc3VhbCxcbiAgLmhvbWUtZ2FtZS1jYXJkLFxuICAuaG9tZS1zY2llbmNlIHtcbiAgICBhbmltYXRpb246IGhvbWUtcmlzZSAwLjQycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSkgYm90aDtcbiAgfVxuICAuaG9tZS1oZXJvLXN1YixcbiAgLmhvbWUtaGVyby12aXN1YWwge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4wNXM7XG4gIH1cbiAgLmhvbWUtZ2FtZS1jYXJkOm50aC1jaGlsZCgyKSB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjA0cztcbiAgfVxuICAuaG9tZS1nYW1lLWNhcmQ6bnRoLWNoaWxkKDMpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMDhzO1xuICB9XG4gIC5ob21lLWdhbWUtY2FyZDpudGgtY2hpbGQoNCkge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4xMnM7XG4gIH1cbn1cbkBrZXlmcmFtZXMgaG9tZS1yaXNlIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTZweCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTgwcHgpIHtcbiAgLmhvbWUtcGFnZS5pcy1ndWVzdCAuaG9tZS1oZXJvLWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgbWlubWF4KDIyMHB4LCAwLjc2ZnIpO1xuICAgIGdhcDogdmFyKC0tc3BhY2UtMyk7XG4gIH1cbiAgLmhvbWUtaGVyby12aXN1YWwge1xuICAgIG1pbi1oZWlnaHQ6IDI2MHB4O1xuICB9XG4gIC5ob21lLWhlcm8taW1hZ2Uge1xuICAgIHdpZHRoOiBtaW4oMTAwJSwgNDAwcHgpO1xuICB9XG4gIC5ob21lLWdhbWVzIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2MHB4KSB7XG4gIC5ob21lLXBhZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDZyZW0gKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO1xuICB9XG4gIC5ob21lLWhlcm8ge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS01KTtcbiAgfVxuICAuaG9tZS1oZXJvLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDMuNTVyZW07XG4gIH1cbiAgLmhvbWUtcGFnZS5pcy1ndWVzdCAuaG9tZS1oZXJvLWdyaWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtaW4taGVpZ2h0OiAyNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS01KTtcbiAgfVxuICAuaG9tZS1wYWdlLmlzLWd1ZXN0IC5ob21lLWludHJvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBtYXgtd2lkdGg6IDc0JTtcbiAgfVxuICAuaG9tZS1oZXJvLXN1YiB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gIH1cbiAgLmhvbWUtcGFnZS5pcy1ndWVzdCAuaG9tZS1oZXJvLXN1YiB7XG4gICAgbWF4LXdpZHRoOiAyODBweDtcbiAgfVxuICAuaG9tZS1wYWdlLmlzLWd1ZXN0IC5ob21lLWhlcm8tdmlzdWFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxLjJyZW07XG4gICAgcmlnaHQ6IC0wLjc1cmVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYWxpZ24tc2VsZjogYXV0bztcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgLmhvbWUtcGFnZS5pcy1ndWVzdCAuaG9tZS1oZXJvLWltYWdlIHtcbiAgICB3aWR0aDogMjE4cHg7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG4gIC5ob21lLWdhbWUtY2FyZF9fdG9wIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDc2cHggbWlubWF4KDAsIDFmcik7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgfVxuICAuaG9tZS1wYWdlLmlzLWF1dGhlbnRpY2F0ZWQgLmhvbWUtZ2FtZS1jYXJkX190b3Age1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNzZweCBtaW5tYXgoMCwgMWZyKSBhdXRvO1xuICB9XG4gIC5ob21lLWdhbWUtc3RhdHVzIHtcbiAgICBncmlkLWNvbHVtbjogYXV0bztcbiAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLmhvbWUtcGFnZS5pcy1hdXRoZW50aWNhdGVkIC5ob21lLXN0YXR1cy1iYWRnZSB7XG4gICAgbWluLWhlaWdodDogMzRweDtcbiAgICBwYWRkaW5nOiAwIDAuNzhyZW07XG4gICAgZm9udC1zaXplOiAwLjY4cmVtO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTYwcHgpIHtcbiAgLmhvbWUtcGFnZSAuYXBwLWNvbnRhaW5lciwgLmhvbWUtcGFnZSAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLTMpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLTMpO1xuICB9XG4gIC5ob21lLW5hdGl2ZS1iYXIgLmhvbWUteHAtYmFkZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmhvbWUtZGF0ZS1waWxsIHtcbiAgICBtaW4taGVpZ2h0OiAzNnB4O1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTQpO1xuICAgIGZvbnQtc2l6ZTogMC42OHJlbTtcbiAgfVxuICAuaG9tZS1oZXJvLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuOTJyZW07XG4gIH1cbiAgLmhvbWUtcGFnZS5pcy1ndWVzdCAuaG9tZS1oZXJvLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDQuMThyZW07XG4gIH1cbiAgLmhvbWUtaGVyby1zdWIge1xuICAgIG1heC13aWR0aDogMzQwcHg7XG4gIH1cbiAgLmhvbWUtaGVyby1jdGEge1xuICAgIG1pbi13aWR0aDogbWluKDEwMCUsIDI4MHB4KTtcbiAgICBtaW4taGVpZ2h0OiA1NHB4O1xuICAgIGZvbnQtc2l6ZTogMS4wNHJlbTtcbiAgICBwYWRkaW5nOiAwLjQ0cmVtIDAuNTJyZW0gMC40NHJlbSAxLjM1cmVtO1xuICB9XG4gIC5ob21lLXNpZ24taW4tbGluayB7XG4gICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICB9XG4gIC5ob21lLXBhZ2UuaXMtZ3Vlc3QgLmhvbWUtYnRuLWNpcmNsZSB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICB9XG4gIC5ob21lLWhlcm8tYWN0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogY2FsYygxMDB2dyAtIDIgKiB2YXIoLS1zcGFjZS0zKSk7XG4gICAgbWF4LXdpZHRoOiAzNjBweDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBnYXA6IDAuN3JlbTtcbiAgfVxuICAuaG9tZS1wYWdlLmlzLWd1ZXN0IC5ob21lLWhlcm8tY3RhIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgZmxleDogMSAxIDI0MHB4O1xuICAgIGdhcDogMC42cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4wNXJlbTtcbiAgICBmb250LXNpemU6IDAuOTZyZW07XG4gIH1cbiAgLmhvbWUtaGVyby12aXN1YWwge1xuICAgIG1pbi1oZWlnaHQ6IDIxMHB4O1xuICB9XG4gIC5ob21lLXBhZ2UuaXMtYXV0aGVudGljYXRlZCAuaG9tZS1oZXJvLWltYWdlIHtcbiAgICB3aWR0aDogbWluKDEwMCUsIDM0MHB4KTtcbiAgfVxuICAuaG9tZS1wYWdlLmlzLWd1ZXN0IC5ob21lLWhlcm8tdmlzdWFsIHtcbiAgICB0b3A6IDEuNTVyZW07XG4gICAgcmlnaHQ6IC0xcmVtO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAuaG9tZS1wYWdlLmlzLWd1ZXN0IC5ob21lLWhlcm8taW1hZ2Uge1xuICAgIHdpZHRoOiAxODRweDtcbiAgfVxuICAuaG9tZS1zZWN0aW9uLWhlYWRpbmcge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTYpO1xuICB9XG4gIC5ob21lLXBhZ2UuaXMtZ3Vlc3QgLmhvbWUtZ2FtZXMge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1zcGFjZS0zKSAqIC0xKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0zKTtcbiAgfVxuICAuaG9tZS1wYWdlLmlzLWd1ZXN0IC5ob21lLWdhbWUtY2FyZCB7XG4gICAgZmxleC1iYXNpczogMjM4cHg7XG4gIH1cbiAgLmhvbWUtcGFnZS5pcy1hdXRoZW50aWNhdGVkIC5ob21lLWdhbWUtY2FyZCB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuICAuaG9tZS1nYW1lLWNhcmQge1xuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIH1cbiAgLmhvbWUtZ2FtZS1jYXJkX190b3Age1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNjRweCBtaW5tYXgoMCwgMWZyKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS00KTtcbiAgfVxuICAuaG9tZS1wYWdlLmlzLWF1dGhlbnRpY2F0ZWQgLmhvbWUtZ2FtZS1jYXJkX190b3Age1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNjRweCBtaW5tYXgoMCwgMWZyKSBhdXRvO1xuICAgIGdhcDogMC42NXJlbTtcbiAgfVxuICAuaG9tZS1nYW1lLWljb24sXG4gIC5ob21lLXBhZ2UuaXMtYXV0aGVudGljYXRlZCAuaG9tZS1nYW1lLWljb24ge1xuICAgIHdpZHRoOiA2NHB4O1xuICAgIGhlaWdodDogNjRweDtcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICB9XG4gIC5ob21lLWdhbWUtaWNvbl9faW1hZ2Uge1xuICAgIHdpZHRoOiA1MnB4O1xuICAgIGhlaWdodDogNTJweDtcbiAgfVxuICAuaG9tZS1nYW1lLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNjJyZW07XG4gIH1cbiAgLmhvbWUtcGFnZS5pcy1ndWVzdCAuaG9tZS1nYW1lLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMzJyZW07XG4gIH1cbiAgLmhvbWUtZ2FtZS1kZXNjIHtcbiAgICBmb250LXNpemU6IDAuOThyZW07XG4gIH1cbiAgLmhvbWUtZ2FtZS1hY3Rpb25zIHtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNlLTQpIHZhcigtLXNwYWNlLTQpO1xuICB9XG4gIC5ob21lLXBhZ2UuaXMtYXV0aGVudGljYXRlZCAuaG9tZS1zdGF0dXMtYmFkZ2Uge1xuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XG4gICAgcGFkZGluZzogMCAwLjY2cmVtO1xuICAgIGZvbnQtc2l6ZTogMC42MnJlbTtcbiAgfVxuICAuaG9tZS1wYWdlLmlzLWF1dGhlbnRpY2F0ZWQgLmhvbWUtZ2FtZS1idG4uaXMtZ2hvc3QsXG4gIC5ob21lLXBhZ2UuaXMtYXV0aGVudGljYXRlZCAuaG9tZS1nYW1lLWJ0bi5pcy1zZWNvbmRhcnkge1xuICAgIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gICAgcGFkZGluZzogMC41NXJlbSAwLjcycmVtIDAuNTVyZW0gMXJlbTtcbiAgICBmb250LXNpemU6IDAuOTRyZW07XG4gIH1cbiAgLmhvbWUtc2NpZW5jZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgfVxuICAuaG9tZS1zY2llbmNlLWhlYWRlciB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLmhvbWUtc2NpZW5jZS1jb250cm9scyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaG9tZS1zY2llbmNlLXN0YXQge1xuICAgIGZvbnQtc2l6ZTogMy4ycmVtO1xuICB9XG59XG4ud29yZGxlLXBhZ2Uge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS01KSAwIHZhcigtLXNwYWNlLTcpO1xufVxuXG4ud29yZGxlLXBhbmVsIHtcbiAgbWF4LXdpZHRoOiA3MjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xufVxuXG4uZ2FtZS1tZXNzYWdlIHtcbiAgbWluLWhlaWdodDogMzZweDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtMyk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ud29yZGxlLWJvYXJkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbiAgbWFyZ2luOiAwIGF1dG8gdmFyKC0tc3BhY2UtNCk7XG4gIG1heC13aWR0aDogNDIwcHg7XG59XG5cbi53b3JkbGUtcm93IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgbWlubWF4KDAsIDFmcikpO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xufVxuXG4ud29yZGxlLXRpbGUge1xuICB3aWR0aDogNzBweDtcbiAgaGVpZ2h0OiA3MHB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlLWFsdCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xufVxuLndvcmRsZS10aWxlLmlzLWZpbGxlZCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbn1cbi53b3JkbGUtdGlsZS5maWxsZWQtYm94IHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xufVxuLndvcmRsZS10aWxlLmNvcnJlY3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1jb3JyZWN0KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWNvcnJlY3QtdGV4dCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeS1zdHJvbmcpO1xufVxuLndvcmRsZS10aWxlLnByZXNlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmVzZW50KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXByZXNlbnQtdGV4dCk7XG4gIGJvcmRlci1jb2xvcjogI2IyOGE0NDtcbn1cbi53b3JkbGUtdGlsZS5hYnNlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1hYnNlbnQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYWJzZW50LXRleHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWFic2VudC1ib3JkZXIpO1xufVxuLndvcmRsZS10aWxlLmFuaW1hdGluZyB7XG4gIHRyYW5zZm9ybTogcm90YXRlWCg5MGRlZyk7XG59XG4ud29yZGxlLXRpbGUucmV2ZWFsIHtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDApO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTIwcHgpIHtcbiAgLndvcmRsZS10aWxlIHtcbiAgICB3aWR0aDogNTRweDtcbiAgICBoZWlnaHQ6IDU0cHg7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbn1cbi53b3JkbGUta2V5Ym9hcmQge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS01KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmtleWJvYXJkLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xufVxuXG4ua2V5LWJ1dHRvbiB7XG4gIGZsZXg6IDE7XG4gIG1heC13aWR0aDogNTJweDtcbiAgcGFkZGluZzogMC44NXJlbSAwLjNyZW07XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWtleSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgZWFzZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5rZXktYnV0dG9uOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1rZXktaG92ZXIpO1xufVxuLmtleS1idXR0b24uY29ycmVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWNvcnJlY3QpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItY29ycmVjdC10ZXh0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LXN0cm9uZyk7XG59XG4ua2V5LWJ1dHRvbi5wcmVzZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJlc2VudCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wcmVzZW50LXRleHQpO1xuICBib3JkZXItY29sb3I6ICNiMjhhNDQ7XG59XG4ua2V5LWJ1dHRvbi5hYnNlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1hYnNlbnQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYWJzZW50LXRleHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWFic2VudC1ib3JkZXIpO1xufVxuXG4ua2V5LWJ1dHRvbi0td2lkZSB7XG4gIGZsZXg6IDEuNDtcbiAgbWF4LXdpZHRoOiA4NHB4O1xufVxuXG4ud29yZGxlLW1ldGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi53b3JkbGUtbWV0YS1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0xKTtcbn1cblxuLmdhbWUtbW9kYWwgLm1vZGFsX19kaWFsb2cge1xuICB3aWR0aDogbWluKDcyMHB4LCA5MnZ3KTtcbn1cbi5nYW1lLW1vZGFsIC5tb2RhbF9fYm9keSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5nYW1lLW1vZGFsX19oZWFkZXIge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS00KTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2Y2ZWZlNiwgI2ZkZmFmNik7XG59XG5cbi5nYW1lLW1vZGFsX190aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tc3BhY2UtMik7XG59XG5cbi5yZXN1bHQtYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeS1zdHJvbmcpO1xufVxuXG4ucmVzdWx0LXN1YnRpdGxlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTZlbTtcbiAgZm9udC1zaXplOiAwLjdyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbn1cblxuLmNvbXBsZXRlZC1yZXN1bHRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi50YXJnZXQtd29yZC1kaXNwbGF5IHtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDR2dywgMnJlbSk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZS1hbHQpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc3VtbWFyeS1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxNDBweCwgMWZyKSk7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5zdW1tYXJ5LWNhcmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlLWFsdCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNlLTEpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zdW1tYXJ5LWxhYmVsIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG59XG5cbi5zdW1tYXJ5LXZhbHVlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnktc3Ryb25nKTtcbn1cblxuLmtleWJvYXJkLWhpbnQge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0yKTtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuYm9keTpoYXMoLndvcmRsZS1wYWdlKSB7XG4gIC0tbGV0cmlzLWluazogIzBiMGIwYTtcbiAgLS1sZXRyaXMtcGFwZXI6ICNmZmZkZjg7XG4gIC0tbGV0cmlzLXNvZnQ6ICNmNGYwZTg7XG4gIC0tbGV0cmlzLWxpbmU6IHJnYmEoMTEsIDExLCAxMCwgMC4xOCk7XG4gIC0tbGV0cmlzLW11dGVkOiAjNWI1NjUwO1xuICAtLWxldHJpcy1taW50OiAjNjdiMjhiO1xuICAtLWxldHJpcy1taW50LXNvZnQ6ICNkZmVlZTU7XG4gIC0tbGV0cmlzLXllbGxvdzogI2Y0Y2Y0ZjtcbiAgLS1sZXRyaXMteWVsbG93LXNvZnQ6ICNmZmYwYjk7XG4gIC0tbGV0cmlzLWxhdmVuZGVyOiAjOTI3NmM4O1xuICAtLWxldHJpcy1yb3NlOiAjZDU4YTg5O1xuICAtLWxldHJpcy1hYnNlbnQ6ICM3NzcxNmE7XG4gIGNvbG9yOiB2YXIoLS1sZXRyaXMtaW5rKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tbGV0cmlzLXBhcGVyKTtcbn1cblxuYm9keTpoYXMoLndvcmRsZS1wYWdlKSAuYXBwLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTMsIDI0OCwgMC45Mik7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1sZXRyaXMtbGluZSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxOHB4KTtcbn1cblxuYm9keTpoYXMoLndvcmRsZS1wYWdlKSAuYXBwLWJyYW5kLFxuYm9keTpoYXMoLndvcmRsZS1wYWdlKSAubmF2LWxpbmsge1xuICBjb2xvcjogdmFyKC0tbGV0cmlzLWluayk7XG59XG5cbmJvZHk6aGFzKC53b3JkbGUtcGFnZSkgLnRleHQtZ3JhZGllbnQge1xuICBjb2xvcjogdmFyKC0tbGV0cmlzLWluayk7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi53b3JkbGUtcGFnZSB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTQpIDAgY2FsYyh2YXIoLS1zcGFjZS03KSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCksIHZhcigtLWxldHJpcy1wYXBlcik7XG4gIGJhY2tncm91bmQtc2l6ZTogMzRweCAzNHB4O1xufVxuXG4ud29yZGxlLXBhZ2UgLmFwcC1jb250YWluZXIsIC53b3JkbGUtcGFnZSAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA3NjBweDtcbn1cblxuLndvcmRsZS1wYW5lbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgbWF4LXdpZHRoOiA3MjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1sZXRyaXMtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTMsIDI0OCwgMC45KTtcbiAgYm94LXNoYWRvdzogMCAyMnB4IDQ2cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA4KTtcbn1cblxuLmRlbW8tY29tcGxldGlvbi1jb3B5IHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gIGZvbnQtc2l6ZTogMS4wNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDU7XG59XG5cbi53b3JkbGUtZ2FtZS1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogMzRweDtcbn1cblxuLndvcmRsZS1nYW1lLWNvcHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4ud29yZGxlLWRhdGUtcGlsbCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1pbi1oZWlnaHQ6IDMycHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCAwLjgycmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1sZXRyaXMtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tbGV0cmlzLWluayk7XG4gIGZvbnQtc2l6ZTogMC42NnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5nYW1lLW1lc3NhZ2Uge1xuICBkaXNwbGF5OiBncmlkO1xuICBtaW4taGVpZ2h0OiAzOHB4O1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1sZXRyaXMtaW5rKTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLm1lc3NhZ2UtdGV4dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjcycmVtIDAuOTVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxldHJpcy1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLWxldHJpcy1pbmspO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5tZXNzYWdlLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1sZXRyaXMtbWludC1zb2Z0KTtcbn1cblxuLm1lc3NhZ2Utd2FybmluZyxcbi5tZXNzYWdlLWVycm9yIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbGV0cmlzLXJvc2UpO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLm1lc3NhZ2UtaW5mbyB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi53b3JkbGUtYm9hcmQge1xuICBkaXNwbGF5OiBncmlkO1xuICBtYXgtd2lkdGg6IDM5MHB4O1xuICBnYXA6IDAuNTJyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ud29yZGxlLXJvdyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIG1pbm1heCgwLCAxZnIpKTtcbiAgZ2FwOiAwLjUycmVtO1xufVxuXG4ud29yZGxlLXRpbGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogNzBweDtcbiAgaGVpZ2h0OiA3MHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGV0cmlzLWluayk7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1sZXRyaXMtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMi4xcmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm94LXNoYWRvdzogMCAzcHggMCByZ2JhKDExLCAxMSwgMTAsIDAuMTIpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLndvcmRsZS10aWxlLmlzLWZpbGxlZCxcbi53b3JkbGUtdGlsZS5maWxsZWQtYm94IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbGV0cmlzLXNvZnQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWxldHJpcy1pbmspO1xufVxuXG4ud29yZGxlLXRpbGUuY29ycmVjdCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWxldHJpcy1taW50KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1sZXRyaXMtaW5rKTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi53b3JkbGUtdGlsZS5wcmVzZW50IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbGV0cmlzLXllbGxvdyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbGV0cmlzLWluayk7XG4gIGNvbG9yOiB2YXIoLS1sZXRyaXMtaW5rKTtcbn1cblxuLndvcmRsZS10aWxlLmFic2VudCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWxldHJpcy1hYnNlbnQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWxldHJpcy1hYnNlbnQpO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLndvcmRsZS1rZXlib2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMC40MnJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmtleWJvYXJkLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDAuNDJyZW07XG59XG5cbi5rZXktYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXg6IDE7XG4gIG1heC13aWR0aDogNTJweDtcbiAgbWluLWhlaWdodDogNDhweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMC4zMnJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGV0cmlzLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tbGV0cmlzLWluayk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3gtc2hhZG93OiAwIDNweCAwIHJnYmEoMTEsIDExLCAxMCwgMC4xKTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTJzIGVhc2UsIGJhY2tncm91bmQgMC4xNXMgZWFzZSwgYm94LXNoYWRvdyAwLjEycyBlYXNlO1xufVxuXG4ua2V5LWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWxldHJpcy1zb2Z0KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xufVxuXG4ua2V5LWJ1dHRvbjphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDFweCAwIHJnYmEoMTEsIDExLCAxMCwgMC4xMik7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpO1xufVxuXG4ua2V5LWJ1dHRvbi5jb3JyZWN0IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbGV0cmlzLW1pbnQpO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmtleS1idXR0b24ucHJlc2VudCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWxldHJpcy15ZWxsb3cpO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tbGV0cmlzLWluayk7XG59XG5cbi5rZXktYnV0dG9uLmFic2VudCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWxldHJpcy1hYnNlbnQpO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmtleS1idXR0b24tLXdpZGUge1xuICBmbGV4OiAxLjU1O1xuICBtYXgtd2lkdGg6IDg2cHg7XG59XG5cbi5rZXktYnV0dG9uIHN2ZyB7XG4gIHdpZHRoOiAyMnB4O1xuICBoZWlnaHQ6IDIycHg7XG59XG5cbi53b3JkbGUtcGFnZSAudGV4dC1jZW50ZXIubXQtc20udGV4dC1tdXRlZCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGNvbG9yOiB2YXIoLS1sZXRyaXMtbXV0ZWQpO1xuICBmb250LXdlaWdodDogODAwO1xufVxuXG4uZ2FtZS1tb2RhbCAubW9kYWxfX2RpYWxvZyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxldHJpcy1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tbGV0cmlzLXBhcGVyKTtcbiAgYm94LXNoYWRvdzogMCAyNHB4IDU4cHggcmdiYSgxMSwgMTEsIDEwLCAwLjE4KTtcbn1cblxuLmdhbWUtbW9kYWxfX2hlYWRlciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IHZhcigtLXNwYWNlLTQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tbGV0cmlzLWxpbmUpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4ucmVzdWx0LWJhZGdlIHtcbiAgY29sb3I6IHZhcigtLWxldHJpcy1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5yZXN1bHQtc3VidGl0bGUge1xuICBjb2xvcjogdmFyKC0tbGV0cmlzLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjY4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xufVxuXG4udGFyZ2V0LXdvcmQtZGlzcGxheSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxldHJpcy1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tbGV0cmlzLXllbGxvdy1zb2Z0KTtcbiAgY29sb3I6IHZhcigtLWxldHJpcy1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDR2dywgMnJlbSk7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE2ZW07XG59XG5cbi5zdW1tYXJ5LWNhcmQge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1sZXRyaXMtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5zdW1tYXJ5LWxhYmVsIHtcbiAgY29sb3I6IHZhcigtLWxldHJpcy1tdXRlZCk7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5zdW1tYXJ5LXZhbHVlIHtcbiAgY29sb3I6IHZhcigtLWxldHJpcy1pbmspO1xuICBmb250LXdlaWdodDogODAwO1xufVxuXG4uZGVtby1jb21wbGV0aW9uLW1vZGFsIC5tb2RhbF9fYmFja2Ryb3Age1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMTEsIDExLCAxMCwgMC4wNCkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDQpIDFweCwgdHJhbnNwYXJlbnQgMXB4KSwgcmdiYSgyNTUsIDI1MywgMjQ4LCAwLjc4KTtcbiAgYmFja2dyb3VuZC1zaXplOiAzNHB4IDM0cHg7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cig2cHgpO1xufVxuXG4uZGVtby1jb21wbGV0aW9uLW1vZGFsIC5kZW1vLXJlc3VsdC1kaWFsb2cge1xuICB3aWR0aDogbWluKDUyMHB4LCA5NHZ3KTtcbiAgbWF4LWhlaWdodDogODh2aDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGV0cmlzLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAyOHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1sZXRyaXMtcGFwZXIpO1xuICBib3gtc2hhZG93OiAwIDI2cHggNzBweCByZ2JhKDExLCAxMSwgMTAsIDAuMik7XG59XG5cbi5kZW1vLWNvbXBsZXRpb24tbW9kYWwgLmRlbW8tcmVzdWx0LWJvZHkge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDEuMnJlbTtcbiAganVzdGlmeS1pdGVtczogc3RyZXRjaDtcbiAgcGFkZGluZzogMS41cmVtO1xufVxuXG4uZGVtby1yZXN1bHQtY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC45cmVtO1xuICByaWdodDogMC45cmVtO1xuICB6LWluZGV4OiAyO1xuICBkaXNwbGF5OiBncmlkO1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTMsIDI0OCwgMC44Mik7XG4gIGNvbG9yOiB2YXIoLS1sZXRyaXMtbXV0ZWQpO1xuICBmb250LXNpemU6IDEuOXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5kZW1vLXJlc3VsdC1jbG9zZTpob3Zlcixcbi5kZW1vLXJlc3VsdC1jbG9zZTphY3RpdmUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWxldHJpcy1saW5lKTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLWxldHJpcy1pbmspO1xufVxuXG4uZGVtby1yZXN1bHQtaGVybyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxLjA1cmVtO1xuICBwYWRkaW5nOiAxLjc1cmVtIDEuM3JlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGV0cmlzLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAyNHB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjUzLCAyNDgsIDAuOTQpO1xuICBib3gtc2hhZG93OiAwIDE4cHggMzhweCByZ2JhKDExLCAxMSwgMTAsIDAuMDgpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5kZW1vLXJlc3VsdC1icmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLWhlaWdodDogNTRweDtcbiAgY29sb3I6IHZhcigtLWxldHJpcy1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiAyLjdyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMC45O1xufVxuXG4uZGVtby1yZXN1bHQtYnJhbmQtZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMC4xOWVtO1xuICBoZWlnaHQ6IDAuMTllbTtcbiAgbWFyZ2luLWxlZnQ6IDAuMDdlbTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICM3OGQyYzk7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAuMDhlbSk7XG59XG5cbi5kZW1vLXJlc3VsdC10aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgbWF4LXdpZHRoOiA0MjBweDtcbiAgY29sb3I6IHZhcigtLWxldHJpcy1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiA0LjFyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMC45NTtcbn1cblxuLmRlbW8tY29tcGxldGlvbi1tb2RhbCAuZGVtby1jb21wbGV0aW9uLWNvcHkge1xuICBtYXgtd2lkdGg6IDM5MHB4O1xuICBjb2xvcjogdmFyKC0tbGV0cmlzLWluayk7XG4gIGZvbnQtc2l6ZTogMS4xNHJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmRlbW8tcmVzdWx0LWN0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiAxcmVtO1xuICBtaW4taGVpZ2h0OiA2NnB4O1xuICBwYWRkaW5nOiAwLjc4cmVtIDAuODVyZW0gMC43OHJlbSAxLjI1cmVtO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWxldHJpcy1pbmspO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxLjE4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMThweCAzOHB4IHJnYmEoMTEsIDExLCAxMCwgMC4xNik7XG59XG5cbi5kZW1vLXJlc3VsdC1jdGE6aG92ZXIsXG4uZGVtby1yZXN1bHQtY3RhOmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG59XG5cbi5kZW1vLXJlc3VsdC1jdGEgc3BhbjpsYXN0LWNoaWxkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgZmxleDogMCAwIGF1dG87XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1sZXRyaXMteWVsbG93KTtcbiAgY29sb3I6IHZhcigtLWxldHJpcy1pbmspO1xufVxuXG4uZGVtby1yZXN1bHQtc2Vjb25kYXJ5IHtcbiAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMzVyZW0gMC41cmVtO1xuICBjb2xvcjogdmFyKC0tbGV0cmlzLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjk1cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5kZW1vLXJlc3VsdC1zZWNvbmRhcnk6aG92ZXIsXG4uZGVtby1yZXN1bHQtc2Vjb25kYXJ5OmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1sZXRyaXMtaW5rKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC4yNGVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLndvcmRsZS1wYWdlIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKSAwIGNhbGMoNnJlbSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gIH1cbiAgLndvcmRsZS1wYWdlIC5hcHAtY29udGFpbmVyLCAud29yZGxlLXBhZ2UgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0zKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0zKTtcbiAgfVxuICAud29yZGxlLXBhbmVsIHtcbiAgICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIH1cbiAgLndvcmRsZS1nYW1lLWhlYWRlciB7XG4gICAgbWluLWhlaWdodDogMzBweDtcbiAgfVxuICAud29yZGxlLWRhdGUtcGlsbCB7XG4gICAgbWluLWhlaWdodDogMjhweDtcbiAgICBmb250LXNpemU6IDAuNThyZW07XG4gIH1cbiAgLndvcmRsZS1ib2FyZCB7XG4gICAgbWF4LXdpZHRoOiBtaW4oMTAwJSwgMzI4cHgpO1xuICAgIGdhcDogMC40MnJlbTtcbiAgfVxuICAud29yZGxlLXJvdyB7XG4gICAgZ2FwOiAwLjQycmVtO1xuICB9XG4gIC53b3JkbGUtdGlsZSB7XG4gICAgd2lkdGg6IDU4cHg7XG4gICAgaGVpZ2h0OiA1OHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE0cHg7XG4gICAgZm9udC1zaXplOiAxLjcycmVtO1xuICB9XG4gIC5rZXlib2FyZC1yb3cge1xuICAgIGdhcDogMC4yNHJlbTtcbiAgfVxuICAua2V5LWJ1dHRvbiB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1pbi1oZWlnaHQ6IDQzcHg7XG4gICAgcGFkZGluZzogMCAwLjE4cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xuICB9XG4gIC5rZXktYnV0dG9uLS13aWRlIHtcbiAgICBmbGV4OiAxLjU7XG4gIH1cbiAgLmRlbW8tY29tcGxldGlvbi1tb2RhbCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gIH1cbiAgLmRlbW8tY29tcGxldGlvbi1tb2RhbCAuZGVtby1yZXN1bHQtZGlhbG9nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtaGVpZ2h0OiA5MnZoO1xuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIH1cbiAgLmRlbW8tY29tcGxldGlvbi1tb2RhbCAuZGVtby1yZXN1bHQtYm9keSB7XG4gICAgZ2FwOiAxcmVtO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLmRlbW8tcmVzdWx0LWhlcm8ge1xuICAgIHBhZGRpbmc6IDEuNHJlbSAxcmVtO1xuICB9XG4gIC5kZW1vLXJlc3VsdC1icmFuZCB7XG4gICAgbWluLWhlaWdodDogNDZweDtcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gIH1cbiAgLmRlbW8tcmVzdWx0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDMuMnJlbTtcbiAgfVxuICAuZGVtby1jb21wbGV0aW9uLW1vZGFsIC5kZW1vLWNvbXBsZXRpb24tY29weSB7XG4gICAgZm9udC1zaXplOiAxLjA1cmVtO1xuICB9XG4gIC5kZW1vLXJlc3VsdC1jdGEge1xuICAgIGZvbnQtc2l6ZTogMS4wNXJlbTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDM3MHB4KSB7XG4gIC53b3JkbGUtcGFuZWwge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtMik7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UtMik7XG4gIH1cbiAgLndvcmRsZS1ib2FyZCB7XG4gICAgbWF4LXdpZHRoOiAyOTZweDtcbiAgfVxuICAud29yZGxlLXRpbGUge1xuICAgIHdpZHRoOiA1MnB4O1xuICAgIGhlaWdodDogNTJweDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICAua2V5LWJ1dHRvbiB7XG4gICAgbWluLWhlaWdodDogMzlweDtcbiAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgfVxufVxuLndvcmRsZS1wYWdlLmlzLWNvbXBsZXRlZC1kZXRhaWwge1xuICBwYWRkaW5nLXRvcDogY2xhbXAoMXJlbSwgM3Z3LCAycmVtKTtcbn1cblxuLndvcmRsZS1wYWdlLmlzLWNvbXBsZXRlZC1kZXRhaWwgLmFwcC1jb250YWluZXIsIC53b3JkbGUtcGFnZS5pcy1jb21wbGV0ZWQtZGV0YWlsIC5jb250YWluZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBtYXgtd2lkdGg6IDg4MHB4O1xuICBnYXA6IGNsYW1wKDFyZW0sIDIuNnZ3LCAxLjQ1cmVtKTtcbn1cblxuLmNvbXBsZXRlZC1kZXRhaWwtaGVybyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgYXV0bztcbiAgYWxpZ24taXRlbXM6IGVuZDtcbiAgZ2FwOiBjbGFtcCgxcmVtLCA0dncsIDJyZW0pO1xuICBwYWRkaW5nOiBjbGFtcCgxcmVtLCAzdncsIDEuNHJlbSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxldHJpcy1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjZweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1MywgMjQ4LCAwLjkyKTtcbiAgYm94LXNoYWRvdzogMCAyMnB4IDQ2cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA4KTtcbn1cblxuLmNvbXBsZXRlZC1kZXRhaWwtdGl0bGUtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLXdpZHRoOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IGNsYW1wKDAuOHJlbSwgMi42dncsIDEuMXJlbSk7XG59XG5cbi5jb21wbGV0ZWQtZGV0YWlsLWljb24ge1xuICB3aWR0aDogY2xhbXAoNThweCwgOXZ3LCA3NnB4KTtcbiAgaGVpZ2h0OiBjbGFtcCg1OHB4LCA5dncsIDc2cHgpO1xuICBmbGV4OiAwIDAgYXV0bztcbiAgcGFkZGluZzogMC42cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1sZXRyaXMtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWxldHJpcy1taW50LXNvZnQpO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4uY29tcGxldGVkLWRldGFpbC10aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWxldHJpcy1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgzcmVtLCA5dncsIDUuMnJlbSk7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMC45O1xufVxuXG4uY29tcGxldGVkLWRldGFpbC10aXRsZSBzcGFuIHtcbiAgY29sb3I6ICM3OGQyYzk7XG59XG5cbi5jb21wbGV0ZWQtZGV0YWlsLW1ldGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMC41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjdyZW07XG59XG5cbi5jb21wbGV0ZWQtZGV0YWlsLXBpbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWluLWhlaWdodDogMzRweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMC45cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1sZXRyaXMtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1sZXRyaXMtbWludC1zb2Z0KTtcbiAgY29sb3I6IHZhcigtLWxldHJpcy1pbmspO1xuICBmb250LXNpemU6IDAuNzZyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uY29tcGxldGVkLWRldGFpbC1waWxsLmlzLWRhdGUge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uY29tcGxldGVkLWRldGFpbC13b3JkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgbWluLXdpZHRoOiAxOTBweDtcbiAgZ2FwOiAwLjQ1cmVtO1xuICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDFyZW0gMS4xNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMSwgMTEsIDEwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiAyMnB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1sZXRyaXMteWVsbG93LXNvZnQpO1xufVxuXG4uY29tcGxldGVkLWRldGFpbC1leWVicm93IHtcbiAgY29sb3I6IHZhcigtLWxldHJpcy1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC42NnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTZlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmNvbXBsZXRlZC1kZXRhaWwtd29yZCBzdHJvbmcge1xuICBjb2xvcjogdmFyKC0tbGV0cmlzLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IGNsYW1wKDEuOXJlbSwgNXZ3LCAyLjdyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xNGVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmNvbXBsZXRlZC1kZXRhaWwtc3RhdHMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCBtaW5tYXgoMCwgMWZyKSk7XG4gIGdhcDogMC43NXJlbTtcbn1cblxuLmNvbXBsZXRlZC1kZXRhaWwtc3RhdCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIG1pbi1oZWlnaHQ6IDk0cHg7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuMzVyZW07XG4gIHBhZGRpbmc6IDAuODVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxldHJpcy1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY29tcGxldGVkLWRldGFpbC1zdGF0LmlzLXhwIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tbGV0cmlzLXllbGxvdy1zb2Z0KTtcbn1cblxuLmNvbXBsZXRlZC1kZXRhaWwtc3RhdCAuc3VtbWFyeS1sYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS1sZXRyaXMtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuNjhyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjE0ZW07XG59XG5cbi5jb21wbGV0ZWQtZGV0YWlsLXN0YXQgLnN1bW1hcnktdmFsdWUge1xuICBjb2xvcjogdmFyKC0tbGV0cmlzLWluayk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMS4ycmVtLCAzdncsIDEuNzVyZW0pO1xuICBsaW5lLWhlaWdodDogMS4wNTtcbn1cblxuLmNvbXBsZXRlZC1kZXRhaWwtY2FyZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogMXJlbTtcbiAgcGFkZGluZzogY2xhbXAoMXJlbSwgM3Z3LCAxLjM1cmVtKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGV0cmlzLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAyNnB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDE2cHggMzRweCByZ2JhKDExLCAxMSwgMTAsIDAuMDcpO1xufVxuXG4uY29tcGxldGVkLWRldGFpbC1zZWN0aW9uLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiAxcmVtO1xufVxuXG4uY29tcGxldGVkLWRldGFpbC1zZWN0aW9uLWhlYWRlciBoMiB7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMC4xOHJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMC4yOHJlbSBzb2xpZCAjNzhkMmM5O1xuICBjb2xvcjogdmFyKC0tbGV0cmlzLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IGNsYW1wKDEuNnJlbSwgNHZ3LCAyLjE1cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uY29tcGxldGVkLWRldGFpbC1ub3RlIHtcbiAgcGFkZGluZzogMC44cmVtIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTQ2LCAxMTgsIDIwMCwgMC4yOCk7XG4gIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIGJhY2tncm91bmQ6ICNlY2U1ZjU7XG4gIGNvbG9yOiB2YXIoLS1sZXRyaXMtaW5rKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cblxuLmNvbXBsZXRlZC1kZXRhaWwtYm9hcmQge1xuICBtYXgtd2lkdGg6IDM4MnB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmNvbXBsZXRlZC1kZXRhaWwta2V5Ym9hcmQge1xuICB3aWR0aDogbWluKDEwMCUsIDY4MHB4KTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5jb21wbGV0ZWQtZGV0YWlsLWtleWJvYXJkIC5rZXktYnV0dG9uIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5jb21wbGV0ZWQtZGV0YWlsLWFjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMC4ycmVtIDAgMC42cmVtO1xufVxuXG4uY29tcGxldGVkLWRldGFpbC1kb25lLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHdpZHRoOiBtaW4oNzglLCAzMTBweCk7XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwLjU1cmVtIDMuNHJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGV0cmlzLWluayk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1sZXRyaXMtaW5rKTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMC45OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY29tcGxldGVkLWRldGFpbC1kb25lLWJ0biBzcGFuOmxhc3QtY2hpbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMC4zNnJlbTtcbiAgd2lkdGg6IDM4cHg7XG4gIGhlaWdodDogMzhweDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWxldHJpcy15ZWxsb3cpO1xuICBjb2xvcjogdmFyKC0tbGV0cmlzLWluayk7XG4gIGZvbnQtc2l6ZTogMS4xOHJlbTtcbn1cblxuLmNvbXBsZXRlZC1kZXRhaWwtZG9uZS1idG46aG92ZXIsXG4uY29tcGxldGVkLWRldGFpbC1kb25lLWJ0bjphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1sZXRyaXMtaW5rKTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3MjBweCkge1xuICAud29yZGxlLXBhZ2UuaXMtY29tcGxldGVkLWRldGFpbCB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLTMpO1xuICB9XG4gIC53b3JkbGUtcGFnZS5pcy1jb21wbGV0ZWQtZGV0YWlsIC5hcHAtY29udGFpbmVyLCAud29yZGxlLXBhZ2UuaXMtY29tcGxldGVkLWRldGFpbCAuY29udGFpbmVyIHtcbiAgICBnYXA6IDAuODVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0zKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0zKTtcbiAgfVxuICAuY29tcGxldGVkLWRldGFpbC1oZXJvIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgZ2FwOiAwLjlyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMjJweDtcbiAgfVxuICAuY29tcGxldGVkLWRldGFpbC10aXRsZS1yb3cge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5jb21wbGV0ZWQtZGV0YWlsLXRpdGxlIHtcbiAgICBmb250LXNpemU6IGNsYW1wKDIuOXJlbSwgMTV2dywgNC4yNXJlbSk7XG4gIH1cbiAgLmNvbXBsZXRlZC1kZXRhaWwtbWV0YSB7XG4gICAgZ2FwOiAwLjQycmVtO1xuICAgIG1hcmdpbi10b3A6IDAuNTVyZW07XG4gIH1cbiAgLmNvbXBsZXRlZC1kZXRhaWwtcGlsbCB7XG4gICAgbWluLWhlaWdodDogMzBweDtcbiAgICBwYWRkaW5nOiAwIDAuNzRyZW07XG4gICAgZm9udC1zaXplOiAwLjY2cmVtO1xuICB9XG4gIC5jb21wbGV0ZWQtZGV0YWlsLXdvcmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBqdXN0aWZ5LWl0ZW1zOiBzdGFydDtcbiAgICBwYWRkaW5nOiAwLjg1cmVtIDAuOTVyZW07XG4gIH1cbiAgLmNvbXBsZXRlZC1kZXRhaWwtd29yZCBzdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxuICAuY29tcGxldGVkLWRldGFpbC1zdGF0cyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICAgIGdhcDogMC42NXJlbTtcbiAgfVxuICAuY29tcGxldGVkLWRldGFpbC1zdGF0IHtcbiAgICBtaW4taGVpZ2h0OiA4MnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gICAgcGFkZGluZzogMC43MnJlbTtcbiAgfVxuICAuY29tcGxldGVkLWRldGFpbC1jYXJkIHtcbiAgICBnYXA6IDAuODVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMjJweDtcbiAgfVxuICAuY29tcGxldGVkLWRldGFpbC1zZWN0aW9uLWhlYWRlciBoMiB7XG4gICAgZm9udC1zaXplOiAxLjU1cmVtO1xuICB9XG4gIC5jb21wbGV0ZWQtZGV0YWlsLWJvYXJkIHtcbiAgICBtYXgtd2lkdGg6IDMzMHB4O1xuICB9XG4gIC5jb21wbGV0ZWQtZGV0YWlsLWtleWJvYXJkIHtcbiAgICBnYXA6IDAuMzVyZW07XG4gIH1cbiAgLmNvbXBsZXRlZC1kZXRhaWwta2V5Ym9hcmQgLmtleWJvYXJkLXJvdyB7XG4gICAgZ2FwOiAwLjI4cmVtO1xuICB9XG4gIC5jb21wbGV0ZWQtZGV0YWlsLWtleWJvYXJkIC5rZXktYnV0dG9uIHtcbiAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgZm9udC1zaXplOiAwLjcycmVtO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMzcwcHgpIHtcbiAgLmNvbXBsZXRlZC1kZXRhaWwtaWNvbiB7XG4gICAgd2lkdGg6IDU0cHg7XG4gICAgaGVpZ2h0OiA1NHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIH1cbiAgLmNvbXBsZXRlZC1kZXRhaWwtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMi43NXJlbTtcbiAgfVxuICAuY29tcGxldGVkLWRldGFpbC1ib2FyZCB7XG4gICAgbWF4LXdpZHRoOiAyOTZweDtcbiAgfVxufVxuLmNoYWxsZW5nZXMtcGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLXNwYWNlLTcpICsgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9d29yZGxlXSB7XG4gIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMjAlIDEwJSwgcmdiYSg2MywgMTA3LCA5MSwgMC4xNiksIHRyYW5zcGFyZW50IDUwJSksIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgODAlIDI1JSwgcmdiYSgxOTQsIDE2MCwgNzcsIDAuMSksIHRyYW5zcGFyZW50IDQ1JSksIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSksIHRyYW5zcGFyZW50IDYwJSksIHZhcigtLWNvbG9yLWJnKTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3BlbGxpbmdfYmVlXSB7XG4gIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMjUlIDEyJSwgcmdiYSgxOTQsIDE2MCwgNzcsIDAuMTgpLCB0cmFuc3BhcmVudCA1MCUpLCByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDc4JSAyMiUsIHJnYmEoMTU1LCAxMjMsIDg2LCAwLjEpLCB0cmFuc3BhcmVudCA0NSUpLCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTUpLCB0cmFuc3BhcmVudCA2MCUpLCB2YXIoLS1jb2xvci1iZyk7XG59XG5cbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPWNvbm5lY3Rpb25zXSB7XG4gIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMjIlIDEwJSwgcmdiYSgxMTEsIDEzOCwgMTY1LCAwLjE2KSwgdHJhbnNwYXJlbnQgNTAlKSwgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA4MiUgMjAlLCByZ2JhKDYzLCAxMDcsIDkxLCAwLjA4KSwgdHJhbnNwYXJlbnQgNDUlKSwgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU1KSwgdHJhbnNwYXJlbnQgNjAlKSwgdmFyKC0tY29sb3ItYmcpO1xufVxuXG4uY2hhbGxlbmdlcy1wYWdlW2RhdGEtZ2FtZT1zdWRva3VdIHtcbiAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAyMCUgMTIlLCByZ2JhKDE1NSwgMTIzLCA4NiwgMC4xNiksIHRyYW5zcGFyZW50IDUwJSksIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgODAlIDE4JSwgcmdiYSgxOTQsIDE2MCwgNzcsIDAuMSksIHRyYW5zcGFyZW50IDQ1JSksIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSksIHRyYW5zcGFyZW50IDYwJSksIHZhcigtLWNvbG9yLWJnKTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZSAuYXBwLWNvbnRhaW5lciwgLmNoYWxsZW5nZXMtcGFnZSAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA2ODBweDtcbn1cblxuLmNoYWxsZW5nZXMtaGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtNSkgMCB2YXIoLS1zcGFjZS02KTtcbn1cblxuLmNoYWxsZW5nZXMtaW50cm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTUpO1xufVxuXG4uY2hhbGxlbmdlcy1pY29uLXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5jaGFsbGVuZ2VzLWljb24ge1xuICB3aWR0aDogNzJweDtcbiAgaGVpZ2h0OiA3MnB4O1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBkaXNwbGF5OiBncmlkO1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IDIuM3JlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPXdvcmRsZV0gLmNoYWxsZW5nZXMtaWNvbiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNjMsIDEwNywgOTEsIDAuMTMpO1xuICBib3JkZXItY29sb3I6IHJnYmEoNjMsIDEwNywgOTEsIDAuMjUpO1xufVxuXG4uY2hhbGxlbmdlcy1wYWdlW2RhdGEtZ2FtZT1zcGVsbGluZ19iZWVdIC5jaGFsbGVuZ2VzLWljb24ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDE5NCwgMTYwLCA3NywgMC4xNik7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgxOTQsIDE2MCwgNzcsIDAuMyk7XG59XG5cbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPWNvbm5lY3Rpb25zXSAuY2hhbGxlbmdlcy1pY29uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgxMTEsIDEzOCwgMTY1LCAwLjE1KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDExMSwgMTM4LCAxNjUsIDAuMjgpO1xufVxuXG4uY2hhbGxlbmdlcy1wYWdlW2RhdGEtZ2FtZT1zdWRva3VdIC5jaGFsbGVuZ2VzLWljb24ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDE1NSwgMTIzLCA4NiwgMC4xNCk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgxNTUsIDEyMywgODYsIDAuMjcpO1xufVxuXG4uY2hhbGxlbmdlcy10aXRsZSB7XG4gIG1hcmdpbjogMCAwIHZhcigtLXNwYWNlLTIpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgyLjRyZW0sIDh2dywgMy4ycmVtKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG59XG5cbi5jaGFsbGVuZ2VzLXN1YnRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmNoYWxsZW5nZXMtc2VjdGlvbi1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC43cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4yMmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIG1hcmdpbjogMCAwIHZhcigtLXNwYWNlLTMpO1xufVxuXG4uY2hhbGxlbmdlcy1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMjgwcHgsIDFmcikpO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYXJjaGl2ZS1jYXJkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDEycHggcmdiYSg1OCwgNDYsIDMzLCAwLjA3KSwgMCAxcHggM3B4IHJnYmEoNTgsIDQ2LCAzMywgMC4wNSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE4cyBlYXNlLCBib3gtc2hhZG93IDAuMThzIGVhc2U7XG59XG4uYXJjaGl2ZS1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICBib3gtc2hhZG93OiAwIDhweCAyOHB4IHJnYmEoNTgsIDQ2LCAzMywgMC4xMiksIDAgMnB4IDZweCByZ2JhKDU4LCA0NiwgMzMsIDAuMDcpO1xufVxuXG4uYXJjaGl2ZS1jYXJkX190b3Age1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpIHZhcigtLXNwYWNlLTQpO1xufVxuXG4uYXJjaGl2ZS1kYXRlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICBnYXA6IDAuMzVyZW07XG59XG5cbi5kYXRlLWRheSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbn1cblxuLmRhdGUtbW9udGgge1xuICBmb250LXNpemU6IDAuNzJyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbn1cblxuLmFyY2hpdmUtaW5mbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2UtMik7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLmFyY2hpdmUtd2Vla2RheSB7XG4gIGZvbnQtc2l6ZTogMC45MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xufVxuXG4uYXJjaGl2ZS1waWxsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMThyZW0gMC41NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGZvbnQtc2l6ZTogMC42OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgYmFja2dyb3VuZDogcmdiYSgxNTUsIDEyMywgODYsIDAuMTIpO1xuICBjb2xvcjogIzZmNTIzNTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNTUsIDEyMywgODYsIDAuMjUpO1xufVxuXG4uYXJjaGl2ZS1iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGZvbnQtc2l6ZTogMC43OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZmxleC1zaHJpbms6IDA7XG59XG4uYXJjaGl2ZS1iYWRnZS5pcy13b24ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDc5LCAxMjIsIDEwNCwgMC4xNCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1zdWNjZXNzKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg3OSwgMTIyLCAxMDQsIDAuMyk7XG59XG4uYXJjaGl2ZS1iYWRnZS5pcy1sb3N0IHtcbiAgYmFja2dyb3VuZDogcmdiYSgxODQsIDkxLCA4NiwgMC4xMik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1kYW5nZXIpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE4NCwgOTEsIDg2LCAwLjI1KTtcbn1cbi5hcmNoaXZlLWJhZGdlLmlzLXBlbmRpbmcge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDE5NCwgMTYwLCA3NywgMC4xMik7XG4gIGNvbG9yOiAjN2E1YTE0O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE5NCwgMTYwLCA3NywgMC4yNSk7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbn1cbi5hcmNoaXZlLWJhZGdlLmlzLWxvY2tlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2UtYWx0KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBmb250LXNpemU6IDAuODVyZW07XG59XG5cbi5hcmNoaXZlLWNhcmRfX2FjdGlvbnMge1xuICBwYWRkaW5nOiAwIHZhcigtLXNwYWNlLTQpIHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYXJjaGl2ZS1idG4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuNjVyZW0gMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAwLjg4cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UsIHRyYW5zZm9ybSAwLjEycyBlYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYXJjaGl2ZS1idG46YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjk4NSk7XG4gIG9wYWNpdHk6IDAuOTtcbn1cblxuLmFyY2hpdmUtYnRuLmlzLXByaW1hcnkge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG59XG5cbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPXdvcmRsZV0gLmFyY2hpdmUtYnRuLmlzLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjM2E2NDUzO1xufVxuXG4uY2hhbGxlbmdlcy1wYWdlW2RhdGEtZ2FtZT1zcGVsbGluZ19iZWVdIC5hcmNoaXZlLWJ0bi5pcy1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzliNmUyNjtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9Y29ubmVjdGlvbnNdIC5hcmNoaXZlLWJ0bi5pcy1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzQ3NjY4NTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3Vkb2t1XSAuYXJjaGl2ZS1idG4uaXMtcHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICM4YzZlNGE7XG59XG5cbi5hcmNoaXZlLWJ0bi5pcy1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlLWFsdCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnaW5hdGlvbiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTUpO1xufVxuXG4ucGFnaW5hdGlvbi1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ucGFnaW5hdGlvbi1wYWdlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMnB4O1xufVxuXG4ucGFnaW5hdGlvbi1wYWdlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtaW4td2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlO1xufVxuLnBhZ2luYXRpb24tcGFnZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG4ucGFnaW5hdGlvbi1wYWdlLmlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDRweCByZ2JhKDU4LCA0NiwgMzMsIDAuMTIpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xufVxuXG4ucGFnaW5hdGlvbi1kb3RzIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtaW4td2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMzZweDtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG59XG5cbi5wYWdpbmF0aW9uLWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwLjQ1cmVtIDAuODVyZW07XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gIGZvbnQtc2l6ZTogMC44MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZTtcbn1cbi5wYWdpbmF0aW9uLWJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG59XG5cbi5jaGFsbGVuZ2VzLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTYpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmNoYWxsZW5nZXMtYmFjay1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC43cmVtIDEuNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZSwgYm94LXNoYWRvdyAwLjE1cyBlYXNlO1xufVxuLmNoYWxsZW5nZXMtYmFjay1idG46aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSg1OCwgNDYsIDMzLCAwLjEpO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgLmFyY2hpdmUtY2FyZCB7XG4gICAgYW5pbWF0aW9uOiBjaGFsbGVuZ2VzLWNhcmQtcmlzZSAwLjVzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSBib3RoO1xuICB9XG4gIC5hcmNoaXZlLWNhcmQ6bnRoLWNoaWxkKDEpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDBzO1xuICB9XG4gIC5hcmNoaXZlLWNhcmQ6bnRoLWNoaWxkKDIpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMDRzO1xuICB9XG4gIC5hcmNoaXZlLWNhcmQ6bnRoLWNoaWxkKDMpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMDhzO1xuICB9XG4gIC5hcmNoaXZlLWNhcmQ6bnRoLWNoaWxkKDQpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMTJzO1xuICB9XG4gIC5hcmNoaXZlLWNhcmQ6bnRoLWNoaWxkKDUpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMTZzO1xuICB9XG4gIC5hcmNoaXZlLWNhcmQ6bnRoLWNoaWxkKDYpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMnM7XG4gIH1cbiAgLmFyY2hpdmUtY2FyZDpudGgtY2hpbGQoNykge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4yNHM7XG4gIH1cbiAgLmFyY2hpdmUtY2FyZDpudGgtY2hpbGQoOCkge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4yOHM7XG4gIH1cbiAgLmFyY2hpdmUtY2FyZDpudGgtY2hpbGQoOSkge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4zMnM7XG4gIH1cbiAgLmFyY2hpdmUtY2FyZDpudGgtY2hpbGQoMTApIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuMzZzO1xuICB9XG4gIC5hcmNoaXZlLWNhcmQ6bnRoLWNoaWxkKDExKSB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjRzO1xuICB9XG4gIC5hcmNoaXZlLWNhcmQ6bnRoLWNoaWxkKDEyKSB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjQ0cztcbiAgfVxuICAuYXJjaGl2ZS1jYXJkOm50aC1jaGlsZCgxMykge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC40OHM7XG4gIH1cbiAgLmFyY2hpdmUtY2FyZDpudGgtY2hpbGQoMTQpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNTJzO1xuICB9XG4gIC5hcmNoaXZlLWNhcmQ6bnRoLWNoaWxkKDE1KSB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjU2cztcbiAgfVxuICAuYXJjaGl2ZS1jYXJkOm50aC1jaGlsZCgxNikge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC42cztcbiAgfVxuICAuYXJjaGl2ZS1jYXJkOm50aC1jaGlsZCgxNykge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC42NHM7XG4gIH1cbiAgLmFyY2hpdmUtY2FyZDpudGgtY2hpbGQoMTgpIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuNjhzO1xuICB9XG4gIC5hcmNoaXZlLWNhcmQ6bnRoLWNoaWxkKDE5KSB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjcycztcbiAgfVxuICAuYXJjaGl2ZS1jYXJkOm50aC1jaGlsZCgyMCkge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC43NnM7XG4gIH1cbiAgLmNoYWxsZW5nZXMtaW50cm8ge1xuICAgIGFuaW1hdGlvbjogY2hhbGxlbmdlcy1jYXJkLXJpc2UgMC40NXMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpIGJvdGg7XG4gIH1cbn1cbkBrZXlmcmFtZXMgY2hhbGxlbmdlcy1jYXJkLXJpc2Uge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2MzlweCkge1xuICAuY2hhbGxlbmdlcy1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgfVxufVxuYm9keTpoYXMoLmNoYWxsZW5nZXMtcGFnZSkge1xuICAtLWFyY2hpdmUtaW5rOiAjMGIwYjBhO1xuICAtLWFyY2hpdmUtcGFwZXI6ICNmZmZkZjg7XG4gIC0tYXJjaGl2ZS1zb2Z0OiAjZjRmMGU4O1xuICAtLWFyY2hpdmUtbGluZTogcmdiYSgxMSwgMTEsIDEwLCAwLjE4KTtcbiAgLS1hcmNoaXZlLW11dGVkOiAjNWI1NjUwO1xuICAtLWFyY2hpdmUtbWludDogIzY3YjI4YjtcbiAgLS1hcmNoaXZlLW1pbnQtc29mdDogI2RmZWVlNTtcbiAgLS1hcmNoaXZlLXllbGxvdzogI2Y0Y2Y0ZjtcbiAgLS1hcmNoaXZlLXllbGxvdy1zb2Z0OiAjZmZmMGI5O1xuICAtLWFyY2hpdmUtbGF2ZW5kZXI6ICM5Mjc2Yzg7XG4gIC0tYXJjaGl2ZS1sYXZlbmRlci1zb2Z0OiAjZWNlNWY1O1xuICAtLWFyY2hpdmUtcm9zZTogI2Q1OGE4OTtcbiAgLS1hcmNoaXZlLXJvc2Utc29mdDogI2YzZGFkYTtcbiAgY29sb3I6IHZhcigtLWFyY2hpdmUtaW5rKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXJjaGl2ZS1wYXBlcik7XG59XG5cbmJvZHk6aGFzKC5jaGFsbGVuZ2VzLXBhZ2UpIC5hcHAtaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1MywgMjQ4LCAwLjkyKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWFyY2hpdmUtbGluZSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxOHB4KTtcbn1cblxuYm9keTpoYXMoLmNoYWxsZW5nZXMtcGFnZSkgLmFwcC1icmFuZCxcbmJvZHk6aGFzKC5jaGFsbGVuZ2VzLXBhZ2UpIC5uYXYtbGluayB7XG4gIGNvbG9yOiB2YXIoLS1hcmNoaXZlLWluayk7XG59XG5cbmJvZHk6aGFzKC5jaGFsbGVuZ2VzLXBhZ2UpIC50ZXh0LWdyYWRpZW50IHtcbiAgY29sb3I6IHZhcigtLWFyY2hpdmUtaW5rKTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZSxcbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPXdvcmRsZV0sXG4uY2hhbGxlbmdlcy1wYWdlW2RhdGEtZ2FtZT1zcGVsbGluZ19iZWVdLFxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9Y29ubmVjdGlvbnNdLFxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3Vkb2t1XSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCksIHZhcigtLWFyY2hpdmUtcGFwZXIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMzRweDtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZSAuYXBwLWNvbnRhaW5lciwgLmNoYWxsZW5nZXMtcGFnZSAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiAxMTIwcHg7XG59XG5cbi5jaGFsbGVuZ2VzLWhlcm8ge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS01KSAwIHZhcigtLXNwYWNlLTYpO1xufVxuXG4uY2hhbGxlbmdlcy1pbnRybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA5MnB4IG1pbm1heCgwLCAxZnIpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTQpO1xuICBtYXJnaW46IDAgMCB2YXIoLS1zcGFjZS01KTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmNoYWxsZW5nZXMtaW50cm86OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3BlbGxpbmdfYmVlXSAuY2hhbGxlbmdlcy1zdWJ0aXRsZTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1hcmNoaXZlLXllbGxvdyk7XG59XG5cbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPWNvbm5lY3Rpb25zXSAuY2hhbGxlbmdlcy1zdWJ0aXRsZTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1hcmNoaXZlLWxhdmVuZGVyKTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3Vkb2t1XSAuY2hhbGxlbmdlcy1zdWJ0aXRsZTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1hcmNoaXZlLXJvc2UpO1xufVxuXG4uY2hhbGxlbmdlcy1pY29uLXdyYXAge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbjogMDtcbn1cblxuLmNoYWxsZW5nZXMtaWNvbixcbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPXdvcmRsZV0gLmNoYWxsZW5nZXMtaWNvbixcbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPXNwZWxsaW5nX2JlZV0gLmNoYWxsZW5nZXMtaWNvbixcbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPWNvbm5lY3Rpb25zXSAuY2hhbGxlbmdlcy1pY29uLFxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3Vkb2t1XSAuY2hhbGxlbmdlcy1pY29uIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgd2lkdGg6IDkycHg7XG4gIGhlaWdodDogOTJweDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAyMnB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1hcmNoaXZlLW1pbnQtc29mdCk7XG4gIGNvbG9yOiB2YXIoLS1hcmNoaXZlLWluayk7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3BlbGxpbmdfYmVlXSAuY2hhbGxlbmdlcy1pY29uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXJjaGl2ZS15ZWxsb3ctc29mdCk7XG59XG5cbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPWNvbm5lY3Rpb25zXSAuY2hhbGxlbmdlcy1pY29uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXJjaGl2ZS1sYXZlbmRlci1zb2Z0KTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3Vkb2t1XSAuY2hhbGxlbmdlcy1pY29uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXJjaGl2ZS1yb3NlLXNvZnQpO1xufVxuXG4uY2hhbGxlbmdlcy1pY29uX19pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNjZweDtcbiAgaGVpZ2h0OiA2NnB4O1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4uY2hhbGxlbmdlcy10aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWFyY2hpdmUtaW5rKTtcbiAgZm9udC1zaXplOiBjbGFtcCgzLjFyZW0sIDd2dywgNi4ycmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjg2O1xufVxuXG4uY2hhbGxlbmdlcy10aXRsZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIi5cIjtcbiAgY29sb3I6ICM3OGQyYzk7XG59XG5cbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPXNwZWxsaW5nX2JlZV0gLmNoYWxsZW5nZXMtdGl0bGU6OmFmdGVyIHtcbiAgY29sb3I6IHZhcigtLWFyY2hpdmUteWVsbG93KTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9Y29ubmVjdGlvbnNdIC5jaGFsbGVuZ2VzLXRpdGxlOjphZnRlciB7XG4gIGNvbG9yOiB2YXIoLS1hcmNoaXZlLWxhdmVuZGVyKTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3Vkb2t1XSAuY2hhbGxlbmdlcy10aXRsZTo6YWZ0ZXIge1xuICBjb2xvcjogdmFyKC0tYXJjaGl2ZS1yb3NlKTtcbn1cblxuLmNoYWxsZW5nZXMtc3VidGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGdyaWQtY29sdW1uOiAyO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1heC13aWR0aDogbWluKDYyMHB4LCAxMDAlKTtcbiAgbWFyZ2luOiBjYWxjKHZhcigtLXNwYWNlLTIpICogLTEpIDAgMDtcbiAgcGFkZGluZy1ib3R0b206IDAuNDVyZW07XG4gIGNvbG9yOiB2YXIoLS1hcmNoaXZlLWluayk7XG4gIGZvbnQtc2l6ZTogMS4wNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG59XG5cbi5jaGFsbGVuZ2VzLXN1YnRpdGxlOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGJvcmRlci10b3A6IDVweCBzb2xpZCB2YXIoLS1hcmNoaXZlLW1pbnQpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTFkZWcpO1xufVxuXG4uY2hhbGxlbmdlcy1zZWN0aW9uLWxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IDM0cHg7XG4gIG1hcmdpbjogMCAwIHZhcigtLXNwYWNlLTMpO1xuICBwYWRkaW5nOiAwIDAuODVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWFyY2hpdmUtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tYXJjaGl2ZS1pbmspO1xuICBmb250LXNpemU6IDAuNjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uY2hhbGxlbmdlcy1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgbWlubWF4KDAsIDFmcikpO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYXJjaGl2ZS1jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBncmlkO1xuICBtaW4taGVpZ2h0OiAxODBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYXJjaGl2ZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAxNHB4IDM0cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA3KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMThzIGVhc2UsIGJveC1zaGFkb3cgMC4xOHMgZWFzZTtcbn1cblxuLmFyY2hpdmUtY2FyZDo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuXG4uY2hhbGxlbmdlcy1wYWdlW2RhdGEtZ2FtZT1zcGVsbGluZ19iZWVdIC5hcmNoaXZlLWNhcmQ6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXJjaGl2ZS15ZWxsb3cpO1xufVxuXG4uY2hhbGxlbmdlcy1wYWdlW2RhdGEtZ2FtZT1jb25uZWN0aW9uc10gLmFyY2hpdmUtY2FyZDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1hcmNoaXZlLWxhdmVuZGVyKTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3Vkb2t1XSAuYXJjaGl2ZS1jYXJkOjphZnRlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWFyY2hpdmUtcm9zZSk7XG59XG5cbi5hcmNoaXZlLWNhcmQ6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIGJveC1zaGFkb3c6IDAgMjBweCA0MnB4IHJnYmEoMTEsIDExLCAxMCwgMC4xKTtcbn1cblxuLmFyY2hpdmUtY2FyZF9fdG9wIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIG1pbm1heCgwLCAxZnIpIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtNCkgdmFyKC0tc3BhY2UtNCkgMDtcbn1cblxuLmFyY2hpdmUtZGF0ZSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHdpZHRoOiA3MnB4O1xuICBoZWlnaHQ6IDcycHg7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiAwLjFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWFyY2hpdmUtc29mdCk7XG4gIGNvbG9yOiB2YXIoLS1hcmNoaXZlLWluayk7XG59XG5cbi5kYXRlLWRheSB7XG4gIGNvbG9yOiB2YXIoLS1hcmNoaXZlLWluayk7XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDAuODU7XG59XG5cbi5kYXRlLW1vbnRoIHtcbiAgY29sb3I6IHZhcigtLWFyY2hpdmUtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuNjZyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uYXJjaGl2ZS1pbmZvIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICBnYXA6IDAuNDJyZW07XG4gIG1pbi1oZWlnaHQ6IDcycHg7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLmFyY2hpdmUtd2Vla2RheSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiB2YXIoLS1hcmNoaXZlLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uYXJjaGl2ZS1waWxsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgbWluLWhlaWdodDogMjRweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAwLjU4cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1hcmNoaXZlLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLWFyY2hpdmUtaW5rKTtcbiAgZm9udC1zaXplOiAwLjY2cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xufVxuXG4uYXJjaGl2ZS1iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB3aWR0aDogMzRweDtcbiAgaGVpZ2h0OiAzNHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYXJjaGl2ZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1hcmNoaXZlLWluayk7XG4gIGZvbnQtc2l6ZTogMC44MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLmFyY2hpdmUtYmFkZ2UuaXMtd29uIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXJjaGl2ZS1taW50KTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5hcmNoaXZlLWJhZGdlLmlzLWxvc3Qge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1hcmNoaXZlLXJvc2UpO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmFyY2hpdmUtYmFkZ2UuaXMtcGVuZGluZyB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQ6IHZhcigtLWFyY2hpdmUteWVsbG93KTtcbiAgY29sb3I6IHZhcigtLWFyY2hpdmUtaW5rKTtcbn1cblxuLmFyY2hpdmUtYmFkZ2UuaXMtbG9ja2VkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXJjaGl2ZS1zb2Z0KTtcbiAgY29sb3I6IHZhcigtLWFyY2hpdmUtbXV0ZWQpO1xufVxuXG4uYXJjaGl2ZS1jYXJkX19hY3Rpb25zIHtcbiAgYWxpZ24tc2VsZjogZW5kO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS00KSB2YXIoLS1zcGFjZS00KSBjYWxjKHZhcigtLXNwYWNlLTQpICsgMTBweCk7XG59XG5cbi5hcmNoaXZlLWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogNDZweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDAuOTJyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmFyY2hpdmUtYnRuLmlzLXByaW1hcnksXG4uY2hhbGxlbmdlcy1wYWdlW2RhdGEtZ2FtZT13b3JkbGVdIC5hcmNoaXZlLWJ0bi5pcy1wcmltYXJ5LFxuLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3BlbGxpbmdfYmVlXSAuYXJjaGl2ZS1idG4uaXMtcHJpbWFyeSxcbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPWNvbm5lY3Rpb25zXSAuYXJjaGl2ZS1idG4uaXMtcHJpbWFyeSxcbi5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPXN1ZG9rdV0gLmFyY2hpdmUtYnRuLmlzLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1hcmNoaXZlLWluayk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYXJjaGl2ZS1idG4uaXMtc2Vjb25kYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYXJjaGl2ZS1saW5lKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYXJjaGl2ZS1zb2Z0KTtcbiAgY29sb3I6IHZhcigtLWFyY2hpdmUtaW5rKTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLmNoYWxsZW5nZXMtcGFnaW5hdGlvbiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTUpO1xufVxuXG4ucGFnaW5hdGlvbi1yb3cge1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xufVxuXG4ucGFnaW5hdGlvbi1wYWdlcyB7XG4gIGdhcDogMC4yMnJlbTtcbn1cblxuLnBhZ2luYXRpb24tcGFnZSxcbi5wYWdpbmF0aW9uLWJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBjb2xvcjogdmFyKC0tYXJjaGl2ZS1pbmspO1xuICBmb250LXdlaWdodDogOTAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5wYWdpbmF0aW9uLXBhZ2Uge1xuICBtaW4td2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDtcbn1cblxuLnBhZ2luYXRpb24tcGFnZS5pcy1hY3RpdmUge1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLWFyY2hpdmUteWVsbG93KTtcbiAgY29sb3I6IHZhcigtLWFyY2hpdmUtaW5rKTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnBhZ2luYXRpb24tYnRuIHtcbiAgbWluLWhlaWdodDogMzZweDtcbiAgcGFkZGluZzogMCAwLjlyZW07XG59XG5cbi5wYWdpbmF0aW9uLWJ0bjpob3Zlcixcbi5wYWdpbmF0aW9uLXBhZ2U6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI0NCwgMjA3LCA3OSwgMC4xOCk7XG59XG5cbi5wYWdpbmF0aW9uLWRvdHMge1xuICBjb2xvcjogdmFyKC0tYXJjaGl2ZS1tdXRlZCk7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5jaGFsbGVuZ2VzLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTUpO1xufVxuXG4uY2hhbGxlbmdlcy1iYWNrLWJ0biB7XG4gIG1pbi1oZWlnaHQ6IDQycHg7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYXJjaGl2ZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1hcmNoaXZlLWluayk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5MjBweCkge1xuICAuY2hhbGxlbmdlcy1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xuICAuY2hhbGxlbmdlcy1wYWdlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYyg2cmVtICsgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgfVxuICAuY2hhbGxlbmdlcy1wYWdlIC5hcHAtY29udGFpbmVyLCAuY2hhbGxlbmdlcy1wYWdlIC5jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtMyk7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UtMyk7XG4gIH1cbiAgLmNoYWxsZW5nZXMtaGVybyB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtNCkgMCB2YXIoLS1zcGFjZS01KTtcbiAgfVxuICAuY2hhbGxlbmdlcy1pbnRybyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA2NHB4IG1pbm1heCgwLCAxZnIpO1xuICAgIGdhcDogdmFyKC0tc3BhY2UtMyk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNCk7XG4gIH1cbiAgLmNoYWxsZW5nZXMtaW50cm86OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5jaGFsbGVuZ2VzLWljb24sXG4gIC5jaGFsbGVuZ2VzLXBhZ2VbZGF0YS1nYW1lPXdvcmRsZV0gLmNoYWxsZW5nZXMtaWNvbixcbiAgLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3BlbGxpbmdfYmVlXSAuY2hhbGxlbmdlcy1pY29uLFxuICAuY2hhbGxlbmdlcy1wYWdlW2RhdGEtZ2FtZT1jb25uZWN0aW9uc10gLmNoYWxsZW5nZXMtaWNvbixcbiAgLmNoYWxsZW5nZXMtcGFnZVtkYXRhLWdhbWU9c3Vkb2t1XSAuY2hhbGxlbmdlcy1pY29uIHtcbiAgICB3aWR0aDogNjRweDtcbiAgICBoZWlnaHQ6IDY0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgfVxuICAuY2hhbGxlbmdlcy1pY29uX19pbWFnZSB7XG4gICAgd2lkdGg6IDQ2cHg7XG4gICAgaGVpZ2h0OiA0NnB4O1xuICB9XG4gIC5jaGFsbGVuZ2VzLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuNjVyZW07XG4gIH1cbiAgLmNoYWxsZW5nZXMtc3VidGl0bGUge1xuICAgIGdyaWQtY29sdW1uOiAxLy0xO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zaXplOiAwLjg4cmVtO1xuICB9XG4gIC5jaGFsbGVuZ2VzLXNlY3Rpb24tbGFiZWwge1xuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XG4gICAgZm9udC1zaXplOiAwLjZyZW07XG4gIH1cbiAgLmNoYWxsZW5nZXMtZ3JpZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbiAgfVxuICAuYXJjaGl2ZS1jYXJkIHtcbiAgICBtaW4taGVpZ2h0OiAxNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICB9XG4gIC5hcmNoaXZlLWNhcmRfX3RvcCB7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKSB2YXIoLS1zcGFjZS0zKSAwO1xuICB9XG4gIC5hcmNoaXZlLWRhdGUge1xuICAgIHdpZHRoOiA1OHB4O1xuICAgIGhlaWdodDogNThweDtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICB9XG4gIC5kYXRlLWRheSB7XG4gICAgZm9udC1zaXplOiAxLjc4cmVtO1xuICB9XG4gIC5kYXRlLW1vbnRoIHtcbiAgICBmb250LXNpemU6IDAuNThyZW07XG4gIH1cbiAgLmFyY2hpdmUtaW5mbyB7XG4gICAgbWluLWhlaWdodDogNThweDtcbiAgfVxuICAuYXJjaGl2ZS13ZWVrZGF5IHtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgfVxuICAuYXJjaGl2ZS1iYWRnZSB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMC43NHJlbTtcbiAgfVxuICAuYXJjaGl2ZS1jYXJkX19hY3Rpb25zIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKSB2YXIoLS1zcGFjZS0zKSBjYWxjKHZhcigtLXNwYWNlLTMpICsgMTBweCk7XG4gIH1cbiAgLmFyY2hpdmUtYnRuIHtcbiAgICBtaW4taGVpZ2h0OiA0MnB4O1xuICAgIGZvbnQtc2l6ZTogMC44NnJlbTtcbiAgfVxuICAucGFnaW5hdGlvbi1yb3cge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG4uc3BlbGxpbmctYmVlLXBhZ2Uge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS01KSAwIHZhcigtLXNwYWNlLTcpO1xufVxuXG4uc3BlbGxpbmctYmVlLXBhbmVsIHtcbiAgbWF4LXdpZHRoOiA3NjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLXNwYWNlLTQpO1xufVxuXG4uYmVlLXNjb3JlLXN0cmlwIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI2ZmZmNmNSAwJSwgI2Y4ZjFkZiAxMDAlKTtcbiAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMyk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG59XG5cbi5iZWUtc2NvcmUtbGVmdCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIGdhcDogMC40cmVtO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbn1cblxuLmJlZS1zY29yZS1sZWZ0IHN0cm9uZyB7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG59XG5cbi5iZWUtc2NvcmUtcmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmJlZS1yYW5rLW5hbWUge1xuICBmb250LXNpemU6IDAuODJyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjNjU0ODEwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI0MiwgMTg1LCA1OSwgMC4yKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNDIsIDE4NSwgNTksIDAuMzgpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgcGFkZGluZzogMC4ycmVtIDAuNXJlbTtcbn1cblxuLmJlZS1yYW5rLXByb2dyZXNzLXRyYWNrIHtcbiAgd2lkdGg6IDYycHg7XG4gIGhlaWdodDogNnB4O1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogcmdiYSg0MiwgMzMsIDIwLCAwLjE0KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmJlZS1yYW5rLXByb2dyZXNzLWZpbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMCU7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgI2YyYjkzYiAwJSwgI2Y3ZDA3MCAxMDAlKTtcbiAgdHJhbnNpdGlvbjogd2lkdGggMjIwbXMgZWFzZTtcbn1cblxuLmJlZS13b3JkLWNhcHN1bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICNmZmY5ZWM7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmMGRmYjg7XG4gIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIHBhZGRpbmc6IDAuOHJlbSAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgNnB4IDE0cHggcmdiYSg1OSwgNDQsIDEyLCAwLjA4KTtcbn1cblxuLmJlZS1jdXJyZW50LXdvcmQge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjE2ZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGNvbG9yOiAjMzMyNDBmO1xuICBtaW4taGVpZ2h0OiAyLjJyZW07XG59XG5cbi5iZWUtZmVlZGJhY2stbGluZSB7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgbWluLWhlaWdodDogMS4xcmVtO1xuICBmb250LXNpemU6IDAuODZyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbn1cblxuLmJlZS1mZWVkYmFjay1saW5lLm1lc3NhZ2Utd2FybmluZyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1kYW5nZXIpO1xufVxuXG4uYmVlLWZlZWRiYWNrLWxpbmUubWVzc2FnZS1zdWNjZXNzIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXN1Y2Nlc3MpO1xufVxuXG4uYmVlLWZlZWRiYWNrLWxpbmUubWVzc2FnZS1pbmZvIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xufVxuXG4uYmVlLXNjb3JlLWZsb2F0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDRweDtcbiAgcmlnaHQ6IDEycHg7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXN1Y2Nlc3MpO1xuICBmb250LXdlaWdodDogODAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmJlZS1zY29yZS1mbG9hdC5pcy12aXNpYmxlIHtcbiAgYW5pbWF0aW9uOiBiZWUtc2NvcmUtZmxvYXQtdXAgNTIwbXMgZWFzZS1vdXQgZm9yd2FyZHM7XG59XG5cbi5iZWUtd29yZC1jYXBzdWxlLmlzLWdsb3cge1xuICBhbmltYXRpb246IGJlZS1jYXBzdWxlLWdsb3cgMzYwbXMgZWFzZS1vdXQ7XG59XG5cbi5iZWUtd29yZC1jYXBzdWxlLmlzLXNoYWtlIHtcbiAgYW5pbWF0aW9uOiBiZWUtY2Fwc3VsZS1zaGFrZSAzNjBtcyBlYXNlLWluLW91dDtcbn1cblxuLmJlZS1ob25leWNvbWIge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtMSk7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMCA3cHggMTJweCByZ2JhKDYyLCA0NiwgMTUsIDAuMTQpKTtcbn1cblxuLmJlZS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmJlZS1sZXR0ZXIge1xuICB3aWR0aDogOThweDtcbiAgaGVpZ2h0OiA4NnB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNmNmUzOWE7XG4gIGNvbG9yOiAjMzYyYzE0O1xuICBmb250LXNpemU6IDEuNzhyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY2xpcC1wYXRoOiBwb2x5Z29uKDI1JSA2JSwgNzUlIDYlLCAxMDAlIDUwJSwgNzUlIDk0JSwgMjUlIDk0JSwgMCA1MCUpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZTtcbn1cblxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAuYmVlLWxldHRlcjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDE4cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgfVxufVxuLmJlZS1sZXR0ZXIuaXMtY2VudGVyIHtcbiAgYmFja2dyb3VuZDogI2YyYjkzYjtcbn1cblxuLmJlZS1jb250cm9scyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xufVxuXG4uYmVlLWljb24tYnRuIHtcbiAgbWluLXdpZHRoOiA0NHB4O1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5iZWUtZm91bmQtdHJpZ2dlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBiYWNrZ3JvdW5kOiAjZmFmNmVlO1xuICBwYWRkaW5nOiAwLjc1cmVtIDAuOXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmJlZS1mb3VuZC10cmlnZ2VyLXJpZ2h0IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC41cmVtO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG59XG5cbi5iZWUtZm91bmQtY291bnQge1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG59XG5cbi5iZWUtZm91bmQtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmJlZS1mb3VuZC13b3JkIHtcbiAgcGFkZGluZzogMC4zcmVtIDAuNnJlbTtcbiAgYmFja2dyb3VuZDogI2ZmZjVkNjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjBkY2EyO1xufVxuXG4uYmVlLWJvdHRvbS1zaGVldCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaW5zZXQ6IDA7XG4gIHotaW5kZXg6IDU1O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmJlZS1zaGVldC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgyMiwgMTYsIDksIDAuMzYpO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE4MG1zIGVhc2U7XG59XG5cbi5iZWUtc2hlZXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDQlKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIyMG1zIGVhc2U7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBib3JkZXItcmFkaXVzOiAxOHB4IDE4cHggMCAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtNCk7XG4gIG1heC1oZWlnaHQ6IDcydmg7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4uYmVlLWJvdHRvbS1zaGVldC5pcy1vcGVuIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbi5iZWUtYm90dG9tLXNoZWV0LmlzLW9wZW4gLmJlZS1zaGVldC1iYWNrZHJvcCB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5iZWUtYm90dG9tLXNoZWV0LmlzLW9wZW4gLmJlZS1zaGVldCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLmJlZS1zaGVldCBoMyB7XG4gIG1hcmdpbjogMCAwIHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYmVlLXNoZWV0LWhhbmRsZSB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYmVlLXNoZWV0LXNjb3JlLWxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICBnYXA6IDAuNHJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG59XG5cbi5iZWUtc2hlZXQtc2NvcmUtbGluZSBzdHJvbmcge1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xufVxuXG4uYmVlLXNoZWV0LXJhbmstbGluZSB7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2UtMikgMCB2YXIoLS1zcGFjZS0zKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xufVxuXG4uYmVlLXBvaW50cy1icmVha2Rvd24ge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLmJlZS1icmVha2Rvd24tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlLWFsdCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjdyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbn1cblxuLmJlZS1icmVha2Rvd24tcm93IHN0cm9uZyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbn1cblxuLmJlZS1yYW5rLWxhZGRlciB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmJlZS1yYW5rLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2UtYWx0KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgcGFkZGluZzogMC41NXJlbSAwLjdyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5iZWUtc2hlZXQtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmJlZS1tb2RhbCAubW9kYWxfX2RpYWxvZyB7XG4gIG1heC13aWR0aDogNDYwcHg7XG59XG5cbi5iZWUtc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogdmFyKC0tc3BhY2UtMik7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYmVlLXN1bW1hcnktbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG59XG5cbi5iZWUtc3VtbWFyeS12YWx1ZSB7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uYmVlLXN0YXRzLWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDE2MHB4LCAxZnIpKTtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5iZWUtc3RhdC1jYXJkIHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2UtYWx0KTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmJlZS1zdGF0LW51bWJlciB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnJlY2VudC1nYW1lcy1saXN0IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLnJlY2VudC1nYW1lLWNhcmQge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zb2Z0KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLnJlY2VudC1nYW1lLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5yZWNlbnQtZ2FtZS1kYXRlIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xufVxuXG4ucmVjZW50LWdhbWUtbGFiZWwge1xuICBtYXJnaW46IHZhcigtLXNwYWNlLTEpIDAgMDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnJlY2VudC1nYW1lLW1vZGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5tb2RlLWJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjZyZW07XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoNjMsIDEwNywgOTEsIDAuMTIpO1xuICBjb2xvcjogIzNiNmM1YTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg2MywgMTA3LCA5MSwgMC4yNSk7XG59XG5cbi5tb2RlLWxpbmsge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5LXN0cm9uZyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm1vZGUtbGluazpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ucmVjZW50LWdhbWUtc3RhdHMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDEyMHB4LCAxZnIpKTtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLnJlY2VudC1nYW1lLXN0YXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDAuMnJlbTtcbn1cblxuLnJlY2VudC1nYW1lLXN0YXQgLnN0YXQtbGFiZWwge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbn1cblxuLnJlY2VudC1nYW1lLXN0YXQgLnN0YXQtdmFsdWUge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLnNwZWxsaW5nLWJlZS1wYW5lbCB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtNCk7XG4gIH1cbiAgLmJlZS1sZXR0ZXIge1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGhlaWdodDogNzBweDtcbiAgICBmb250LXNpemU6IDEuNDVyZW07XG4gIH1cbiAgLmJlZS1jb250cm9scyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgLmJlZS1jdXJyZW50LXdvcmQge1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJlZS1zY29yZS1mbG9hdC11cCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDhweCk7XG4gIH1cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTZweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYmVlLWNhcHN1bGUtZ2xvdyB7XG4gIDAlIHtcbiAgICBib3gtc2hhZG93OiAwIDZweCAxNHB4IHJnYmEoNTksIDQ0LCAxMiwgMC4wOCk7XG4gIH1cbiAgNTAlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA2cHggcmdiYSg3OSwgMTIyLCAxMDQsIDAuMTYpLCAwIDEwcHggMjRweCByZ2JhKDc5LCAxMjIsIDEwNCwgMC4xNik7XG4gIH1cbiAgMTAwJSB7XG4gICAgYm94LXNoYWRvdzogMCA2cHggMTRweCByZ2JhKDU5LCA0NCwgMTIsIDAuMDgpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJlZS1jYXBzdWxlLXNoYWtlIHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAyMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KTtcbiAgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2cHgpO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00cHgpO1xuICB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7XG4gIH1cbn1cbmJvZHk6aGFzKC5zcGVsbGluZy1iZWUtcGFnZSkge1xuICAtLWJlZS1pbms6ICMwYjBiMGE7XG4gIC0tYmVlLXBhcGVyOiAjZmZmZGY4O1xuICAtLWJlZS1zb2Z0OiAjZjRmMGU4O1xuICAtLWJlZS1saW5lOiByZ2JhKDExLCAxMSwgMTAsIDAuMTgpO1xuICAtLWJlZS1tdXRlZDogIzViNTY1MDtcbiAgLS1iZWUtbWludDogIzY3YjI4YjtcbiAgLS1iZWUtbWludC1zb2Z0OiAjZGZlZWU1O1xuICAtLWJlZS1taW50LXByZXNzZWQ6ICNjOGUyZDI7XG4gIC0tYmVlLXllbGxvdzogI2Y0Y2Y0ZjtcbiAgLS1iZWUteWVsbG93LXNvZnQ6ICNmZmYwYjk7XG4gIC0tYmVlLWxhdmVuZGVyOiAjOTI3NmM4O1xuICAtLWJlZS1sYXZlbmRlci1zb2Z0OiAjZWNlNWY1O1xuICAtLWJlZS1yb3NlOiAjZDU4YTg5O1xuICBjb2xvcjogdmFyKC0tYmVlLWluayk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJlZS1wYXBlcik7XG59XG5cbmJvZHk6aGFzKC5zcGVsbGluZy1iZWUtcGFnZSkgLmFwcC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjUzLCAyNDgsIDAuOTIpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmVlLWxpbmUpO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMThweCk7XG59XG5cbmJvZHk6aGFzKC5zcGVsbGluZy1iZWUtcGFnZSkgLmFwcC1icmFuZCxcbmJvZHk6aGFzKC5zcGVsbGluZy1iZWUtcGFnZSkgLm5hdi1saW5rIHtcbiAgY29sb3I6IHZhcigtLWJlZS1pbmspO1xufVxuXG5ib2R5Omhhcyguc3BlbGxpbmctYmVlLXBhZ2UpIC50ZXh0LWdyYWRpZW50IHtcbiAgY29sb3I6IHZhcigtLWJlZS1pbmspO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogY3VycmVudENvbG9yO1xufVxuXG4uc3BlbGxpbmctYmVlLXBhZ2Uge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS00KSAwIGNhbGModmFyKC0tc3BhY2UtNykgKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMTEsIDExLCAxMCwgMC4wMjUpIDFweCwgdHJhbnNwYXJlbnQgMXB4KSwgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCB2YXIoLS1iZWUtcGFwZXIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMzRweDtcbn1cblxuLnNwZWxsaW5nLWJlZS1wYWdlIC5hcHAtY29udGFpbmVyLCAuc3BlbGxpbmctYmVlLXBhZ2UgLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogNzYwcHg7XG59XG5cbi5zcGVsbGluZy1iZWUtcGFuZWwge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xuICBtYXgtd2lkdGg6IDcyMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtNCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJlZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1MywgMjQ4LCAwLjkpO1xuICBib3gtc2hhZG93OiAwIDIycHggNDZweCByZ2JhKDExLCAxMSwgMTAsIDAuMDgpO1xufVxuXG4uYmVlLWdhbWUtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWluLWhlaWdodDogMzRweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5iZWUtZGF0ZS1waWxsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgbWluLWhlaWdodDogMzJweDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDAuODJyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJlZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1iZWUtaW5rKTtcbiAgZm9udC1zaXplOiAwLjY2cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmJlZS1zY29yZS1zdHJpcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1pbi1oZWlnaHQ6IDU4cHg7XG4gIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtMyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJlZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLWJlZS1pbmspO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMTBweCAyNHB4IHJnYmEoMTEsIDExLCAxMCwgMC4wNik7XG59XG5cbi5iZWUtc2NvcmUtbGVmdCB7XG4gIGNvbG9yOiB2YXIoLS1iZWUtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuOTZyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5iZWUtc2NvcmUtbGVmdCBzdHJvbmcge1xuICBjb2xvcjogdmFyKC0tYmVlLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDEuODVyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uYmVlLXNjb3JlLXJpZ2h0IHtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmJlZS1yYW5rLW5hbWUge1xuICBtaW4taGVpZ2h0OiAyOHB4O1xuICBwYWRkaW5nOiAwIDAuNzJyZW07XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJlZS15ZWxsb3cpO1xuICBjb2xvcjogdmFyKC0tYmVlLWluayk7XG4gIGZvbnQtc2l6ZTogMC43OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG59XG5cbi5iZWUtcmFuay1wcm9ncmVzcy10cmFjayB7XG4gIHdpZHRoOiA3MnB4O1xuICBoZWlnaHQ6IDhweDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJlZS1zb2Z0KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmJlZS1yYW5rLXByb2dyZXNzLWZpbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZWUtaW5rKTtcbn1cblxuLmJlZS13b3JkLWNhcHN1bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpIHZhcigtLXNwYWNlLTQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iZWUtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm94LXNoYWRvdzogMCAxNHB4IDM0cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA3KTtcbn1cblxuLmJlZS1jdXJyZW50LXdvcmQge1xuICBtaW4taGVpZ2h0OiAyLjRyZW07XG4gIGNvbG9yOiB2YXIoLS1iZWUtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmJlZS1mZWVkYmFjay1saW5lIHtcbiAgbWluLWhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luLXRvcDogMC4zNXJlbTtcbiAgY29sb3I6IHZhcigtLWJlZS1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC44OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cblxuLmJlZS1mZWVkYmFjay1saW5lLm1lc3NhZ2Utd2FybmluZyB7XG4gIGNvbG9yOiB2YXIoLS1iZWUtcm9zZSk7XG59XG5cbi5iZWUtZmVlZGJhY2stbGluZS5tZXNzYWdlLXN1Y2Nlc3Mge1xuICBjb2xvcjogdmFyKC0tYmVlLW1pbnQpO1xufVxuXG4uYmVlLXNjb3JlLWZsb2F0IHtcbiAgY29sb3I6IHZhcigtLWJlZS1taW50KTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLmJlZS13b3JkLWNhcHN1bGUuaXMtZ2xvdyB7XG4gIGFuaW1hdGlvbjogYmVlLWNhcHN1bGUtZ2xvdy1uZXcgMzYwbXMgZWFzZS1vdXQ7XG59XG5cbi5iZWUtaG9uZXljb21iIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAwLjZyZW07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDAuN3JlbSAwIDAuNDVyZW07XG4gIGZpbHRlcjogbm9uZTtcbn1cblxuLmJlZS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiAwLjZyZW07XG59XG5cbi5iZWUtbGV0dGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgd2lkdGg6IDk2cHg7XG4gIGhlaWdodDogODRweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmVlLWluayk7XG4gIGNvbG9yOiB2YXIoLS1iZWUtaW5rKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiAxLjg1cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYm94LXNoYWRvdzogMCA0cHggMCByZ2JhKDExLCAxMSwgMTAsIDAuMTIpO1xuICBjbGlwLXBhdGg6IHBvbHlnb24oMjUlIDYlLCA3NSUgNiUsIDEwMCUgNTAlLCA3NSUgOTQlLCAyNSUgOTQlLCAwIDUwJSk7XG4gIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTRzIGVhc2UsIGJveC1zaGFkb3cgMC4xNHMgZWFzZTtcbn1cblxuLmJlZS1sZXR0ZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDNweDtcbiAgei1pbmRleDogLTE7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJlZS1taW50LXNvZnQpO1xuICBjbGlwLXBhdGg6IHBvbHlnb24oMjUlIDYlLCA3NSUgNiUsIDEwMCUgNTAlLCA3NSUgOTQlLCAyNSUgOTQlLCAwIDUwJSk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNHMgZWFzZTtcbn1cblxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAuYmVlLWxldHRlcjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG4gICAgYm94LXNoYWRvdzogMCA1cHggMCByZ2JhKDExLCAxMSwgMTAsIDAuMTIpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgfVxufVxuLmJlZS1sZXR0ZXI6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpIHtcbiAgYm94LXNoYWRvdzogMCAxcHggMCByZ2JhKDExLCAxMSwgMTAsIDAuMTQpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTtcbn1cblxuLmJlZS1sZXR0ZXI6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZWUtbWludC1wcmVzc2VkKTtcbn1cblxuLmJlZS1sZXR0ZXIuaXMtY2VudGVyIHtcbiAgY29sb3I6IHZhcigtLWJlZS1pbmspO1xufVxuXG4uYmVlLWxldHRlci5pcy1jZW50ZXI6OmJlZm9yZSxcbi5iZWUtbGV0dGVyLmlzLWNlbnRlcjpob3Zlcjo6YmVmb3JlLFxuLmJlZS1sZXR0ZXIuaXMtY2VudGVyOmFjdGl2ZTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmVlLXllbGxvdyk7XG59XG5cbi5iZWUtY29udHJvbHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICBtYXJnaW46IDAuMzVyZW0gMCAwLjU1cmVtO1xufVxuXG4uYmVlLWNvbnRyb2xzIC5idG4sIC5iZWUtY29udHJvbHMgLmJ0bi1zdWNjZXNzLCAuYmVlLWNvbnRyb2xzIC5idG4td2FybmluZywgLmJlZS1jb250cm9scyAuYnRuLWRhbmdlciwgLmJlZS1jb250cm9scyAuYnRuLWluZm8sIC5iZWUtY29udHJvbHMgLmJ0bi1vdXRsaW5lLXByaW1hcnksXG4uYmVlLWNvbnRyb2xzIC5idG4tb3V0bGluZS1zZWNvbmRhcnksXG4uYmVlLWNvbnRyb2xzIC5idG4tb3V0bGluZS1zdWNjZXNzLFxuLmJlZS1jb250cm9scyAuYnRuLW91dGxpbmUtZGFuZ2VyLFxuLmJlZS1jb250cm9scyAuYnRuLW91dGxpbmUtd2FybmluZyxcbi5iZWUtY29udHJvbHMgLmJ0bi1vdXRsaW5lLWluZm8sXG4uYmVlLWljb24tYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1pbi1oZWlnaHQ6IDQ2cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iZWUtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tYmVlLWluayk7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5iZWUtaWNvbi1idG4ge1xuICB3aWR0aDogNDZweDtcbiAgbWluLXdpZHRoOiA0NnB4O1xuICBwYWRkaW5nOiAwO1xufVxuXG4uYmVlLWNvbnRyb2xzIC5idG4tcHJpbWFyeSB7XG4gIG1pbi13aWR0aDogMTMycHg7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYmVlLWluayk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJlZS1pbmspO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJlZS1mb3VuZC10cmlnZ2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDU2cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS0zKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmVlLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZWUtbGF2ZW5kZXItc29mdCk7XG4gIGNvbG9yOiB2YXIoLS1iZWUtaW5rKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbn1cblxuLmJlZS1mb3VuZC10cmlnZ2VyLXJpZ2h0IHtcbiAgbWluLWhlaWdodDogMzBweDtcbiAgcGFkZGluZzogMCAwLjY1cmVtO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLWJlZS1pbmspO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4uYmVlLWJvdHRvbS1zaGVldC5pcy1vcGVuIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbi5iZWUtc2hlZXQtYmFja2Ryb3Age1xuICBiYWNrZ3JvdW5kOiByZ2JhKDExLCAxMSwgMTAsIDAuMzYpO1xufVxuXG4uYmVlLXNoZWV0IHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtNCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJlZS1saW5lKTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogMjRweCAyNHB4IDAgMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmVlLXBhcGVyKTtcbiAgY29sb3I6IHZhcigtLWJlZS1pbmspO1xuICBib3gtc2hhZG93OiAwIC0xOHB4IDQycHggcmdiYSgxMSwgMTEsIDEwLCAwLjE0KTtcbn1cblxuLmJlZS1zaGVldC1oYW5kbGUge1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA1cHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJlZS1saW5lKTtcbn1cblxuLmJlZS1zaGVldCBoMyxcbi5iZWUtc2hlZXQtaGVhZGVyIGgzIHtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tc3BhY2UtMyk7XG4gIGNvbG9yOiB2YXIoLS1iZWUtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5iZWUtc2hlZXQtc2NvcmUtbGluZSBzdHJvbmcsXG4uYmVlLXN1bW1hcnktdmFsdWUge1xuICBjb2xvcjogdmFyKC0tYmVlLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbi5iZWUtc2hlZXQtcmFuay1saW5lLFxuLmJlZS1zaGVldC1zY29yZS1saW5lLFxuLmJlZS1zdW1tYXJ5LWxhYmVsIHtcbiAgY29sb3I6IHZhcigtLWJlZS1tdXRlZCk7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbi5iZWUtYnJlYWtkb3duLXJvdyxcbi5iZWUtcmFuay1pdGVtIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmVlLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tYmVlLW11dGVkKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cblxuLmJlZS1icmVha2Rvd24tcm93IHN0cm9uZyxcbi5iZWUtcmFuay1pdGVtIHN0cm9uZyB7XG4gIGNvbG9yOiB2YXIoLS1iZWUtaW5rKTtcbn1cblxuLmJlZS1mb3VuZC1jb3VudCB7XG4gIGNvbG9yOiB2YXIoLS1iZWUtaW5rKTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLmJlZS1mb3VuZC13b3JkIHtcbiAgcGFkZGluZzogMC4zNXJlbSAwLjY1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iZWUtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tYmVlLWluayk7XG4gIGZvbnQtc2l6ZTogMC44MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLmJlZS1tb2RhbCAubW9kYWxfX2RpYWxvZyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogNDYwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJlZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmVlLXBhcGVyKTtcbiAgYm94LXNoYWRvdzogMCAyNHB4IDU4cHggcmdiYSgxMSwgMTEsIDEwLCAwLjE4KTtcbn1cblxuLmJlZS1tb2RhbCAubW9kYWxfX2hlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iZWUtbGluZSk7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5iZWUtbW9kYWwgLm1vZGFsX190aXRsZSB7XG4gIGNvbG9yOiB2YXIoLS1iZWUtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5iZWUtc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogdmFyKC0tc3BhY2UtMik7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYmVlLXN1bW1hcnkgPiBkaXYge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmVlLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uYmVlLW1vZGFsIC5idG4tb3V0bGluZSwgLmJlZS1tb2RhbCAuYnRuLW91dGxpbmUtcHJpbWFyeSxcbi5iZWUtbW9kYWwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSxcbi5iZWUtbW9kYWwgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsXG4uYmVlLW1vZGFsIC5idG4tb3V0bGluZS1kYW5nZXIsXG4uYmVlLW1vZGFsIC5idG4tb3V0bGluZS13YXJuaW5nLFxuLmJlZS1tb2RhbCAuYnRuLW91dGxpbmUtaW5mbyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYmVlLWxpbmUpO1xuICBjb2xvcjogdmFyKC0tYmVlLWluayk7XG59XG5cbi5iZWUtbW9kYWwgLmJ0bi1wcmltYXJ5IHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1iZWUtaW5rKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmVlLWluayk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLnNwZWxsaW5nLWJlZS1wYWdlIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKSAwIGNhbGMoNnJlbSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gIH1cbiAgLnNwZWxsaW5nLWJlZS1wYWdlIC5hcHAtY29udGFpbmVyLCAuc3BlbGxpbmctYmVlLXBhZ2UgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0zKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0zKTtcbiAgfVxuICAuc3BlbGxpbmctYmVlLXBhbmVsIHtcbiAgICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIH1cbiAgLmJlZS1nYW1lLWhlYWRlciB7XG4gICAgbWluLWhlaWdodDogMzBweDtcbiAgfVxuICAuYmVlLWRhdGUtcGlsbCB7XG4gICAgbWluLWhlaWdodDogMjhweDtcbiAgICBmb250LXNpemU6IDAuNThyZW07XG4gIH1cbiAgLmJlZS1zY29yZS1zdHJpcCB7XG4gICAgbWluLWhlaWdodDogNTJweDtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXNwYWNlLTIpO1xuICB9XG4gIC5iZWUtc2NvcmUtbGVmdCBzdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG4gIC5iZWUtcmFuay1wcm9ncmVzcy10cmFjayB7XG4gICAgd2lkdGg6IDU0cHg7XG4gIH1cbiAgLmJlZS13b3JkLWNhcHN1bGUge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLTIpIHZhcigtLXNwYWNlLTMpO1xuICB9XG4gIC5iZWUtY3VycmVudC13b3JkIHtcbiAgICBtaW4taGVpZ2h0OiAycmVtO1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICB9XG4gIC5iZWUtaG9uZXljb21iIHtcbiAgICBnYXA6IDAuMzZyZW07XG4gICAgbWFyZ2luOiAwLjZyZW0gMCAwLjRyZW07XG4gIH1cbiAgLmJlZS1yb3cge1xuICAgIGdhcDogMC4zNnJlbTtcbiAgfVxuICAuYmVlLWxldHRlciB7XG4gICAgd2lkdGg6IDgycHg7XG4gICAgaGVpZ2h0OiA3MnB4O1xuICAgIGZvbnQtc2l6ZTogMS40NXJlbTtcbiAgfVxuICAuYmVlLWNvbnRyb2xzIHtcbiAgICBnYXA6IDAuNDVyZW07XG4gICAgbWFyZ2luOiAwLjNyZW0gMCAwLjVyZW07XG4gIH1cbiAgLmJlZS1jb250cm9scyAuYnRuLCAuYmVlLWNvbnRyb2xzIC5idG4tc3VjY2VzcywgLmJlZS1jb250cm9scyAuYnRuLXdhcm5pbmcsIC5iZWUtY29udHJvbHMgLmJ0bi1kYW5nZXIsIC5iZWUtY29udHJvbHMgLmJ0bi1pbmZvLCAuYmVlLWNvbnRyb2xzIC5idG4tb3V0bGluZS1wcmltYXJ5LFxuICAuYmVlLWNvbnRyb2xzIC5idG4tb3V0bGluZS1zZWNvbmRhcnksXG4gIC5iZWUtY29udHJvbHMgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsXG4gIC5iZWUtY29udHJvbHMgLmJ0bi1vdXRsaW5lLWRhbmdlcixcbiAgLmJlZS1jb250cm9scyAuYnRuLW91dGxpbmUtd2FybmluZyxcbiAgLmJlZS1jb250cm9scyAuYnRuLW91dGxpbmUtaW5mbyxcbiAgLmJlZS1pY29uLWJ0biB7XG4gICAgbWluLWhlaWdodDogNDJweDtcbiAgfVxuICAuYmVlLWljb24tYnRuIHtcbiAgICB3aWR0aDogNDJweDtcbiAgICBtaW4td2lkdGg6IDQycHg7XG4gIH1cbiAgLmJlZS1jb250cm9scyAuYnRuLXByaW1hcnkge1xuICAgIG1pbi13aWR0aDogMTIwcHg7XG4gIH1cbiAgLmJlZS1mb3VuZC10cmlnZ2VyIHtcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtMik7XG4gICAgZm9udC1zaXplOiAwLjg2cmVtO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMzcwcHgpIHtcbiAgLnNwZWxsaW5nLWJlZS1wYW5lbCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0yKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0yKTtcbiAgfVxuICAuYmVlLWxldHRlciB7XG4gICAgd2lkdGg6IDcycHg7XG4gICAgaGVpZ2h0OiA2NHB4O1xuICAgIGZvbnQtc2l6ZTogMS4yOHJlbTtcbiAgfVxuICAuYmVlLXJhbmstcHJvZ3Jlc3MtdHJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5zcGVsbGluZy1iZWUtcGFnZS5pcy1jb21wbGV0ZWQtZGV0YWlsIHtcbiAgcGFkZGluZy10b3A6IGNsYW1wKDFyZW0sIDN2dywgMnJlbSk7XG59XG5cbi5zcGVsbGluZy1iZWUtcGFnZS5pcy1jb21wbGV0ZWQtZGV0YWlsIC5hcHAtY29udGFpbmVyLCAuc3BlbGxpbmctYmVlLXBhZ2UuaXMtY29tcGxldGVkLWRldGFpbCAuY29udGFpbmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgbWF4LXdpZHRoOiA4ODBweDtcbiAgZ2FwOiBjbGFtcCgxcmVtLCAyLjZ2dywgMS40NXJlbSk7XG59XG5cbi5iZWUtZGV0YWlsLWhlcm8ge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBlbmQ7XG4gIGdhcDogY2xhbXAoMXJlbSwgNHZ3LCAycmVtKTtcbiAgcGFkZGluZzogY2xhbXAoMXJlbSwgM3Z3LCAxLjRyZW0pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iZWUtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDI2cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTMsIDI0OCwgMC45Mik7XG4gIGJveC1zaGFkb3c6IDAgMjJweCA0NnB4IHJnYmEoMTEsIDExLCAxMCwgMC4wOCk7XG59XG5cbi5iZWUtZGV0YWlsLXRpdGxlLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1pbi13aWR0aDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiBjbGFtcCgwLjhyZW0sIDIuNnZ3LCAxLjFyZW0pO1xufVxuXG4uYmVlLWRldGFpbC1pY29uIHtcbiAgd2lkdGg6IGNsYW1wKDU4cHgsIDl2dywgNzZweCk7XG4gIGhlaWdodDogY2xhbXAoNThweCwgOXZ3LCA3NnB4KTtcbiAgZmxleDogMCAwIGF1dG87XG4gIHBhZGRpbmc6IDAuNnJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmVlLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZWUteWVsbG93LXNvZnQpO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4uYmVlLWRldGFpbC10aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWJlZS1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgzcmVtLCA4dncsIDQuOHJlbSk7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMC45O1xufVxuXG4uYmVlLWRldGFpbC10aXRsZSBzcGFuIHtcbiAgY29sb3I6ICM3OGQyYzk7XG59XG5cbi5iZWUtZGV0YWlsLW1ldGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMC41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjdyZW07XG59XG5cbi5iZWUtZGV0YWlsLXBpbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWluLWhlaWdodDogMzRweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMC45cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iZWUtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZWUteWVsbG93LXNvZnQpO1xuICBjb2xvcjogdmFyKC0tYmVlLWluayk7XG4gIGZvbnQtc2l6ZTogMC43NnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5iZWUtZGV0YWlsLXBpbGwuaXMtZGF0ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5iZWUtZGV0YWlsLWxldHRlcnMtY2FyZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIG1pbi13aWR0aDogMjIwcHg7XG4gIGdhcDogMC40NXJlbTtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtIDEuMTVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTEsIDExLCAxMCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogMjJweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmVlLW1pbnQtc29mdCk7XG59XG5cbi5iZWUtZGV0YWlsLWV5ZWJyb3cge1xuICBjb2xvcjogdmFyKC0tYmVlLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjY2cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xNmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYmVlLWRldGFpbC1sZXR0ZXJzLWNhcmQgc3Ryb25nIHtcbiAgY29sb3I6IHZhcigtLWJlZS1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjQ1cmVtLCAzdncsIDJyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmJlZS1kZXRhaWwtcHJvZ3Jlc3MtY2FyZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogMC43NXJlbTtcbiAgcGFkZGluZzogY2xhbXAoMXJlbSwgM3Z3LCAxLjM1cmVtKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmVlLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAyNnB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDE2cHggMzRweCByZ2JhKDExLCAxMSwgMTAsIDAuMDcpO1xufVxuXG4uYmVlLWRldGFpbC1yYW5rLWNvcHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IDAuNnJlbSAxcmVtO1xufVxuXG4uYmVlLWRldGFpbC1yYW5rLWNvcHkgc3Ryb25nIHtcbiAgY29sb3I6IHZhcigtLWJlZS1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgycmVtLCA1dncsIDIuOHJlbSk7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uYmVlLWRldGFpbC1wcm9ncmVzcy10cmFjayB7XG4gIGhlaWdodDogMjhweDtcbiAgcGFkZGluZzogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iZWUtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZWUtc29mdCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5iZWUtZGV0YWlsLXByb2dyZXNzLXRyYWNrIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZWUteWVsbG93KTtcbn1cblxuLmJlZS1kZXRhaWwtcHJvZ3Jlc3MtY2FyZCBwIHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogdmFyKC0tYmVlLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjk1cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4uYmVlLWRldGFpbC1zdGF0cyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIG1pbm1heCgwLCAxZnIpKTtcbiAgZ2FwOiAwLjc1cmVtO1xufVxuXG4uYmVlLWRldGFpbC1zdGF0IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgbWluLWhlaWdodDogOTRweDtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC4zNXJlbTtcbiAgcGFkZGluZzogMC44NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmVlLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5iZWUtZGV0YWlsLXN0YXQuaXMteHAge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZWUteWVsbG93LXNvZnQpO1xufVxuXG4uYmVlLWRldGFpbC1zdGF0IC5zdW1tYXJ5LWxhYmVsIHtcbiAgY29sb3I6IHZhcigtLWJlZS1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC42OHJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbn1cblxuLmJlZS1kZXRhaWwtc3RhdCAuc3VtbWFyeS12YWx1ZSB7XG4gIGNvbG9yOiB2YXIoLS1iZWUtaW5rKTtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjJyZW0sIDN2dywgMS43NXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjA1O1xufVxuXG4uYmVlLWRldGFpbC1jYXJkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAxcmVtO1xuICBwYWRkaW5nOiBjbGFtcCgxcmVtLCAzdncsIDEuMzVyZW0pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iZWUtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDI2cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMTZweCAzNHB4IHJnYmEoMTEsIDExLCAxMCwgMC4wNyk7XG59XG5cbi5iZWUtZGV0YWlsLWNhcmQtLWxldHRlcnMge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjUzLCAyNDgsIDAuOTQpO1xufVxuXG4uYmVlLWRldGFpbC1zZWN0aW9uLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiAxcmVtO1xufVxuXG4uYmVlLWRldGFpbC1zZWN0aW9uLWhlYWRlciBoMiB7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMC4xOHJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMC4yOHJlbSBzb2xpZCAjNzhkMmM5O1xuICBjb2xvcjogdmFyKC0tYmVlLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IGNsYW1wKDEuNnJlbSwgNHZ3LCAyLjE1cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uYmVlLWRldGFpbC1zZWN0aW9uLWhlYWRlciA+IHNwYW4ge1xuICBtaW4taGVpZ2h0OiAzNHB4O1xuICBwYWRkaW5nOiAwIDAuNzhyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJlZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJlZS1sYXZlbmRlci1zb2Z0KTtcbiAgY29sb3I6IHZhcigtLWJlZS1pbmspO1xuICBmb250LXNpemU6IDAuNzhyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAzNHB4O1xufVxuXG4uYmVlLWRldGFpbC1ob25leWNvbWIge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDAuNTVyZW07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwLjRyZW0gMCAwLjFyZW07XG59XG5cbi5iZWUtZGV0YWlsLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDAuNTVyZW07XG59XG5cbi5iZWUtZGV0YWlsLWxldHRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHdpZHRoOiA4NHB4O1xuICBoZWlnaHQ6IDc0cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZWUtaW5rKTtcbiAgY29sb3I6IHZhcigtLWJlZS1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiAxLjY1cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY2xpcC1wYXRoOiBwb2x5Z29uKDI1JSA2JSwgNzUlIDYlLCAxMDAlIDUwJSwgNzUlIDk0JSwgMjUlIDk0JSwgMCA1MCUpO1xuICBpc29sYXRpb246IGlzb2xhdGU7XG59XG5cbi5iZWUtZGV0YWlsLWxldHRlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogM3B4O1xuICB6LWluZGV4OiAtMTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmVlLW1pbnQtc29mdCk7XG4gIGNsaXAtcGF0aDogcG9seWdvbigyNSUgNiUsIDc1JSA2JSwgMTAwJSA1MCUsIDc1JSA5NCUsIDI1JSA5NCUsIDAgNTAlKTtcbn1cblxuLmJlZS1kZXRhaWwtbGV0dGVyLmlzLWNlbnRlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmVlLXllbGxvdyk7XG59XG5cbi5iZWUtZGV0YWlsLWZvdW5kLWxpc3Qge1xuICBnYXA6IDAuNTVyZW07XG59XG5cbi5iZWUtZGV0YWlsLWZvdW5kLWxpc3QgLmJlZS1mb3VuZC13b3JkIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLmJlZS1kZXRhaWwtZm91bmQtbGlzdCAuYmVlLWZvdW5kLXdvcmQuaXMtcGFuZ3JhbSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJlZS15ZWxsb3ctc29mdCk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgxMSwgMTEsIDEwLCAwLjI4KTtcbn1cblxuLmJlZS1kZXRhaWwtYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwLjJyZW0gMCAwLjZyZW07XG59XG5cbi5iZWUtZGV0YWlsLWRvbmUtYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgd2lkdGg6IG1pbig3OCUsIDMxMHB4KTtcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNTVyZW0gMy40cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iZWUtaW5rKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJlZS1pbmspO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAwLjk4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5iZWUtZGV0YWlsLWRvbmUtYnRuIHNwYW46bGFzdC1jaGlsZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ncmlkO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwLjM2cmVtO1xuICB3aWR0aDogMzhweDtcbiAgaGVpZ2h0OiAzOHB4O1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmVlLXllbGxvdyk7XG4gIGNvbG9yOiB2YXIoLS1iZWUtaW5rKTtcbiAgZm9udC1zaXplOiAxLjE4cmVtO1xufVxuXG4uYmVlLWRldGFpbC1kb25lLWJ0bjpob3Zlcixcbi5iZWUtZGV0YWlsLWRvbmUtYnRuOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJlZS1pbmspO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDcyMHB4KSB7XG4gIC5zcGVsbGluZy1iZWUtcGFnZS5pcy1jb21wbGV0ZWQtZGV0YWlsIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtMyk7XG4gIH1cbiAgLnNwZWxsaW5nLWJlZS1wYWdlLmlzLWNvbXBsZXRlZC1kZXRhaWwgLmFwcC1jb250YWluZXIsIC5zcGVsbGluZy1iZWUtcGFnZS5pcy1jb21wbGV0ZWQtZGV0YWlsIC5jb250YWluZXIge1xuICAgIGdhcDogMC44NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLTMpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLTMpO1xuICB9XG4gIC5iZWUtZGV0YWlsLWhlcm8ge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICBnYXA6IDAuOXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAyMnB4O1xuICB9XG4gIC5iZWUtZGV0YWlsLXRpdGxlLXJvdyB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLmJlZS1kZXRhaWwtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMi42NXJlbSwgMTN2dywgMy43NXJlbSk7XG4gIH1cbiAgLmJlZS1kZXRhaWwtbWV0YSB7XG4gICAgZ2FwOiAwLjQycmVtO1xuICAgIG1hcmdpbi10b3A6IDAuNTVyZW07XG4gIH1cbiAgLmJlZS1kZXRhaWwtcGlsbCB7XG4gICAgbWluLWhlaWdodDogMzBweDtcbiAgICBwYWRkaW5nOiAwIDAuNzRyZW07XG4gICAgZm9udC1zaXplOiAwLjY2cmVtO1xuICB9XG4gIC5iZWUtZGV0YWlsLWxldHRlcnMtY2FyZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGp1c3RpZnktaXRlbXM6IHN0YXJ0O1xuICAgIHBhZGRpbmc6IDAuODVyZW0gMC45NXJlbTtcbiAgfVxuICAuYmVlLWRldGFpbC1zdGF0cyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICAgIGdhcDogMC42NXJlbTtcbiAgfVxuICAuYmVlLWRldGFpbC1zdGF0IHtcbiAgICBtaW4taGVpZ2h0OiA4MnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gICAgcGFkZGluZzogMC43MnJlbTtcbiAgfVxuICAuYmVlLWRldGFpbC1jYXJkLFxuICAuYmVlLWRldGFpbC1wcm9ncmVzcy1jYXJkIHtcbiAgICBnYXA6IDAuODVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMjJweDtcbiAgfVxuICAuYmVlLWRldGFpbC1zZWN0aW9uLWhlYWRlciB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLmJlZS1kZXRhaWwtc2VjdGlvbi1oZWFkZXIgaDIge1xuICAgIGZvbnQtc2l6ZTogMS41NXJlbTtcbiAgfVxuICAuYmVlLWRldGFpbC1ob25leWNvbWIge1xuICAgIGdhcDogMC40cmVtO1xuICB9XG4gIC5iZWUtZGV0YWlsLXJvdyB7XG4gICAgZ2FwOiAwLjRyZW07XG4gIH1cbiAgLmJlZS1kZXRhaWwtbGV0dGVyIHtcbiAgICB3aWR0aDogNzJweDtcbiAgICBoZWlnaHQ6IDY0cHg7XG4gICAgZm9udC1zaXplOiAxLjM1cmVtO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMzcwcHgpIHtcbiAgLmJlZS1kZXRhaWwtaWNvbiB7XG4gICAgd2lkdGg6IDU0cHg7XG4gICAgaGVpZ2h0OiA1NHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIH1cbiAgLmJlZS1kZXRhaWwtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMi40NXJlbTtcbiAgfVxuICAuYmVlLWRldGFpbC1sZXR0ZXIge1xuICAgIHdpZHRoOiA2NHB4O1xuICAgIGhlaWdodDogNTdweDtcbiAgICBmb250LXNpemU6IDEuMThyZW07XG4gIH1cbn1cbkBrZXlmcmFtZXMgYmVlLWNhcHN1bGUtZ2xvdy1uZXcge1xuICAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAxNHB4IDM0cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA3KTtcbiAgfVxuICA1MCUge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDZweCByZ2JhKDI0NCwgMjA3LCA3OSwgMC4yMiksIDAgMThweCAzOHB4IHJnYmEoMTEsIDExLCAxMCwgMC4wOSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAxNHB4IDM0cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA3KTtcbiAgfVxufVxuLnNwZWxsaW5nLWJlZS1wYWdlIC5iZWUtbmV4dC1yYW5rIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbiAgdGV4dC13cmFwOiBiYWxhbmNlO1xufVxuXG4udXNlcy1wb2ludC1yYW5rcyAuYmVlLXNjb3JlLXN0cmlwIHtcbiAgbWluLWhlaWdodDogODBweDtcbiAgZ2FwOiAxcmVtO1xufVxuLnVzZXMtcG9pbnQtcmFua3MgLmJlZS1zY29yZS1sZWZ0IHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAwLjJyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cbi51c2VzLXBvaW50LXJhbmtzIC5iZWUtc2NvcmUtcmlnaHQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgZ2FwOiAwLjM1cmVtIDAuN3JlbTtcbn1cbi51c2VzLXBvaW50LXJhbmtzIC5iZWUtcmFuay1uYW1lIHtcbiAgZ3JpZC1jb2x1bW46IDE7XG4gIGdyaWQtcm93OiAxO1xufVxuLnVzZXMtcG9pbnQtcmFua3MgLmJlZS1yYW5rLXByb2dyZXNzLXRyYWNrIHtcbiAgZ3JpZC1jb2x1bW46IDI7XG4gIGdyaWQtcm93OiAxO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG4udXNlcy1wb2ludC1yYW5rcyAuYmVlLW5leHQtcmFuayB7XG4gIGdyaWQtY29sdW1uOiAxLy0xO1xuICBncmlkLXJvdzogMjtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb25uZWN0aW9ucy1wYWdlIHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMykgMCB2YXIoLS1zcGFjZS02KTtcbn1cbi5jb25uZWN0aW9ucy1wYWdlLmlzLW5hdGl2ZSB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDQ0cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCkgKyB2YXIoLS1zcGFjZS0yKSk7XG59XG5cbi5jb25uZWN0aW9ucy1wYW5lbCB7XG4gIG1heC13aWR0aDogODIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uY29ubmVjdGlvbnMtdG9hc3QtbGFuZSB7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5jb25uZWN0aW9ucy1tZXNzYWdlIHtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAwLjg2cmVtO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGN1YmljLWJlemllcigwLjM0LCAxLjU2LCAwLjY0LCAxKSwgb3BhY2l0eSAwLjE1cyBlYXNlO1xufVxuXG4uY29ubmVjdGlvbnMtbWVzc2FnZS5tZXNzYWdlLXdhcm5pbmcsXG4uY29ubmVjdGlvbnMtbWVzc2FnZS5tZXNzYWdlLXN1Y2Nlc3MsXG4uY29ubmVjdGlvbnMtbWVzc2FnZS5tZXNzYWdlLWVycm9yLFxuLmNvbm5lY3Rpb25zLW1lc3NhZ2UubWVzc2FnZS1pbmZvIHtcbiAgcGFkZGluZzogMC40cmVtIDAuNzVyZW07XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLmNvbm5lY3Rpb25zLW1lc3NhZ2UubWVzc2FnZS13YXJuaW5nIHtcbiAgY29sb3I6ICM4ZDRhMTA7XG4gIGJhY2tncm91bmQ6ICNmZmYxZDk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZmQ0YWE7XG59XG5cbi5jb25uZWN0aW9ucy1tZXNzYWdlLm1lc3NhZ2Utc3VjY2VzcyB7XG4gIGNvbG9yOiAjMjQ1ZDRhO1xuICBiYWNrZ3JvdW5kOiAjZTlmNmVmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmRkZmNmO1xufVxuXG4uY29ubmVjdGlvbnMtbWVzc2FnZS5tZXNzYWdlLWVycm9yIHtcbiAgY29sb3I6ICM4NzJmMmM7XG4gIGJhY2tncm91bmQ6ICNmZWU5ZTg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZmMwYmQ7XG59XG5cbi5jb25uZWN0aW9ucy1tZXNzYWdlLm1lc3NhZ2UtaW5mbyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbiAgYmFja2dyb3VuZDogI2YzZjBlYTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbn1cblxuLmNvbm5lY3Rpb25zLXNvbHZlZC1hcmVhIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cbi5jb25uZWN0aW9ucy1zb2x2ZWQtYXJlYTplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb25uZWN0aW9ucy1hdHRlbXB0cy1kb3RzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC40NXJlbTtcbn1cblxuLmNvbm5lY3Rpb25zLWRvdCB7XG4gIHdpZHRoOiA5cHg7XG4gIGhlaWdodDogOXB4O1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLCB0cmFuc2Zvcm0gMC4yNXMgZWFzZSwgb3BhY2l0eSAwLjI1cyBlYXNlO1xufVxuLmNvbm5lY3Rpb25zLWRvdC5pcy1maWxsZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci13YXJuaW5nKTtcbiAgYm94LXNoYWRvdzogMCAwIDZweCByZ2JhKDE5NCwgMTYwLCA3NywgMC4zKTtcbn1cbi5jb25uZWN0aW9ucy1kb3QuaXMtZW1wdHkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBvcGFjaXR5OiAwLjY7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC44NSk7XG59XG5cbi5jb25uZWN0aW9ucy1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDAsIDFmcikpO1xuICBnYXA6IDAuNnJlbTtcbn1cblxuLmNvbm5lY3Rpb25zLXRpbGUge1xuICBtaW4taGVpZ2h0OiA1NnB4O1xuICBwYWRkaW5nOiAwLjY1cmVtIDAuMzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGJvcmRlcjogMS41cHggc29saWQgI2U0ZDljYjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI2ZmZmZmZiAwJSwgI2Y5ZjVlZiAxMDAlKTtcbiAgYm94LXNoYWRvdzogMCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSBpbnNldCwgMCAycHggNHB4IHJnYmEoNDQsIDMxLCAxOCwgMC4wNiksIDAgNHB4IDhweCByZ2JhKDQ0LCAzMSwgMTgsIDAuMDQpO1xuICBmb250LXNpemU6IGNsYW1wKDAuNnJlbSwgMXJlbSAtIHZhcigtLWNoYXItY291bnQsIDYpICogMC4wMjZyZW0sIDAuOXJlbSk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMmEyMzFhO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICBoeXBoZW5zOiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuMzQsIDEuNTYsIDAuNjQsIDEpLCBib3gtc2hhZG93IDAuMTVzIGVhc2UsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLCBiYWNrZ3JvdW5kIDAuMTVzIGVhc2U7XG59XG5cbi5jb25uZWN0aW9ucy10aWxlOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZDBjMWFlO1xuICBib3gtc2hhZG93OiAwIDFweCAwIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpIGluc2V0LCAwIDNweCA4cHggcmdiYSg0NCwgMzEsIDE4LCAwLjA5KSwgMCA1cHggMTJweCByZ2JhKDQ0LCAzMSwgMTgsIDAuMDUpO1xufVxuXG4uY29ubmVjdGlvbnMtdGlsZTphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTcpO1xuICBib3JkZXItY29sb3I6ICNjNWFmOTI7XG59XG5cbi5jb25uZWN0aW9ucy10aWxlOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAycHggc29saWQgcmdiYSgxOTQsIDE2MCwgNzcsIDAuNDgpO1xuICBvdXRsaW5lLW9mZnNldDogMXB4O1xufVxuXG4uY29ubmVjdGlvbnMtdGlsZS5pcy1zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNmNWU2YzggMCUsICNlYmRhYmMgMTAwJSk7XG4gIGJvcmRlci1jb2xvcjogI2M0YTQ2MDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMi41cHggcmdiYSgxOTQsIDE2MCwgNzcsIDAuMjUpLCAwIDFweCAwIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIGluc2V0LCAwIDRweCAxMnB4IHJnYmEoNDQsIDMxLCAxOCwgMC4xMik7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIGNvbG9yOiAjM2EyYTE0O1xufVxuXG4uY29ubmVjdGlvbnMtdGlsZS5pcy1lbnRlcmluZyB7XG4gIGFuaW1hdGlvbjogY29ubmVjdGlvbnMtdGlsZS1pbiAwLjNzIGN1YmljLWJlemllcigwLjM0LCAxLjU2LCAwLjY0LCAxKSBib3RoO1xufVxuXG4uY29ubmVjdGlvbnMtdGlsZS5pcy1zaGFraW5nIHtcbiAgYW5pbWF0aW9uOiBjb25uZWN0aW9ucy1zaGFrZSAwLjRzIGVhc2U7XG59XG5cbi5jb25uZWN0aW9ucy10aWxlLmlzLXB1bHNpbmcge1xuICBhbmltYXRpb246IGNvbm5lY3Rpb25zLXB1bHNlIDAuMzJzIGVhc2U7XG59XG5cbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgYm90dG9tOiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArIDhweCk7XG4gIHotaW5kZXg6IDE1O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI0NywgMjQzLCAyMzgsIDAuOTIpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICBib3gtc2hhZG93OiAwIC0ycHggMTZweCByZ2JhKDQyLCAzMiwgMjAsIDAuMDUpLCAwIDhweCAyNHB4IHJnYmEoNDIsIDMyLCAyMCwgMC4xKTtcbiAgcGFkZGluZzogMC41NXJlbTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0NHB4IDFmciA0NHB4O1xuICBnYXA6IDAuNTVyZW07XG59XG5cbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4sIC5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tc3VjY2VzcywgLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi13YXJuaW5nLCAuY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLWRhbmdlciwgLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi1pbmZvLCAuY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtcHJpbWFyeSxcbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tb3V0bGluZS1zZWNvbmRhcnksXG4uY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtc3VjY2Vzcyxcbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tb3V0bGluZS1kYW5nZXIsXG4uY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtd2FybmluZyxcbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tb3V0bGluZS1pbmZvIHtcbiAgbWluLWhlaWdodDogNDRweDtcbn1cblxuLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi1wcmltYXJ5Om5vdChbZGlzYWJsZWRdKSB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDEycHggcmdiYSg2MywgMTA3LCA5MSwgMC4zKTtcbn1cblxuLmNvbm5lY3Rpb25zLWljb24tYnRuIHtcbiAgd2lkdGg6IDQ0cHg7XG4gIG1pbi13aWR0aDogNDRweDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uY29ubmVjdGlvbnMtY2xlYXItYnRuIHtcbiAgbWluLWhlaWdodDogNDRweDtcbiAgbWluLXdpZHRoOiA0NHB4O1xuICBmb250LXNpemU6IDFyZW07XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jb25uZWN0aW9ucy1jbGVhci1idG46Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCByZ2JhKDYzLCAxMDcsIDkxLCAwLjM1KTtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuXG4uY29ubmVjdGlvbnMtc29sdmVkLFxuLmNvbm5lY3Rpb25zLXJldmVhbC1yb3cge1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBwYWRkaW5nOiAwLjg1cmVtIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiAwIDRweCAxMHB4IHJnYmEoMzUsIDI0LCAxNCwgMC4wNik7XG59XG5cbi5jb25uZWN0aW9ucy1zb2x2ZWQge1xuICBhbmltYXRpb246IGNvbm5lY3Rpb25zLXNvbHZlZC1pbiAwLjM1cyBjdWJpYy1iZXppZXIoMC4zNCwgMS41NiwgMC42NCwgMSkgYm90aDtcbn1cblxuLmNvbm5lY3Rpb25zLXNvbHZlZC1oZWFkZXIsXG4uY29ubmVjdGlvbnMtcmV2ZWFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbiAgbWFyZ2luLWJvdHRvbTogMC40NXJlbTtcbn1cblxuLmNvbm5lY3Rpb25zLWNhdGVnb3J5IHtcbiAgZm9udC1zaXplOiAwLjg2cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uY29ubmVjdGlvbnMtZGlmZmljdWx0eS1waWxsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC4zNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIHBhZGRpbmc6IDAuMnJlbSAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC43cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xufVxuXG4uY29ubmVjdGlvbnMtZGlmZmljdWx0eS1waWxsOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogNnB4O1xuICBoZWlnaHQ6IDZweDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbn1cblxuLmNvbm5lY3Rpb25zLXdvcmRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDAuNHJlbTtcbn1cblxuLmNvbm5lY3Rpb25zLXdvcmQtY2hpcCB7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBwYWRkaW5nOiAwLjJyZW0gMC40NXJlbTtcbiAgZm9udC1zaXplOiAwLjc0cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNTUpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIGNvbG9yOiAjM2EzMDI0O1xufVxuXG4uY29ubmVjdGlvbnMtcmV2ZWFsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmNvbm5lY3Rpb25zLXJldmVhbC5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogZ3JpZDtcbn1cblxuLmRpZmZpY3VsdHkteWVsbG93IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgyNDcsIDIyMywgMTMyLCAwLjQ1KSAwJSwgcmdiYSgyNDAsIDIxMCwgMTAwLCAwLjMpIDEwMCUpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMTk0LCAxNjAsIDc3LCAwLjQ1KTtcbn1cblxuLmNvbm5lY3Rpb25zLWRpZmZpY3VsdHkteWVsbG93IHtcbiAgY29sb3I6ICM3ZTY0MGY7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjQ3LCAyMjMsIDEzMiwgMC41KTtcbn1cblxuLmRpZmZpY3VsdHktZ3JlZW4ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDE2OCwgMjA1LCAxODUsIDAuNDUpIDAlLCByZ2JhKDE0MCwgMTkwLCAxNjUsIDAuMykgMTAwJSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSg3OSwgMTIyLCAxMDQsIDAuNCk7XG59XG5cbi5jb25uZWN0aW9ucy1kaWZmaWN1bHR5LWdyZWVuIHtcbiAgY29sb3I6ICMyNDVhNDU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTY4LCAyMDUsIDE4NSwgMC41KTtcbn1cblxuLmRpZmZpY3VsdHktYmx1ZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoMTYwLCAxODYsIDIxNSwgMC40NSkgMCUsIHJnYmEoMTQwLCAxNzAsIDIwNSwgMC4zKSAxMDAlKTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDExMSwgMTM4LCAxNjUsIDAuNCk7XG59XG5cbi5jb25uZWN0aW9ucy1kaWZmaWN1bHR5LWJsdWUge1xuICBjb2xvcjogIzI0NGY3OTtcbiAgYmFja2dyb3VuZDogcmdiYSgxNjAsIDE4NiwgMjE1LCAwLjUpO1xufVxuXG4uZGlmZmljdWx0eS1wdXJwbGUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDE5NiwgMTc1LCAyMTQsIDAuNDUpIDAlLCByZ2JhKDE4MCwgMTU1LCAyMDAsIDAuMykgMTAwJSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgxMzAsIDEwNiwgMTYyLCAwLjQpO1xufVxuXG4uY29ubmVjdGlvbnMtZGlmZmljdWx0eS1wdXJwbGUge1xuICBjb2xvcjogIzViM2Y3ZTtcbiAgYmFja2dyb3VuZDogcmdiYSgxOTYsIDE3NSwgMjE0LCAwLjU1KTtcbn1cblxuQGtleWZyYW1lcyBjb25uZWN0aW9ucy10aWxlLWluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpIHRyYW5zbGF0ZVkoOHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBjb25uZWN0aW9ucy1zb2x2ZWQtaW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCkgc2NhbGUoMC45Nik7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgY29ubmVjdGlvbnMtc2hha2Uge1xuICAwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApIHJvdGF0ZSgwKTtcbiAgfVxuICAxNSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KSByb3RhdGUoLTFkZWcpO1xuICB9XG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCkgcm90YXRlKDAuNWRlZyk7XG4gIH1cbiAgNDUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlKC0wLjVkZWcpO1xuICB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlKDAuM2RlZyk7XG4gIH1cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTFweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgY29ubmVjdGlvbnMtcHVsc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7XG4gIH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuY29ubmVjdGlvbnMtcGFnZSAuYXBwLWNvbnRhaW5lciwgLmNvbm5lY3Rpb25zLXBhZ2UgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCAxNnB4O1xuICB9XG4gIC5jb25uZWN0aW9ucy1ncmlkIHtcbiAgICBnYXA6IDAuNDVyZW07XG4gIH1cbiAgLmNvbm5lY3Rpb25zLXRpbGUge1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgcGFkZGluZzogMC41NXJlbSAwLjI1cmVtO1xuICB9XG59XG5ib2R5OmhhcyguY29ubmVjdGlvbnMtcGFnZSkge1xuICAtLWNvbm5lY3Rpb25zLWluazogIzBiMGIwYTtcbiAgLS1jb25uZWN0aW9ucy1wYXBlcjogI2ZmZmRmODtcbiAgLS1jb25uZWN0aW9ucy1zb2Z0OiAjZjRmMGU4O1xuICAtLWNvbm5lY3Rpb25zLWxpbmU6IHJnYmEoMTEsIDExLCAxMCwgMC4xOCk7XG4gIC0tY29ubmVjdGlvbnMtbXV0ZWQ6ICM1YjU2NTA7XG4gIC0tY29ubmVjdGlvbnMtbWludDogIzY3YjI4YjtcbiAgLS1jb25uZWN0aW9ucy1taW50LXNvZnQ6ICNkZmVlZTU7XG4gIC0tY29ubmVjdGlvbnMteWVsbG93OiAjZjRjZjRmO1xuICAtLWNvbm5lY3Rpb25zLXllbGxvdy1zb2Z0OiAjZmZmMGI5O1xuICAtLWNvbm5lY3Rpb25zLWxhdmVuZGVyOiAjOTI3NmM4O1xuICAtLWNvbm5lY3Rpb25zLWxhdmVuZGVyLXNvZnQ6ICNlY2U1ZjU7XG4gIC0tY29ubmVjdGlvbnMtcm9zZTogI2Q1OGE4OTtcbiAgLS1jb25uZWN0aW9ucy1yb3NlLXNvZnQ6ICNmM2RhZGE7XG4gIC0tY29ubmVjdGlvbnMtYmx1ZTogIzkxYjlkZjtcbiAgLS1jb25uZWN0aW9ucy1ibHVlLXNvZnQ6ICNkZmVhZjQ7XG4gIGNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb25uZWN0aW9ucy1wYXBlcik7XG59XG5cbmJvZHk6aGFzKC5jb25uZWN0aW9ucy1wYWdlKSAuYXBwLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTMsIDI0OCwgMC45Mik7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb25uZWN0aW9ucy1saW5lKTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE4cHgpO1xufVxuXG5ib2R5OmhhcyguY29ubmVjdGlvbnMtcGFnZSkgLmFwcC1icmFuZCxcbmJvZHk6aGFzKC5jb25uZWN0aW9ucy1wYWdlKSAubmF2LWxpbmsge1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbn1cblxuYm9keTpoYXMoLmNvbm5lY3Rpb25zLXBhZ2UpIC50ZXh0LWdyYWRpZW50IHtcbiAgY29sb3I6IHZhcigtLWNvbm5lY3Rpb25zLWluayk7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi5jb25uZWN0aW9ucy1wYWdlIHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtNCkgMCBjYWxjKHZhcigtLXNwYWNlLTcpICsgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCksIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMTEsIDExLCAxMCwgMC4wMjUpIDFweCwgdHJhbnNwYXJlbnQgMXB4KSwgdmFyKC0tY29ubmVjdGlvbnMtcGFwZXIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMzRweDtcbn1cblxuLmNvbm5lY3Rpb25zLXBhZ2UuaXMtbmF0aXZlIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoNDRweCArIGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKSArIHZhcigtLXNwYWNlLTIpKTtcbn1cblxuLmNvbm5lY3Rpb25zLXBhZ2UgLmFwcC1jb250YWluZXIsIC5jb25uZWN0aW9ucy1wYWdlIC5jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDc2MHB4O1xufVxuXG4uY29ubmVjdGlvbnMtcGFuZWwge1xuICBtYXgtd2lkdGg6IDcyMHB4O1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmNvbm5lY3Rpb25zLXRvYXN0LWxhbmUge1xuICBtaW4taGVpZ2h0OiAzNHB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmNvbm5lY3Rpb25zLW1lc3NhZ2Uge1xuICBtaW4taGVpZ2h0OiAzMnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiAwLjc4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmNvbm5lY3Rpb25zLW1lc3NhZ2UubWVzc2FnZS13YXJuaW5nLFxuLmNvbm5lY3Rpb25zLW1lc3NhZ2UubWVzc2FnZS1zdWNjZXNzLFxuLmNvbm5lY3Rpb25zLW1lc3NhZ2UubWVzc2FnZS1lcnJvcixcbi5jb25uZWN0aW9ucy1tZXNzYWdlLm1lc3NhZ2UtaW5mbyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwYWRkaW5nOiAwIDAuOXJlbTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1saW5lKTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLWNvbm5lY3Rpb25zLWluayk7XG4gIGJveC1zaGFkb3c6IDAgOHB4IDIwcHggcmdiYSgxMSwgMTEsIDEwLCAwLjA1KTtcbn1cblxuLmNvbm5lY3Rpb25zLW1lc3NhZ2UubWVzc2FnZS1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMtbWludC1zb2Z0KTtcbn1cblxuLmNvbm5lY3Rpb25zLW1lc3NhZ2UubWVzc2FnZS13YXJuaW5nLFxuLmNvbm5lY3Rpb25zLW1lc3NhZ2UubWVzc2FnZS1pbmZvIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMteWVsbG93LXNvZnQpO1xufVxuXG4uY29ubmVjdGlvbnMtbWVzc2FnZS5tZXNzYWdlLWVycm9yIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMtcm9zZS1zb2Z0KTtcbn1cblxuLmNvbm5lY3Rpb25zLXNvbHZlZC1hcmVhIHtcbiAgZ2FwOiAwLjY1cmVtO1xufVxuXG4uY29ubmVjdGlvbnMtYXR0ZW1wdHMtZG90cyB7XG4gIGdhcDogMC41cmVtO1xuICBtaW4taGVpZ2h0OiAyMHB4O1xufVxuXG4uY29ubmVjdGlvbnMtZG90IHtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29ubmVjdGlvbnMtbGluZSk7XG59XG5cbi5jb25uZWN0aW9ucy1kb3QuaXMtZmlsbGVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMteWVsbG93KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmNvbm5lY3Rpb25zLWRvdC5pcy1lbXB0eSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLmNvbm5lY3Rpb25zLWdyaWQge1xuICBnYXA6IDAuN3JlbTtcbn1cblxuLmNvbm5lY3Rpb25zLXRpbGUge1xuICBtaW4taGVpZ2h0OiA2OHB4O1xuICBwYWRkaW5nOiAwLjcycmVtIDAuNDVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbm5lY3Rpb25zLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtc2Fucyk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMC42MnJlbSwgMS4wM3JlbSAtIHZhcigtLWNoYXItY291bnQsIDYpICogMC4wMjdyZW0sIDAuOTJyZW0pO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuICBib3gtc2hhZG93OiAwIDVweCAwIHJnYmEoMTEsIDExLCAxMCwgMC4xKTtcbn1cblxuLmNvbm5lY3Rpb25zLXRpbGU6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbm5lY3Rpb25zLWluayk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLXNvZnQpO1xuICBib3gtc2hhZG93OiAwIDZweCAwIHJnYmEoMTEsIDExLCAxMCwgMC4xKTtcbn1cblxuLmNvbm5lY3Rpb25zLXRpbGU6YWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTtcbiAgYm94LXNoYWRvdzogMCAycHggMCByZ2JhKDExLCAxMSwgMTAsIDAuMTIpO1xufVxuXG4uY29ubmVjdGlvbnMtdGlsZTpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkIHJnYmEoMTAzLCAxNzgsIDEzOSwgMC4zNCk7XG4gIG91dGxpbmUtb2Zmc2V0OiAycHg7XG59XG5cbi5jb25uZWN0aW9ucy10aWxlLmlzLXNlbGVjdGVkIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb25uZWN0aW9ucy15ZWxsb3cpO1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgYm94LXNoYWRvdzogMCA1cHggMCByZ2JhKDExLCAxMSwgMTAsIDAuMTYpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG59XG5cbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIHtcbiAgYm90dG9tOiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArIDhweCk7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDZweCAxZnIgNDZweDtcbiAgZ2FwOiAwLjU1cmVtO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0yKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29ubmVjdGlvbnMtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDIycHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTMsIDI0OCwgMC45NCk7XG4gIGJveC1zaGFkb3c6IDAgMThweCA0MnB4IHJnYmEoMTEsIDExLCAxMCwgMC4xMik7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxOHB4KTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMThweCk7XG59XG5cbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4sIC5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tc3VjY2VzcywgLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi13YXJuaW5nLCAuY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLWRhbmdlciwgLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi1pbmZvLCAuY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtcHJpbWFyeSxcbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tb3V0bGluZS1zZWNvbmRhcnksXG4uY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtc3VjY2Vzcyxcbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tb3V0bGluZS1kYW5nZXIsXG4uY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtd2FybmluZyxcbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tb3V0bGluZS1pbmZvIHtcbiAgbWluLWhlaWdodDogNDZweDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tb3V0bGluZSwgLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi1vdXRsaW5lLXByaW1hcnksXG4uY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LFxuLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsXG4uY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtZGFuZ2VyLFxuLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi1vdXRsaW5lLXdhcm5pbmcsXG4uY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtaW5mbyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbm5lY3Rpb25zLWxpbmUpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbn1cblxuLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi1vdXRsaW5lOmhvdmVyLCAuY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtcHJpbWFyeTpob3Zlcixcbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6aG92ZXIsXG4uY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtc3VjY2Vzczpob3Zlcixcbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tb3V0bGluZS1kYW5nZXI6aG92ZXIsXG4uY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtd2FybmluZzpob3Zlcixcbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tb3V0bGluZS1pbmZvOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb25uZWN0aW9ucy1zb2Z0KTtcbn1cblxuLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi1wcmltYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tcHJpbWFyeTpub3QoW2Rpc2FibGVkXSkge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLXByaW1hcnk6ZGlzYWJsZWQge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbm5lY3Rpb25zLWxpbmUpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtbXV0ZWQpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uY29ubmVjdGlvbnMtaWNvbi1idG4sXG4uY29ubmVjdGlvbnMtY2xlYXItYnRuIHtcbiAgd2lkdGg6IDQ2cHg7XG4gIG1pbi13aWR0aDogNDZweDtcbiAgbWluLWhlaWdodDogNDZweDtcbiAgcGFkZGluZzogMDtcbn1cblxuLmNvbm5lY3Rpb25zLXNvbHZlZCxcbi5jb25uZWN0aW9ucy1yZXZlYWwtcm93IHtcbiAgcGFkZGluZzogMC45cmVtIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbm5lY3Rpb25zLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDI0cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA3KTtcbn1cblxuLmNvbm5lY3Rpb25zLXNvbHZlZC1oZWFkZXIsXG4uY29ubmVjdGlvbnMtcmV2ZWFsLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDAuNTVyZW07XG59XG5cbi5jb25uZWN0aW9ucy1jYXRlZ29yeSB7XG4gIGNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbn1cblxuLmNvbm5lY3Rpb25zLWRpZmZpY3VsdHktcGlsbCB7XG4gIG1pbi1oZWlnaHQ6IDI2cHg7XG4gIHBhZGRpbmc6IDAgMC42MnJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMSwgMTEsIDEwLCAwLjE0KTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLWNvbm5lY3Rpb25zLWluayk7XG4gIGZvbnQtc2l6ZTogMC42NHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG59XG5cbi5jb25uZWN0aW9ucy13b3JkLWNoaXAge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDExLCAxMSwgMTAsIDAuMTIpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIGNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICBmb250LXNpemU6IDAuNzRyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5kaWZmaWN1bHR5LXllbGxvdyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLXllbGxvdy1zb2Z0KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDExLCAxMSwgMTAsIDAuMTgpO1xufVxuXG4uY29ubmVjdGlvbnMtZGlmZmljdWx0eS15ZWxsb3cge1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMteWVsbG93KTtcbn1cblxuLmRpZmZpY3VsdHktZ3JlZW4ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb25uZWN0aW9ucy1taW50LXNvZnQpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMTEsIDExLCAxMCwgMC4xOCk7XG59XG5cbi5jb25uZWN0aW9ucy1kaWZmaWN1bHR5LWdyZWVuIHtcbiAgY29sb3I6IHZhcigtLWNvbm5lY3Rpb25zLWluayk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLW1pbnQpO1xufVxuXG4uZGlmZmljdWx0eS1ibHVlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMtYmx1ZS1zb2Z0KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDExLCAxMSwgMTAsIDAuMTgpO1xufVxuXG4uY29ubmVjdGlvbnMtZGlmZmljdWx0eS1ibHVlIHtcbiAgY29sb3I6IHZhcigtLWNvbm5lY3Rpb25zLWluayk7XG4gIGJhY2tncm91bmQ6ICNiZWQzZTc7XG59XG5cbi5kaWZmaWN1bHR5LXB1cnBsZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLWxhdmVuZGVyLXNvZnQpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMTEsIDExLCAxMCwgMC4xOCk7XG59XG5cbi5jb25uZWN0aW9ucy1kaWZmaWN1bHR5LXB1cnBsZSB7XG4gIGNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICBiYWNrZ3JvdW5kOiAjZDhjYmVkO1xufVxuXG4uY29ubmVjdGlvbnMtbW9kYWwgLm1vZGFsX19kaWFsb2cge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXgtd2lkdGg6IDQ2MHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb25uZWN0aW9ucy1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMtcGFwZXIpO1xuICBib3gtc2hhZG93OiAwIDI0cHggNThweCByZ2JhKDExLCAxMSwgMTAsIDAuMTgpO1xufVxuXG4uY29ubmVjdGlvbnMtbW9kYWwgLm1vZGFsX19oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29ubmVjdGlvbnMtbGluZSk7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5jb25uZWN0aW9ucy1tb2RhbCAubW9kYWxfX3RpdGxlIHtcbiAgY29sb3I6IHZhcigtLWNvbm5lY3Rpb25zLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uY29ubmVjdGlvbnMtbW9kYWwgLm1vZGFsX19ib2R5IHtcbiAgY29sb3I6IHZhcigtLWNvbm5lY3Rpb25zLWluayk7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5cbi5jb25uZWN0aW9ucy1tb2RhbCAuYnRuLW91dGxpbmUsIC5jb25uZWN0aW9ucy1tb2RhbCAuYnRuLW91dGxpbmUtcHJpbWFyeSxcbi5jb25uZWN0aW9ucy1tb2RhbCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LFxuLmNvbm5lY3Rpb25zLW1vZGFsIC5idG4tb3V0bGluZS1zdWNjZXNzLFxuLmNvbm5lY3Rpb25zLW1vZGFsIC5idG4tb3V0bGluZS1kYW5nZXIsXG4uY29ubmVjdGlvbnMtbW9kYWwgLmJ0bi1vdXRsaW5lLXdhcm5pbmcsXG4uY29ubmVjdGlvbnMtbW9kYWwgLmJ0bi1vdXRsaW5lLWluZm8ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbm5lY3Rpb25zLWxpbmUpO1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbn1cblxuLmNvbm5lY3Rpb25zLW1vZGFsIC5idG4tcHJpbWFyeSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5jb25uZWN0aW9ucy1wYWdlLmlzLWNvbXBsZXRlZC1kZXRhaWwge1xuICBwYWRkaW5nLXRvcDogY2xhbXAoMXJlbSwgM3Z3LCAycmVtKTtcbn1cblxuLmNvbm5lY3Rpb25zLXBhZ2UuaXMtY29tcGxldGVkLWRldGFpbCAuYXBwLWNvbnRhaW5lciwgLmNvbm5lY3Rpb25zLXBhZ2UuaXMtY29tcGxldGVkLWRldGFpbCAuY29udGFpbmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgbWF4LXdpZHRoOiA4ODBweDtcbiAgZ2FwOiBjbGFtcCgxcmVtLCAyLjZ2dywgMS40NXJlbSk7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtaGVybyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgYXV0bztcbiAgYWxpZ24taXRlbXM6IGVuZDtcbiAgZ2FwOiBjbGFtcCgxcmVtLCA0dncsIDJyZW0pO1xuICBwYWRkaW5nOiBjbGFtcCgxcmVtLCAzdncsIDEuNHJlbSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbm5lY3Rpb25zLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAyNnB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjUzLCAyNDgsIDAuOTIpO1xuICBib3gtc2hhZG93OiAwIDIycHggNDZweCByZ2JhKDExLCAxMSwgMTAsIDAuMDgpO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLXRpdGxlLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1pbi13aWR0aDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiBjbGFtcCgwLjhyZW0sIDIuNnZ3LCAxLjFyZW0pO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLWljb24ge1xuICB3aWR0aDogY2xhbXAoNThweCwgOXZ3LCA3NnB4KTtcbiAgaGVpZ2h0OiBjbGFtcCg1OHB4LCA5dncsIDc2cHgpO1xuICBmbGV4OiAwIDAgYXV0bztcbiAgcGFkZGluZzogMC42cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb25uZWN0aW9ucy1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMtbGF2ZW5kZXItc29mdCk7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgyLjhyZW0sIDcuNHZ3LCA0LjY1cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjk7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtdGl0bGUgc3BhbiB7XG4gIGNvbG9yOiAjNzhkMmM5O1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLW1ldGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMC41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjdyZW07XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtcGlsbCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtaW4taGVpZ2h0OiAzNHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAwLjlyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbm5lY3Rpb25zLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMtbGF2ZW5kZXItc29mdCk7XG4gIGNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICBmb250LXNpemU6IDAuNzZyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLXBpbGwuaXMtZGF0ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtY291bnQtY2FyZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIG1pbi13aWR0aDogMTkwcHg7XG4gIGdhcDogMC40NXJlbTtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtIDEuMTVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTEsIDExLCAxMCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogMjJweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMteWVsbG93LXNvZnQpO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLWV5ZWJyb3cge1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuNjZyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE2ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtY291bnQtY2FyZCBzdHJvbmcge1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMnJlbSwgNXZ3LCAzcmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtb3ZlcnZpZXctY2FyZCB7XG4gIHBhZGRpbmc6IGNsYW1wKDFyZW0sIDN2dywgMS4zNXJlbSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbm5lY3Rpb25zLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAyNnB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDE2cHggMzRweCByZ2JhKDExLCAxMSwgMTAsIDAuMDcpO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLWdyb3VwLW1ldGVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDAsIDFmcikpO1xuICBnYXA6IDAuNzVyZW07XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtbWV0ZXItY2VsbCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIG1pbi1oZWlnaHQ6IDc2cHg7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuOHJlbSAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbm5lY3Rpb25zLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgZm9udC1zaXplOiAwLjc4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtbWV0ZXItY2VsbC5pcy1taXNzZWQge1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtbXV0ZWQpO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLW1ldGVyLWNlbGwuY2F0LTEuaXMtbWlzc2VkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMteWVsbG93LXNvZnQpO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLW1ldGVyLWNlbGwuY2F0LTIuaXMtbWlzc2VkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMtbWludC1zb2Z0KTtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1tZXRlci1jZWxsLmNhdC0zLmlzLW1pc3NlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLWJsdWUtc29mdCk7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtbWV0ZXItY2VsbC5jYXQtNC5pcy1taXNzZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb25uZWN0aW9ucy1sYXZlbmRlci1zb2Z0KTtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1tZXRlci1jZWxsLmNhdC0xLmlzLXNvbHZlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLXllbGxvdyk7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtbWV0ZXItY2VsbC5jYXQtMi5pcy1zb2x2ZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb25uZWN0aW9ucy1taW50KTtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1tZXRlci1jZWxsLmNhdC0zLmlzLXNvbHZlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLWJsdWUpO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLW1ldGVyLWNlbGwuY2F0LTQuaXMtc29sdmVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMtbGF2ZW5kZXIpO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLW1ldGVyLWNlbGwuaXMtc29sdmVkIHtcbiAgY29sb3I6IHZhcigtLWNvbm5lY3Rpb25zLWluayk7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtc3RhdHMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCBtaW5tYXgoMCwgMWZyKSk7XG4gIGdhcDogMC43NXJlbTtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1zdGF0IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgbWluLWhlaWdodDogOTRweDtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC4zNXJlbTtcbiAgcGFkZGluZzogMC44NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29ubmVjdGlvbnMtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1zdGF0LmlzLXhwIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMteWVsbG93LXNvZnQpO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLXN0YXQgLnN1bW1hcnktbGFiZWwge1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuNjhyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjE0ZW07XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtc3RhdCAuc3VtbWFyeS12YWx1ZSB7XG4gIGNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICBmb250LXNpemU6IGNsYW1wKDEuMnJlbSwgM3Z3LCAxLjc1cmVtKTtcbiAgbGluZS1oZWlnaHQ6IDEuMDU7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtY2FyZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogMXJlbTtcbiAgcGFkZGluZzogY2xhbXAoMXJlbSwgM3Z3LCAxLjM1cmVtKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29ubmVjdGlvbnMtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDI2cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMTZweCAzNHB4IHJnYmEoMTEsIDExLCAxMCwgMC4wNyk7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtc2VjdGlvbi1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogMXJlbTtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1zZWN0aW9uLWhlYWRlciBoMiB7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMC4xOHJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMC4yOHJlbSBzb2xpZCAjNzhkMmM5O1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMS42cmVtLCA0dncsIDIuMTVyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtc2VjdGlvbi1oZWFkZXIgPiBzcGFuIHtcbiAgbWluLWhlaWdodDogMzRweDtcbiAgcGFkZGluZzogMCAwLjc4cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb25uZWN0aW9ucy1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLWxhdmVuZGVyLXNvZnQpO1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgZm9udC1zaXplOiAwLjc4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMzRweDtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1ncm91cHMge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDAuODVyZW07XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtZ3JvdXAge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDAuODVyZW07XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbm5lY3Rpb25zLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1ncm91cC5kaWZmaWN1bHR5LXllbGxvdy5pcy1taXNzZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb25uZWN0aW9ucy15ZWxsb3ctc29mdCk7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtZ3JvdXAuZGlmZmljdWx0eS1ncmVlbi5pcy1taXNzZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb25uZWN0aW9ucy1taW50LXNvZnQpO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLWdyb3VwLmRpZmZpY3VsdHktYmx1ZS5pcy1taXNzZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb25uZWN0aW9ucy1ibHVlLXNvZnQpO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLWdyb3VwLmRpZmZpY3VsdHktcHVycGxlLmlzLW1pc3NlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLWxhdmVuZGVyLXNvZnQpO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLWdyb3VwLmRpZmZpY3VsdHkteWVsbG93LmlzLXNvbHZlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLXllbGxvdyk7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtZ3JvdXAuZGlmZmljdWx0eS1ncmVlbi5pcy1zb2x2ZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb25uZWN0aW9ucy1taW50KTtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1ncm91cC5kaWZmaWN1bHR5LWJsdWUuaXMtc29sdmVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMtYmx1ZSk7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtZ3JvdXAuZGlmZmljdWx0eS1wdXJwbGUuaXMtc29sdmVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29ubmVjdGlvbnMtbGF2ZW5kZXIpO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLWdyb3VwLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogMXJlbTtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1ncm91cC1oZWFkZXIgaDMge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjM1cmVtLCAzdncsIDEuNzVyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtZ3JvdXAtc3RhdHVzLFxuLmNvbm5lY3Rpb25zLWRldGFpbC1kaWZmaWN1bHR5IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1pbi1oZWlnaHQ6IDI4cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMC42NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMSwgMTEsIDEwLCAwLjE2KTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43Mik7XG4gIGNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICBmb250LXNpemU6IDAuNjRyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uY29ubmVjdGlvbnMtZGV0YWlsLXdvcmRzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDAsIDFmcikpO1xuICBnYXA6IDAuNTVyZW07XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtd29yZHMgc3BhbiB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIG1pbi1oZWlnaHQ6IDQ2cHg7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjM1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDExLCAxMSwgMTAsIDAuMTQpO1xuICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgZm9udC1zaXplOiBjbGFtcCgwLjYycmVtLCAydncsIDAuNzhyZW0pO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1hY3Rpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMnJlbSAwIDAuNnJlbTtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1kb25lLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHdpZHRoOiBtaW4oNzglLCAzMTBweCk7XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwLjU1cmVtIDMuNHJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29ubmVjdGlvbnMtaW5rKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLWluayk7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDAuOThyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmNvbm5lY3Rpb25zLWRldGFpbC1kb25lLWJ0biBzcGFuOmxhc3QtY2hpbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMC4zNnJlbTtcbiAgd2lkdGg6IDM4cHg7XG4gIGhlaWdodDogMzhweDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLXllbGxvdyk7XG4gIGNvbG9yOiB2YXIoLS1jb25uZWN0aW9ucy1pbmspO1xuICBmb250LXNpemU6IDEuMThyZW07XG59XG5cbi5jb25uZWN0aW9ucy1kZXRhaWwtZG9uZS1idG46aG92ZXIsXG4uY29ubmVjdGlvbnMtZGV0YWlsLWRvbmUtYnRuOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbm5lY3Rpb25zLWluayk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmNvbm5lY3Rpb25zLXBhZ2Uge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpIDAgY2FsYyg2cmVtICsgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pKTtcbiAgfVxuICAuY29ubmVjdGlvbnMtcGFnZSAuYXBwLWNvbnRhaW5lciwgLmNvbm5lY3Rpb25zLXBhZ2UgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0zKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0zKTtcbiAgfVxuICAuY29ubmVjdGlvbnMtcGFuZWwge1xuICAgIGdhcDogdmFyKC0tc3BhY2UtMik7XG4gIH1cbiAgLmNvbm5lY3Rpb25zLXRvYXN0LWxhbmUge1xuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XG4gIH1cbiAgLmNvbm5lY3Rpb25zLWdyaWQge1xuICAgIGdhcDogMC40NXJlbTtcbiAgfVxuICAuY29ubmVjdGlvbnMtdGlsZSB7XG4gICAgbWluLWhlaWdodDogNThweDtcbiAgICBwYWRkaW5nOiAwLjU4cmVtIDAuMjhyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICBmb250LXNpemU6IGNsYW1wKDAuNTRyZW0sIDAuOTJyZW0gLSB2YXIoLS1jaGFyLWNvdW50LCA2KSAqIDAuMDIzcmVtLCAwLjc4cmVtKTtcbiAgICBib3gtc2hhZG93OiAwIDNweCAwIHJnYmEoMTEsIDExLCAxMCwgMC4xKTtcbiAgfVxuICAuY29ubmVjdGlvbnMtdGlsZS5pcy1zZWxlY3RlZCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuICAgIGJveC1zaGFkb3c6IDAgM3B4IDAgcmdiYSgxMSwgMTEsIDEwLCAwLjE2KTtcbiAgfVxuICAuY29ubmVjdGlvbnMtc29sdmVkLFxuICAuY29ubmVjdGlvbnMtcmV2ZWFsLXJvdyB7XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICB9XG4gIC5jb25uZWN0aW9ucy1jYXRlZ29yeSB7XG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xuICB9XG4gIC5jb25uZWN0aW9ucy13b3JkLWNoaXAge1xuICAgIGZvbnQtc2l6ZTogMC42OHJlbTtcbiAgfVxuICAuY29ubmVjdGlvbnMtc3RpY2t5LWJhciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0MnB4IDFmciA0MnB4O1xuICAgIGdhcDogMC40NXJlbTtcbiAgICBwYWRkaW5nOiAwLjU1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIH1cbiAgLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0biwgLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi1zdWNjZXNzLCAuY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLXdhcm5pbmcsIC5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tZGFuZ2VyLCAuY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLWluZm8sIC5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tb3V0bGluZS1wcmltYXJ5LFxuICAuY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LFxuICAuY29ubmVjdGlvbnMtc3RpY2t5LWJhciAuYnRuLW91dGxpbmUtc3VjY2VzcyxcbiAgLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi1vdXRsaW5lLWRhbmdlcixcbiAgLmNvbm5lY3Rpb25zLXN0aWNreS1iYXIgLmJ0bi1vdXRsaW5lLXdhcm5pbmcsXG4gIC5jb25uZWN0aW9ucy1zdGlja3ktYmFyIC5idG4tb3V0bGluZS1pbmZvIHtcbiAgICBtaW4taGVpZ2h0OiA0MnB4O1xuICB9XG4gIC5jb25uZWN0aW9ucy1pY29uLWJ0bixcbiAgLmNvbm5lY3Rpb25zLWNsZWFyLWJ0biB7XG4gICAgd2lkdGg6IDQycHg7XG4gICAgbWluLXdpZHRoOiA0MnB4O1xuICAgIG1pbi1oZWlnaHQ6IDQycHg7XG4gIH1cbiAgLmNvbm5lY3Rpb25zLXBhZ2UuaXMtY29tcGxldGVkLWRldGFpbCB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLTMpO1xuICB9XG4gIC5jb25uZWN0aW9ucy1wYWdlLmlzLWNvbXBsZXRlZC1kZXRhaWwgLmFwcC1jb250YWluZXIsIC5jb25uZWN0aW9ucy1wYWdlLmlzLWNvbXBsZXRlZC1kZXRhaWwgLmNvbnRhaW5lciB7XG4gICAgZ2FwOiAwLjg1cmVtO1xuICB9XG4gIC5jb25uZWN0aW9ucy1kZXRhaWwtaGVybyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgIGdhcDogMC45cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDIycHg7XG4gIH1cbiAgLmNvbm5lY3Rpb25zLWRldGFpbC10aXRsZS1yb3cge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5jb25uZWN0aW9ucy1kZXRhaWwtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMi4ycmVtLCAxMC44dncsIDMuNHJlbSk7XG4gIH1cbiAgLmNvbm5lY3Rpb25zLWRldGFpbC1tZXRhIHtcbiAgICBnYXA6IDAuNDJyZW07XG4gICAgbWFyZ2luLXRvcDogMC41NXJlbTtcbiAgfVxuICAuY29ubmVjdGlvbnMtZGV0YWlsLXBpbGwge1xuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XG4gICAgcGFkZGluZzogMCAwLjc0cmVtO1xuICAgIGZvbnQtc2l6ZTogMC42NnJlbTtcbiAgfVxuICAuY29ubmVjdGlvbnMtZGV0YWlsLWNvdW50LWNhcmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBqdXN0aWZ5LWl0ZW1zOiBzdGFydDtcbiAgICBwYWRkaW5nOiAwLjg1cmVtIDAuOTVyZW07XG4gIH1cbiAgLmNvbm5lY3Rpb25zLWRldGFpbC1ncm91cC1tZXRlcixcbiAgLmNvbm5lY3Rpb25zLWRldGFpbC1zdGF0cyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICAgIGdhcDogMC42NXJlbTtcbiAgfVxuICAuY29ubmVjdGlvbnMtZGV0YWlsLW1ldGVyLWNlbGwge1xuICAgIG1pbi1oZWlnaHQ6IDYycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgfVxuICAuY29ubmVjdGlvbnMtZGV0YWlsLXN0YXQge1xuICAgIG1pbi1oZWlnaHQ6IDgycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgICBwYWRkaW5nOiAwLjcycmVtO1xuICB9XG4gIC5jb25uZWN0aW9ucy1kZXRhaWwtY2FyZCxcbiAgLmNvbm5lY3Rpb25zLWRldGFpbC1vdmVydmlldy1jYXJkIHtcbiAgICBnYXA6IDAuODVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMjJweDtcbiAgfVxuICAuY29ubmVjdGlvbnMtZGV0YWlsLXNlY3Rpb24taGVhZGVyIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuICAuY29ubmVjdGlvbnMtZGV0YWlsLXNlY3Rpb24taGVhZGVyIGgyIHtcbiAgICBmb250LXNpemU6IDEuNTVyZW07XG4gIH1cbiAgLmNvbm5lY3Rpb25zLWRldGFpbC1ncm91cCB7XG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgICBwYWRkaW5nOiAwLjg1cmVtO1xuICB9XG4gIC5jb25uZWN0aW9ucy1kZXRhaWwtZ3JvdXAtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogMC41NXJlbTtcbiAgfVxuICAuY29ubmVjdGlvbnMtZGV0YWlsLXdvcmRzIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gICAgZ2FwOiAwLjQ1cmVtO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMzcwcHgpIHtcbiAgLmNvbm5lY3Rpb25zLXBhZ2UgLmFwcC1jb250YWluZXIsIC5jb25uZWN0aW9ucy1wYWdlIC5jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtMik7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tc3BhY2UtMik7XG4gIH1cbiAgLmNvbm5lY3Rpb25zLWdyaWQge1xuICAgIGdhcDogMC4zNHJlbTtcbiAgfVxuICAuY29ubmVjdGlvbnMtdGlsZSB7XG4gICAgbWluLWhlaWdodDogNTJweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMC40OHJlbSwgMC44NHJlbSAtIHZhcigtLWNoYXItY291bnQsIDYpICogMC4wMnJlbSwgMC43MnJlbSk7XG4gIH1cbiAgLmNvbm5lY3Rpb25zLWRldGFpbC1pY29uIHtcbiAgICB3aWR0aDogNTRweDtcbiAgICBoZWlnaHQ6IDU0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgfVxuICAuY29ubmVjdGlvbnMtZGV0YWlsLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuMXJlbTtcbiAgfVxufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3Utc3RhdHVzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtcmVsb2FkLW5vdGljZSB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXN1ZG9rdS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LXllbGxvdy1zb2Z0KTtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1pbmspO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1yZWxvYWQtbm90aWNlIHAge1xuICBtYXJnaW46IDAgMCAwLjc1cmVtO1xufVxuLnN1ZG9rdS1wYWdlLmlzLXN0YWxlIC5zdWRva3UtbWVzc2FnZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc3Vkb2t1LXBhZ2UuaXMtc3RhbGUgLnN1ZG9rdS1ib2FyZCwgLnN1ZG9rdS1wYWdlLmlzLXN0YWxlIC5zdWRva3UtYm90dG9tLWNvbnRyb2xzIHtcbiAgb3BhY2l0eTogMC41NTtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LXByYWN0aWNlLW9wdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDAuNXJlbTtcbiAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtcHJhY3RpY2Utb3B0aW9ucyAuZm9ybS1zZWxlY3Qge1xuICB3aWR0aDogYXV0bztcbiAgbWluLXdpZHRoOiA2cmVtO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtcGxheSB7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwc3ZoIC0gMTMwcHgpO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyIGF1dG87XG4gIGdhcDogMC41cmVtO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtbWVzc2FnZSB7XG4gIG1pbi1oZWlnaHQ6IDEuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4xcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMC44OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtbWVzc2FnZS5tZXNzYWdlLXdhcm5pbmcge1xuICBjb2xvcjogIzhkNGExMDtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LW1lc3NhZ2UubWVzc2FnZS1zdWNjZXNzIHtcbiAgY29sb3I6ICMyNDVkNGE7XG59XG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1tZXNzYWdlLm1lc3NhZ2UtZXJyb3Ige1xuICBjb2xvcjogIzlmMmIyOTtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LW1lc3NhZ2UubWVzc2FnZS1pbmZvIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtYm9hcmQtd3JhcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtYm9hcmQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg5LCAxZnIpO1xuICB3aWR0aDogbWluKDEwMCUsIG1pbig5MnZ3LCA2MnN2aCkpO1xuICBtYXgtd2lkdGg6IDYyMHB4O1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIGJvcmRlcjogMS41cHggc29saWQgI2I3YmZjOTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogMCA4cHggMjBweCByZ2JhKDMyLCAyNywgMjAsIDAuMDYpO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtY2VsbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTllZjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMXJlbSwgMy44dncsIDEuNDVyZW0pO1xuICBjb2xvcjogIzM1NTA3YTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxMjBtcyBlYXNlLCBib3gtc2hhZG93IDEyMG1zIGVhc2U7XG59XG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsW2RhdGEtY29sPVwiMlwiXSxcbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGxbZGF0YS1jb2w9XCI1XCJdIHtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgI2MyY2FkNTtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGxbZGF0YS1yb3c9XCIyXCJdLFxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtY2VsbFtkYXRhLXJvdz1cIjVcIl0ge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2MyY2FkNTtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGwuaXMtZ2l2ZW4ge1xuICBiYWNrZ3JvdW5kOiAjZjdmOWZjO1xuICBjb2xvcjogIzFmMjkzNztcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWdpdmVuLXZhbHVlIHtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgY29sb3I6ICMxZjI5Mzc7XG59XG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsLmlzLXJlbGF0ZWQge1xuICBiYWNrZ3JvdW5kOiAjZjRmOGZmO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtY2VsbC5pcy1yZWxhdGVkLWJveCB7XG4gIGJhY2tncm91bmQ6ICNlZGYzZmU7XG59XG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsLmlzLXNhbWUtbnVtYmVyIHtcbiAgYmFja2dyb3VuZDogI2U4ZjBmZjtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGwuaXMtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2RlZWJmZjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICM0Yzc4YmE7XG4gIHotaW5kZXg6IDI7XG59XG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsLmlzLWdpdmVuLmlzLWNvbmZsaWN0IHtcbiAgYmFja2dyb3VuZDogI2ZlZWFlYztcbiAgY29sb3I6ICNiNjMwMzQ7XG59XG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsLmlzLWNvbmZsaWN0IHtcbiAgYmFja2dyb3VuZDogI2ZmZjBmMTtcbiAgY29sb3I6ICNiNjMwMzQ7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCByZ2JhKDE4MiwgNDgsIDUyLCAwLjMyKTtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGwuaXMtY29uZmxpY3Qtc2hha2Uge1xuICBhbmltYXRpb246IHN1ZG9rdS1jZWxsLXNoYWtlIDI2MG1zIGVhc2U7XG59XG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsIGlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IDY1MDtcbiAgY29sb3I6ICMzNTUwN2E7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvdXRsaW5lOiBub25lO1xuICBjYXJldC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGwuaXMtY29uZmxpY3QgaW5wdXQge1xuICBjb2xvcjogI2I2MzAzNDtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LW5vdGUtbGF5ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAycHg7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDMsIDFmcik7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiAxO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3Utbm90ZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXNpemU6IGNsYW1wKDAuNDhyZW0sIDEuN3Z3LCAwLjY0cmVtKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjN2I4Nzk2O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtYm90dG9tLWNvbnRyb2xzIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgYm90dG9tOiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSArIDRweCk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjQ3LCAyNDMsIDIzOCwgMC45NCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIHBhZGRpbmc6IDAuNTVyZW07XG4gIGJveC1zaGFkb3c6IDAgMTBweCAyNHB4IHJnYmEoMzIsIDI3LCAyMCwgMC4wOCk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtdG9vbHMtcm93IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKSBhdXRvO1xuICBnYXA6IDAuNDVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LXRvb2wtYnRuIHtcbiAgbWluLWhlaWdodDogNDRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q2ZGRlNztcbiAgYm9yZGVyLXJhZGl1czogMTFweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMyZDNkNTQ7XG4gIGZvbnQtc2l6ZTogMC44MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDY1MDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMC4zcmVtO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gOTBtcyBlYXNlLCBib3JkZXItY29sb3IgMTIwbXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAxMjBtcyBlYXNlO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtdG9vbC1idG4gaSB7XG4gIGZvbnQtc2l6ZTogMC45NXJlbTtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LXRvb2wtYnRuOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjNGM3OGJhO1xuICBiYWNrZ3JvdW5kOiAjZThmMGZmO1xuICBjb2xvcjogIzIxNDY3Mztcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LXRvb2wtYnRuLmlzLWFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogIzRjNzhiYTtcbiAgYmFja2dyb3VuZDogI2U4ZjBmZjtcbiAgY29sb3I6ICMyMTQ2NzM7XG59XG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS10b29sLWJ0bjphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuOTgpO1xuICBib3JkZXItY29sb3I6ICM5ZWFlYzI7XG59XG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jaGVjay1idG4ge1xuICBtaW4taGVpZ2h0OiA0NHB4O1xuICBwYWRkaW5nOiAwIDAuOXJlbTtcbiAgZm9udC1zaXplOiAwLjg0cmVtO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3Uta2V5Ym9hcmQge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAwLjM1cmVtO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3Uta2V5Ym9hcmQtcm93IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgbWlubWF4KDAsIDFmcikpO1xuICBnYXA6IDAuMzVyZW07XG59XG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1rZXktYnV0dG9uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q5ZTBlOTtcbiAgYm9yZGVyLXJhZGl1czogMTFweDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgY29sb3I6ICMyMjM1NGQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4xOHJlbTtcbiAgbWluLWhlaWdodDogNDZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xcyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3Uta2V5LWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmOGZiZmY7XG59XG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1rZXktYnV0dG9uOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45OCk7XG4gIGJvcmRlci1jb2xvcjogIzllYWVjMjtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWtleS1idXR0b24uaXMtY29tcGxldGUge1xuICBiYWNrZ3JvdW5kOiAjZTFlOGYyO1xuICBib3JkZXItY29sb3I6ICNiOGM0ZDQ7XG4gIGNvbG9yOiAjMWIyZTQ1O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbn1cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWtleS1idXR0b24uaXMtcGxhY2Vob2xkZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtYm9hcmQuaXMtcmVhZG9ubHkgLnN1ZG9rdS1jZWxsIHtcbiAgYmFja2dyb3VuZDogI2Y5ZmFmYjtcbiAgY29sb3I6ICMxMTE4Mjc7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnN1ZG9rdS1wYWdlIC5hcHAtY29udGFpbmVyLCAuc3Vkb2t1LXBhZ2UgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCAxNnB4O1xuICB9XG4gIC5zdWRva3UtcGFnZSAuc3Vkb2t1LXBsYXkge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwc3ZoIC0gMTIwcHgpO1xuICAgIGdhcDogMC4zNXJlbTtcbiAgfVxuICAuc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1ib2FyZCB7XG4gICAgd2lkdGg6IG1pbigxMDAlLCBtaW4oOTJ2dywgNjRzdmgpKTtcbiAgfVxuICAuc3Vkb2t1LXBhZ2UgLnN1ZG9rdS10b29scy1yb3cge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgwLCAxZnIpKSBhdXRvO1xuICAgIGdhcDogMC4zNXJlbTtcbiAgfVxuICAuc3Vkb2t1LXBhZ2UgLnN1ZG9rdS10b29sLWJ0biB7XG4gICAgZm9udC1zaXplOiAwLjc0cmVtO1xuICB9XG59XG5ib2R5LnR1cmJvLW5hdGl2ZS1ib2R5IC5zdWRva3UtcGFnZSAuc3Vkb2t1LXBsYXkge1xuICBwYWRkaW5nLXRvcDogMS41cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gIC5zdWRva3UtcGFnZSAuc3Vkb2t1LWJvYXJkIHtcbiAgICB3aWR0aDogbWluKDcydmgsIDYyMHB4KTtcbiAgfVxufVxuQGtleWZyYW1lcyBzdWRva3UtY2VsbC1zaGFrZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbiAgfVxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbi5zdWRva3UtcGFnZSAuc2hhcmUtY2FyZC0tc3Vkb2t1IC5zaGFyZS1jYXJkX19iYWNrZHJvcCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMwZjc2NmUsICMwZjE3MmEpO1xufVxuXG5ib2R5Omhhcyguc3Vkb2t1LXBhZ2UpIHtcbiAgLS1zdWRva3UtaW5rOiAjMGIwYjBhO1xuICAtLXN1ZG9rdS1wYXBlcjogI2ZmZmRmODtcbiAgLS1zdWRva3Utc29mdDogI2Y0ZjBlODtcbiAgLS1zdWRva3UtbGluZTogcmdiYSgxMSwgMTEsIDEwLCAwLjE4KTtcbiAgLS1zdWRva3Utc3Ryb25nLWxpbmU6IHJnYmEoMTEsIDExLCAxMCwgMC43NCk7XG4gIC0tc3Vkb2t1LW11dGVkOiAjNWI1NjUwO1xuICAtLXN1ZG9rdS1taW50OiAjNjdiMjhiO1xuICAtLXN1ZG9rdS1taW50LXNvZnQ6ICNkZmVlZTU7XG4gIC0tc3Vkb2t1LXllbGxvdzogI2Y0Y2Y0ZjtcbiAgLS1zdWRva3UteWVsbG93LXNvZnQ6ICNmZmYwYjk7XG4gIC0tc3Vkb2t1LWxhdmVuZGVyLXNvZnQ6ICNlY2U1ZjU7XG4gIC0tc3Vkb2t1LXJvc2U6ICNkNThhODk7XG4gIC0tc3Vkb2t1LXJvc2Utc29mdDogI2YzZGFkYTtcbiAgLS1zdWRva3Utcm93LWhpZ2hsaWdodDogI2U4ZjFlYjtcbiAgLS1zdWRva3UtYm94LWhpZ2hsaWdodDogI2U4ZjFlYjtcbiAgLS1zdWRva3UtZ2l2ZW4taGlnaGxpZ2h0OiAjZDJkZmQ1O1xuICAtLXN1ZG9rdS1tYXRjaC1oaWdobGlnaHQ6ICNmNGNmNGY7XG4gIGNvbG9yOiB2YXIoLS1zdWRva3UtaW5rKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LXBhcGVyKTtcbn1cblxuYm9keTpoYXMoLnN1ZG9rdS1wYWdlKSAuYXBwLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTMsIDI0OCwgMC45Mik7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1zdWRva3UtbGluZSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxOHB4KTtcbn1cblxuYm9keTpoYXMoLnN1ZG9rdS1wYWdlKSAuYXBwLWJyYW5kLFxuYm9keTpoYXMoLnN1ZG9rdS1wYWdlKSAubmF2LWxpbmsge1xuICBjb2xvcjogdmFyKC0tc3Vkb2t1LWluayk7XG59XG5cbmJvZHk6aGFzKC5zdWRva3UtcGFnZSkgLnRleHQtZ3JhZGllbnQge1xuICBjb2xvcjogdmFyKC0tc3Vkb2t1LWluayk7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi5zdWRva3UtcGFnZSB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTQpIDAgY2FsYyh2YXIoLS1zcGFjZS03KSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCksIHZhcigtLXN1ZG9rdS1wYXBlcik7XG4gIGJhY2tncm91bmQtc2l6ZTogMzRweCAzNHB4O1xufVxuXG4uc3Vkb2t1LXBhZ2UgLmFwcC1jb250YWluZXIsIC5zdWRva3UtcGFnZSAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA3NjBweDtcbn1cblxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtcGxheSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogY2FsYygxMDBzdmggLSAxNTBweCk7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LW1lc3NhZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtaW4taGVpZ2h0OiAzNHB4O1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGp1c3RpZnktc2VsZjogY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMC45cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogMC43OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LW1lc3NhZ2UubWVzc2FnZS13YXJuaW5nLFxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtbWVzc2FnZS5tZXNzYWdlLXN1Y2Nlc3MsXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1tZXNzYWdlLm1lc3NhZ2UtZXJyb3IsXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1tZXNzYWdlLm1lc3NhZ2UtaW5mbyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc3Vkb2t1LWxpbmUpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tc3Vkb2t1LWluayk7XG4gIGJveC1zaGFkb3c6IDAgOHB4IDIwcHggcmdiYSgxMSwgMTEsIDEwLCAwLjA1KTtcbn1cblxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtbWVzc2FnZS5tZXNzYWdlLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdWRva3UtbWludC1zb2Z0KTtcbn1cblxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtbWVzc2FnZS5tZXNzYWdlLXdhcm5pbmcsXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1tZXNzYWdlLm1lc3NhZ2UtaW5mbyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN1ZG9rdS15ZWxsb3ctc29mdCk7XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LW1lc3NhZ2UubWVzc2FnZS1lcnJvciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN1ZG9rdS1yb3NlLXNvZnQpO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1ib2FyZC13cmFwIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbn1cblxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtYm9hcmQge1xuICB3aWR0aDogbWluKDEwMCUsIG1pbig5MnZ3LCA2MnN2aCkpO1xuICBtYXgtd2lkdGg6IDYyMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1zdWRva3UtaW5rKTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LWluayk7XG4gIGJveC1zaGFkb3c6IDAgMjBweCA0NnB4IHJnYmEoMTEsIDExLCAxMCwgMC4xMik7XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGwge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDExLCAxMSwgMTAsIDAuMTYpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tc3Vkb2t1LWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IGNsYW1wKDEuMDVyZW0sIDMuOHZ3LCAxLjU1cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxMjBtcyBlYXNlLCBib3gtc2hhZG93IDEyMG1zIGVhc2UsIGNvbG9yIDEyMG1zIGVhc2U7XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGxbZGF0YS1jb2w9XCIyXCJdLFxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtY2VsbFtkYXRhLWNvbD1cIjVcIl0ge1xuICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCB2YXIoLS1zdWRva3Utc3Ryb25nLWxpbmUpO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsW2RhdGEtcm93PVwiMlwiXSxcbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGxbZGF0YS1yb3c9XCI1XCJdIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLXN1ZG9rdS1zdHJvbmctbGluZSk7XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGwuaXMtZ2l2ZW4ge1xuICBiYWNrZ3JvdW5kOiAjZWJlNGRjO1xuICBjb2xvcjogdmFyKC0tc3Vkb2t1LWluayk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtY2VsbC5pcy1naXZlbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWdpdmVuLXZhbHVlIHtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtY2VsbC5pcy1yZWxhdGVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LXJvdy1oaWdobGlnaHQpO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsLmlzLXJlbGF0ZWQtYm94IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LWJveC1oaWdobGlnaHQpO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsLmlzLWdpdmVuLmlzLXJlbGF0ZWQsXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsLmlzLWdpdmVuLmlzLXJlbGF0ZWQtYm94IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LWdpdmVuLWhpZ2hsaWdodCk7XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGwuaXMtc2FtZS1udW1iZXIsXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsLmlzLWdpdmVuLmlzLXNhbWUtbnVtYmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LW1hdGNoLWhpZ2hsaWdodCk7XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGwuaXMtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgM3B4IHZhcigtLXN1ZG9rdS1taW50KTtcbiAgei1pbmRleDogMjtcbn1cblxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtY2VsbC5pcy1jb25mbGljdCxcbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNlbGwuaXMtZ2l2ZW4uaXMtY29uZmxpY3Qge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdWRva3Utcm9zZS1zb2Z0KTtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1pbmspO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggdmFyKC0tc3Vkb2t1LXJvc2UpO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsIGlucHV0IHtcbiAgY29sb3I6ICMyYjI0MWQ7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jZWxsLmlzLWNvbmZsaWN0IGlucHV0IHtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1pbmspO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1ub3RlIHtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1tdXRlZCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXNhbnMpO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1ib3R0b20tY29udHJvbHMge1xuICBib3R0b206IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pICsgOHB4KTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXN1ZG9rdS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjJweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1MywgMjQ4LCAwLjk0KTtcbiAgYm94LXNoYWRvdzogMCAxOHB4IDQycHggcmdiYSgxMSwgMTEsIDEwLCAwLjEyKTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE4cHgpO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxOHB4KTtcbn1cblxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtdG9vbHMtcm93IHtcbiAgZ2FwOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNjVyZW07XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LXRvb2wtYnRuLFxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtY2hlY2stYnRuIHtcbiAgbWluLWhlaWdodDogNDRweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc3Vkb2t1LWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1pbmspO1xuICBmb250LXNpemU6IDAuNzhyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LXRvb2wtYnRuOmhvdmVyLFxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtdG9vbC1idG4uaXMtYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zdWRva3UtaW5rKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LXllbGxvdyk7XG4gIGNvbG9yOiB2YXIoLS1zdWRva3UtaW5rKTtcbn1cblxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtdG9vbC1idG46YWN0aXZlLFxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtY2hlY2stYnRuOmFjdGl2ZSxcbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWtleS1idXR0b246YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWNoZWNrLWJ0biB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc3Vkb2t1LWluayk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN1ZG9rdS1pbmspO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnN1ZG9rdS1wYWdlIC5zdWRva3Uta2V5Ym9hcmQge1xuICBnYXA6IDAuNDVyZW07XG59XG5cbi5zdWRva3UtcGFnZSAuc3Vkb2t1LWtleWJvYXJkLXJvdyB7XG4gIGdhcDogMC40NXJlbTtcbn1cblxuLnN1ZG9rdS1wYWdlIC5zdWRva3Uta2V5LWJ1dHRvbiB7XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXN1ZG9rdS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1pbmspO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDEuMzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDAgcmdiYSgxMSwgMTEsIDEwLCAwLjEpO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1rZXktYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LXNvZnQpO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1rZXktYnV0dG9uLmlzLWNvbXBsZXRlIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LW1pbnQpO1xuICBjb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCA0cHggMCByZ2JhKDExLCAxMSwgMTAsIDAuMTIpO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1ib2FyZC5pcy1yZWFkb25seSAuc3Vkb2t1LWNlbGwge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdWRva3Utc29mdCk7XG4gIGNvbG9yOiB2YXIoLS1zdWRva3UtaW5rKTtcbn1cblxuLnN1ZG9rdS1tb2RhbCAubW9kYWxfX2RpYWxvZyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogNDYwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXN1ZG9rdS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LXBhcGVyKTtcbiAgYm94LXNoYWRvdzogMCAyNHB4IDU4cHggcmdiYSgxMSwgMTEsIDEwLCAwLjE4KTtcbn1cblxuLnN1ZG9rdS1tb2RhbCAubW9kYWxfX2hlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1zdWRva3UtbGluZSk7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5zdWRva3UtbW9kYWwgLm1vZGFsX190aXRsZSB7XG4gIGNvbG9yOiB2YXIoLS1zdWRva3UtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5zdWRva3UtbW9kYWwgLm1vZGFsX19ib2R5IHtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1pbmspO1xuICBmb250LXdlaWdodDogODAwO1xufVxuXG4uc3Vkb2t1LW1vZGFsIC50ZXh0LW11dGVkIHtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1tdXRlZCk7XG59XG5cbi5zdWRva3UtbW9kYWwgLmJ0bi1vdXRsaW5lLCAuc3Vkb2t1LW1vZGFsIC5idG4tb3V0bGluZS1wcmltYXJ5LFxuLnN1ZG9rdS1tb2RhbCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LFxuLnN1ZG9rdS1tb2RhbCAuYnRuLW91dGxpbmUtc3VjY2Vzcyxcbi5zdWRva3UtbW9kYWwgLmJ0bi1vdXRsaW5lLWRhbmdlcixcbi5zdWRva3UtbW9kYWwgLmJ0bi1vdXRsaW5lLXdhcm5pbmcsXG4uc3Vkb2t1LW1vZGFsIC5idG4tb3V0bGluZS1pbmZvIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1zdWRva3UtbGluZSk7XG4gIGNvbG9yOiB2YXIoLS1zdWRva3UtaW5rKTtcbn1cblxuLnN1ZG9rdS1tb2RhbCAuYnRuLXByaW1hcnkge1xuICBib3JkZXItY29sb3I6IHZhcigtLXN1ZG9rdS1pbmspO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdWRva3UtaW5rKTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5zdWRva3UtcGFnZS5pcy1jb21wbGV0ZWQtZGV0YWlsIHtcbiAgcGFkZGluZy10b3A6IGNsYW1wKDFyZW0sIDN2dywgMnJlbSk7XG59XG5cbi5zdWRva3UtcGFnZS5pcy1jb21wbGV0ZWQtZGV0YWlsIC5hcHAtY29udGFpbmVyLCAuc3Vkb2t1LXBhZ2UuaXMtY29tcGxldGVkLWRldGFpbCAuY29udGFpbmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgbWF4LXdpZHRoOiA4ODBweDtcbiAgZ2FwOiBjbGFtcCgxcmVtLCAyLjZ2dywgMS40NXJlbSk7XG59XG5cbi5zdWRva3UtZGV0YWlsLWhlcm8ge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBlbmQ7XG4gIGdhcDogY2xhbXAoMXJlbSwgNHZ3LCAycmVtKTtcbiAgcGFkZGluZzogY2xhbXAoMXJlbSwgM3Z3LCAxLjRyZW0pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zdWRva3UtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDI2cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTMsIDI0OCwgMC45Mik7XG4gIGJveC1zaGFkb3c6IDAgMjJweCA0NnB4IHJnYmEoMTEsIDExLCAxMCwgMC4wOCk7XG59XG5cbi5zdWRva3UtZGV0YWlsLXRpdGxlLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1pbi13aWR0aDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiBjbGFtcCgwLjhyZW0sIDIuNnZ3LCAxLjFyZW0pO1xufVxuXG4uc3Vkb2t1LWRldGFpbC1pY29uIHtcbiAgd2lkdGg6IGNsYW1wKDU4cHgsIDl2dywgNzZweCk7XG4gIGhlaWdodDogY2xhbXAoNThweCwgOXZ3LCA3NnB4KTtcbiAgZmxleDogMCAwIGF1dG87XG4gIHBhZGRpbmc6IDAuNnJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc3Vkb2t1LWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdWRva3Utcm9zZS1zb2Z0KTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLnN1ZG9rdS1kZXRhaWwtdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1zdWRva3UtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoM3JlbSwgOHZ3LCA0LjhyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDAuOTtcbn1cblxuLnN1ZG9rdS1kZXRhaWwtdGl0bGUgc3BhbiB7XG4gIGNvbG9yOiB2YXIoLS1zdWRva3Utcm9zZSk7XG59XG5cbi5zdWRva3UtZGV0YWlsLW1ldGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMC41cmVtO1xuICBtYXJnaW4tdG9wOiAwLjdyZW07XG59XG5cbi5zdWRva3UtZGV0YWlsLXBpbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWluLWhlaWdodDogMzRweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMC45cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zdWRva3UtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdWRva3Utcm9zZS1zb2Z0KTtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1pbmspO1xuICBmb250LXNpemU6IDAuNzZyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uc3Vkb2t1LWRldGFpbC1waWxsLmlzLWRhdGUge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uc3Vkb2t1LWRldGFpbC1kaWZmaWN1bHR5LWNhcmQge1xuICBkaXNwbGF5OiBncmlkO1xuICBtaW4td2lkdGg6IDE5MHB4O1xuICBnYXA6IDAuNDVyZW07XG4gIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbSAxLjE1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDExLCAxMSwgMTAsIDAuMik7XG4gIGJvcmRlci1yYWRpdXM6IDIycHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN1ZG9rdS15ZWxsb3ctc29mdCk7XG59XG5cbi5zdWRva3UtZGV0YWlsLWV5ZWJyb3cge1xuICBjb2xvcjogdmFyKC0tc3Vkb2t1LW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjY2cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xNmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uc3Vkb2t1LWRldGFpbC1kaWZmaWN1bHR5LWNhcmQgc3Ryb25nIHtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjlyZW0sIDV2dywgMi43cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5zdWRva3UtZGV0YWlsLXN0YXRzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDAsIDFmcikpO1xuICBnYXA6IDAuNzVyZW07XG59XG5cbi5zdWRva3UtZGV0YWlsLXN0YXQge1xuICBkaXNwbGF5OiBncmlkO1xuICBtaW4taGVpZ2h0OiA5NHB4O1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjM1cmVtO1xuICBwYWRkaW5nOiAwLjg1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zdWRva3UtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnN1ZG9rdS1kZXRhaWwtc3RhdC5pcy14cCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN1ZG9rdS1yb3NlLXNvZnQpO1xufVxuXG4uc3Vkb2t1LWRldGFpbC1zdGF0IC5zdW1tYXJ5LWxhYmVsIHtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC42OHJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbn1cblxuLnN1ZG9rdS1kZXRhaWwtc3RhdCAuc3VtbWFyeS12YWx1ZSB7XG4gIGNvbG9yOiB2YXIoLS1zdWRva3UtaW5rKTtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjJyZW0sIDN2dywgMS43NXJlbSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjA1O1xufVxuXG4uc3Vkb2t1LWRldGFpbC1jYXJkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAxcmVtO1xuICBwYWRkaW5nOiBjbGFtcCgxcmVtLCAzdncsIDEuMzVyZW0pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zdWRva3UtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDI2cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMTZweCAzNHB4IHJnYmEoMTEsIDExLCAxMCwgMC4wNyk7XG59XG5cbi5zdWRva3UtZGV0YWlsLXNlY3Rpb24taGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IDFyZW07XG59XG5cbi5zdWRva3UtZGV0YWlsLXNlY3Rpb24taGVhZGVyIGgyIHtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwLjE4cmVtO1xuICBib3JkZXItYm90dG9tOiAwLjI4cmVtIHNvbGlkIHZhcigtLXN1ZG9rdS1yb3NlKTtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjZyZW0sIDR2dywgMi4xNXJlbSk7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLnN1ZG9rdS1kZXRhaWwtYm9hcmQtd3JhcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1kZXRhaWwtYm9hcmQge1xuICB3aWR0aDogbWluKDEwMCUsIDU2MHB4KTtcbiAgbWF4LXdpZHRoOiA1NjBweDtcbiAgYm9yZGVyLXJhZGl1czogMjJweDtcbn1cblxuLnN1ZG9rdS1wYWdlIC5zdWRva3UtZGV0YWlsLWJvYXJkIC5zdWRva3UtY2VsbCB7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMC45NXJlbSwgMy4xdncsIDEuMzhyZW0pO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1kZXRhaWwtYm9hcmQgLnN1ZG9rdS1jZWxsLmlzLWZpbGxlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN1ZG9rdS1yb3NlLXNvZnQpO1xufVxuXG4uc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1kZXRhaWwtYm9hcmQgLnN1ZG9rdS1jZWxsLmlzLWdpdmVuIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LXNvZnQpO1xufVxuXG4uc3Vkb2t1LWRldGFpbC1sZWdlbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMC43cmVtO1xufVxuXG4uc3Vkb2t1LWRldGFpbC1sZWdlbmQgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtaW4taGVpZ2h0OiAzOHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNTVyZW07XG4gIHBhZGRpbmc6IDAgMC44cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zdWRva3UtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tc3Vkb2t1LWluayk7XG4gIGZvbnQtc2l6ZTogMC44MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLnN1ZG9rdS1kZXRhaWwtbGVnZW5kIGkge1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zdWRva3UtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbn1cblxuLnN1ZG9rdS1kZXRhaWwtbGVnZW5kIGkuaXMtZ2l2ZW4ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdWRva3Utc29mdCk7XG59XG5cbi5zdWRva3UtZGV0YWlsLWxlZ2VuZCBpLmlzLWZpbGxlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN1ZG9rdS1yb3NlLXNvZnQpO1xufVxuXG4uc3Vkb2t1LWRldGFpbC1hY3Rpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMnJlbSAwIDAuNnJlbTtcbn1cblxuLnN1ZG9rdS1kZXRhaWwtZG9uZS1idG4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB3aWR0aDogbWluKDc4JSwgMzEwcHgpO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMC41NXJlbSAzLjRyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXN1ZG9rdS1pbmspO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LWluayk7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDAuOThyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnN1ZG9rdS1kZXRhaWwtZG9uZS1idG4gc3BhbjpsYXN0LWNoaWxkIHtcbiAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDAuMzZyZW07XG4gIHdpZHRoOiAzOHB4O1xuICBoZWlnaHQ6IDM4cHg7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdWRva3UteWVsbG93KTtcbiAgY29sb3I6IHZhcigtLXN1ZG9rdS1pbmspO1xuICBmb250LXNpemU6IDEuMThyZW07XG59XG5cbi5zdWRva3UtZGV0YWlsLWRvbmUtYnRuOmhvdmVyLFxuLnN1ZG9rdS1kZXRhaWwtZG9uZS1idG46YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3Vkb2t1LWluayk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnN1ZG9rdS1wYWdlIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKSAwIGNhbGMoNnJlbSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gIH1cbiAgLnN1ZG9rdS1wYWdlIC5hcHAtY29udGFpbmVyLCAuc3Vkb2t1LXBhZ2UgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS0zKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS0zKTtcbiAgfVxuICAuc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1wbGF5IHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHN2aCAtIDEyNHB4KTtcbiAgICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICB9XG4gIC5zdWRva3UtcGFnZSAuc3Vkb2t1LWJvYXJkIHtcbiAgICB3aWR0aDogbWluKDEwMCUsIG1pbig5MnZ3LCA2MnN2aCkpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIH1cbiAgLnN1ZG9rdS1wYWdlIC5zdWRva3UtYm90dG9tLWNvbnRyb2xzIHtcbiAgICBwYWRkaW5nOiAwLjU1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIH1cbiAgLnN1ZG9rdS1wYWdlIC5zdWRva3UtdG9vbHMtcm93IHtcbiAgICBnYXA6IDAuMzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41NXJlbTtcbiAgfVxuICAuc3Vkb2t1LXBhZ2UgLnN1ZG9rdS10b29sLWJ0bixcbiAgLnN1ZG9rdS1wYWdlIC5zdWRva3UtY2hlY2stYnRuIHtcbiAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBmb250LXNpemU6IDAuNzJyZW07XG4gIH1cbiAgLnN1ZG9rdS1wYWdlIC5zdWRva3UtdG9vbC1idG4ge1xuICAgIGdhcDogMC4yNXJlbTtcbiAgfVxuICAuc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1rZXlib2FyZCxcbiAgLnN1ZG9rdS1wYWdlIC5zdWRva3Uta2V5Ym9hcmQtcm93IHtcbiAgICBnYXA6IDAuMzRyZW07XG4gIH1cbiAgLnN1ZG9rdS1wYWdlIC5zdWRva3Uta2V5LWJ1dHRvbiB7XG4gICAgbWluLWhlaWdodDogNDZweDtcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgIGZvbnQtc2l6ZTogMS4xOHJlbTtcbiAgfVxuICAuc3Vkb2t1LXBhZ2UuaXMtY29tcGxldGVkLWRldGFpbCB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLTMpO1xuICB9XG4gIC5zdWRva3UtcGFnZS5pcy1jb21wbGV0ZWQtZGV0YWlsIC5hcHAtY29udGFpbmVyLCAuc3Vkb2t1LXBhZ2UuaXMtY29tcGxldGVkLWRldGFpbCAuY29udGFpbmVyIHtcbiAgICBnYXA6IDAuODVyZW07XG4gIH1cbiAgLnN1ZG9rdS1kZXRhaWwtaGVybyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgIGdhcDogMC45cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDIycHg7XG4gIH1cbiAgLnN1ZG9rdS1kZXRhaWwtdGl0bGUtcm93IHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuICAuc3Vkb2t1LWRldGFpbC10aXRsZSB7XG4gICAgZm9udC1zaXplOiBjbGFtcCgyLjdyZW0sIDEzdncsIDMuOHJlbSk7XG4gIH1cbiAgLnN1ZG9rdS1kZXRhaWwtbWV0YSB7XG4gICAgZ2FwOiAwLjQycmVtO1xuICAgIG1hcmdpbi10b3A6IDAuNTVyZW07XG4gIH1cbiAgLnN1ZG9rdS1kZXRhaWwtcGlsbCB7XG4gICAgbWluLWhlaWdodDogMzBweDtcbiAgICBwYWRkaW5nOiAwIDAuNzRyZW07XG4gICAgZm9udC1zaXplOiAwLjY2cmVtO1xuICB9XG4gIC5zdWRva3UtZGV0YWlsLWRpZmZpY3VsdHktY2FyZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIGp1c3RpZnktaXRlbXM6IHN0YXJ0O1xuICAgIHBhZGRpbmc6IDAuODVyZW0gMC45NXJlbTtcbiAgfVxuICAuc3Vkb2t1LWRldGFpbC1zdGF0cyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICAgIGdhcDogMC42NXJlbTtcbiAgfVxuICAuc3Vkb2t1LWRldGFpbC1zdGF0IHtcbiAgICBtaW4taGVpZ2h0OiA4MnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gICAgcGFkZGluZzogMC43MnJlbTtcbiAgfVxuICAuc3Vkb2t1LWRldGFpbC1jYXJkIHtcbiAgICBnYXA6IDAuODVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMjJweDtcbiAgfVxuICAuc3Vkb2t1LWRldGFpbC1zZWN0aW9uLWhlYWRlciBoMiB7XG4gICAgZm9udC1zaXplOiAxLjU1cmVtO1xuICB9XG4gIC5zdWRva3UtcGFnZSAuc3Vkb2t1LWRldGFpbC1ib2FyZCB7XG4gICAgd2lkdGg6IG1pbigxMDAlLCA4OHZ3KTtcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMzkwcHgpIHtcbiAgLnN1ZG9rdS1wYWdlIC5zdWRva3UtdG9vbHMtcm93IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCBtaW5tYXgoMCwgMWZyKSk7XG4gIH1cbiAgLnN1ZG9rdS1wYWdlIC5zdWRva3UtdG9vbC1idG4gc3BhbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuc3Vkb2t1LXBhZ2UgLnN1ZG9rdS1jaGVjay1idG4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBmb250LXNpemU6IDAuNjhyZW07XG4gIH1cbiAgLnN1ZG9rdS1kZXRhaWwtaWNvbiB7XG4gICAgd2lkdGg6IDU0cHg7XG4gICAgaGVpZ2h0OiA1NHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIH1cbiAgLnN1ZG9rdS1kZXRhaWwtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICB9XG59XG4uYXBwLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMykgMDtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAyMDA7XG59XG5cbi5hcHAtbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYXBwLW5hdl9fbGVmdCxcbi5hcHAtbmF2X19yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2UtMik7XG59XG5cbi5hcHAtbmF2X19hdXRoIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLmFwcC1icmFuZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5uYXYtYmFjay1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAzNHB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlLWFsdCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZTtcbn1cbi5uYXYtYmFjay1idG46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG59XG5cbi5uYXYtaWNvbi1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIHBhZGRpbmc6IDA7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2U7XG59XG4ubmF2LWljb24tYnRuOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xufVxuXG4ubmF2LWxpbmtzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ubmF2LWxpbmsge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAwLjk1cmVtO1xuICBwYWRkaW5nOiAwLjRyZW0gMC42cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xufVxuLm5hdi1saW5rLmlzLWFjdGl2ZSwgLm5hdi1saW5rOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlLWFsdCk7XG59XG5cbi5oZWxwLWxpbmsge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmhlbHAtbGlua19faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAwLjk1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZS1hbHQpO1xufVxuXG4ubmF2LWF2YXRhci13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubmF2LWF2YXRhci1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1jb2xvci1zZWNvbmRhcnkpLCB2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMC43OHJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UsIHRyYW5zZm9ybSAwLjE1cyBlYXNlO1xufVxuLm5hdi1hdmF0YXItYnRuOmhvdmVyIHtcbiAgb3BhY2l0eTogMC44ODtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA2KTtcbn1cbi5uYXYtYXZhdGFyLWJ0bjphY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuXG4ubmF2LWRyb3Bkb3duX19tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDhweCk7XG4gIHJpZ2h0OiAwO1xuICBtaW4td2lkdGg6IDIxMHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXN0cm9uZyk7XG4gIHotaW5kZXg6IDMwMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5uYXYtZHJvcGRvd25fX21lbnUuaXMtb3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubmF2LWRyb3Bkb3duX19oZWFkZXIge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKSB2YXIoLS1zcGFjZS00KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2UtYWx0KTtcbn1cblxuLm5hdi1kcm9wZG93bl9fbmFtZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLm5hdi1kcm9wZG93bl9faGFuZGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIG1hcmdpbi10b3A6IDJweDtcbn1cblxuLm5hdi1kcm9wZG93bl9faXRlbXMge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0yKSAwO1xufVxuXG4ubmF2LWRyb3Bkb3duX19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMykgdmFyKC0tc3BhY2UtNCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE1cyBlYXNlO1xufVxuLm5hdi1kcm9wZG93bl9faXRlbSBpIHtcbiAgd2lkdGg6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xuICBmbGV4LXNocmluazogMDtcbn1cbi5uYXYtZHJvcGRvd25fX2l0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlLWFsdCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbn1cbi5uYXYtZHJvcGRvd25fX2l0ZW0uaXMtZGFuZ2VyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWRhbmdlcik7XG59XG4ubmF2LWRyb3Bkb3duX19pdGVtLmlzLWRhbmdlciBpIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWRhbmdlcik7XG59XG4ubmF2LWRyb3Bkb3duX19pdGVtLmlzLWRhbmdlcjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTg0LCA5MSwgODYsIDAuMDgpO1xufVxuXG4ubmF2LWRyb3Bkb3duX19kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2UtMikgMDtcbn1cblxuLmFkbWluLWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuICBnYXA6IHZhcigtLXNwYWNlLTUpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS01KTtcbn1cblxuLmRhdGEtdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG59XG5cbi5kYXRhLXRhYmxlIHRoZWFkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTtcbn1cblxuLmRhdGEtdGFibGUgdGgsXG4uZGF0YS10YWJsZSB0ZCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbn1cblxuLmRhdGEtdGFibGUgdGgge1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbn1cblxuLmRhdGEtdGFibGUgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDIpO1xufVxuXG4uZm9ybS1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyNjBweCwgMWZyKSk7XG4gIGdhcDogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5mb3JtLWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnBhZ2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2UtMik7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTQpO1xufVxuXG4ucGFnZXJfX2xpbmsge1xuICBwYWRkaW5nOiAwLjQ1cmVtIDAuOXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xufVxuLnBhZ2VyX19saW5rLmlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uYXV0aC1jYXJkIHtcbiAgbWF4LXdpZHRoOiA0NDBweDtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS02KSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS01KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zb2Z0KTtcbn1cblxuLmF1dGgtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS00KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYWRtaW4tb3ZlcnZpZXcge1xuICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gNjRweCk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTYpIDAgY2FsYyh2YXIoLS1zcGFjZS02KSAqIDEuNSk7XG4gIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgOTIlIDAlLCByZ2JhKDE1NSwgMTIzLCA4NiwgMC4xKSwgdHJhbnNwYXJlbnQgMjhyZW0pLCB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kKTtcbn1cblxuLmFkbWluLW92ZXJ2aWV3X19oZWFkZXIsXG4uYWRtaW4tc2VjdGlvbi1oZWFkaW5nLFxuLmFkbWluLXBhbmVsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5hZG1pbi1vdmVydmlld19faGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNSk7XG59XG5cbi5hZG1pbi1vdmVydmlld19faGVhZGVyIGgxIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IGNsYW1wKDJyZW0sIDR2dywgMy4ycmVtKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5hZG1pbi1vdmVydmlld19fc3VidGl0bGUge1xuICBtYXJnaW46IHZhcigtLXNwYWNlLTIpIDAgMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xuICBmb250LXNpemU6IDEuMDVyZW07XG59XG5cbi5hZG1pbi1leWVicm93IHtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tc3BhY2UtMik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICBmb250LXNpemU6IDAuNzJyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjEzZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5hZG1pbi1vdmVydmlld19fdXBkYXRlZCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICBwYWRkaW5nOiAwLjU1cmVtIDAuODVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuODJyZW07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zdGF0dXMtZG90IHtcbiAgd2lkdGg6IDlweDtcbiAgaGVpZ2h0OiA5cHg7XG4gIGZsZXg6IDAgMCA5cHg7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbiAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMTA4LCAxMDIsIDk1LCAwLjEpO1xufVxuXG4uc3RhdHVzLWRvdC0tc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1Y2Nlc3MpO1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSg3MiwgMTExLCA5MSwgMC4xMik7XG59XG5cbi5zdGF0dXMtZG90LS13YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itd2FybmluZyk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDE3NywgMTQxLCA2MywgMC4xMik7XG59XG5cbi5zdGF0dXMtZG90LS1kYW5nZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1kYW5nZXIpO1xuICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSgxODQsIDkxLCA4NiwgMC4xMik7XG59XG5cbi5hZG1pbi1kYXNoYm9hcmQtZmlsdGVycyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTYpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS00KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjY0KTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xufVxuXG4uYWRtaW4tZGFzaGJvYXJkLWZpbHRlcnNfX2Zvcm0ge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgxNTBweCwgMC44ZnIpIG1pbm1heCgxODBweCwgMWZyKSBtaW5tYXgoMjEwcHgsIDEuMmZyKSBhdXRvO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xuICBhbGlnbi1pdGVtczogZW5kO1xufVxuXG4uYWRtaW4tZmlsdGVyLWZpZWxkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmFkbWluLWZpbHRlci1maWVsZCBsYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wN2VtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYWRtaW4tZGFzaGJvYXJkLWZpbHRlcnNfX3N1Ym1pdCB7XG4gIG1pbi1oZWlnaHQ6IDQycHg7XG59XG5cbi5hZG1pbi1kYXNoYm9hcmQtZmlsdGVyc19fY29udGV4dCB7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2UtMykgMCAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC44M3JlbTtcbn1cblxuLmFkbWluLWFsZXJ0LXN0YWNrIHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNik7XG59XG5cbi5hZG1pbi1zZWN0aW9uLWhlYWRpbmcge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTQpO1xufVxuXG4uYWRtaW4tc2VjdGlvbi1oZWFkaW5nIGgyLFxuLmFkbWluLXBhbmVsLWhlYWRlciBoMiB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjM1cmVtLCAydncsIDEuNzVyZW0pO1xufVxuXG4uYWRtaW4tc2VjdGlvbi1oZWFkaW5nID4gcCB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuODVyZW07XG59XG5cbi5hZG1pbi1jb3VudC1iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWluLXdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDI4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1kYW5nZXIpO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogMC44MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmFkbWluLWFsZXJ0LWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5hZG1pbi1hbGVydCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBtaW5tYXgoMCwgMWZyKSBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKSB2YXIoLS1zcGFjZS00KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2UsIGJveC1zaGFkb3cgMC4xNXMgZWFzZTtcbn1cblxuLmFkbWluLWFsZXJ0OmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zb2Z0KTtcbn1cblxuLmFkbWluLWFsZXJ0LS1kYW5nZXIge1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHZhcigtLWNvbG9yLWRhbmdlcik7XG59XG5cbi5hZG1pbi1hbGVydC0td2FybmluZyB7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdmFyKC0tY29sb3Itd2FybmluZyk7XG59XG5cbi5hZG1pbi1hbGVydF9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2UtYWx0KTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cblxuLmFkbWluLWFsZXJ0IHN0cm9uZyxcbi5hZG1pbi1hbGVydCBzbWFsbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYWRtaW4tYWxlcnQgc21hbGwge1xuICBtYXJnaW4tdG9wOiAycHg7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjc4cmVtO1xufVxuXG4uYWRtaW4tYWxlcnQgPiBpIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuNzJyZW07XG59XG5cbi5hZG1pbi1rcGktZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIG1pbm1heCgwLCAxZnIpKTtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNik7XG59XG5cbi5hZG1pbi1rcGktY2FyZCxcbi5hZG1pbi1kYXNoYm9hcmQtcGFuZWwge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xufVxuXG4uYWRtaW4ta3BpLWNhcmQge1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbGcpO1xufVxuXG4uYWRtaW4ta3BpLWNhcmRfX3RvcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5hZG1pbi1rcGktY2FyZF9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDM0cHg7XG4gIGhlaWdodDogMzRweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZS1hbHQpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbn1cblxuLmFkbWluLWtwaS1jYXJkX19oaW50IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuNzJyZW07XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uYWRtaW4ta3BpLWNhcmRfX2xhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmFkbWluLWtwaS1jYXJkX192YWx1ZSB7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2UtMikgMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgxLjlyZW0sIDN2dywgMi43cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5hZG1pbi1rcGktY2FyZF9fdmFsdWUgc21hbGwge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC40OGVtO1xufVxuXG4uYWRtaW4ta3BpLWNhcmRfX2RlbHRhIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzNyZW07XG59XG5cbi5hZG1pbi1rcGktY2FyZF9fZGVsdGEuaXMtcG9zaXRpdmUsXG4uaXMtcG9zaXRpdmUge1xuICBjb2xvcjogdmFyKC0tY29sb3Itc3VjY2Vzcyk7XG59XG5cbi5hZG1pbi1rcGktY2FyZF9fZGVsdGEuaXMtbmVnYXRpdmUsXG4uaXMtbmVnYXRpdmUge1xuICBjb2xvcjogdmFyKC0tY29sb3ItZGFuZ2VyKTtcbn1cblxuLmFkbWluLWtwaS1jYXJkX19kZWx0YS5pcy1uZXV0cmFsLFxuLmFkbWluLWdhbWUtdGFibGUgLmlzLW5ldXRyYWwge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG59XG5cbi5hZG1pbi1saXZlLWxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogNXB4O1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC43cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYWRtaW4tbGl2ZS1sYWJlbCBzcGFuIHtcbiAgd2lkdGg6IDdweDtcbiAgaGVpZ2h0OiA3cHg7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdWNjZXNzKTtcbiAgYW5pbWF0aW9uOiBhZG1pbi1wdWxzZSAxLjhzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGFkbWluLXB1bHNlIHtcbiAgMCUsIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwLjM1O1xuICB9XG59XG4uYWRtaW4tZGFzaGJvYXJkLXNwbGl0IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMS43ZnIpIG1pbm1heCgzMDBweCwgMC44ZnIpO1xuICBnYXA6IHZhcigtLXNwYWNlLTQpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS00KTtcbn1cblxuLmFkbWluLWRhc2hib2FyZC1zcGxpdC0tYnVzaW5lc3Mge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTQpO1xufVxuXG4uYWRtaW4tZGFzaGJvYXJkLXBhbmVsIHtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS01KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbn1cblxuLmFkbWluLXBhbmVsLWhlYWRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTQpO1xufVxuXG4uYWRtaW4tY2hhcnQtbGVnZW5kIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC43NHJlbTtcbn1cblxuLmFkbWluLWNoYXJ0LWxlZ2VuZCBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogNnB4O1xufVxuXG4uYWRtaW4tY2hhcnQtbGVnZW5kIGkge1xuICB3aWR0aDogMThweDtcbiAgaGVpZ2h0OiAzcHg7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xufVxuXG4uYWRtaW4tY2hhcnQtbGVnZW5kIC5pcy1zaWdudXBzLFxuLmFkbWluLWNoYXJ0LWxpbmUuaXMtc2lnbnVwcyB7XG4gIGJhY2tncm91bmQ6ICNiNThkNTc7XG4gIHN0cm9rZTogI2I1OGQ1Nztcbn1cblxuLmFkbWluLWNoYXJ0LWxlZ2VuZCAuaXMtcGxheWVycyxcbi5hZG1pbi1jaGFydC1saW5lLmlzLXBsYXllcnMge1xuICBiYWNrZ3JvdW5kOiAjNTU3ZDZjO1xuICBzdHJva2U6ICM1NTdkNmM7XG59XG5cbi5hZG1pbi1jaGFydC1sZWdlbmQgLmlzLWNvbXBsZXRpb25zLFxuLmFkbWluLWNoYXJ0LWxpbmUuaXMtY29tcGxldGlvbnMge1xuICBiYWNrZ3JvdW5kOiAjYWE1YjU4O1xuICBzdHJva2U6ICNhYTViNTg7XG59XG5cbi5hZG1pbi10cmVuZC1jaGFydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDI4cHg7XG59XG5cbi5hZG1pbi10cmVuZC1jaGFydCBzdmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjQwcHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4uYWRtaW4tY2hhcnQtZ3JpZGxpbmUge1xuICBzdHJva2U6IHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gIHN0cm9rZS13aWR0aDogMTtcbn1cblxuLmFkbWluLWNoYXJ0LWxpbmUge1xuICBmaWxsOiBub25lO1xuICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gIHN0cm9rZS1saW5lam9pbjogcm91bmQ7XG4gIHN0cm9rZS13aWR0aDogMztcbiAgdmVjdG9yLWVmZmVjdDogbm9uLXNjYWxpbmctc3Ryb2tlO1xufVxuXG4uYWRtaW4tY2hhcnQtYXhpcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIlO1xuICBib3R0b206IDEycHg7XG4gIGxlZnQ6IDIlO1xuICBoZWlnaHQ6IDE2cHg7XG59XG5cbi5hZG1pbi1jaGFydC1heGlzIHNwYW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjY1cmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5hZG1pbi1lbmdhZ2VtZW50LWJhcnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNlLTQpO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5hZG1pbi1lbmdhZ2VtZW50LXJvdyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNzJweCBtaW5tYXgoODBweCwgMWZyKSAzMnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC44MnJlbTtcbn1cblxuLmFkbWluLWVuZ2FnZW1lbnQtdHJhY2sge1xuICBoZWlnaHQ6IDEycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlLWFsdCk7XG59XG5cbi5hZG1pbi1lbmdhZ2VtZW50LXRyYWNrIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLXdpZHRoOiAycHg7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCB2YXIoLS1jb2xvci1zZWNvbmRhcnkpLCB2YXIoLS1jb2xvci1wcmltYXJ5KSk7XG59XG5cbi5hZG1pbi1wYW5lbC1ub3RlIHtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS00KSAwIDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuXG4uYWRtaW4tZ2FtZS10YWJsZS13cmFwIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLmFkbWluLWdhbWUtdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiA5ODBweDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuLmFkbWluLWdhbWUtdGFibGUgdGgsXG4uYWRtaW4tZ2FtZS10YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmFkbWluLWdhbWUtdGFibGUgdGgge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC42NXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDdlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmFkbWluLWdhbWUtdGFibGUgdGQge1xuICBmb250LXNpemU6IDAuODNyZW07XG59XG5cbi5hZG1pbi1nYW1lLXRhYmxlIHRib2R5IHRyOmxhc3QtY2hpbGQgdGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uYWRtaW4tZ2FtZS10YWJsZSB0ZCBzbWFsbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIGZvbnQtc2l6ZTogMC42OHJlbTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmFkbWluLXN0YXR1cy1iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwLjI4cmVtIDAuNTVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBmb250LXNpemU6IDAuNjdyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5hZG1pbi1zdGF0dXMtYmFkZ2UuaXMtc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNzIsIDExMSwgOTEsIDAuMTIpO1xuICBjb2xvcjogdmFyKC0tY29sb3Itc3VjY2Vzcyk7XG59XG5cbi5hZG1pbi1zdGF0dXMtYmFkZ2UuaXMtd2FybmluZyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTc3LCAxNDEsIDYzLCAwLjE1KTtcbiAgY29sb3I6ICM4NTY1MWY7XG59XG5cbi5hZG1pbi1zdGF0dXMtYmFkZ2UuaXMtZGFuZ2VyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgxODQsIDkxLCA4NiwgMC4xMik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1kYW5nZXIpO1xufVxuXG4uYWRtaW4tbWluaS1tZXRyaWNzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYWRtaW4tbWluaS1tZXRyaWNzID4gZGl2IHtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2UtYWx0KTtcbn1cblxuLmFkbWluLW1pbmktbWV0cmljcyBzcGFuLFxuLmFkbWluLW1pbmktbWV0cmljcyBzbWFsbCxcbi5hZG1pbi1taW5pLW1ldHJpY3Mgc3Ryb25nIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5hZG1pbi1taW5pLW1ldHJpY3Mgc3Bhbixcbi5hZG1pbi1taW5pLW1ldHJpY3Mgc21hbGwge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC43MnJlbTtcbn1cblxuLmFkbWluLW1pbmktbWV0cmljcyBzdHJvbmcge1xuICBtYXJnaW46IDRweCAwO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiAxLjdyZW07XG59XG5cbi5hZG1pbi10YXNrLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYWRtaW4tdGFzay1yb3cge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gbWlubWF4KDAsIDFmcikgYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XG59XG5cbi5hZG1pbi10YXNrLXJvdyBzdHJvbmcsXG4uYWRtaW4tdGFzay1yb3cgc21hbGwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmFkbWluLXRhc2stcm93IHNtYWxsIHtcbiAgbWFyZ2luLXRvcDogMnB4O1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC43MnJlbTtcbn1cblxuLmFkbWluLXF1aWNrLWxpbmtzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDAsIDFmcikpO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS00KTtcbn1cblxuLmFkbWluLXF1aWNrLWxpbmtzIGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS00KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xufVxuXG4uYWRtaW4tcXVpY2stbGlua3MgYTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG59XG5cbi5hZG1pbi1xdWljay1saW5rcyBpIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1zZWNvbmRhcnkpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5hZG1pbi1xdWljay1saW5rcyBzdHJvbmcsXG4uYWRtaW4tcXVpY2stbGlua3Mgc21hbGwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmFkbWluLXF1aWNrLWxpbmtzIHNtYWxsIHtcbiAgbWFyZ2luLXRvcDogMnB4O1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC43cmVtO1xufVxuXG4uYWRtaW4tYW5hbHl0aWNzLWV4Y2x1c2lvbi1maWVsZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW1kKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZS1hbHQpO1xufVxuXG4uYWRtaW4tYW5hbHl0aWNzLWV4Y2x1c2lvbi1maWVsZCBpbnB1dCB7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIG1hcmdpbi10b3A6IDNweDtcbn1cblxuLmFkbWluLWFuYWx5dGljcy1leGNsdXNpb24tZmllbGQgLmZvcm0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAycHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLmFkbWluLWtwaS1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gIH1cbiAgLmFkbWluLWRhc2hib2FyZC1zcGxpdCxcbiAgLmFkbWluLWRhc2hib2FyZC1zcGxpdC0tYnVzaW5lc3Mge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICB9XG4gIC5hZG1pbi1xdWljay1saW5rcyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzIwcHgpIHtcbiAgLmFkbWluLW92ZXJ2aWV3IHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtNCk7XG4gIH1cbiAgLmFkbWluLW92ZXJ2aWV3X19oZWFkZXIsXG4gIC5hZG1pbi1zZWN0aW9uLWhlYWRpbmcsXG4gIC5hZG1pbi1wYW5lbC1oZWFkZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLmFkbWluLW92ZXJ2aWV3X191cGRhdGVkIHtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG4gIC5hZG1pbi1kYXNoYm9hcmQtZmlsdGVyc19fZm9ybSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cbiAgLmFkbWluLWRhc2hib2FyZC1maWx0ZXJzX19zdWJtaXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5hZG1pbi1hbGVydC1ncmlkLFxuICAuYWRtaW4ta3BpLWdyaWQsXG4gIC5hZG1pbi1taW5pLW1ldHJpY3MsXG4gIC5hZG1pbi1xdWljay1saW5rcyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cbiAgLmFkbWluLWRhc2hib2FyZC1wYW5lbCB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtNCk7XG4gIH1cbiAgLmFkbWluLWNoYXJ0LWxlZ2VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5hZG1pbi10cmVuZC1jaGFydCBzdmcge1xuICAgIGhlaWdodDogMTkwcHg7XG4gIH1cbn1cbi5mbGFzaC1zdGFjayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiB2YXIoLS1zcGFjZS0zKTtcbiAgcmlnaHQ6IHZhcigtLXNwYWNlLTMpO1xuICBtYXgtd2lkdGg6IDMyMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICB6LWluZGV4OiA5OTk7XG59XG5cbi5zY2hlZHVsZWQtdGFzay1wYWdlLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTUpO1xufVxuXG4uc2NoZWR1bGVkLXRhc2stcGFnZS1oZWFkZXIgcCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5zY2hlZHVsZWQtdGFzay1hY3Rpb25zIHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uc2NoZWR1bGVkLXRhc2stc3VtbWFyeS1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgzMjBweCwgMWZyKSk7XG4gIGdhcDogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5zY2hlZHVsZWQtdGFzay1jYXJkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS00KTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tZCk7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zb2Z0KTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtNSk7XG59XG5cbi5zY2hlZHVsZWQtdGFzay1jYXJkX19oZWFkZXIsXG4uc2NoZWR1bGVkLXRhc2stY2FyZF9fZm9vdGVyLFxuLnNjaGVkdWxlZC10YXNrLWhpc3RvcnktaGVhZGVyIHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uc2NoZWR1bGVkLXRhc2stY2FyZF9faGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLnNjaGVkdWxlZC10YXNrLWNhcmRfX2hlYWRlciBwLFxuLnNjaGVkdWxlZC10YXNrLWNhcmRfX2Zvb3RlciBzcGFuLFxuLnNjaGVkdWxlZC10YXNrLWhpc3RvcnktaGVhZGVyIHAge1xuICBtYXJnaW46IDA7XG59XG5cbi5zY2hlZHVsZWQtdGFzay1jYXJkX19uYW1lLFxuLnNjaGVkdWxlZC10YXNrLWNvZGUge1xuICBmb250LWZhbWlseTogdWktbW9ub3NwYWNlLCBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAwLjg2cmVtO1xuICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbn1cblxuLnNjaGVkdWxlZC10YXNrLWNhcmRfX25hbWUge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbn1cblxuLnNjaGVkdWxlZC10YXNrLW1ldHJpY3Mge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG4gIG1hcmdpbjogMDtcbn1cblxuLnNjaGVkdWxlZC10YXNrLW1ldHJpY3MgZGl2IHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZS1hbHQpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLnNjaGVkdWxlZC10YXNrLW1ldHJpY3MgZHQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC43OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtMSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5zY2hlZHVsZWQtdGFzay1tZXRyaWNzIGRkIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnNjaGVkdWxlZC10YXNrLWNhcmRfX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuODZyZW07XG59XG5cbi5zY2hlZHVsZWQtdGFzay1iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogMS42NXJlbTtcbiAgcGFkZGluZzogMC4ycmVtIDAuNjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiAwLjc2cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc2NoZWR1bGVkLXRhc2stYmFkZ2UtLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDc5LCAxMjIsIDEwNCwgMC4xNCk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSg3OSwgMTIyLCAxMDQsIDAuMzUpO1xuICBjb2xvcjogIzJmNGMzZTtcbn1cblxuLnNjaGVkdWxlZC10YXNrLWJhZGdlLS1mYWlsdXJlLFxuLnNjaGVkdWxlZC10YXNrLWJhZGdlLS1kYW5nZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDE4NCwgOTEsIDg2LCAwLjE0KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDE4NCwgOTEsIDg2LCAwLjM1KTtcbiAgY29sb3I6ICM2ZTJmMmI7XG59XG5cbi5zY2hlZHVsZWQtdGFzay1iYWRnZS0tcnVubmluZyxcbi5zY2hlZHVsZWQtdGFzay1iYWRnZS0taW5mbyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTExLCAxMzgsIDE2NSwgMC4xNik7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgxMTEsIDEzOCwgMTY1LCAwLjM1KTtcbiAgY29sb3I6ICMzMTQyNTQ7XG59XG5cbi5zY2hlZHVsZWQtdGFzay1iYWRnZS0td2FybmluZyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTk0LCAxNjAsIDc3LCAwLjE2KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDE5NCwgMTYwLCA3NywgMC4zNSk7XG4gIGNvbG9yOiAjNWI0NTIxO1xufVxuXG4uc2NoZWR1bGVkLXRhc2stYmFkZ2UtLW5ldXRyYWwge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbn1cblxuLnNjaGVkdWxlZC10YXNrLXRhYmxlLXdyYXAge1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4uc2NoZWR1bGVkLXRhc2staGlzdG9yeSB0aCxcbi5zY2hlZHVsZWQtdGFzay1oaXN0b3J5IHRkIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnNjaGVkdWxlZC10YXNrLWVycm9yIHtcbiAgbWF4LXdpZHRoOiAzMjBweDtcbiAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG59XG5cbi5zY2hlZHVsZWQtdGFzay1tZXRhZGF0YSBzdW1tYXJ5IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXNlY29uZGFyeSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnNjaGVkdWxlZC10YXNrLW1ldGFkYXRhIHByZSB7XG4gIG1heC13aWR0aDogMzYwcHg7XG4gIG1heC1oZWlnaHQ6IDI0MHB4O1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS0yKSAwIDA7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlLWFsdCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgZm9udC1zaXplOiAwLjc4cmVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLnNjaGVkdWxlZC10YXNrLXBhZ2UtaGVhZGVyLFxuICAuc2NoZWR1bGVkLXRhc2stY2FyZF9faGVhZGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5zY2hlZHVsZWQtdGFzay1zdW1tYXJ5LWdyaWQsXG4gIC5zY2hlZHVsZWQtdGFzay1tZXRyaWNzIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuICB9XG59XG4uYWRtaW4tY2hhbGxlbmdlLWNvbnRlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmFkbWluLWNoYWxsZW5nZS1jb250ZW50ID4gc3VtbWFyeSB7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZS1hbHQpO1xufVxuLmFkbWluLWNoYWxsZW5nZS1jb250ZW50ID4gc3VtbWFyeSBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xufVxuLmFkbWluLWNoYWxsZW5nZS1jb250ZW50X19ib2R5IHtcbiAgcGFkZGluZzogMTZweDtcbn1cbi5hZG1pbi1jaGFsbGVuZ2UtY29udGVudCBmaWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uYWRtaW4tY2hhbGxlbmdlLWNvbnRlbnQgbGVnZW5kIHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG59XG4uYWRtaW4tY2hhbGxlbmdlLWNvbnRlbnQgZmllbGRzZXRbaGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYWRtaW4tY2hhbGxlbmdlLWNvbnRlbnQgc3VtbWFyeTpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLXRleHQpO1xuICBvdXRsaW5lLW9mZnNldDogLTNweDtcbn1cblxuLmFkbWluLWNoYWxsZW5nZS1hbnN3ZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4yZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuLmFkbWluLWNoYWxsZW5nZS13b3JkLWxpc3Qgc3VtbWFyeSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5hZG1pbi1jaGFsbGVuZ2Utd29yZC1saXN0IHAge1xuICBtYXgtaGVpZ2h0OiAyNDBweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLmFkbWluLWNoYWxsZW5nZS1ncm91cCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1sZWZ0OiA2cHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBwYWRkaW5nOiAxNnB4O1xufVxuLmFkbWluLWNoYWxsZW5nZS1ncm91cFtkYXRhLWRpZmZpY3VsdHk9eWVsbG93XSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZDRhZDIyO1xufVxuLmFkbWluLWNoYWxsZW5nZS1ncm91cFtkYXRhLWRpZmZpY3VsdHk9Z3JlZW5dIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICM2Yjk0M2Q7XG59XG4uYWRtaW4tY2hhbGxlbmdlLWdyb3VwW2RhdGEtZGlmZmljdWx0eT1ibHVlXSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjNGU4M2M0O1xufVxuLmFkbWluLWNoYWxsZW5nZS1ncm91cFtkYXRhLWRpZmZpY3VsdHk9cHVycGxlXSB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjOTg2NGI1O1xufVxuXG4uYWRtaW4tY2hhbGxlbmdlLXN1ZG9rdSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDQxNHB4O1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci10ZXh0KTtcbn1cbi5hZG1pbi1jaGFsbGVuZ2Utc3Vkb2t1IHRkIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbn1cbi5hZG1pbi1jaGFsbGVuZ2Utc3Vkb2t1IHRkOm50aC1jaGlsZCgzbikge1xuICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCB2YXIoLS1jb2xvci10ZXh0KTtcbn1cbi5hZG1pbi1jaGFsbGVuZ2Utc3Vkb2t1IHRyOm50aC1jaGlsZCgzbikgdGQge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY29sb3ItdGV4dCk7XG59XG4uYWRtaW4tY2hhbGxlbmdlLXN1ZG9rdSBpbnB1dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IGNsYW1wKDAuODVyZW0sIDN2dywgMS4yNXJlbSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG59XG4uYWRtaW4tY2hhbGxlbmdlLXN1ZG9rdSBpbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1jb2xvci10ZXh0KTtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2UtYWx0KTtcbn1cblxuLmFkbWluLXN1ZG9rdS1wcmV2aWV3IHRkIHNwYW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYXNwZWN0LXJhdGlvOiAxO1xuICBmb250LXNpemU6IGNsYW1wKDAuODVyZW0sIDN2dywgMS4yNXJlbSk7XG59XG5cbi5hZG1pbi1idWxrLWNoYWxsZW5nZXMgLmNvZGUtYmxvY2sge1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4uc3Vkb2t1LXNjaGVkdWxlLWFjdGlvbnMge1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5zdWRva3Utd2Vla2x5LXBhdHRlcm4ge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLnN1ZG9rdS1wYXR0ZXJuLWRheXMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDEyMHB4LCAxZnIpKTtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLnN1ZG9rdS1nZW5lcmF0aW9uLXByb2dyZXNzIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zdWRva3UtY2FsZW5kYXItZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDcsIG1pbm1heCgwLCAxZnIpKTtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLnN1ZG9rdS1jYWxlbmRhci1oZWFkaW5nIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uc3Vkb2t1LWNhbGVuZGFyLWRheSB7XG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2UtYWx0KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbn1cbi5zdWRva3UtY2FsZW5kYXItZGF5IC5zZWxlY3QsIC5zdWRva3UtY2FsZW5kYXItZGF5IC5mb3JtLXNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTIpO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuLnN1ZG9rdS1jYWxlbmRhci1kYXkgdGltZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0yKTtcbn1cbi5zdWRva3UtY2FsZW5kYXItZGF5LmlzLW9jY3VwaWVkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG59XG5cbi5zdWRva3UtY2FsZW5kYXItd2Vla2RheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zdWRva3UtY2FsZW5kYXItbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4uc3Vkb2t1LWNhbGVuZGFyLWV4aXN0aW5nLCAuc3Vkb2t1LWRhdGUtb3ZlcnJpZGUge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzAwcHgpIHtcbiAgLnN1ZG9rdS1jYWxlbmRhci1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuICB9XG4gIC5zdWRva3UtY2FsZW5kYXItaGVhZGluZywgLnN1ZG9rdS1jYWxlbmRhci1ibGFuayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuc3Vkb2t1LWNhbGVuZGFyLXdlZWtkYXkge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxuICAuc3Vkb2t1LWNhbGVuZGFyLWRheSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg5MHB4LCAxZnIpIG1pbm1heCgwLCAxLjVmcik7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICB9XG4gIC5zdWRva3UtY2FsZW5kYXItZGF5IHRpbWUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi5hZC1nYXRlLXBhZ2Uge1xuICAtLWFkLWluazogIzBiMGIwYTtcbiAgLS1hZC1wYXBlcjogI2ZmZmRmODtcbiAgLS1hZC1saW5lOiByZ2JhKDExLCAxMSwgMTAsIDAuMTgpO1xuICAtLWFkLW11dGVkOiAjNWY1OTUxO1xuICAtLWFkLXNvZnQ6ICNmNGYwZTg7XG4gIC0tYWQtbWludDogIzc4ZDJjOTtcbiAgLS1hZC1taW50LXNvZnQ6ICNkZmVlZTU7XG4gIC0tYWQteWVsbG93OiAjZjRjZjRmO1xuICAtLWFkLWxhdmVuZGVyLXNvZnQ6ICNlY2U1ZjU7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA3MnB4KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogY2xhbXAoMS41cmVtLCA1dncsIDNyZW0pIDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAzKSAxcHgsIHRyYW5zcGFyZW50IDFweCksIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMTEsIDExLCAxMCwgMC4wMykgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCB2YXIoLS1hZC1wYXBlcik7XG4gIGJhY2tncm91bmQtc2l6ZTogMzRweCAzNHB4O1xuICBjb2xvcjogdmFyKC0tYWQtaW5rKTtcbn1cblxuLmFkLWdhdGUtcGFnZSAuYXBwLWNvbnRhaW5lciwgLmFkLWdhdGUtcGFnZSAuY29udGFpbmVyIHtcbiAgd2lkdGg6IG1pbigxMDAlLCA3NjBweCk7XG59XG5cbi5hZC1nYXRlLXBhbmVsIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiBjbGFtcCgxcmVtLCAzdncsIDEuMzVyZW0pO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IGNsYW1wKDFyZW0sIDMuNHZ3LCAxLjZyZW0pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1hZC1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAxOHB4IDM4cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA3KTtcbn1cblxuLmFkLWdhdGUtdG9wbGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiAxcmVtO1xufVxuXG4uYWQtZ2F0ZS1raWNrZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWluLWhlaWdodDogMzRweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAwLjlyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWFkLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYWQtbWludC1zb2Z0KTtcbiAgY29sb3I6IHZhcigtLWFkLWluayk7XG4gIGZvbnQtc2l6ZTogMC43MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmFkLWdhdGUtc2xvdCB7XG4gIG1pbi1oZWlnaHQ6IGNsYW1wKDIzMHB4LCA0NHZ3LCAzNDBweCk7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYWQtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCksIHZhcigtLWFkLXNvZnQpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDI4cHggMjhweDtcbn1cblxuLmFkLWdhdGUtc2xvdDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMXJlbTtcbiAgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMTEsIDExLCAxMCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5hZC1nYXRlLXNsb3RfX2JvZHkge1xuICBkaXNwbGF5OiBncmlkO1xuICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC4zNXJlbTtcbiAgbWF4LXdpZHRoOiAxOHJlbTtcbiAgcGFkZGluZzogMS41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1hZC1tdXRlZCk7XG59XG5cbi5hZC1nYXRlLXNsb3RfX21hcmsge1xuICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgd2lkdGg6IDU4cHg7XG4gIGhlaWdodDogNThweDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tYWQtaW5rKTtcbiAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYWQteWVsbG93KTtcbiAgY29sb3I6IHZhcigtLWFkLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDEuNjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMmRlZyk7XG59XG5cbi5hZC1nYXRlLXNsb3RfX2JvZHkgcCB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5hZC1nYXRlLWNvbnRlbnQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMXJlbTtcbn1cblxuLmFkLWdhdGUtZ2FtZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1pbi13aWR0aDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjg1cmVtO1xufVxuXG4uYWQtZ2F0ZS1nYW1lX19pY29uIHtcbiAgd2lkdGg6IDUycHg7XG4gIGhlaWdodDogNTJweDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZmxleDogMCAwIGF1dG87XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWFkLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1hZC1taW50LXNvZnQpO1xuICBmb250LXNpemU6IDEuMzVyZW07XG59XG5cbi5hZC1nYXRlLWdhbWVfX2ltYWdlIHtcbiAgd2lkdGg6IDM0cHg7XG4gIGhlaWdodDogMzRweDtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLmFkLWdhdGUtZ2FtZSBoMSB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWFkLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IGNsYW1wKDEuODVyZW0sIDV2dywgM3JlbSk7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMC45NTtcbn1cblxuLmFkLWdhdGUtZ2FtZSBwIHtcbiAgbWF4LXdpZHRoOiAyNXJlbTtcbiAgbWFyZ2luOiAwLjQycmVtIDAgMDtcbiAgY29sb3I6IHZhcigtLWFkLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjk2cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuXG4uYWQtZ2F0ZS1nYW1lIHN0cm9uZyB7XG4gIGNvbG9yOiB2YXIoLS1hZC1pbmspO1xufVxuXG4uYWQtZ2F0ZS10aW1lciB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNDJyZW07XG4gIGNvbG9yOiB2YXIoLS1hZC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC43MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmFkLWdhdGUtcHJvZ3Jlc3Mge1xuICAtLWFkLXByb2dyZXNzOiAwJTtcbiAgd2lkdGg6IDU0cHg7XG4gIGhlaWdodDogNTRweDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IGNvbmljLWdyYWRpZW50KHZhcigtLWFkLW1pbnQpIHZhcigtLWFkLXByb2dyZXNzKSwgdmFyKC0tYWQtc29mdCkgMCk7XG59XG5cbi5hZC1nYXRlLXByb2dyZXNzOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiA1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWFkLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uYWQtZ2F0ZS1wcm9ncmVzcyBzcGFuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBjb2xvcjogdmFyKC0tYWQtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5hZC1nYXRlLWFjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uYWQtZ2F0ZS1jb250aW51ZSB7XG4gIG1pbi13aWR0aDogbWluKDEwMCUsIDI1MHB4KTtcbiAgbWluLWhlaWdodDogNTRweDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAuNjVyZW0gNHJlbSAwLjY1cmVtIDJyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWFkLWluayk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1hZC1pbmspO1xuICBjb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UsIHRyYW5zZm9ybSAwLjJzIGVhc2U7XG59XG5cbi5hZC1nYXRlLWNvbnRpbnVlOmRpc2FibGVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xufVxuXG4uYWQtZ2F0ZS1jb250aW51ZV9faWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ncmlkO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwLjM4cmVtO1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYWQteWVsbG93KTtcbiAgY29sb3I6IHZhcigtLWFkLWluayk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmFkLWdhdGUtY29udGludWUuaXMtcmVhZHkge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi5hZC1nYXRlLXBhZ2UgLnRleHQtbXV0ZWQge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1hZC1tdXRlZCk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xuICAuYWQtZ2F0ZS1wYWdlIHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBtaW4taGVpZ2h0OiAxMDBkdmg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgcGFkZGluZzogY2FsYyhlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCkgKyAwLjc1cmVtKSAwIGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pICsgMXJlbSk7XG4gIH1cbiAgLmFkLWdhdGUtcGFnZSAuYXBwLWNvbnRhaW5lciwgLmFkLWdhdGUtcGFnZSAuY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5hZC1nYXRlLXBhbmVsIHtcbiAgICBhbGlnbi1jb250ZW50OiBzdGFydDtcbiAgICBib3JkZXItcmFkaXVzOiAyMnB4O1xuICB9XG4gIC5hZC1nYXRlLXNsb3Qge1xuICAgIG1pbi1oZWlnaHQ6IDI2MHB4O1xuICB9XG4gIC5hZC1nYXRlLWNvbnRlbnQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICB9XG4gIC5hZC1nYXRlLWdhbWUge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5hZC1nYXRlLWdhbWUgaDEge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMnJlbSwgMTF2dywgMi43NXJlbSk7XG4gIH1cbiAgLmFkLWdhdGUtYWN0aW9ucyB7XG4gICAganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuICB9XG4gIC5hZC1nYXRlLWNvbnRpbnVlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmhlbHAtbW9kYWwgLm1vZGFsX19kaWFsb2cge1xuICB3aWR0aDogbWluKDY4MHB4LCA5NXZ3KTtcbn1cbi5oZWxwLW1vZGFsIC5tb2RhbF9fdGl0bGUge1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luOiAwO1xufVxuXG4uaGVscC1sZWFkIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0zKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xufVxuXG4uaGVscC1zdGVwcyB7XG4gIG1hcmdpbjogMCAwIHZhcigtLXNwYWNlLTQpO1xuICBwYWRkaW5nLWxlZnQ6IDEuMnJlbTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xufVxuLmhlbHAtc3RlcHMgbGkge1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uaGVscC1leGFtcGxlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZS1hbHQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmhlbHAtbGFiZWwge1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbn1cblxuLmhlbHAtY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIG1hcmdpbjogMDtcbn1cblxuLmhlbHAtd29yZGxlLXJvdyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIG1pbm1heCgzNnB4LCA0OHB4KSk7XG4gIGdhcDogdmFyKC0tc3BhY2UtNik7XG4gIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG59XG5cbi5oZWxwLWJlZS1kZW1vIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5oZWxwLWJlZS1kZW1vIC5iZWUtaG9uZXljb21iIHtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmhlbHAtYmVlLWRlbW8gLmJlZS1yb3cge1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xufVxuXG4uaGVscC1iZWUtZGVtbyAuYmVlLWxldHRlciB7XG4gIHdpZHRoOiA1NHB4O1xuICBoZWlnaHQ6IDQ4cHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLmhlbHAtYmVlLXdvcmQge1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xufVxuXG4uaGVscC1oaWdobGlnaHQge1xuICBjb2xvcjogdmFyKC0tY29sb3Itc2Vjb25kYXJ5KTtcbn1cblxuLmhlbHAtY29ubmVjdGlvbnMtcm93IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xufVxuXG4uaGVscC1jb25uZWN0aW9ucy1yb3cgLmNvbm5lY3Rpb25zLXRpbGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLyogUFdBLXNwZWNpZmljIHN0eWxlcyAqL1xuLyogSGlkZSBicm93c2VyIFVJIGVsZW1lbnRzIHdoZW4gcnVubmluZyBhcyBQV0EgKi9cbkBtZWRpYSAoZGlzcGxheS1tb2RlOiBzdGFuZGFsb25lKSB7XG4gIGJvZHkge1xuICAgIC8qIEVuc3VyZSBmdWxsIHNjcmVlbiBleHBlcmllbmNlICovXG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICB9XG4gIC8qIEhpZGUgc2Nyb2xsYmFycyBvbiBtb2JpbGUgKi9cbiAgOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAvKiBQcmV2ZW50IHRleHQgc2VsZWN0aW9uIG9uIGJ1dHRvbnMgKi9cbiAgLmJ0biwgLmJ0bi1zdWNjZXNzLCAuYnRuLXdhcm5pbmcsIC5idG4tZGFuZ2VyLCAuYnRuLWluZm8sIC5idG4tb3V0bGluZS1wcmltYXJ5LFxuICAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5LFxuICAuYnRuLW91dGxpbmUtc3VjY2VzcyxcbiAgLmJ0bi1vdXRsaW5lLWRhbmdlcixcbiAgLmJ0bi1vdXRsaW5lLXdhcm5pbmcsXG4gIC5idG4tb3V0bGluZS1pbmZvIHtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG59XG4vKiBPZmZsaW5lIGluZGljYXRvciBzdHlsZXMgKi9cbmJvZHkub2ZmbGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuYm9keS5vZmZsaW5lOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlNpbiBjb25leGnDs25cIjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY2YjZiO1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogNHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIHotaW5kZXg6IDk5OTk7XG59XG5cbi8qIFBXQSBtb2RlIHNwZWNpZmljIHN0eWxlcyAqL1xuYm9keS5wd2EtbW9kZSB7XG4gIC8qIEFkZCBhbnkgUFdBLXNwZWNpZmljIHN0eWxpbmcgKi9cbn1cblxuLyogQmV0dGVyIHRvdWNoIHRhcmdldHMgZm9yIG1vYmlsZSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5idG4sIC5idG4tc3VjY2VzcywgLmJ0bi13YXJuaW5nLCAuYnRuLWRhbmdlciwgLmJ0bi1pbmZvLCAuYnRuLW91dGxpbmUtcHJpbWFyeSxcbiAgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSxcbiAgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MsXG4gIC5idG4tb3V0bGluZS1kYW5nZXIsXG4gIC5idG4tb3V0bGluZS13YXJuaW5nLFxuICAuYnRuLW91dGxpbmUtaW5mbyB7XG4gICAgbWluLWhlaWdodDogNDRweDtcbiAgICBtaW4td2lkdGg6IDQ0cHg7XG4gIH1cbiAgaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEge1xuICAgIGZvbnQtc2l6ZTogMTZweDsgLyogUHJldmVudHMgem9vbSBvbiBpT1MgKi9cbiAgfVxufVxuLyogU2FmZSBhcmVhIGluc2V0cyBmb3Igbm90Y2hlZCBkZXZpY2VzICovXG5Ac3VwcG9ydHMgKHBhZGRpbmc6IG1heCgwcHgpKSB7XG4gIGJvZHkge1xuICAgIHBhZGRpbmctbGVmdDogbWF4KDBweCwgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gICAgcGFkZGluZy1yaWdodDogbWF4KDBweCwgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpO1xuICAgIHBhZGRpbmctdG9wOiBtYXgoMHB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCkpO1xuICAgIHBhZGRpbmctYm90dG9tOiBtYXgoMHB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO1xuICB9XG59XG4ucG9saWN5LXBhZ2Uge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS02KSAwIHZhcigtLXNwYWNlLTcpO1xufVxuXG4ucG9saWN5LWNhcmQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucG9saWN5LWhlYWRlciB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTUpIHZhcigtLXNwYWNlLTUpIHZhcigtLXNwYWNlLTQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgI2ZiZjdmMSAwJSwgI2ZmZiAxMDAlKTtcbn1cblxuLnBvbGljeS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDIuMXJlbTtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tc3BhY2UtMik7XG59XG5cbi5wb2xpY3ktbWV0YSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xufVxuXG4ucG9saWN5LWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS01KTtcbn1cblxuLnBvbGljeS1jb250ZW50IHtcbiAgZm9udC1zaXplOiAxLjA1cmVtO1xuICBsaW5lLWhlaWdodDogMS43NTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xufVxuLnBvbGljeS1jb250ZW50IHAge1xuICBtYXJnaW46IDAgMCB2YXIoLS1zcGFjZS0zKTtcbn1cbi5wb2xpY3ktY29udGVudCBoMiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS01KSAwIHZhcigtLXNwYWNlLTIpO1xufVxuLnBvbGljeS1jb250ZW50IGgzIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS00KSAwIHZhcigtLXNwYWNlLTIpO1xufVxuLnBvbGljeS1jb250ZW50IHVsIHtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tc3BhY2UtMyk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtNSk7XG59XG4ucG9saWN5LWNvbnRlbnQgbGkge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0yKTtcbn1cbi5wb2xpY3ktY29udGVudCBzdHJvbmcge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucG9saWN5LXBhZ2Uge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLTUpIDAgdmFyKC0tc3BhY2UtNik7XG4gIH1cbiAgLnBvbGljeS1oZWFkZXIsXG4gIC5wb2xpY3ktYm9keSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtNCk7XG4gIH1cbiAgLnBvbGljeS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG59XG5ib2R5Omhhcyguc3VwcG9ydC1wYWdlKSB7XG4gIC0taG9tZS1pbms6ICMwYjBiMGE7XG4gIC0taG9tZS1wYXBlcjogI2ZmZmRmODtcbiAgLS1ob21lLXNvZnQ6ICNmNGYwZTg7XG4gIC0taG9tZS1saW5lOiByZ2JhKDExLCAxMSwgMTAsIDAuMTgpO1xuICAtLWhvbWUtbXV0ZWQ6ICM1NjUyNGM7XG4gIC0taG9tZS1taW50OiAjNjdiMjhiO1xuICAtLWhvbWUteWVsbG93OiAjZjRjZjRmO1xuICBjb2xvcjogdmFyKC0taG9tZS1pbmspO1xuICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCByZ2JhKDEwMywgMTc4LCAxMzksIDAuMDgpLCB0cmFuc3BhcmVudCAyOHJlbSksIHZhcigtLWhvbWUtcGFwZXIpO1xufVxuXG4uc3VwcG9ydC1wYWdlIHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tc3BhY2UtNykgKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMTEsIDExLCAxMCwgMC4wMjUpIDFweCwgdHJhbnNwYXJlbnQgMXB4KSwgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCB2YXIoLS1ob21lLXBhcGVyKTtcbiAgYmFja2dyb3VuZC1zaXplOiAzNHB4IDM0cHg7XG59XG5cbi5zdXBwb3J0LXBhZ2UgLmFwcC1jb250YWluZXIsIC5zdXBwb3J0LXBhZ2UgLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogNzYwcHg7XG59XG5cbi5zdXBwb3J0LWhlcm8ge1xuICBwYWRkaW5nOiBjbGFtcCgycmVtLCA0dncsIDRyZW0pIDAgdmFyKC0tc3BhY2UtNSk7XG59XG5cbi5zdXBwb3J0LWtpY2tlciB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAzNnB4O1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS00KTtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ob21lLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLWhvbWUtaW5rKTtcbiAgZm9udC1zaXplOiAwLjcycmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5zdXBwb3J0LWhlcm8tdGl0bGUge1xuICBtYXgtd2lkdGg6IDE2Y2g7XG4gIG1hcmdpbjogMCAwIHZhcigtLXNwYWNlLTMpO1xuICBjb2xvcjogdmFyKC0taG9tZS1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCgzcmVtLCA4dncsIDVyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMC45NDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5cbi5zdXBwb3J0LWhlcm8tYWNjZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zdXBwb3J0LWhlcm8tYWNjZW50OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTAuMDVlbTtcbiAgcmlnaHQ6IC0wLjA1ZW07XG4gIGJvdHRvbTogMC4wMmVtO1xuICB6LWluZGV4OiAtMTtcbiAgaGVpZ2h0OiAwLjE0ZW07XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ob21lLW1pbnQpO1xufVxuXG4uc3VwcG9ydC1oZXJvLXN1YiB7XG4gIG1heC13aWR0aDogNDhjaDtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogdmFyKC0taG9tZS1pbmspO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLnN1cHBvcnQtYm9keSB7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS02KTtcbn1cblxuLnN1cHBvcnQtY29udGFjdC1jdGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogMS4ycmVtO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogNzhweDtcbiAgcGFkZGluZzogMC42cmVtIDAuNjZyZW0gMC42cmVtIDEuN3JlbTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0taG9tZS1pbmspO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3gtc2hhZG93OiAwIDE4cHggNDJweCByZ2JhKDExLCAxMSwgMTAsIDAuMTgpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNnMgZWFzZSwgYm94LXNoYWRvdyAwLjE2cyBlYXNlO1xufVxuXG4uc3VwcG9ydC1jb250YWN0LWN0YTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gIGJveC1zaGFkb3c6IDAgMjJweCA0OHB4IHJnYmEoMTEsIDExLCAxMCwgMC4yMik7XG59XG5cbi5zdXBwb3J0LWNvbnRhY3QtY3RhX190ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAwLjE4cmVtO1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5zdXBwb3J0LWNvbnRhY3QtY3RhX19sYWJlbCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjYpO1xuICBmb250LXNpemU6IDAuODJyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5zdXBwb3J0LWNvbnRhY3QtY3RhX19lbWFpbCB7XG4gIGZvbnQtc2l6ZTogMS4zMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5zdXBwb3J0LXNlY3Rpb24taGVhZGluZyB7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2UtNikgMCB2YXIoLS1zcGFjZS00KTtcbn1cblxuLnN1cHBvcnQtc2VjdGlvbi1sYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWhvbWUtaW5rKTtcbiAgZm9udC1zaXplOiAwLjc4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnN1cHBvcnQtZmFxIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taG9tZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjhweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAyMnB4IDQ2cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA4KTtcbn1cblxuLmZhcS1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWhvbWUtbGluZSk7XG59XG4uZmFxLWl0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5mYXEtcXVlc3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTQpIHZhcigtLXNwYWNlLTUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1ob21lLWluayk7XG4gIGZvbnQtc2l6ZTogMS4wOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZTtcbn1cbi5mYXEtcXVlc3Rpb246Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmZhcS1xdWVzdGlvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIitcIjsgLyogKyAqL1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAzNHB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0taG9tZS1zb2Z0KTtcbiAgY29sb3I6IHZhcigtLWhvbWUtaW5rKTtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLmZhcS1xdWVzdGlvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTEsIDExLCAxMCwgMC4wMik7XG59XG5cbi5mYXEtaXRlbVtvcGVuXSA+IC5mYXEtcXVlc3Rpb246OmFmdGVyIHtcbiAgY29udGVudDogXCLiiJJcIjsgLyog4oiSICovXG4gIGJhY2tncm91bmQ6IHZhcigtLWhvbWUteWVsbG93KTtcbn1cblxuLmZhcS1hbnN3ZXIge1xuICBwYWRkaW5nOiAwIHZhcigtLXNwYWNlLTUpIHZhcigtLXNwYWNlLTUpO1xuICBjb2xvcjogdmFyKC0taG9tZS1pbmspO1xuICBmb250LXNpemU6IDEuMDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG4uZmFxLWFuc3dlciBwIHtcbiAgbWFyZ2luOiAwO1xufVxuLmZhcS1hbnN3ZXIgYSB7XG4gIGNvbG9yOiB2YXIoLS1ob21lLWluayk7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAxcHg7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC4xOGVtO1xufVxuXG4uc3VwcG9ydC1saW5rcyB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1ob21lLW11dGVkKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnN1cHBvcnQtbGluayB7XG4gIGNvbG9yOiB2YXIoLS1ob21lLWluayk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5zdXBwb3J0LWxpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnN1cHBvcnQtbGlua3NfX3NlcCB7XG4gIG1hcmdpbjogMCB2YXIoLS1zcGFjZS0yKTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gIC5zdXBwb3J0LWhlcm8tdGl0bGUsXG4gIC5zdXBwb3J0LWhlcm8tc3ViLFxuICAuc3VwcG9ydC1jb250YWN0LWN0YSxcbiAgLnN1cHBvcnQtZmFxIHtcbiAgICBhbmltYXRpb246IHN1cHBvcnQtcmlzZSAwLjQycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSkgYm90aDtcbiAgfVxuICAuc3VwcG9ydC1jb250YWN0LWN0YSB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjA0cztcbiAgfVxuICAuc3VwcG9ydC1mYXEge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMC4wOHM7XG4gIH1cbn1cbkBrZXlmcmFtZXMgc3VwcG9ydC1yaXNlIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTZweCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTYwcHgpIHtcbiAgLnN1cHBvcnQtcGFnZSAuYXBwLWNvbnRhaW5lciwgLnN1cHBvcnQtcGFnZSAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLTMpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLTMpO1xuICB9XG4gIC5zdXBwb3J0LWhlcm8ge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS01KTtcbiAgfVxuICAuc3VwcG9ydC1jb250YWN0LWN0YSB7XG4gICAgbWluLWhlaWdodDogNzBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuM3JlbTtcbiAgfVxuICAuc3VwcG9ydC1jb250YWN0LWN0YV9fZW1haWwge1xuICAgIGZvbnQtc2l6ZTogMS4xMnJlbTtcbiAgfVxuICAuZmFxLXF1ZXN0aW9uIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS00KTtcbiAgICBmb250LXNpemU6IDEuMDJyZW07XG4gIH1cbiAgLmZhcS1hbnN3ZXIge1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtNCkgdmFyKC0tc3BhY2UtNCk7XG4gIH1cbn1cbmJvZHk6aGFzKC5wcm9maWxlLXBhZ2UpIHtcbiAgLS1wcm9maWxlLWluazogIzBiMGIwYTtcbiAgLS1wcm9maWxlLXBhcGVyOiAjZmZmZGY4O1xuICAtLXByb2ZpbGUtc29mdDogI2Y0ZjBlODtcbiAgLS1wcm9maWxlLWxpbmU6IHJnYmEoMTEsIDExLCAxMCwgMC4xOCk7XG4gIC0tcHJvZmlsZS1tdXRlZDogIzViNTY1MDtcbiAgLS1wcm9maWxlLW1pbnQ6ICM2N2IyOGI7XG4gIC0tcHJvZmlsZS1taW50LXNvZnQ6ICNkZmVlZTU7XG4gIC0tcHJvZmlsZS15ZWxsb3c6ICNmNGNmNGY7XG4gIC0tcHJvZmlsZS15ZWxsb3ctc29mdDogI2ZmZjBiOTtcbiAgLS1wcm9maWxlLWxhdmVuZGVyOiAjOTI3NmM4O1xuICAtLXByb2ZpbGUtbGF2ZW5kZXItc29mdDogI2VjZTVmNTtcbiAgLS1wcm9maWxlLXJvc2U6ICNkNThhODk7XG4gIC0tcHJvZmlsZS1yb3NlLXNvZnQ6ICNmM2RhZGE7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByb2ZpbGUtcGFwZXIpO1xufVxuXG5ib2R5OmhhcygucHJvZmlsZS1wYWdlKSAuYXBwLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTMsIDI0OCwgMC45Mik7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1wcm9maWxlLWxpbmUpO1xuICBib3gtc2hhZG93OiBub25lO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMThweCk7XG59XG5cbmJvZHk6aGFzKC5wcm9maWxlLXBhZ2UpIC5hcHAtYnJhbmQsXG5ib2R5OmhhcygucHJvZmlsZS1wYWdlKSAubmF2LWxpbmsge1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1pbmspO1xufVxuXG5ib2R5OmhhcygucHJvZmlsZS1wYWdlKSAudGV4dC1ncmFkaWVudCB7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi5wcm9maWxlLXBhZ2Uge1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyh2YXIoLS1zcGFjZS03KSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDI1KSAxcHgsIHRyYW5zcGFyZW50IDFweCksIHZhcigtLXByb2ZpbGUtcGFwZXIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMzRweDtcbn1cblxuLnByb2ZpbGUtcGFnZSAuYXBwLWNvbnRhaW5lciwgLnByb2ZpbGUtcGFnZSAuY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA3NjBweDtcbn1cblxuLnByb2ZpbGUtaGVybyB7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTUpIDAgdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5wcm9maWxlLW5hdGl2ZS10b3BiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLm5hdGl2ZS1zZXR0aW5ncy1idG4ge1xuICBkaXNwbGF5OiBncmlkO1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1wcm9maWxlLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLXByb2ZpbGUtaW5rKTtcbiAgZm9udC1zaXplOiAwLjkycmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMTBweCAyOHB4IHJnYmEoMTEsIDExLCAxMCwgMC4wOCk7XG59XG5cbi5wcm9maWxlLWlkZW50aXR5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBncmlkO1xuICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2UtMik7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpIDAgdmFyKC0tc3BhY2UtMik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnByb2ZpbGUtaWRlbnRpdHk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wcm9maWxlLWlkZW50aXR5OjpiZWZvcmUge1xuICB0b3A6IDFyZW07XG4gIGxlZnQ6IGNhbGMoNTAlIC0gOTZweCk7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tcHJvZmlsZS1pbmspO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4ZGVnKTtcbn1cblxuLnByb2ZpbGUtYXZhdGFyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgd2lkdGg6IDk2cHg7XG4gIGhlaWdodDogOTZweDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tcHJvZmlsZS1pbmspO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS15ZWxsb3cpO1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1pbmspO1xuICBmb250LXNpemU6IDEuNTVyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBib3gtc2hhZG93OiAwIDE0cHggMzJweCByZ2JhKDExLCAxMSwgMTAsIDAuMSk7XG59XG5cbi5wcm9maWxlLW5hbWUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IGNsYW1wKDIuMzVyZW0sIDYuMnZ3LCA0LjM1cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjk7XG59XG5cbi5wcm9maWxlLWhhbmRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAzNHB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMC44OHJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJvZmlsZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4ucHJvZmlsZS1yb3ctY2FyZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDAsIDFmcikgMXB4IG1pbm1heCgwLCAxZnIpO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtMyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXByb2ZpbGUtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMTRweCAzNHB4IHJnYmEoMTEsIDExLCAxMCwgMC4wNyk7XG59XG5cbi5wcm9maWxlLXJvdy1jYXJkLS1zdGF0cyB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTIpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcm9maWxlLW1pbnQtc29mdCk7XG59XG5cbi5wcm9maWxlLXJvdy1jZWxsIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgbWluLXdpZHRoOiAwO1xuICBnYXA6IDAuMjhyZW07XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiA4NHB4O1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucHJvZmlsZS1yb3ctY2VsbC5pcy1saW5rIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ucHJvZmlsZS1yb3ctY2VsbC5pcy1saW5rOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNDQsIDIwNywgNzksIDAuMTQpO1xufVxuXG4ucHJvZmlsZS1yb3ctbnVtIHtcbiAgY29sb3I6IHZhcigtLXByb2ZpbGUtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDAuOTtcbn1cblxuLnByb2ZpbGUtcm93LW51bS5pcy14cCB7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG59XG5cbi5wcm9maWxlLXJvdy1sYmwge1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC42OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5wcm9maWxlLXJvdy1zZXAge1xuICB3aWR0aDogMXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcm9maWxlLWxpbmUpO1xufVxuXG4ucHJvZmlsZS1hY3Rpb24ge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLnByb2ZpbGUtYWN0aW9uIGZvcm0ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnByb2ZpbGUtYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiA1MnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAxLjRyZW07XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByb2ZpbGUtaW5rKTtcbiAgY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJveC1zaGFkb3c6IDAgMTJweCAyOHB4IHJnYmEoMTEsIDExLCAxMCwgMC4xNCk7XG59XG5cbi5wcm9maWxlLWJ0bjpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG59XG5cbi5wcm9maWxlLWJ0bi0tZm9sbG93aW5nIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJvZmlsZS1saW5lKTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLXByb2ZpbGUtaW5rKTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnByb2ZpbGUtYnRuLS1mb2xsb3dpbmc6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcm9maWxlLXJvc2Utc29mdCk7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG59XG5cbi5wcm9maWxlLXNlZy1jb250cm9sIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgbWluLXdpZHRoOiAwO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICBtYXJnaW46IHZhcigtLXNwYWNlLTQpIDAgdmFyKC0tc3BhY2UtMyk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ucHJvZmlsZS1zZWctY29udHJvbCAuc2VnLWNvbnRyb2xfX29wdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4OiAxO1xuICBtaW4taGVpZ2h0OiAzOHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLXByb2ZpbGUtaW5rKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1iYXNlKTtcbiAgZm9udC1zaXplOiAwLjg4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ucHJvZmlsZS1zZWctY29udHJvbCAuc2VnLWNvbnRyb2xfX29wdGlvbi5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcm9maWxlLXllbGxvdyk7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG59XG5cbi5wcm9maWxlLWdhbWVzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLTQpO1xufVxuXG4ucHJvZmlsZS1nYW1lLWNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi1oZWlnaHQ6IDE4NnB4O1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS00KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJvZmlsZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAxNHB4IDM0cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA3KTtcbn1cblxuLnByb2ZpbGUtZ2FtZS1jYXJkLmlzLWxpbmsge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucHJvZmlsZS1nYW1lLWNhcmQuaXMtbGluazpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgYm94LXNoYWRvdzogMCAxOHB4IDM4cHggcmdiYSgxMSwgMTEsIDEwLCAwLjEpO1xufVxuXG4ucHJvZmlsZS1nYW1lLWNhcmRfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNjRweCBtaW5tYXgoMCwgMWZyKSAyMnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4ucHJvZmlsZS1nYW1lLWNhcmRfX2NoZXZyb24ge1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xufVxuXG4ucHJvZmlsZS1nYW1lLWljb24ge1xuICBkaXNwbGF5OiBncmlkO1xuICB3aWR0aDogNjRweDtcbiAgaGVpZ2h0OiA2NHB4O1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcm9maWxlLW1pbnQtc29mdCk7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4ucHJvZmlsZS1nYW1lLWNhcmRbZGF0YS1nYW1lPXNwZWxsaW5nX2JlZV0gLnByb2ZpbGUtZ2FtZS1pY29uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS15ZWxsb3ctc29mdCk7XG59XG5cbi5wcm9maWxlLWdhbWUtY2FyZFtkYXRhLWdhbWU9Y29ubmVjdGlvbnNdIC5wcm9maWxlLWdhbWUtaWNvbiB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByb2ZpbGUtbGF2ZW5kZXItc29mdCk7XG59XG5cbi5wcm9maWxlLWdhbWUtY2FyZFtkYXRhLWdhbWU9c3Vkb2t1XSAucHJvZmlsZS1nYW1lLWljb24ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcm9maWxlLXJvc2Utc29mdCk7XG59XG5cbi5wcm9maWxlLWdhbWUtaWNvbl9faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDQ2cHg7XG4gIGhlaWdodDogNDZweDtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLnByb2ZpbGUtZ2FtZS1tZXRhIHtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4ucHJvZmlsZS1nYW1lLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiAxLjQ1cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5wcm9maWxlLWdhbWUtc3ViIHtcbiAgbWFyZ2luOiAwLjM1cmVtIDAgMDtcbiAgY29sb3I6IHZhcigtLXByb2ZpbGUtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuODZyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4ucHJvZmlsZS1nYW1lLXN0YXRzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSAxcHggbWlubWF4KDAsIDFmcik7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1wcm9maWxlLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcm9maWxlLXBhcGVyKTtcbn1cblxuLnByb2ZpbGUtZ2FtZS1zdGF0IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgbWluLWhlaWdodDogNzJweDtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC4ycmVtO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLnByb2ZpbGUtZ2FtZS1zdGF0X192YWwge1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1pbmspO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMC45O1xufVxuXG4ucHJvZmlsZS1nYW1lLXN0YXRfX3VuaXQge1xuICBtYXJnaW4tbGVmdDogMXB4O1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnByb2ZpbGUtZ2FtZS1zdGF0X19sYmwge1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC42NHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5wcm9maWxlLWdhbWUtc3RhdF9fc2VwIHtcbiAgd2lkdGg6IDFweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS1saW5lKTtcbn1cblxuLnByb2ZpbGUtZ2FtZS1lbXB0eSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIG1pbi1oZWlnaHQ6IDcycHg7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJvZmlsZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS1wYXBlcik7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjg2cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5hbmFseXRpY3MtcGFnZSB7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS00KTtcbn1cblxuLmFuYWx5dGljcy1oZXJvIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiB2YXIoLS1zcGFjZS00KTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMikgMCB2YXIoLS1zcGFjZS0zKTtcbn1cblxuLmFuYWx5dGljcy1iYWNrIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJvZmlsZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDI4cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA4KTtcbn1cblxuLmFuYWx5dGljcy10aXRsZS1yb3cge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDcycHggbWlubWF4KDAsIDFmcik7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5hbmFseXRpY3MtZ2FtZS1pY29uIHtcbiAgd2lkdGg6IDcycHg7XG4gIGhlaWdodDogNzJweDtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbn1cblxuLmFuYWx5dGljcy1wYWdlW2RhdGEtZ2FtZT1zcGVsbGluZ19iZWVdIC5hbmFseXRpY3MtZ2FtZS1pY29uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS15ZWxsb3ctc29mdCk7XG59XG5cbi5hbmFseXRpY3MtcGFnZVtkYXRhLWdhbWU9Y29ubmVjdGlvbnNdIC5hbmFseXRpY3MtZ2FtZS1pY29uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS1sYXZlbmRlci1zb2Z0KTtcbn1cblxuLmFuYWx5dGljcy1wYWdlW2RhdGEtZ2FtZT1zdWRva3VdIC5hbmFseXRpY3MtZ2FtZS1pY29uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS1yb3NlLXNvZnQpO1xufVxuXG4uYW5hbHl0aWNzLWtpY2tlciB7XG4gIG1hcmdpbjogMCAwIDAuMjVyZW07XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjcycmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5hbmFseXRpY3MtdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IGNsYW1wKDIuMnJlbSwgOHZ3LCA0cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjkyO1xufVxuXG4uYW5hbHl0aWNzLXN1YnRpdGxlIHtcbiAgbWFyZ2luOiAwLjQ1cmVtIDAgMDtcbiAgY29sb3I6IHZhcigtLXByb2ZpbGUtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuOTZyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xufVxuXG4uYW5hbHl0aWNzLXdpbmRvdy10b2dnbGUge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCBtaW5tYXgoMCwgMWZyKSk7XG4gIGdhcDogdmFyKC0tc3BhY2UtMik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYW5hbHl0aWNzLXdpbmRvdy1vcHRpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWluLWhlaWdodDogMzhweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXByb2ZpbGUtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1pbmspO1xuICBmb250LXNpemU6IDAuODJyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYW5hbHl0aWNzLXdpbmRvdy1vcHRpb24uaXMtYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS15ZWxsb3cpO1xufVxuXG4uYW5hbHl0aWNzLWluc2lnaHQsXG4uYW5hbHl0aWNzLXNlY3Rpb24sXG4uYW5hbHl0aWNzLW51bWJlci1jYXJkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJvZmlsZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAxNHB4IDM0cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA3KTtcbn1cblxuLmFuYWx5dGljcy1pbnNpZ2h0IHtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtMyk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcm9maWxlLXllbGxvdy1zb2Z0KTtcbn1cblxuLmFuYWx5dGljcy1pbnNpZ2h0IHAge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG59XG5cbi5hbmFseXRpY3Mtc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTMpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS00KTtcbn1cblxuLmFuYWx5dGljcy1zZWN0aW9uLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5hbmFseXRpY3Mtc2VjdGlvbi1oZWFkZXIgaDIge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDEuNDVyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uYW5hbHl0aWNzLXNlY3Rpb24taGVhZGVyIHNwYW4ge1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC43MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmFuYWx5dGljcy1iYXJzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAwLjcycmVtO1xufVxuXG4uYW5hbHl0aWNzLWJhci1yb3cge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDcycHggbWlubWF4KDAsIDFmcikgNDRweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbn1cblxuLmFuYWx5dGljcy1iYXItbGFiZWwsXG4uYW5hbHl0aWNzLWJhci12YWx1ZSB7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjc2cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4uYW5hbHl0aWNzLWJhci12YWx1ZSB7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uYW5hbHl0aWNzLWJhci10cmFjayB7XG4gIGhlaWdodDogMTRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByb2ZpbGUtc29mdCk7XG59XG5cbi5hbmFseXRpY3MtYmFyLWZpbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4td2lkdGg6IDNweDtcbiAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS1taW50KTtcbn1cblxuLmFuYWx5dGljcy1wYWdlW2RhdGEtZ2FtZT1zcGVsbGluZ19iZWVdIC5hbmFseXRpY3MtYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiAjZDliODNmO1xufVxuXG4uYW5hbHl0aWNzLXBhZ2VbZGF0YS1nYW1lPWNvbm5lY3Rpb25zXSAuYW5hbHl0aWNzLWJhci1maWxsIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS1sYXZlbmRlcik7XG59XG5cbi5hbmFseXRpY3MtcGFnZVtkYXRhLWdhbWU9c3Vkb2t1XSAuYW5hbHl0aWNzLWJhci1maWxsIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS1yb3NlKTtcbn1cblxuLmFuYWx5dGljcy10cmVuZCBzdmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5hbmFseXRpY3MtdHJlbmQtYXhpcyB7XG4gIHN0cm9rZTogcmdiYSgxMSwgMTEsIDEwLCAwLjE0KTtcbiAgc3Ryb2tlLXdpZHRoOiAxO1xufVxuXG4uYW5hbHl0aWNzLXRyZW5kLWdyaWQge1xuICBzdHJva2U6IHJnYmEoMTEsIDExLCAxMCwgMC4wOCk7XG4gIHN0cm9rZS13aWR0aDogMTtcbn1cblxuLmFuYWx5dGljcy10cmVuZC1saW5lIHtcbiAgZmlsbDogbm9uZTtcbiAgc3Ryb2tlOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbiAgc3Ryb2tlLXdpZHRoOiAzLjU7XG59XG5cbi5hbmFseXRpY3MtdHJlbmQtcG9pbnQge1xuICBmaWxsOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIHN0cm9rZTogI2ZmZjtcbiAgc3Ryb2tlLXdpZHRoOiAyO1xufVxuXG4uYW5hbHl0aWNzLXRyZW5kLWxhYmVsIHtcbiAgZmlsbDogdmFyKC0tcHJvZmlsZS1tdXRlZCk7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjYzcmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbn1cblxuLmFuYWx5dGljcy10cmVuZC1sYWJlbC0teSB7XG4gIGRvbWluYW50LWJhc2VsaW5lOiBtaWRkbGU7XG4gIHRleHQtYW5jaG9yOiBlbmQ7XG59XG5cbi5hbmFseXRpY3MtdHJlbmQtbGFiZWwtLXgge1xuICBkb21pbmFudC1iYXNlbGluZTogaGFuZ2luZztcbn1cblxuLmFuYWx5dGljcy1lbXB0eSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIG1pbi1oZWlnaHQ6IDk2cHg7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS1wYXBlcik7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjg4cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5hbmFseXRpY3MtbnVtYmVyLWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYW5hbHl0aWNzLW51bWJlci1jYXJkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgbWluLWhlaWdodDogMTIycHg7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiAwLjRyZW07XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uYW5hbHl0aWNzLW51bWJlci1sYWJlbCxcbi5hbmFseXRpY3MtbnVtYmVyLWRldGFpbCB7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjY4cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYW5hbHl0aWNzLW51bWJlci1kZXRhaWwge1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5hbmFseXRpY3MtbnVtYmVyLXZhbHVlIHtcbiAgY29sb3I6IHZhcigtLXByb2ZpbGUtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDAuOTU7XG59XG5cbi5hbmFseXRpY3MtbnVtYmVyLWNhcmQuaXMtcG9zaXRpdmUgLmFuYWx5dGljcy1udW1iZXItZGV0YWlsIHtcbiAgY29sb3I6ICMyZjc1NTg7XG59XG5cbi5hbmFseXRpY3MtY29sbGVjdGlvbi1tZXRlciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG59XG5cbi5hbmFseXRpY3MtY29sbGVjdGlvbi1tZXRlciBzdHJvbmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLXByb2ZpbGUtaW5rKTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4uYW5hbHl0aWNzLWNvbGxlY3Rpb24tbWV0ZXIgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC44NHJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmFuYWx5dGljcy1jb2xsZWN0aW9uLXRyYWNrIHtcbiAgaGVpZ2h0OiAxNnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS1zb2Z0KTtcbn1cblxuLmFuYWx5dGljcy1jb2xsZWN0aW9uLXRyYWNrIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci1yYWRpdXM6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByb2ZpbGUtaW5rKTtcbn1cblxuLmFuYWx5dGljcy1saWZldGltZS1yb3cge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXByb2ZpbGUtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByb2ZpbGUtcGFwZXIpO1xufVxuXG4uYW5hbHl0aWNzLWxpZmV0aW1lLXJvdyBkaXYge1xuICBkaXNwbGF5OiBncmlkO1xuICBtaW4taGVpZ2h0OiA4NHB4O1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjI1cmVtO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0zKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYW5hbHl0aWNzLWxpZmV0aW1lLXJvdyBkaXYgKyBkaXYge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLXByb2ZpbGUtbGluZSk7XG59XG5cbi5hbmFseXRpY3MtbGlmZXRpbWUtcm93IHN0cm9uZyB7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjk1O1xufVxuXG4uYW5hbHl0aWNzLWxpZmV0aW1lLXJvdyBzcGFuIHtcbiAgY29sb3I6IHZhcigtLXByb2ZpbGUtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuNjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5oaXN0b3J5LWZlZWQge1xuICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtNCk7XG59XG5cbi5oaXN0b3J5LWRheS1sYWJlbCB7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2UtNCkgMCB2YXIoLS1zcGFjZS0yKTtcbiAgY29sb3I6IHZhcigtLXByb2ZpbGUtaW5rKTtcbiAgZm9udC1zaXplOiAwLjcycmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uaGlzdG9yeS1kYXktbGFiZWw6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uaGlzdG9yeS1kYXktZGF0ZSB7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLW11dGVkKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcbn1cblxuLmhpc3RvcnktZGF5LWdyb3VwIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJvZmlsZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAxNHB4IDM0cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA3KTtcbn1cblxuLmhpc3Rvcnktcm93IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0OHB4IG1pbm1heCgwLCAxZnIpIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG4gIG1pbi1oZWlnaHQ6IDcycHg7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpIHZhcigtLXNwYWNlLTQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tcHJvZmlsZS1saW5lKTtcbn1cblxuLmhpc3Rvcnktcm93Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uaGlzdG9yeS1pY29uIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgd2lkdGg6IDQ2cHg7XG4gIGhlaWdodDogNDZweDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS1taW50LXNvZnQpO1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1pbmspO1xuICBmb250LXNpemU6IDEuMzJyZW07XG59XG5cbi5oaXN0b3J5LWljb25fX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi5oaXN0b3J5LWljb25bZGF0YS1nYW1lPXNwZWxsaW5nX2JlZV0ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcm9maWxlLXllbGxvdy1zb2Z0KTtcbn1cblxuLmhpc3RvcnktaWNvbltkYXRhLWdhbWU9Y29ubmVjdGlvbnNdIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS1sYXZlbmRlci1zb2Z0KTtcbn1cblxuLmhpc3RvcnktaWNvbltkYXRhLWdhbWU9c3Vkb2t1XSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXByb2ZpbGUtcm9zZS1zb2Z0KTtcbn1cblxuLmhpc3RvcnktaW5mbyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIG1pbi13aWR0aDogMDtcbiAgZ2FwOiAwLjE4cmVtO1xufVxuXG4uaGlzdG9yeS1nYW1lLW5hbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1pbmspO1xuICBmb250LXNpemU6IDAuOTZyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmhpc3Rvcnktc3RhdC1saW5lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLXByb2ZpbGUtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuNzhyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uaGlzdG9yeS1yaWdodCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGp1c3RpZnktaXRlbXM6IGVuZDtcbiAgZ2FwOiAwLjI1cmVtO1xufVxuXG4uaGlzdG9yeS14cCB7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uaGlzdG9yeS1yZXN1bHQge1xuICBmb250LXNpemU6IDAuNzJyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5oaXN0b3J5LXJlc3VsdC5pcy13b24ge1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1taW50KTtcbn1cblxuLmhpc3RvcnktcmVzdWx0LmlzLXBlcmZlY3Qge1xuICBjb2xvcjogI2I0ODUwMDtcbn1cblxuLmhpc3RvcnktcmVzdWx0LmlzLWxvc3Qge1xuICBjb2xvcjogdmFyKC0tcHJvZmlsZS1tdXRlZCk7XG59XG5cbi5oaXN0b3J5LWVtcHR5IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS02KSB2YXIoLS1zcGFjZS00KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJvZmlsZS1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3gtc2hhZG93OiAwIDE0cHggMzRweCByZ2JhKDExLCAxMSwgMTAsIDAuMDcpO1xufVxuXG4uaGlzdG9yeS1lbXB0eV9faWNvbiB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHdpZHRoOiA2NHB4O1xuICBoZWlnaHQ6IDY0cHg7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJvZmlsZS15ZWxsb3ctc29mdCk7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xufVxuXG4uaGlzdG9yeS1lbXB0eV9fdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5oaXN0b3J5LWVtcHR5X19zdWIge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1wcm9maWxlLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjkycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gIC5wcm9maWxlLWF2YXRhcixcbiAgLnByb2ZpbGUtcm93LWNhcmQsXG4gIC5wcm9maWxlLWFjdGlvbixcbiAgLnByb2ZpbGUtc2VnLWNvbnRyb2wsXG4gIC5wcm9maWxlLWdhbWUtY2FyZCxcbiAgLmhpc3RvcnktZGF5LWdyb3VwLFxuICAuaGlzdG9yeS1lbXB0eSB7XG4gICAgYW5pbWF0aW9uOiBwcm9maWxlLXJpc2UgMC40MnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpIGJvdGg7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcHJvZmlsZS1yaXNlIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTZweCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTYwcHgpIHtcbiAgLnByb2ZpbGUtYnRuIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtaW4td2lkdGg6IDIyMHB4O1xuICB9XG4gIC5wcm9maWxlLWFjdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAucHJvZmlsZS1hY3Rpb24gZm9ybSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3MjBweCkge1xuICAucHJvZmlsZS1nYW1lcyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTIwcHgpIHtcbiAgLnByb2ZpbGUtcGFnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoNnJlbSArIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKSk7XG4gIH1cbiAgLnByb2ZpbGUtcGFnZSAuYXBwLWNvbnRhaW5lciwgLnByb2ZpbGUtcGFnZSAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLTMpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLTMpO1xuICB9XG4gIC5wcm9maWxlLWhlcm8ge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLTQpIDAgdmFyKC0tc3BhY2UtMik7XG4gIH1cbiAgLnByb2ZpbGUtaWRlbnRpdHkge1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjZS0yKTtcbiAgfVxuICAucHJvZmlsZS1pZGVudGl0eTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5wcm9maWxlLWF2YXRhciB7XG4gICAgd2lkdGg6IDc2cHg7XG4gICAgaGVpZ2h0OiA3NnB4O1xuICAgIGZvbnQtc2l6ZTogMS4xNnJlbTtcbiAgfVxuICAucHJvZmlsZS1uYW1lIHtcbiAgICBmb250LXNpemU6IDIuNDVyZW07XG4gIH1cbiAgLnByb2ZpbGUtaGFuZGxlIHtcbiAgICBtaW4taGVpZ2h0OiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcbiAgfVxuICAucHJvZmlsZS1yb3ctY2VsbCB7XG4gICAgbWluLWhlaWdodDogNzZweDtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0yKTtcbiAgfVxuICAucHJvZmlsZS1yb3ctbnVtIHtcbiAgICBmb250LXNpemU6IDEuNjJyZW07XG4gIH1cbiAgLnByb2ZpbGUtYnRuIHtcbiAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgIGZvbnQtc2l6ZTogMC45NHJlbTtcbiAgfVxuICAucHJvZmlsZS1zZWctY29udHJvbCAuc2VnLWNvbnRyb2xfX29wdGlvbiB7XG4gICAgbWluLWhlaWdodDogMzRweDtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgfVxuICAucHJvZmlsZS1nYW1lLWNhcmQge1xuICAgIG1pbi1oZWlnaHQ6IDE2NHB4O1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpIHZhcigtLXNwYWNlLTMpIGNhbGModmFyKC0tc3BhY2UtMykgKyAxMHB4KTtcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICB9XG4gIC5wcm9maWxlLWdhbWUtY2FyZF9faGVhZGVyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDU2cHggbWlubWF4KDAsIDFmcikgMThweDtcbiAgICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICB9XG4gIC5wcm9maWxlLWdhbWUtaWNvbiB7XG4gICAgd2lkdGg6IDU2cHg7XG4gICAgaGVpZ2h0OiA1NnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIH1cbiAgLnByb2ZpbGUtZ2FtZS1pY29uX19pbWFnZSB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICB9XG4gIC5wcm9maWxlLWdhbWUtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxuICAucHJvZmlsZS1nYW1lLXN1YiB7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gIH1cbiAgLnByb2ZpbGUtZ2FtZS1zdGF0IHtcbiAgICBtaW4taGVpZ2h0OiA2NHB4O1xuICB9XG4gIC5wcm9maWxlLWdhbWUtc3RhdF9fdmFsIHtcbiAgICBmb250LXNpemU6IDEuNjJyZW07XG4gIH1cbiAgLmFuYWx5dGljcy1zZWN0aW9uLFxuICAuYW5hbHl0aWNzLWluc2lnaHQge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLTMpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIH1cbiAgLmFuYWx5dGljcy1zZWN0aW9uLWhlYWRlciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICB9XG4gIC5hbmFseXRpY3MtdGl0bGUtcm93IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDYwcHggbWlubWF4KDAsIDFmcik7XG4gIH1cbiAgLmFuYWx5dGljcy1nYW1lLWljb24ge1xuICAgIHdpZHRoOiA2MHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICB9XG4gIC5hbmFseXRpY3Mtd2luZG93LXRvZ2dsZSB7XG4gICAgZ2FwOiAwLjQ1cmVtO1xuICB9XG4gIC5hbmFseXRpY3Mtd2luZG93LW9wdGlvbiB7XG4gICAgbWluLWhlaWdodDogMzRweDtcbiAgICBmb250LXNpemU6IDAuNzRyZW07XG4gIH1cbiAgLmFuYWx5dGljcy1udW1iZXItZ3JpZCB7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS0yKTtcbiAgfVxuICAuYW5hbHl0aWNzLW51bWJlci1jYXJkIHtcbiAgICBtaW4taGVpZ2h0OiAxMDhweDtcbiAgfVxuICAuYW5hbHl0aWNzLW51bWJlci12YWx1ZSxcbiAgLmFuYWx5dGljcy1saWZldGltZS1yb3cgc3Ryb25nIHtcbiAgICBmb250LXNpemU6IDEuNTVyZW07XG4gIH1cbiAgLmFuYWx5dGljcy1iYXItcm93IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDY0cHggbWlubWF4KDAsIDFmcikgMzhweDtcbiAgfVxuICAuaGlzdG9yeS1yb3cge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDJweCBtaW5tYXgoMCwgMWZyKSBhdXRvO1xuICAgIGdhcDogdmFyKC0tc3BhY2UtMik7XG4gICAgbWluLWhlaWdodDogNjhweDtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS0yKSB2YXIoLS1zcGFjZS0zKTtcbiAgfVxuICAuaGlzdG9yeS1pY29uIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICBmb250LXNpemU6IDEuMTJyZW07XG4gIH1cbiAgLmhpc3RvcnktaWNvbl9faW1hZ2Uge1xuICAgIHdpZHRoOiAyOHB4O1xuICAgIGhlaWdodDogMjhweDtcbiAgfVxuICAuaGlzdG9yeS1nYW1lLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMC44OHJlbTtcbiAgfVxuICAuaGlzdG9yeS1zdGF0LWxpbmUsXG4gIC5oaXN0b3J5LXJlc3VsdCB7XG4gICAgZm9udC1zaXplOiAwLjY4cmVtO1xuICB9XG4gIC5oaXN0b3J5LXhwIHtcbiAgICBmb250LXNpemU6IDAuODJyZW07XG4gIH1cbn1cbi5mcmllbmRzLXBhZ2Uge1xuICAtLWZyaWVuZHMtaW5rOiAjMGIwYjBhO1xuICAtLWZyaWVuZHMtcGFwZXI6ICNmZmZkZjg7XG4gIC0tZnJpZW5kcy1saW5lOiByZ2JhKDExLCAxMSwgMTAsIDAuMTgpO1xuICAtLWZyaWVuZHMtbXV0ZWQ6ICM1ZjU5NTE7XG4gIC0tZnJpZW5kcy1zb2Z0OiAjZjRmMGU4O1xuICAtLWZyaWVuZHMtbWludDogIzY3YjI4YjtcbiAgLS1mcmllbmRzLW1pbnQtc29mdDogI2RmZWVlNTtcbiAgLS1mcmllbmRzLXllbGxvdzogI2Y0Y2Y0ZjtcbiAgLS1mcmllbmRzLWxhdmVuZGVyLXNvZnQ6ICNlY2U1ZjU7XG4gIC0tZnJpZW5kcy1yb3NlLXNvZnQ6ICNmM2RhZGE7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA3MHB4KTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDExLCAxMSwgMTAsIDAuMDMpIDFweCwgdHJhbnNwYXJlbnQgMXB4KSwgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAzKSAxcHgsIHRyYW5zcGFyZW50IDFweCksIHZhcigtLWZyaWVuZHMtcGFwZXIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMzRweDtcbiAgY29sb3I6IHZhcigtLWZyaWVuZHMtaW5rKTtcbn1cblxuYm9keTpoYXMoLmZyaWVuZHMtcGFnZSkgLmFwcC1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjUzLCAyNDgsIDAuOTIpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZnJpZW5kcy1saW5lKTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE4cHgpO1xufVxuXG5ib2R5OmhhcyguZnJpZW5kcy1wYWdlKSAuYXBwLWJyYW5kLFxuYm9keTpoYXMoLmZyaWVuZHMtcGFnZSkgLm5hdi1saW5rIHtcbiAgY29sb3I6IHZhcigtLWZyaWVuZHMtaW5rKTtcbn1cblxuYm9keTpoYXMoLmZyaWVuZHMtcGFnZSkgLnRleHQtZ3JhZGllbnQge1xuICBjb2xvcjogdmFyKC0tZnJpZW5kcy1pbmspO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogY3VycmVudENvbG9yO1xufVxuXG4uZnJpZW5kcy1oZXJvIHtcbiAgcGFkZGluZzogY2xhbXAoMS40cmVtLCA0dncsIDIuNHJlbSkgMCBjbGFtcCgyLjVyZW0sIDZ2dywgNHJlbSk7XG59XG5cbi5mcmllbmRzLXBhZ2UgLmFwcC1jb250YWluZXIsIC5mcmllbmRzLXBhZ2UgLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogODgwcHg7XG59XG5cbi5mcmllbmRzLWludHJvIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAwLjU1cmVtO1xuICBtYXJnaW4tYm90dG9tOiBjbGFtcCgxcmVtLCAzdncsIDEuNXJlbSk7XG59XG5cbi5mcmllbmRzLWJhZGdlIHtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBtaW4taGVpZ2h0OiAzNHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAwLjlyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWZyaWVuZHMtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1mcmllbmRzLW1pbnQtc29mdCk7XG4gIGNvbG9yOiB2YXIoLS1mcmllbmRzLWluayk7XG4gIGZvbnQtc2l6ZTogMC43MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTRlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmZyaWVuZHMtdGl0bGUge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDAuMzVyZW07XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWZyaWVuZHMtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoM3JlbSwgMTB2dywgNS44cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjg4O1xufVxuXG4uZnJpZW5kcy10aXRsZS1kb3Qge1xuICBjb2xvcjogIzc4ZDJjOTtcbn1cblxuLmZyaWVuZHMtdGl0bGUtY29udGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogdmFyKC0tZnJpZW5kcy1tdXRlZCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXNhbnMpO1xuICBmb250LXNpemU6IGNsYW1wKDAuOTVyZW0sIDIuNXZ3LCAxLjJyZW0pO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uZnJpZW5kcy1zdWJ0aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBtYXgtd2lkdGg6IDM0cmVtO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwLjM0cmVtO1xuICBjb2xvcjogdmFyKC0tZnJpZW5kcy1pbmspO1xuICBmb250LXNpemU6IGNsYW1wKDFyZW0sIDIuNHZ3LCAxLjI1cmVtKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLmZyaWVuZHMtc3VidGl0bGU6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiBtaW4oMjUwcHgsIDYyJSk7XG4gIGhlaWdodDogMC4yOHJlbTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICM3OGQyYzk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjhkZWcpO1xufVxuXG4uZnJpZW5kcy1wYW5lbCxcbi5mcmllbmRzLWxpc3Qtd3JhcHBlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWZyaWVuZHMtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMThweCAzOHB4IHJnYmEoMTEsIDExLCAxMCwgMC4wNyk7XG4gIHBhZGRpbmc6IGNsYW1wKDFyZW0sIDN2dywgMS4zNXJlbSk7XG59XG5cbi5mcmllbmRzLWxpc3Qtd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbi5mcmllbmRzLXNlY3Rpb24taGVhZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiAxcmVtO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5mcmllbmRzLXNlY3Rpb24taGVhZCBoMiB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWZyaWVuZHMtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMS43cmVtLCA0dncsIDIuMzVyZW0pO1xuICBmb250LXdlaWdodDogODAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5mcmllbmRzLXNlY3Rpb24ta2lja2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgY29sb3I6IHZhcigtLWZyaWVuZHMtbXV0ZWQpO1xuICBmb250LXNpemU6IDAuNzJyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjEyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5mcmllbmRzLXNlY3Rpb24tYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiAwLjU1cmVtO1xufVxuXG4uZnJpZW5kcy1jb3VudC1waWxsIHtcbiAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gIG1pbi13aWR0aDogNDJweDtcbiAgbWluLWhlaWdodDogMzRweDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAwLjg1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1mcmllbmRzLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tZnJpZW5kcy15ZWxsb3cpO1xuICBjb2xvcjogdmFyKC0tZnJpZW5kcy1pbmspO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4uZnJpZW5kcy1saW5rLWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtaW4taGVpZ2h0OiAzOHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAwLjlyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWZyaWVuZHMtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogdmFyKC0tZnJpZW5kcy1pbmspO1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmZyaWVuZHMtbGluay1idG4uaXMtcHJpbWFyeSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZnJpZW5kcy1pbmspO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1mcmllbmRzLWluayk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZnJpZW5kcy1mb3JtIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAwLjU1cmVtO1xufVxuXG4uZnJpZW5kcy1sYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS1mcmllbmRzLWluayk7XG4gIGZvbnQtc2l6ZTogMC43OHJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmZyaWVuZHMtZm9ybS1yb3cge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIGF1dG87XG4gIGdhcDogMC43NXJlbTtcbn1cblxuLmZyaWVuZHMtaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBtaW4taGVpZ2h0OiA1NHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1mcmllbmRzLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLWZyaWVuZHMtaW5rKTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBwYWRkaW5nOiAwLjdyZW0gMS4wNXJlbTtcbn1cblxuLmZyaWVuZHMtaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXItY29sb3I6IHZhcigtLWZyaWVuZHMtaW5rKTtcbiAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMTIwLCAyMTAsIDIwMSwgMC4yNCk7XG59XG5cbi5mcmllbmRzLXN1Ym1pdCxcbi5mcmllbmRzLWZvbGxvdyB7XG4gIG1pbi1oZWlnaHQ6IDU0cHg7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1mcmllbmRzLWluayk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1mcmllbmRzLWluayk7XG4gIGNvbG9yOiAjZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLmZyaWVuZHMtc3VibWl0IHtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgcGFkZGluZzogMC42NXJlbSAzLjVyZW0gMC42NXJlbSAxLjM1cmVtO1xufVxuXG4uZnJpZW5kcy1zdWJtaXRfX2ljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMC4zOHJlbTtcbiAgd2lkdGg6IDQycHg7XG4gIGhlaWdodDogNDJweDtcbiAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWZyaWVuZHMteWVsbG93KTtcbiAgY29sb3I6IHZhcigtLWZyaWVuZHMtaW5rKTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4uZnJpZW5kcy1mb2xsb3cge1xuICBtaW4td2lkdGg6IDEwNHB4O1xuICBwYWRkaW5nOiAwLjU1cmVtIDFyZW07XG59XG5cbi5mcmllbmRzLWxpc3Qge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDAuNzVyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbi5mcmllbmRzLWNhcmQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIGF1dG8gYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjhyZW07XG4gIG1pbi13aWR0aDogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZnJpZW5kcy1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcGFkZGluZzogMC44NXJlbTtcbn1cblxuLmZyaWVuZHMtY2FyZDpudGgtY2hpbGQoNG4rMSkgLmZyaWVuZHMtYXZhdGFyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZnJpZW5kcy1taW50LXNvZnQpO1xufVxuXG4uZnJpZW5kcy1jYXJkOm50aC1jaGlsZCg0bisyKSAuZnJpZW5kcy1hdmF0YXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1mcmllbmRzLXllbGxvdyk7XG59XG5cbi5mcmllbmRzLWNhcmQ6bnRoLWNoaWxkKDRuKzMpIC5mcmllbmRzLWF2YXRhciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWZyaWVuZHMtbGF2ZW5kZXItc29mdCk7XG59XG5cbi5mcmllbmRzLWNhcmQ6bnRoLWNoaWxkKDRuKSAuZnJpZW5kcy1hdmF0YXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1mcmllbmRzLXJvc2Utc29mdCk7XG59XG5cbi5mcmllbmRzLWNhcmQtcHJvZmlsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1pbi13aWR0aDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjhyZW07XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5mcmllbmRzLWF2YXRhciB7XG4gIHdpZHRoOiA1MnB4O1xuICBoZWlnaHQ6IDUycHg7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1mcmllbmRzLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgY29sb3I6IHZhcigtLWZyaWVuZHMtaW5rKTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLmZyaWVuZHMtY2FyZC1jb3B5IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uZnJpZW5kcy1uYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLWZyaWVuZHMtaW5rKTtcbiAgZm9udC1zaXplOiAxLjAycmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmZyaWVuZHMtdXNlcm5hbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogdmFyKC0tZnJpZW5kcy1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC45MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5mcmllbmRzLWVtYWlsIHtcbiAgbWFyZ2luOiAwLjJyZW0gMCAwO1xuICBjb2xvcjogdmFyKC0tZnJpZW5kcy1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC44NHJlbTtcbn1cblxuLmZyaWVuZHMtc3RhdHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDAuNjVyZW07XG4gIGNvbG9yOiB2YXIoLS1mcmllbmRzLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjg4cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZnJpZW5kcy1zdGF0cyBzdHJvbmcge1xuICBjb2xvcjogdmFyKC0tZnJpZW5kcy1pbmspO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4uZnJpZW5kcy1yZW1vdmUge1xuICBtaW4taGVpZ2h0OiA0MHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE4NCwgOTEsIDg2LCAwLjI4KTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWZyaWVuZHMtcm9zZS1zb2Z0KTtcbiAgY29sb3I6ICM4ZjNkMzg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgcGFkZGluZzogMC40NXJlbSAwLjlyZW07XG59XG5cbi5mcmllbmRzLWVtcHR5IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAwLjM1cmVtO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBib3JkZXI6IDFweCBkYXNoZWQgdmFyKC0tZnJpZW5kcy1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tZnJpZW5kcy1zb2Z0KTtcbiAgcGFkZGluZzogY2xhbXAoMXJlbSwgM3Z3LCAxLjM1cmVtKTtcbn1cblxuLmZyaWVuZHMtZW1wdHktdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1mcmllbmRzLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDEuNDVyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZnJpZW5kcy1lbXB0eS1jb3B5IHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogdmFyKC0tZnJpZW5kcy1tdXRlZCk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3MjBweCkge1xuICAuZnJpZW5kcy1wYWdlIHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBtaW4taGVpZ2h0OiAxMDBkdmg7XG4gIH1cbiAgLmZyaWVuZHMtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMi40NXJlbSwgMTN2dywgMy41cmVtKTtcbiAgfVxuICAuZnJpZW5kcy1mb3JtLXJvdyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cbiAgLmZyaWVuZHMtc3VibWl0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZnJpZW5kcy1jYXJkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuICB9XG4gIC5mcmllbmRzLXN0YXRzIHtcbiAgICBncmlkLWNvbHVtbjogMS8tMTtcbiAgICBvcmRlcjogMztcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoNTJweCArIDAuOHJlbSk7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5mcmllbmRzLWNhcmQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICB9XG4gIC5mcmllbmRzLXN0YXRzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmZyaWVuZHMtZm9sbG93LFxuICAuZnJpZW5kcy1yZW1vdmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5ib2R5Omhhcyguc3RhbmRpbmdzLXBhZ2UpIHtcbiAgLS1zdGFuZGluZ3MtaW5rOiAjMGIwYjBhO1xuICAtLXN0YW5kaW5ncy1wYXBlcjogI2ZmZmRmODtcbiAgLS1zdGFuZGluZ3Mtc29mdDogI2Y0ZjBlODtcbiAgLS1zdGFuZGluZ3MtbGluZTogcmdiYSgxMSwgMTEsIDEwLCAwLjE4KTtcbiAgLS1zdGFuZGluZ3MtbXV0ZWQ6ICM1YjU2NTA7XG4gIC0tc3RhbmRpbmdzLW1pbnQ6ICM2N2IyOGI7XG4gIC0tc3RhbmRpbmdzLW1pbnQtc29mdDogI2RmZWVlNTtcbiAgLS1zdGFuZGluZ3MteWVsbG93OiAjZjRjZjRmO1xuICAtLXN0YW5kaW5ncy15ZWxsb3ctc29mdDogI2ZmZjBiOTtcbiAgLS1zdGFuZGluZ3MtbGF2ZW5kZXI6ICM5Mjc2Yzg7XG4gIC0tc3RhbmRpbmdzLWxhdmVuZGVyLXNvZnQ6ICNlY2U1ZjU7XG4gIC0tc3RhbmRpbmdzLXJvc2U6ICNkNThhODk7XG4gIC0tc3RhbmRpbmdzLXJvc2Utc29mdDogI2YzZGFkYTtcbiAgY29sb3I6IHZhcigtLXN0YW5kaW5ncy1pbmspO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdGFuZGluZ3MtcGFwZXIpO1xufVxuXG5ib2R5Omhhcyguc3RhbmRpbmdzLXBhZ2UpIC5hcHAtaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1MywgMjQ4LCAwLjkyKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXN0YW5kaW5ncy1saW5lKTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE4cHgpO1xufVxuXG5ib2R5Omhhcyguc3RhbmRpbmdzLXBhZ2UpIC5hcHAtYnJhbmQsXG5ib2R5Omhhcyguc3RhbmRpbmdzLXBhZ2UpIC5uYXYtbGluayB7XG4gIGNvbG9yOiB2YXIoLS1zdGFuZGluZ3MtaW5rKTtcbn1cblxuYm9keTpoYXMoLnN0YW5kaW5ncy1wYWdlKSAudGV4dC1ncmFkaWVudCB7XG4gIGNvbG9yOiB2YXIoLS1zdGFuZGluZ3MtaW5rKTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuLnN0YW5kaW5ncy1wYWdlIHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tc3BhY2UtNykgKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMTEsIDExLCAxMCwgMC4wMjUpIDFweCwgdHJhbnNwYXJlbnQgMXB4KSwgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgxMSwgMTEsIDEwLCAwLjAyNSkgMXB4LCB0cmFuc3BhcmVudCAxcHgpLCB2YXIoLS1zdGFuZGluZ3MtcGFwZXIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDM0cHggMzRweDtcbn1cblxuLnN0YW5kaW5ncy1wYWdlIC5hcHAtY29udGFpbmVyLCAuc3RhbmRpbmdzLXBhZ2UgLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogMTE4MHB4O1xufVxuXG4uc3RhbmRpbmdzLWhlcm8ge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS01KSAwIHZhcigtLXNwYWNlLTMpO1xufVxuXG4uc3RhbmRpbmdzLWhlcm9fX2lubmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoMCwgMWZyKSBhdXRvO1xuICBhbGlnbi1pdGVtczogZW5kO1xuICBnYXA6IHZhcigtLXNwYWNlLTUpO1xufVxuXG4uc3RhbmRpbmdzLXRpdGxlIHtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tc3BhY2UtMyk7XG4gIGNvbG9yOiB2YXIoLS1zdGFuZGluZ3MtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogNS4zNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5cbi5zdGFuZGluZ3MtdGl0bGU6OmFmdGVyIHtcbiAgY29udGVudDogXCIuXCI7XG4gIGNvbG9yOiAjNzhkMmM5O1xufVxuXG4uc3RhbmRpbmdzLXdlZWstbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBtaW4taGVpZ2h0OiA0MnB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAgMS4wOHJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc3RhbmRpbmdzLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLXN0YW5kaW5ncy1pbmspO1xuICBmb250LXNpemU6IDAuNzZyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnN0YW5kaW5ncy1teS1wb3NpdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMTIwcHg7XG4gIGdhcDogMC41NXJlbTtcbiAganVzdGlmeS1pdGVtczogZW5kO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5zdGFuZGluZ3MtbXktcG9zaXRpb25fX3Jhbmsge1xuICBjb2xvcjogdmFyKC0tc3RhbmRpbmdzLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDIuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjk7XG59XG5cbi5zdGFuZGluZ3MtbXktcG9zaXRpb25fX3hwIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IDMycHg7XG4gIHBhZGRpbmc6IDAgMC44cmVtO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3RhbmRpbmdzLXllbGxvdyk7XG4gIGNvbG9yOiB2YXIoLS1zdGFuZGluZ3MtaW5rKTtcbiAgZm9udC1zaXplOiAwLjgycmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc3RhbmRpbmdzLW15LXBvc2l0aW9uLS1lbXB0eSAuc3RhbmRpbmdzLW15LXBvc2l0aW9uX19yYW5rIHtcbiAgY29sb3I6IHZhcigtLXN0YW5kaW5ncy1tdXRlZCk7XG59XG5cbi5zdGFuZGluZ3MtbXktcG9zaXRpb24tLWVtcHR5IC5zdGFuZGluZ3MtbXktcG9zaXRpb25fX3hwIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3RhbmRpbmdzLXNvZnQpO1xuICBjb2xvcjogdmFyKC0tc3RhbmRpbmdzLW11dGVkKTtcbn1cblxuLnN0YW5kaW5ncy1maWx0ZXJzIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA1MDtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UtMikgMCB2YXIoLS1zcGFjZS0zKTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1MywgMjQ4LCAwLjkyKTtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDE4cHgpO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxOHB4KTtcbn1cblxuYm9keTpub3QoLnR1cmJvLW5hdGl2ZS1ib2R5KSAuc3RhbmRpbmdzLWZpbHRlcnMge1xuICB0b3A6IDY1cHg7XG59XG5cbi5zdGFuZGluZ3MtcGFnZSAuc2VnLWNvbnRyb2wge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgZ2FwOiAwO1xuICBwYWRkaW5nOiAzcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXN0YW5kaW5ncy1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMTBweCAyOHB4IHJnYmEoMTEsIDExLCAxMCwgMC4wOCk7XG59XG5cbi5zdGFuZGluZ3MtcGFnZSAuc2VnLWNvbnRyb2xfX29wdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4OiAxO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiAwLjQ4cmVtO1xuICBtaW4taGVpZ2h0OiAzNnB4O1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBjb2xvcjogdmFyKC0tc3RhbmRpbmdzLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjkycmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5zdGFuZGluZ3MtcGFnZSAuc2VnLWNvbnRyb2xfX29wdGlvbi5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdGFuZGluZ3MtaW5rKTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5zdGFuZGluZ3MtcGFnZSAuc2VnLWNvbnRyb2xfX2ljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5zdGFuZGluZ3MtcGFnZSAuZmlsdGVyLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLTMpO1xufVxuXG4uc3RhbmRpbmdzLXBhZ2UgLmZpbHRlci1yb3ctLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJzY3JvbGwtYmVoYXZpb3IteDogY29udGFpbjtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5zdGFuZGluZ3MtcGFnZSAuZmlsdGVyLXJvdy0tc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zdGFuZGluZ3MtcGFnZSAuZmlsdGVyLXRhYiB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMC41MnJlbTtcbiAgbWluLWhlaWdodDogMzhweDtcbiAgcGFkZGluZzogMCAwLjhyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1zdGFuZGluZ3MtaW5rKTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zdGFuZGluZ3MtcGFnZSAuZmlsdGVyLXRhYi5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdGFuZGluZ3MteWVsbG93KTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLXN0YW5kaW5ncy1pbmspO1xufVxuXG4uc3RhbmRpbmdzLXBhZ2UgLmZpbHRlci10YWJfX2ljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5zdGFuZGluZ3MtcGFnZSAuZmlsdGVyLXRhYl9faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIycHg7XG4gIGhlaWdodDogMjJweDtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLnN0YW5kaW5ncy1wb2RpdW0ge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSk7XG4gIGFsaWduLWl0ZW1zOiBlbmQ7XG4gIGdhcDogdmFyKC0tc3BhY2UtMyk7XG4gIG1heC13aWR0aDogNzYwcHg7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2UtNCkgYXV0byAwO1xuICBwYWRkaW5nLXRvcDogMS44cmVtO1xufVxuXG4ucG9kaXVtLXNsb3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIG1pbi13aWR0aDogMDtcbiAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNDVyZW07XG4gIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtMik7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnBvZGl1bS1zbG90LmlzLWZpcnN0IHtcbiAgb3JkZXI6IDI7XG4gIG1pbi1oZWlnaHQ6IDI1MHB4O1xufVxuXG4ucG9kaXVtLXNsb3QuaXMtc2Vjb25kIHtcbiAgb3JkZXI6IDE7XG4gIG1pbi1oZWlnaHQ6IDIxMHB4O1xufVxuXG4ucG9kaXVtLXNsb3QuaXMtdGhpcmQge1xuICBvcmRlcjogMztcbiAgbWluLWhlaWdodDogMTk0cHg7XG59XG5cbi5wb2RpdW0tY3Jvd24ge1xuICBkaXNwbGF5OiBncmlkO1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBtYXJnaW4tYm90dG9tOiAtMC4ycmVtO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IDEuNTVyZW07XG4gIHRyYW5zZm9ybTogcm90YXRlKC00ZGVnKTtcbn1cblxuLnBvZGl1bS1jcm93bjo6YmVmb3JlLFxuLnBvZGl1bS1zbG90LmlzLXNlY29uZDo6YmVmb3JlLFxuLnBvZGl1bS1zbG90LmlzLXRoaXJkOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAyOHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGJvcmRlci10b3A6IDNweCBzb2xpZCB2YXIoLS1zdGFuZGluZ3MtaW5rKTtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wb2RpdW0tY3Jvd246OmJlZm9yZSB7XG4gIHRvcDogLTAuNHJlbTtcbiAgcmlnaHQ6IGNhbGMoNTAlIC0gNThweCk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDcyZGVnKTtcbn1cblxuLnBvZGl1bS1zbG90LmlzLXNlY29uZDo6YmVmb3JlIHtcbiAgbGVmdDogMXJlbTtcbiAgdG9wOiA0LjZyZW07XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tc3RhbmRpbmdzLWluayk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTJkZWcpO1xufVxuXG4ucG9kaXVtLXNsb3QuaXMtdGhpcmQ6OmJlZm9yZSB7XG4gIHJpZ2h0OiAxcmVtO1xuICB0b3A6IDQuMnJlbTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTI4ZGVnKTtcbn1cblxuLnBvZGl1bS11c2VyLWxpbmsge1xuICBkaXNwbGF5OiBncmlkO1xuICBtaW4td2lkdGg6IDA7XG4gIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjQ1cmVtO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ucG9kaXVtLXVzZXItbGluazphY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTtcbn1cblxuLnBvZGl1bS11c2VyLWxpbms6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCByZ2JhKDEyMCwgMjEwLCAyMDEsIDAuNTUpO1xuICBvdXRsaW5lLW9mZnNldDogNXB4O1xuICBib3JkZXItcmFkaXVzOiAxOHB4O1xufVxuXG4ucG9kaXVtLWF2YXRhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogNzhweDtcbiAgaGVpZ2h0OiA3OHB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdGFuZGluZ3MteWVsbG93KTtcbiAgY29sb3I6IHZhcigtLXN0YW5kaW5ncy1pbmspO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXNpemU6IDEuMTVyZW07XG59XG5cbi5wb2RpdW0tYXZhdGFyLmlzLW1lIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMTAzLCAxNzgsIDEzOSwgMC4yOCk7XG59XG5cbi5wb2RpdW0tc2xvdC5pcy1zZWNvbmQgLnBvZGl1bS1hdmF0YXIge1xuICB3aWR0aDogNjhweDtcbiAgaGVpZ2h0OiA2OHB4O1xuICBiYWNrZ3JvdW5kOiAjZGNlM2U4O1xufVxuXG4ucG9kaXVtLXNsb3QuaXMtdGhpcmQgLnBvZGl1bS1hdmF0YXIge1xuICB3aWR0aDogNjRweDtcbiAgaGVpZ2h0OiA2NHB4O1xuICBiYWNrZ3JvdW5kOiAjZThiOThlO1xufVxuXG4ucG9kaXVtLW5hbWUge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLXN0YW5kaW5ncy1pbmspO1xuICBmb250LXNpemU6IDAuOTRyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5wb2RpdW0teHAge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1zdGFuZGluZ3MtaW5rKTtcbiAgZm9udC1zaXplOiAwLjgycmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5wb2RpdW0tYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDc2cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEycHggMTJweCAwIDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN0YW5kaW5ncy15ZWxsb3ctc29mdCk7XG59XG5cbi5wb2RpdW0tbWVkYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgd2lkdGg6IDI2cHg7XG4gIGhlaWdodDogMjZweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdGFuZGluZ3MtaW5rKTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLnBvZGl1bS1tZWRhbDo6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAwLjg2cmVtO1xufVxuXG4ucG9kaXVtLXNsb3QuaXMtZmlyc3QgLnBvZGl1bS1tZWRhbDo6YmVmb3JlIHtcbiAgY29udGVudDogXCIxXCI7XG59XG5cbi5wb2RpdW0tc2xvdC5pcy1zZWNvbmQgLnBvZGl1bS1tZWRhbDo6YmVmb3JlIHtcbiAgY29udGVudDogXCIyXCI7XG59XG5cbi5wb2RpdW0tc2xvdC5pcy10aGlyZCAucG9kaXVtLW1lZGFsOjpiZWZvcmUge1xuICBjb250ZW50OiBcIjNcIjtcbn1cblxuLnBvZGl1bS1zbG90LmlzLXNlY29uZCAucG9kaXVtLWJhciB7XG4gIG1pbi1oZWlnaHQ6IDU4cHg7XG4gIGJhY2tncm91bmQ6ICNlZWYwZjA7XG59XG5cbi5wb2RpdW0tc2xvdC5pcy10aGlyZCAucG9kaXVtLWJhciB7XG4gIG1pbi1oZWlnaHQ6IDQ4cHg7XG4gIGJhY2tncm91bmQ6ICNmMmRlZDI7XG59XG5cbi5zdGFuZGluZ3MtbGlzdCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXN0YW5kaW5ncy1saW5lKTtcbiAgYm9yZGVyLXJhZGl1czogMjhweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAyMnB4IDQ2cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA4KTtcbn1cblxuLnN0YW5kaW5ncy1yb3cge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDUycHggbWlubWF4KDAsIDFmcikgbWlubWF4KDExMnB4LCBhdXRvKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgbWluLWhlaWdodDogNzZweDtcbiAgcGFkZGluZzogMC43MnJlbSB2YXIoLS1zcGFjZS00KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXN0YW5kaW5ncy1saW5lKTtcbn1cblxuLnN0YW5kaW5ncy1yb3c6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5zdGFuZGluZ3Mtcm93LmlzLW1lIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDEwMywgMTc4LCAxMzksIDAuMTYpLCByZ2JhKDEwMywgMTc4LCAxMzksIDAuMDYpKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgNHB4IDAgMCB2YXIoLS1zdGFuZGluZ3MtbWludCk7XG59XG5cbi5zdGFuZGluZ3MtcmFuay1jb2wge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnN0YW5kaW5ncy1yYW5rLW51bSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWluLXdpZHRoOiAzMHB4O1xuICBtaW4taGVpZ2h0OiAzMHB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tc3RhbmRpbmdzLWluayk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXNhbnMpO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cblxuLnN0YW5kaW5ncy1yb3c6bnRoLWNoaWxkKDEpIC5zdGFuZGluZ3MtcmFuay1udW0ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnN0YW5kaW5ncy1yb3c6bnRoLWNoaWxkKDIpIC5zdGFuZGluZ3MtcmFuay1udW0ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLXN0YW5kaW5ncy1pbmspO1xufVxuXG4uc3RhbmRpbmdzLXJvdzpudGgtY2hpbGQoMykgLnN0YW5kaW5ncy1yYW5rLW51bSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tc3RhbmRpbmdzLWluayk7XG59XG5cbi5zdGFuZGluZ3MtYXZhdGFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gIGJhY2tncm91bmQ6ICM2ZjdmNWQ7XG4gIGNvbG9yOiB2YXIoLS1zdGFuZGluZ3MtaW5rKTtcbiAgZm9udC1zaXplOiAwLjgycmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLnN0YW5kaW5ncy1hdmF0YXIucmFuay0xIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3RhbmRpbmdzLXllbGxvdyk7XG59XG5cbi5zdGFuZGluZ3MtYXZhdGFyLnJhbmstMiB7XG4gIGJhY2tncm91bmQ6ICNkY2UzZTg7XG59XG5cbi5zdGFuZGluZ3MtYXZhdGFyLnJhbmstMyB7XG4gIGJhY2tncm91bmQ6ICNlOGI5OGU7XG59XG5cbi5zdGFuZGluZ3MtYXZhdGFyLnJhbmstNCB7XG4gIGJhY2tncm91bmQ6ICM2NTcyNTE7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uc3RhbmRpbmdzLXVzZXItbGluayB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNThweCBtaW5tYXgoMCwgMWZyKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgbWluLXdpZHRoOiAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc3RhbmRpbmdzLXVzZXItbGluazphY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMXB4KTtcbn1cblxuLnN0YW5kaW5ncy11c2VyLWxpbms6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCByZ2JhKDEyMCwgMjEwLCAyMDEsIDAuNTUpO1xuICBvdXRsaW5lLW9mZnNldDogNHB4O1xuICBib3JkZXItcmFkaXVzOiAxNHB4O1xufVxuXG4uc3RhbmRpbmdzLWluZm8ge1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5zdGFuZGluZ3MtcGxheWVyLW5hbWUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLXNwYWNlLTIpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogdmFyKC0tc3RhbmRpbmdzLWluayk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zdGFuZGluZ3MteW91LXRhZyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAyMnB4O1xuICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc3RhbmRpbmdzLWxpbmUpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6IHZhcigtLXN0YW5kaW5ncy1pbmspO1xuICBmb250LXNpemU6IDAuNjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4uc3RhbmRpbmdzLXBsYXllci1oYW5kbGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMC4xNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLXN0YW5kaW5ncy1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC44MnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zdGFuZGluZ3MtcmlnaHQge1xuICBkaXNwbGF5OiBncmlkO1xuICBqdXN0aWZ5LWl0ZW1zOiBlbmQ7XG4gIGdhcDogMC4yMnJlbTtcbn1cblxuLnN0YW5kaW5ncy14cC12YWwge1xuICBjb2xvcjogdmFyKC0tc3RhbmRpbmdzLWluayk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnN0YW5kaW5ncy1zZXNzaW9ucy12YWwge1xuICBjb2xvcjogdmFyKC0tc3RhbmRpbmdzLW11dGVkKTtcbiAgZm9udC1zaXplOiAwLjc4cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc3RhbmRpbmdzLWVtcHR5IHtcbiAgbWF4LXdpZHRoOiA1MjBweDtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS02KSBhdXRvIDA7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLTYpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zdGFuZGluZ3MtbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDI4cHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm94LXNoYWRvdzogMCAyMnB4IDQ2cHggcmdiYSgxMSwgMTEsIDEwLCAwLjA4KTtcbn1cblxuLnN0YW5kaW5ncy1lbXB0eV9faWNvbiB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiA3MnB4O1xuICBoZWlnaHQ6IDcycHg7XG4gIG1hcmdpbjogMCBhdXRvIHZhcigtLXNwYWNlLTQpO1xuICBib3JkZXItcmFkaXVzOiAyMnB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdGFuZGluZ3MteWVsbG93LXNvZnQpO1xuICBmb250LXNpemU6IDJyZW07XG59XG5cbi5zdGFuZGluZ3MtZW1wdHlfX3RpdGxlIHtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tc3BhY2UtMik7XG4gIGNvbG9yOiB2YXIoLS1zdGFuZGluZ3MtaW5rKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5zdGFuZGluZ3MtZW1wdHlfX3N1YiB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLXN0YW5kaW5ncy1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gIC5zdGFuZGluZ3MtaGVybyxcbiAgLnN0YW5kaW5ncy1maWx0ZXJzLFxuICAuc3RhbmRpbmdzLXBvZGl1bSxcbiAgLnN0YW5kaW5ncy1saXN0LFxuICAuc3RhbmRpbmdzLWVtcHR5IHtcbiAgICBhbmltYXRpb246IHN0YW5kaW5ncy1yaXNlIDAuNDJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSBib3RoO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHN0YW5kaW5ncy1yaXNlIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTZweCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzIwcHgpIHtcbiAgLnN0YW5kaW5ncy1wYWdlIC5zZWctY29udHJvbCB7XG4gICAgd2lkdGg6IDM5MHB4O1xuICB9XG4gIC5zdGFuZGluZ3MtZmlsdGVycyAuYXBwLWNvbnRhaW5lciwgLnN0YW5kaW5ncy1maWx0ZXJzIC5jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIG1pbm1heCgwLCAxZnIpO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS00KTtcbiAgfVxuICAuc3RhbmRpbmdzLXBhZ2UgLmZpbHRlci1yb3cge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjBweCkge1xuICAuc3RhbmRpbmdzLXBhZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDZyZW0gKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSkpO1xuICB9XG4gIC5zdGFuZGluZ3MtaGVybyB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtNCkgMCB2YXIoLS1zcGFjZS0yKTtcbiAgfVxuICAuc3RhbmRpbmdzLWhlcm9fX2lubmVyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIGF1dG87XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS0zKTtcbiAgfVxuICAuc3RhbmRpbmdzLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDMuNTVyZW07XG4gIH1cbiAgLnN0YW5kaW5ncy1teS1wb3NpdGlvbiB7XG4gICAgbWluLXdpZHRoOiA4OHB4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgfVxuICAuc3RhbmRpbmdzLW15LXBvc2l0aW9uX19yYW5rIHtcbiAgICBmb250LXNpemU6IDEuOTVyZW07XG4gIH1cbiAgLnN0YW5kaW5ncy1teS1wb3NpdGlvbl9feHAge1xuICAgIG1pbi1oZWlnaHQ6IDI4cHg7XG4gICAgcGFkZGluZzogMCAwLjYycmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NHJlbTtcbiAgfVxuICAuc3RhbmRpbmdzLXBvZGl1bSB7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS0xKTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS0yKTtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDM2MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICAucG9kaXVtLXNsb3Qge1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tc3BhY2UtMSk7XG4gICAgZ2FwOiAwLjMycmVtO1xuICB9XG4gIC5wb2RpdW0tc2xvdC5pcy1maXJzdCB7XG4gICAgbWluLWhlaWdodDogMTY4cHg7XG4gIH1cbiAgLnBvZGl1bS1zbG90LmlzLXNlY29uZCB7XG4gICAgbWluLWhlaWdodDogMTI4cHg7XG4gIH1cbiAgLnBvZGl1bS1zbG90LmlzLXRoaXJkIHtcbiAgICBtaW4taGVpZ2h0OiAxMTBweDtcbiAgfVxuICAucG9kaXVtLWNyb3duIHtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gIC5wb2RpdW0tYXZhdGFyIHtcbiAgICB3aWR0aDogNDhweDtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xuICB9XG4gIC5wb2RpdW0tc2xvdC5pcy1zZWNvbmQgLnBvZGl1bS1hdmF0YXIge1xuICAgIHdpZHRoOiA0MnB4O1xuICAgIGhlaWdodDogNDJweDtcbiAgICBmb250LXNpemU6IDAuNjhyZW07XG4gIH1cbiAgLnBvZGl1bS1zbG90LmlzLXRoaXJkIC5wb2RpdW0tYXZhdGFyIHtcbiAgICB3aWR0aDogMzhweDtcbiAgICBoZWlnaHQ6IDM4cHg7XG4gICAgZm9udC1zaXplOiAwLjY0cmVtO1xuICB9XG4gIC5wb2RpdW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAwLjcycmVtO1xuICB9XG4gIC5wb2RpdW0teHAge1xuICAgIGZvbnQtc2l6ZTogMC42NnJlbTtcbiAgfVxuICAucG9kaXVtLWJhciB7XG4gICAgbWluLWhlaWdodDogNjRweDtcbiAgfVxuICAucG9kaXVtLXNsb3QuaXMtc2Vjb25kIC5wb2RpdW0tYmFyIHtcbiAgICBtaW4taGVpZ2h0OiA0MnB4O1xuICB9XG4gIC5wb2RpdW0tc2xvdC5pcy10aGlyZCAucG9kaXVtLWJhciB7XG4gICAgbWluLWhlaWdodDogMzBweDtcbiAgfVxuICAuc3RhbmRpbmdzLWxpc3Qge1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gIH1cbiAgLnN0YW5kaW5ncy1yb3cge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjhweCBtaW5tYXgoMCwgMWZyKSBtaW5tYXgoNzRweCwgYXV0byk7XG4gICAgZ2FwOiAwLjYycmVtO1xuICAgIG1pbi1oZWlnaHQ6IDcycHg7XG4gICAgcGFkZGluZzogMC42MnJlbSAwLjc4cmVtO1xuICB9XG4gIC5zdGFuZGluZ3MtdXNlci1saW5rIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQycHggbWlubWF4KDAsIDFmcik7XG4gICAgZ2FwOiAwLjYycmVtO1xuICB9XG4gIC5zdGFuZGluZ3MtcmlnaHQge1xuICAgIGdyaWQtY29sdW1uOiBhdXRvO1xuICAgIGp1c3RpZnktaXRlbXM6IGVuZDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG4gIC5zdGFuZGluZ3MtcmFuay1udW0ge1xuICAgIG1pbi13aWR0aDogMjRweDtcbiAgICBtaW4taGVpZ2h0OiAyNHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuICAuc3RhbmRpbmdzLWF2YXRhciB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMC42NnJlbTtcbiAgfVxuICAuc3RhbmRpbmdzLXBsYXllci1uYW1lIHtcbiAgICBmb250LXNpemU6IDAuODhyZW07XG4gIH1cbiAgLnN0YW5kaW5ncy14cC12YWwge1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICB9XG4gIC5zdGFuZGluZ3Mtc2Vzc2lvbnMtdmFsIHtcbiAgICBmb250LXNpemU6IDAuNzJyZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuc3RhbmRpbmdzLXBhZ2UgLmFwcC1jb250YWluZXIsIC5zdGFuZGluZ3MtcGFnZSAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLTMpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLXNwYWNlLTMpO1xuICB9XG4gIC5zdGFuZGluZ3MtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMy4wNXJlbTtcbiAgfVxuICAuc3RhbmRpbmdzLXdlZWstbGFiZWwge1xuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XG4gICAgcGFkZGluZzogMCAwLjcycmVtO1xuICAgIGZvbnQtc2l6ZTogMC41OHJlbTtcbiAgfVxuICAuc3RhbmRpbmdzLWZpbHRlcnMge1xuICAgIHBhZGRpbmc6IDAuNHJlbSAwIDAuNzJyZW07XG4gIH1cbiAgLnN0YW5kaW5ncy1wYWdlIC5zZWctY29udHJvbF9fb3B0aW9uLFxuICAuc3RhbmRpbmdzLXBhZ2UgLmZpbHRlci10YWIge1xuICAgIG1pbi1oZWlnaHQ6IDM0cHg7XG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xuICB9XG4gIC5zdGFuZGluZ3MtcGFnZSAuZmlsdGVyLXRhYl9faW1hZ2Uge1xuICAgIHdpZHRoOiAxOXB4O1xuICAgIGhlaWdodDogMTlweDtcbiAgfVxuICAuc3RhbmRpbmdzLXBhZ2UgLmZpbHRlci1yb3cge1xuICAgIGdhcDogMC44NXJlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjdyZW07XG4gIH1cbiAgLnN0YW5kaW5ncy1wb2RpdW0ge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMnJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjJyZW07XG4gIH1cbiAgLnBvZGl1bS1zbG90LmlzLXNlY29uZDo6YmVmb3JlLFxuICAucG9kaXVtLXNsb3QuaXMtdGhpcmQ6OmJlZm9yZSxcbiAgLnBvZGl1bS1jcm93bjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5zdGFuZGluZ3MtcGxheWVyLWhhbmRsZSB7XG4gICAgZm9udC1zaXplOiAwLjc0cmVtO1xuICB9XG4gIC5zdGFuZGluZ3MteW91LXRhZyB7XG4gICAgbWluLWhlaWdodDogMThweDtcbiAgICBwYWRkaW5nOiAwIDAuMzhyZW07XG4gICAgZm9udC1zaXplOiAwLjU4cmVtO1xuICB9XG59XG4ucHJvLXBhZ2Uge1xuICBwYWRkaW5nOiAycmVtIDFyZW0gNHJlbTtcbn1cblxuLnByby1vZmZlciB7XG4gIG1heC13aWR0aDogNTQwcHg7XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMnJlbTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zb2Z0KTtcbn1cblxuLnByby1leWVicm93IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjEyZW07XG59XG5cbi5wcm8tb2ZmZXItdG9wIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDFyZW07XG59XG5cbi5wcm8tb2ZmZXItdG9wIGEge1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuYm9keTpoYXMoLnByby1wYWdlKSAjcHdhLWluc3RhbGwtcHJvbXB0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnByby1vZmZlciBoMSB7XG4gIG1hcmdpbjogMC40cmVtIDA7XG4gIGZvbnQtc2l6ZTogMi44cmVtO1xufVxuXG4ucHJvLW9mZmVyIGgxIHNwYW4ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG59XG5cbi5wcm8tbGVhZCB7XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbn1cblxuLnByby1iZW5lZml0cyB7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogMXJlbTtcbiAgbWFyZ2luOiAxLjVyZW0gMDtcbn1cblxuLnByby1iZW5lZml0cyBsaSB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuLnByby1iZW5lZml0cyBzcGFuLCAucHJvLXBlcmlvZHMgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogMC45NXJlbTtcbn1cblxuLnByby1wZXJpb2RzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICBnYXA6IDAuNzVyZW07XG59XG5cbi5wcm8tcGVyaW9kcyA+IGRpdiB7XG4gIHBhZGRpbmc6IDAuOHJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cblxuLnByby1wZXJpb2RzID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZS1hbHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xufVxuXG4ucHJvLWF2YWlsYWJpbGl0eSB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2UtYWx0KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cblxuLnByby10ZXJtcywgLnByby1mcmVlIHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW11dGVkKTtcbn1cblxuLnByby1hY3Rpb25zIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbn1cblxuLnByby1kaWFsb2cge1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXgtd2lkdGg6IDU4MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogOTBkdmg7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbn1cblxuLnByby1kaWFsb2c6OmJhY2tkcm9wIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itb3ZlcmxheSk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAucHJvLW9mZmVyIHtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICB9XG4gIC5wcm8tcGFnZSB7XG4gICAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xuICB9XG4gIC5wcm8tb2ZmZXIgaDEge1xuICAgIGZvbnQtc2l6ZTogMi4zcmVtO1xuICB9XG59XG4iXX0= */