/* stylelint-disable length-zero-no-unit -- env() fallbacks feed calc(), where a unitless 0 is invalid */
:root {
  color-scheme: light;
  box-sizing: border-box;
  padding-top: env(safe-area-inset-top, 0px);
  padding-bottom: env(safe-area-inset-bottom, 0px);
  --header: #fff;
  --header-fg: #212529;
  --bg: #f5f5f5;
  --fg: #212529;
  --surface: #fff;
  --surface-fg: #212529;
  --price: #212529;
  --brand: #212529;
  --brand-fg: #fff;
  --accent: #212529;
  --accent-fg: #fff;
  --selected: #e9ecef;
  --selected-fg: #212529;
  --footer: #f5f5f5;
  --footer-fg: #6c757d;
  --muted: #6c757d;
  --line: #d4d4d4;
  --note-bg: #fff6e6;
  --note-fg: #6b4310;
  --skel: #e6ebe9;
  --shadow: 0 8px 30px rgb(33 37 41 / 15%);
  --display: 'Bricolage Grotesque', 'Segoe UI', system-ui, sans-serif;
  --body: 'Onest', 'Segoe UI', system-ui, sans-serif;
}

html {
  scroll-padding-top: env(safe-area-inset-top, 0px);
}

[hidden] {
  display: none !important;
}

body {
  margin: 0;
  padding: 0;
  background: var(--bg);
  color: var(--fg);
  font-family: var(--body);
  font-size: 15px;
  line-height: 1.5;
  display: flex;
  flex-direction: column;
  min-height: calc(100vh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
  min-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
}

img {
  max-width: 100%;
}

* {
  box-sizing: border-box;
}

main.app {
  flex: 1 0 auto;
}

body::before {
  content: "";
  position: fixed;
  inset: 0 0 auto;
  height: env(safe-area-inset-top, 0px);
  z-index: 10;
  background: var(--surface);
}

button,
input,
select,
textarea {
  font: inherit;
  color: inherit;
}

button {
  cursor: pointer;
}

:focus-visible {
  outline: 3px solid var(--accent);
  outline-offset: 2px;
}

.wrap {
  max-width: 1180px;
  margin: 0 auto;
  padding-left: max(16px, env(safe-area-inset-left, 0px));
  padding-right: max(16px, env(safe-area-inset-right, 0px));
}

h1,
h2,
h3 {
  font-family: var(--display);
  text-wrap: balance;
  margin: 0;
}

.money {
  font-variant-numeric: tabular-nums;
}

.btn {
  border: 0;
  border-radius: 12px;
  padding: 12px 18px;
  font-weight: 600;
  background: var(--brand);
  color: var(--brand-fg);
}

a.btn {
  display: inline-block;
  text-align: center;
  text-decoration: none;
}

.btn[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}

.btn.block {
  width: 100%;
}

.label {
  font-size: 13px;
  color: var(--muted);
  font-weight: 500;
  letter-spacing: 0.02em;
}

.x {
  border: 0;
  background: none;
  font-size: 24px;
  line-height: 1;
  padding: 4px 8px;
  color: var(--muted);
}

.row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
}

.row > :last-child {
  white-space: nowrap;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

/* stylelint-disable length-zero-no-unit -- env() fallbacks feed calc(), where a unitless 0 is invalid */
/* spacious header */
.hero {
  background: var(--header);
  color: var(--header-fg);
}

.hero .wrap {
  padding-block: 24px;
  display: flex;
  gap: 18px;
  align-items: center;
  flex-wrap: wrap;
}

.hero .logo {
  display: block;
  height: 96px;
  max-width: 288px;
  flex: none;
}

.hero .logo img {
  display: block;
  width: auto;
  max-width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.hero .who {
  flex: 1 1 200px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.hero .store-name {
  margin: 0;
  opacity: 1;
  font-family: var(--display);
  font-size: 28px;
  font-weight: 700;
  line-height: 1.15;
  text-wrap: balance;
}

.hero .store-name a {
  color: inherit;
  text-decoration: none;
}

@media (width <= 599px) {
  .hero .wrap {
    padding-block: 18px;
    gap: 14px;
    flex-direction: column;
    align-items: flex-start;
  }
  .hero .logo {
    max-width: 100%;
    height: 72px;
  }
  .hero .who {
    flex: none;
  }
  .hero .store-name {
    font-size: 23px;
  }
}
/* sticky slim bar */
.bar {
  position: sticky;
  top: env(safe-area-inset-top, 0px);
  z-index: 5;
  background: var(--surface);
  color: var(--surface-fg);
  border-bottom: 1px solid var(--line);
}

.bar .wrap {
  padding-block: 10px;
  display: flex;
  gap: 10px;
  align-items: center;
}

.bar input[type=search] {
  flex: 1;
  min-width: 0;
  border: 1px solid var(--line);
  background: var(--bg);
  border-radius: 12px;
  padding: 10px 14px;
}

.bar-logo {
  width: 42px;
  height: 42px;
  flex: none;
  display: grid;
  grid-template: 100%/100%;
  place-items: center;
  overflow: hidden;
  border-radius: 12px;
}

.bar-logo[hidden] {
  display: none;
}

.bar-logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

/* stylelint-disable length-zero-no-unit -- env() fallbacks feed calc(), where a unitless 0 is invalid */
.side {
  display: none;
}

@media (width >= 900px) {
  .side {
    display: flex;
    flex-direction: column;
    gap: 10px;
    position: sticky;
    top: calc(76px + env(safe-area-inset-top, 0px));
    background: var(--surface);
    color: var(--surface-fg);
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 14px;
  }
}
.side h2 {
  font-size: 17px;
}

.catfilter {
  border: 1px solid var(--line);
  background: var(--bg);
  border-radius: 10px;
  padding: 8px 10px;
  width: 100%;
}

.cats {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
  max-height: 60vh;
  overflow-y: auto;
}

.cats a {
  width: 100%;
  text-align: left;
  padding: 8px 10px 8px calc(10px + var(--depth, 0) * 14px);
  border-radius: 10px;
  display: flex;
  justify-content: space-between;
  gap: 8px;
  color: inherit;
  text-decoration: none;
}

.cats a:hover,
.cats a[aria-current=true] {
  background: var(--selected);
  color: var(--selected-fg);
}

.cats a[aria-current=true] {
  font-weight: 600;
}

.sheet {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  max-height: 80vh;
  background: var(--surface);
  color: var(--surface-fg);
  z-index: 21;
  border-radius: 20px 20px 0 0;
  display: flex;
  flex-direction: column;
  box-shadow: var(--shadow);
  padding: 16px max(16px, env(safe-area-inset-right, 0px)) calc(16px + env(safe-area-inset-bottom, 0px)) max(16px, env(safe-area-inset-left, 0px));
  gap: 10px;
}

.sheet h2 {
  font-size: 19px;
}

.sheet .cats {
  max-height: none;
  overflow-y: auto;
}

.scrim {
  position: fixed;
  inset: 0;
  background: rgba(5, 15, 12, 0.45);
  z-index: 20;
}

.sheet[hidden],
.scrim[hidden] {
  display: none;
}

.sheet {
  animation: sheet-in 250ms ease-out;
}

.scrim:has(+ .sheet) {
  animation: scrim-in 250ms ease-out;
}

.sheet.closing {
  animation: sheet-out 200ms ease-in forwards;
}

.scrim:has(+ .sheet.closing) {
  animation: scrim-out 200ms ease-in forwards;
}

@keyframes sheet-in {
  from {
    transform: translateY(100%);
  }
}
@keyframes sheet-out {
  to {
    transform: translateY(100%);
  }
}
@keyframes scrim-in {
  from {
    opacity: 0;
  }
}
@keyframes scrim-out {
  to {
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .sheet,
  .sheet.closing,
  .scrim:has(+ .sheet),
  .scrim:has(+ .sheet.closing) {
    animation: none;
  }
}
.layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  padding-block: 16px 48px;
}

@media (width >= 900px) {
  .layout:has(> .side) {
    grid-template-columns: 240px 1fr;
    align-items: start;
  }
}
/* toolbar */
.main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.toolbar {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
}

.toolbar select,
.toolbar .catopen {
  border: 1px solid var(--line);
  background: var(--surface);
  color: var(--surface-fg);
  border-radius: 12px;
  padding: 10px 12px;
  flex: 1 1 150px;
  min-width: 0;
  text-align: left;
}

@media (width >= 900px) {
  .toolbar select#order {
    flex: 0 0 220px;
  }
  .toolbar .mcat {
    display: none;
  }
}
.chip-clear {
  border: 0;
  background: transparent;
  color: var(--brand);
  font-weight: 600;
  padding: 10px 6px;
}

a.chip-clear {
  text-decoration: none;
}

/* product list: phone = rows, desktop = grid */
.grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.card {
  background: var(--surface);
  color: var(--surface-fg);
  border-radius: 16px;
  display: flex;
  gap: 12px;
  padding: 12px;
  align-items: center;
  border: 1px solid var(--line);
  text-align: left;
  width: 100%;
  position: relative;
}

.thumb {
  width: 76px;
  height: 76px;
  border-radius: 12px;
  flex: none;
  overflow: hidden;
  background: var(--line);
}

.card .thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.card .info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.card .name {
  font-weight: 500;
  line-height: 1.3;
  color: inherit;
  text-decoration: none;
}

.card .name::after {
  content: "";
  position: absolute;
  inset: 0;
}

.card .price {
  font-weight: 600;
  color: var(--price);
}

.tag {
  font-size: 12px;
  color: var(--muted);
}

.add {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  border: 0;
  background: var(--brand);
  color: var(--brand-fg);
  font-size: 22px;
  font-weight: 600;
  flex: none;
  display: grid;
  place-items: center;
  text-decoration: none;
}

.stepper {
  display: flex;
  align-items: center;
  background: var(--brand);
  color: var(--brand-fg);
  border-radius: 12px;
  flex: none;
}

.stepper button,
.stepper .add {
  border: 0;
  background: none;
  color: inherit;
  width: 36px;
  height: 40px;
  font-size: 20px;
  font-weight: 600;
}

.stepper button[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}

.stepper span {
  min-width: 22px;
  text-align: center;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}

/* The name link covers the card; the cart controls sit above it. */
.card .add,
.card .stepper {
  position: relative;
  z-index: 1;
}

@media (width >= 900px) {
  .grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
  }
  .card {
    flex-direction: column;
    align-items: stretch;
    padding: 0;
    overflow: hidden;
    gap: 0;
  }
  .card .thumb {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    border-radius: 0;
  }
  .card .info {
    padding: 12px 14px 4px;
  }
  .card .info:last-child {
    padding-bottom: 14px;
  }
  .card .add {
    width: auto;
    height: 42px;
    border-radius: 0;
    margin-top: auto;
    font-size: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
  }
  .card .add::after {
    content: " Adicionar";
  }
  .card .stepper .add {
    width: 36px;
    height: 100%;
    font-size: 20px;
  }
  .card .stepper .add::after {
    content: none;
  }
  .card .stepper {
    height: 42px;
    border-radius: 0;
    margin-top: auto;
    justify-content: space-between;
    padding-inline: 8px;
  }
  .card .stepper button {
    height: 100%;
  }
  .card .stepper span::after {
    content: " no carrinho";
    font-weight: 500;
  }
}
@media (width >= 1140px) {
  .grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
#catalog-listing {
  display: contents;
}

/* the frame of the next page needs a box for its lazy loading to see it */
turbo-frame.next-page:not([busy], [complete]) {
  display: block;
  grid-column: 1/-1;
  min-height: 1px;
}

turbo-frame.next-page:is([busy], [complete]) {
  display: contents;
}

turbo-frame.next-page:not([busy]) > .skel {
  display: none;
}

turbo-frame.next-page > .more {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin: 8px auto;
}

turbo-frame.next-page[busy] > .more {
  display: none;
}

.skel .thumb,
.skel .bar1 {
  background: var(--skel);
  animation: pulse 1.2s ease-in-out infinite;
}

.skel .bar1 {
  height: 12px;
  border-radius: 6px;
}

@keyframes pulse {
  50% {
    opacity: 0.5;
  }
}
@media (prefers-reduced-motion: reduce) {
  .skel .thumb,
  .skel .bar1 {
    animation: none;
  }
}
.empty {
  grid-column: 1/-1;
  text-align: center;
  padding: 48px 16px;
  color: var(--muted);
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
}

.empty h2 {
  color: var(--fg);
  font-size: 20px;
}

.product {
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr;
  padding-block: 16px 48px;
}

@media (width >= 820px) {
  .product {
    grid-template-columns: 1fr 1fr;
  }
}
.crumbs {
  font-size: 13px;
  color: var(--muted);
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  padding-top: 16px;
}

.crumbs a {
  color: var(--price);
  text-decoration: none;
}

.hero-img {
  aspect-ratio: 1;
  max-width: 100%;
  border-radius: 20px;
  overflow: hidden;
  background: var(--line);
}

.hero-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.pinfo {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}

.pinfo h1 {
  font-size: 28px;
}

.pinfo .price {
  font-size: 26px;
  font-weight: 600;
  font-family: var(--display);
  color: var(--price);
}

.opts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}

.opt {
  border: 1px solid var(--line);
  background: var(--surface);
  color: var(--surface-fg);
  border-radius: 999px;
  padding: 8px 14px;
  text-decoration: none;
}

.opt[aria-current=true] {
  border-color: var(--selected-fg);
  background: var(--selected);
  color: var(--selected-fg);
  text-shadow: 0.4px 0 currentcolor;
}

.opt.dim {
  opacity: 0.4;
}

.opt[aria-disabled=true] {
  cursor: not-allowed;
}

.qty {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--surface);
}

.label + .qty {
  margin-top: 8px;
}

.qty button {
  border: 0;
  background: none;
  color: var(--fg);
  width: 40px;
  height: 40px;
  font-size: 18px;
}

.qty button[disabled] {
  opacity: 0.4;
  cursor: not-allowed;
}

.qty span {
  min-width: 32px;
  text-align: center;
  font-variant-numeric: tabular-nums;
}

.incart {
  margin: 0;
  font-size: 12.5px;
  font-weight: 600;
}

/* stylelint-disable length-zero-no-unit -- env() fallbacks feed calc(), where a unitless 0 is invalid */
.cartbtn {
  position: relative;
  border: 0;
  background: var(--brand);
  color: var(--brand-fg);
  border-radius: 12px;
  padding: 10px 40px 10px 14px;
  font-weight: 600;
  white-space: nowrap;
}

.cartbtn-icon {
  display: none;
  width: 22px;
  height: 22px;
}

@media (width <= 599px) {
  .cartbtn {
    display: flex;
    align-items: center;
    padding: 9px 38px 9px 12px;
  }
  .cartbtn-icon {
    display: block;
  }
  .cartbtn-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }
}
.cartbtn .count {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  background: var(--accent);
  color: var(--accent-fg);
  border-radius: 999px;
  min-width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  font-size: 12px;
}

/* floating bar, drawer */
.floatbar {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 0 max(16px, env(safe-area-inset-right, 0px)) calc(16px + env(safe-area-inset-bottom, 0px)) max(16px, env(safe-area-inset-left, 0px));
  z-index: 6;
  pointer-events: none;
}

.floatbar .inner {
  pointer-events: auto;
  max-width: 560px;
  margin: 0 auto;
  background: var(--fg);
  color: var(--bg);
  border-radius: 16px;
  padding: 12px 12px 12px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  box-shadow: var(--shadow);
}

.floatbar .inner div {
  flex: 1;
  min-width: 0;
}

.floatbar .btn {
  background: var(--accent);
  color: var(--accent-fg);
}

.drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(420px, 100%);
  background: var(--surface);
  color: var(--surface-fg);
  z-index: 21;
  display: flex;
  flex-direction: column;
  box-shadow: var(--shadow);
  padding-top: env(safe-area-inset-top, 0px);
  padding-bottom: env(safe-area-inset-bottom, 0px);
  padding-right: env(safe-area-inset-right, 0px);
  animation: drawer-in 250ms ease-out;
}

.scrim:has(+ .drawer) {
  animation: scrim-in 250ms ease-out;
}

.drawer.closing {
  animation: drawer-out 200ms ease-in forwards;
}

.scrim:has(+ .drawer.closing) {
  animation: scrim-out 200ms ease-in forwards;
}

@keyframes drawer-in {
  from {
    transform: translateX(100%);
  }
}
@keyframes drawer-out {
  to {
    transform: translateX(100%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .drawer,
  .drawer.closing,
  .scrim:has(+ .drawer),
  .scrim:has(+ .drawer.closing) {
    animation: none;
  }
}
.drawer header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid var(--line);
}

.drawer header h2 {
  font-size: 19px;
}

.drawer .items {
  flex: 1;
  overflow-y: auto;
  padding: 8px 20px;
}

.drawer footer {
  border-top: 1px solid var(--line);
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.drawer .subtotal {
  font-size: 20px;
}

.line {
  display: flex;
  gap: 12px;
  align-items: center;
  padding-block: 12px;
  border-bottom: 1px solid var(--line);
}

.line .thumb {
  width: 52px;
  height: 52px;
}

.line .thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.line .info {
  flex: 1;
  min-width: 0;
}

.line small {
  color: var(--muted);
  display: block;
}

.hint {
  margin: 0;
  font-size: 13px;
  color: var(--muted);
  text-align: center;
}

.toast {
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  top: calc(16px + env(safe-area-inset-top, 0px));
  background: var(--fg);
  color: var(--bg);
  padding: 10px 16px;
  border-radius: 12px;
  z-index: 40;
  font-size: 14px;
  max-width: calc(100% - 32px);
}

.summary-title {
  font-size: 26px;
  margin-block: 8px 16px;
}

.summary {
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr;
  padding-block: 8px 48px;
}

@media (width >= 860px) {
  .summary {
    grid-template-columns: 1.4fr 1fr;
    align-items: start;
  }
}
.summary-forms {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}

.panel {
  background: var(--surface);
  color: var(--surface-fg);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
}

.panel h3 {
  font-size: 17px;
}

.panel .warn {
  margin: 0;
  white-space: normal;
  font-size: 13px;
  font-weight: 600;
  color: var(--note-fg);
  background: var(--note-bg);
  border-radius: 12px;
  padding: 8px 12px;
}

.panel .total {
  border-top: 1px solid var(--line);
  padding-top: 10px;
  font-weight: 600;
  font-size: 18px;
}

.radio {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 12px;
  cursor: pointer;
}

.radio:has(input:checked) {
  border-color: var(--selected-fg);
  background: var(--selected);
  color: var(--selected-fg);
}

.radio input {
  margin-top: 4px;
  accent-color: var(--selected-fg);
}

.radio small {
  display: block;
  color: var(--muted);
}

.field {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.field input {
  border: 1px solid var(--line);
  background: var(--bg);
  color: var(--fg);
  border-radius: 10px;
  padding: 10px 12px;
}

.err {
  margin: 0;
  color: #b4322b;
  font-size: 13px;
  font-weight: 600;
}

.privacy {
  font-size: 12px;
  color: var(--muted);
  line-height: 1.4;
  margin: 0;
}

.summary[hidden],
.empty[hidden],
.btn[hidden] {
  display: none;
}

footer.store {
  border-top: 1px solid var(--line);
  background: var(--footer);
  color: var(--footer-fg);
}

footer.store .wrap {
  padding-block: 24px 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 16px 40px;
  font-size: 14px;
}

footer.store strong {
  display: block;
}

body:has(.floatbar:not([hidden])) footer.store .wrap {
  padding-bottom: 96px;
}

footer.store .credit {
  flex-basis: 100%;
  margin: 0;
  padding-top: 12px;
  border-top: 1px solid var(--line);
  font-size: 12px;
  text-align: center;
  opacity: 0.8;
}

footer.store .credit a {
  color: inherit;
  font-weight: 600;
}

footer.store .wrap > div {
  min-width: 0;
  overflow-wrap: anywhere;
}

.contacts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 6px;
}

.contacts .btn {
  padding: 8px 14px;
  text-decoration: none;
}

.contacts .btn.whatsapp {
  display: inline-flex;
  padding: 8px;
  background: #25d366;
  color: #fff;
}

.contacts .btn.whatsapp svg {
  width: 24px;
  height: 24px;
}

header.platform {
  background: var(--surface);
  border-bottom: 1px solid var(--line);
}

header.platform .wrap {
  padding-block: 14px;
}

.platform-logo {
  display: block;
  width: auto;
  height: 20px;
}

main.notice {
  display: flex;
  align-items: center;
  padding-block: 32px 24px;
}

main.notice .wrap {
  max-width: 560px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  text-align: center;
}

.notice-art {
  width: 180px;
  height: auto;
}

main.notice h1 {
  font-size: 30px;
  line-height: 1.1;
}

main.notice p {
  margin: 0;
  color: var(--muted);
}

footer.platform {
  border-top: 1px solid var(--line);
}

footer.platform p {
  margin-block: 0;
  padding-block: 16px;
  text-align: center;
  font-size: 12px;
  color: var(--muted);
}

footer.platform a {
  color: var(--fg);
  font-weight: 600;
}

@media (width >= 600px) {
  header.platform .wrap {
    padding-block: 18px;
  }
  .platform-logo {
    height: 24px;
  }
  main.notice {
    padding-block: 56px;
  }
  main.notice .wrap {
    gap: 20px;
  }
  .notice-art {
    width: 240px;
  }
  main.notice h1 {
    font-size: 40px;
  }
  main.notice p {
    font-size: 16px;
  }
}

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNhdGFsb2cuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHdHQUF3RztBQUN4RztFQUNFLG1CQUFtQjtFQUNuQixzQkFBc0I7RUFDdEIsMENBQTBDO0VBQzFDLGdEQUFnRDtFQUNoRCxjQUFjO0VBQ2Qsb0JBQW9CO0VBQ3BCLGFBQWE7RUFDYixhQUFhO0VBQ2IsZUFBZTtFQUNmLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsaUJBQWlCO0VBQ2pCLG1CQUFtQjtFQUNuQixzQkFBc0I7RUFDdEIsaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUNwQixnQkFBZ0I7RUFDaEIsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLHdDQUF3QztFQUN4QyxtRUFBbUU7RUFDbkUsa0RBQWtEO0FBQ3BEOztBQUVBO0VBQ0UsaURBQWlEO0FBQ25EOztBQUVBO0VBQ0Usd0JBQXdCO0FBQzFCOztBQUVBO0VBQ0UsU0FBUztFQUNULFVBQVU7RUFDVixxQkFBcUI7RUFDckIsZ0JBQWdCO0VBQ2hCLHdCQUF3QjtFQUN4QixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsMEZBQTBGO0VBQzFGLDJGQUEyRjtBQUM3Rjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxzQkFBc0I7QUFDeEI7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBO0VBQ0UsV0FBVztFQUNYLGVBQWU7RUFDZixlQUFlO0VBQ2YscUNBQXFDO0VBQ3JDLFdBQVc7RUFDWCwwQkFBMEI7QUFDNUI7O0FBRUE7Ozs7RUFJRSxhQUFhO0VBQ2IsY0FBYztBQUNoQjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxnQ0FBZ0M7RUFDaEMsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsaUJBQWlCO0VBQ2pCLGNBQWM7RUFDZCx1REFBdUQ7RUFDdkQseURBQXlEO0FBQzNEOztBQUVBOzs7RUFHRSwyQkFBMkI7RUFDM0Isa0JBQWtCO0VBQ2xCLFNBQVM7QUFDWDs7QUFFQTtFQUNFLGtDQUFrQztBQUNwQzs7QUFFQTtFQUNFLFNBQVM7RUFDVCxtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQix3QkFBd0I7RUFDeEIsc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxZQUFZO0VBQ1osbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsV0FBVztBQUNiOztBQUVBO0VBQ0UsZUFBZTtFQUNmLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0UsU0FBUztFQUNULGdCQUFnQjtFQUNoQixlQUFlO0VBQ2YsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxhQUFhO0VBQ2IsOEJBQThCO0VBQzlCLHFCQUFxQjtFQUNyQixTQUFTO0FBQ1g7O0FBRUE7RUFDRSxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIscUJBQXFCO0VBQ3JCLG1CQUFtQjtBQUNyQjs7QUFFQSx3R0FBd0c7QUFDeEcsb0JBQW9CO0FBQ3BCO0VBQ0UseUJBQXlCO0VBQ3pCLHVCQUF1QjtBQUN6Qjs7QUFFQTtFQUNFLG1CQUFtQjtFQUNuQixhQUFhO0VBQ2IsU0FBUztFQUNULG1CQUFtQjtFQUNuQixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsY0FBYztFQUNkLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsVUFBVTtBQUNaOztBQUVBO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxlQUFlO0VBQ2YsWUFBWTtFQUNaLHNCQUFtQjtLQUFuQixtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsWUFBWTtFQUNaLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsUUFBUTtBQUNWOztBQUVBO0VBQ0UsU0FBUztFQUNULFVBQVU7RUFDViwyQkFBMkI7RUFDM0IsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsY0FBYztFQUNkLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFO0lBQ0UsbUJBQW1CO0lBQ25CLFNBQVM7SUFDVCxzQkFBc0I7SUFDdEIsdUJBQXVCO0VBQ3pCO0VBQ0E7SUFDRSxlQUFlO0lBQ2YsWUFBWTtFQUNkO0VBQ0E7SUFDRSxVQUFVO0VBQ1o7RUFDQTtJQUNFLGVBQWU7RUFDakI7QUFDRjtBQUNBLG9CQUFvQjtBQUNwQjtFQUNFLGdCQUFnQjtFQUNoQixrQ0FBa0M7RUFDbEMsVUFBVTtFQUNWLDBCQUEwQjtFQUMxQix3QkFBd0I7RUFDeEIsb0NBQW9DO0FBQ3RDOztBQUVBO0VBQ0UsbUJBQW1CO0VBQ25CLGFBQWE7RUFDYixTQUFTO0VBQ1QsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsT0FBTztFQUNQLFlBQVk7RUFDWiw2QkFBNkI7RUFDN0IscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsWUFBWTtFQUNaLFVBQVU7RUFDVixhQUFhO0VBQ2Isd0JBQXdCO0VBQ3hCLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUFDWixzQkFBbUI7S0FBbkIsbUJBQW1CO0FBQ3JCOztBQUVBLHdHQUF3RztBQUN4RztFQUNFLGFBQWE7QUFDZjs7QUFFQTtFQUNFO0lBQ0UsYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixTQUFTO0lBQ1QsZ0JBQWdCO0lBQ2hCLCtDQUErQztJQUMvQywwQkFBMEI7SUFDMUIsd0JBQXdCO0lBQ3hCLDZCQUE2QjtJQUM3QixtQkFBbUI7SUFDbkIsYUFBYTtFQUNmO0FBQ0Y7QUFDQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSw2QkFBNkI7RUFDN0IscUJBQXFCO0VBQ3JCLG1CQUFtQjtFQUNuQixpQkFBaUI7RUFDakIsV0FBVztBQUNiOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxVQUFVO0VBQ1YsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixRQUFRO0VBQ1IsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxnQkFBZ0I7RUFDaEIseURBQXlEO0VBQ3pELG1CQUFtQjtFQUNuQixhQUFhO0VBQ2IsOEJBQThCO0VBQzlCLFFBQVE7RUFDUixjQUFjO0VBQ2QscUJBQXFCO0FBQ3ZCOztBQUVBOztFQUVFLDJCQUEyQjtFQUMzQix5QkFBeUI7QUFDM0I7O0FBRUE7RUFDRSxnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsT0FBTztFQUNQLFFBQVE7RUFDUixTQUFTO0VBQ1QsZ0JBQWdCO0VBQ2hCLDBCQUEwQjtFQUMxQix3QkFBd0I7RUFDeEIsV0FBVztFQUNYLDRCQUE0QjtFQUM1QixhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHlCQUF5QjtFQUN6QixnSkFBZ0o7RUFDaEosU0FBUztBQUNYOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsUUFBUTtFQUNSLGlDQUFpQztFQUNqQyxXQUFXO0FBQ2I7O0FBRUE7O0VBRUUsYUFBYTtBQUNmOztBQUVBO0VBQ0Usa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0Usa0NBQWtDO0FBQ3BDOztBQUVBO0VBQ0UsMkNBQTJDO0FBQzdDOztBQUVBO0VBQ0UsMkNBQTJDO0FBQzdDOztBQUVBO0VBQ0U7SUFDRSwyQkFBMkI7RUFDN0I7QUFDRjtBQUNBO0VBQ0U7SUFDRSwyQkFBMkI7RUFDN0I7QUFDRjtBQUNBO0VBQ0U7SUFDRSxVQUFVO0VBQ1o7QUFDRjtBQUNBO0VBQ0U7SUFDRSxVQUFVO0VBQ1o7QUFDRjtBQUNBO0VBQ0U7Ozs7SUFJRSxlQUFlO0VBQ2pCO0FBQ0Y7QUFDQTtFQUNFLGFBQWE7RUFDYiwwQkFBMEI7RUFDMUIsU0FBUztFQUNULHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFO0lBQ0UsZ0NBQWdDO0lBQ2hDLGtCQUFrQjtFQUNwQjtBQUNGO0FBQ0EsWUFBWTtBQUNaO0VBQ0UsWUFBWTtFQUNaLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsU0FBUztBQUNYOztBQUVBO0VBQ0UsYUFBYTtFQUNiLFFBQVE7RUFDUixlQUFlO0VBQ2YsbUJBQW1CO0FBQ3JCOztBQUVBOztFQUVFLDZCQUE2QjtFQUM3QiwwQkFBMEI7RUFDMUIsd0JBQXdCO0VBQ3hCLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLFlBQVk7RUFDWixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRTtJQUNFLGVBQWU7RUFDakI7RUFDQTtJQUNFLGFBQWE7RUFDZjtBQUNGO0FBQ0E7RUFDRSxTQUFTO0VBQ1QsdUJBQXVCO0VBQ3ZCLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UscUJBQXFCO0FBQ3ZCOztBQUVBLCtDQUErQztBQUMvQztFQUNFLGFBQWE7RUFDYiwwQkFBMEI7RUFDMUIsU0FBUztBQUNYOztBQUVBO0VBQ0UsMEJBQTBCO0VBQzFCLHdCQUF3QjtFQUN4QixtQkFBbUI7RUFDbkIsYUFBYTtFQUNiLFNBQVM7RUFDVCxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLDZCQUE2QjtFQUM3QixnQkFBZ0I7RUFDaEIsV0FBVztFQUNYLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0VBQ1osbUJBQW1CO0VBQ25CLFVBQVU7RUFDVixnQkFBZ0I7RUFDaEIsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUFDWixvQkFBaUI7S0FBakIsaUJBQWlCO0VBQ2pCLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxPQUFPO0VBQ1AsWUFBWTtFQUNaLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsUUFBUTtBQUNWOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2QscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixRQUFRO0FBQ1Y7O0FBRUE7RUFDRSxnQkFBZ0I7RUFDaEIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsZUFBZTtFQUNmLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0VBQ1osbUJBQW1CO0VBQ25CLFNBQVM7RUFDVCx3QkFBd0I7RUFDeEIsc0JBQXNCO0VBQ3RCLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsVUFBVTtFQUNWLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQix3QkFBd0I7RUFDeEIsc0JBQXNCO0VBQ3RCLG1CQUFtQjtFQUNuQixVQUFVO0FBQ1o7O0FBRUE7O0VBRUUsU0FBUztFQUNULGdCQUFnQjtFQUNoQixjQUFjO0VBQ2QsV0FBVztFQUNYLFlBQVk7RUFDWixlQUFlO0VBQ2YsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLGtDQUFrQztBQUNwQzs7QUFFQSxtRUFBbUU7QUFDbkU7O0VBRUUsa0JBQWtCO0VBQ2xCLFVBQVU7QUFDWjs7QUFFQTtFQUNFO0lBQ0UscUNBQXFDO0lBQ3JDLFNBQVM7RUFDWDtFQUNBO0lBQ0Usc0JBQXNCO0lBQ3RCLG9CQUFvQjtJQUNwQixVQUFVO0lBQ1YsZ0JBQWdCO0lBQ2hCLE1BQU07RUFDUjtFQUNBO0lBQ0UsV0FBVztJQUNYLFlBQVk7SUFDWixlQUFlO0lBQ2YsZ0JBQWdCO0VBQ2xCO0VBQ0E7SUFDRSxzQkFBc0I7RUFDeEI7RUFDQTtJQUNFLG9CQUFvQjtFQUN0QjtFQUNBO0lBQ0UsV0FBVztJQUNYLFlBQVk7SUFDWixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZixhQUFhO0lBQ2IsdUJBQXVCO0lBQ3ZCLG1CQUFtQjtJQUNuQixRQUFRO0VBQ1Y7RUFDQTtJQUNFLHFCQUFxQjtFQUN2QjtFQUNBO0lBQ0UsV0FBVztJQUNYLFlBQVk7SUFDWixlQUFlO0VBQ2pCO0VBQ0E7SUFDRSxhQUFhO0VBQ2Y7RUFDQTtJQUNFLFlBQVk7SUFDWixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLDhCQUE4QjtJQUM5QixtQkFBbUI7RUFDckI7RUFDQTtJQUNFLFlBQVk7RUFDZDtFQUNBO0lBQ0UsdUJBQXVCO0lBQ3ZCLGdCQUFnQjtFQUNsQjtBQUNGO0FBQ0E7RUFDRTtJQUNFLHFDQUFxQztFQUN2QztBQUNGO0FBQ0E7RUFDRSxpQkFBaUI7QUFDbkI7O0FBRUEsMEVBQTBFO0FBQzFFO0VBQ0UsY0FBYztFQUNkLGlCQUFpQjtFQUNqQixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsaUJBQWlCO0FBQ25COztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBO0VBQ0UsY0FBYztFQUNkLHVCQUFrQjtFQUFsQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0FBQ2xCOztBQUVBO0VBQ0UsYUFBYTtBQUNmOztBQUVBOztFQUVFLHVCQUF1QjtFQUN2QiwwQ0FBMEM7QUFDNUM7O0FBRUE7RUFDRSxZQUFZO0VBQ1osa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0U7SUFDRSxZQUFZO0VBQ2Q7QUFDRjtBQUNBO0VBQ0U7O0lBRUUsZUFBZTtFQUNqQjtBQUNGO0FBQ0E7RUFDRSxpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixRQUFRO0VBQ1IsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxhQUFhO0VBQ2IsU0FBUztFQUNULDBCQUEwQjtFQUMxQix3QkFBd0I7QUFDMUI7O0FBRUE7RUFDRTtJQUNFLDhCQUE4QjtFQUNoQztBQUNGO0FBQ0E7RUFDRSxlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGFBQWE7RUFDYixRQUFRO0VBQ1IsZUFBZTtFQUNmLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLG1CQUFtQjtFQUNuQixxQkFBcUI7QUFDdkI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsZUFBZTtFQUNmLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsV0FBVztFQUNYLFlBQVk7RUFDWixvQkFBaUI7S0FBakIsaUJBQWlCO0VBQ2pCLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLFNBQVM7RUFDVCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQiwyQkFBMkI7RUFDM0IsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsYUFBYTtFQUNiLGVBQWU7RUFDZixRQUFRO0VBQ1IsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3QiwwQkFBMEI7RUFDMUIsd0JBQXdCO0VBQ3hCLG9CQUFvQjtFQUNwQixpQkFBaUI7RUFDakIscUJBQXFCO0FBQ3ZCOztBQUVBO0VBQ0UsZ0NBQWdDO0VBQ2hDLDJCQUEyQjtFQUMzQix5QkFBeUI7RUFDekIsaUNBQWlDO0FBQ25DOztBQUVBO0VBQ0UsWUFBWTtBQUNkOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0Usb0JBQW9CO0VBQ3BCLG1CQUFtQjtFQUNuQiw2QkFBNkI7RUFDN0IsbUJBQW1CO0VBQ25CLDBCQUEwQjtBQUM1Qjs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxTQUFTO0VBQ1QsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsWUFBWTtFQUNaLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxZQUFZO0VBQ1osbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsZUFBZTtFQUNmLGtCQUFrQjtFQUNsQixrQ0FBa0M7QUFDcEM7O0FBRUE7RUFDRSxTQUFTO0VBQ1QsaUJBQWlCO0VBQ2pCLGdCQUFnQjtBQUNsQjs7QUFFQSx3R0FBd0c7QUFDeEc7RUFDRSxrQkFBa0I7RUFDbEIsU0FBUztFQUNULHdCQUF3QjtFQUN4QixzQkFBc0I7RUFDdEIsbUJBQW1CO0VBQ25CLDRCQUE0QjtFQUM1QixnQkFBZ0I7RUFDaEIsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsYUFBYTtFQUNiLFdBQVc7RUFDWCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRTtJQUNFLGFBQWE7SUFDYixtQkFBbUI7SUFDbkIsMEJBQTBCO0VBQzVCO0VBQ0E7SUFDRSxjQUFjO0VBQ2hCO0VBQ0E7SUFDRSxrQkFBa0I7SUFDbEIsVUFBVTtJQUNWLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIscUJBQXFCO0lBQ3JCLG1CQUFtQjtFQUNyQjtBQUNGO0FBQ0E7RUFDRSxrQkFBa0I7RUFDbEIsV0FBVztFQUNYLFFBQVE7RUFDUiwyQkFBMkI7RUFDM0IseUJBQXlCO0VBQ3pCLHVCQUF1QjtFQUN2QixvQkFBb0I7RUFDcEIsZUFBZTtFQUNmLFlBQVk7RUFDWixhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLGVBQWU7QUFDakI7O0FBRUEseUJBQXlCO0FBQ3pCO0VBQ0UsZUFBZTtFQUNmLE9BQU87RUFDUCxRQUFRO0VBQ1IsU0FBUztFQUNULDZJQUE2STtFQUM3SSxVQUFVO0VBQ1Ysb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0Usb0JBQW9CO0VBQ3BCLGdCQUFnQjtFQUNoQixjQUFjO0VBQ2QscUJBQXFCO0VBQ3JCLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsNEJBQTRCO0VBQzVCLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIsU0FBUztFQUNULHlCQUF5QjtBQUMzQjs7QUFFQTtFQUNFLE9BQU87RUFDUCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSx5QkFBeUI7RUFDekIsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0UsZUFBZTtFQUNmLE1BQU07RUFDTixRQUFRO0VBQ1IsU0FBUztFQUNULHVCQUF1QjtFQUN2QiwwQkFBMEI7RUFDMUIsd0JBQXdCO0VBQ3hCLFdBQVc7RUFDWCxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLHlCQUF5QjtFQUN6QiwwQ0FBMEM7RUFDMUMsZ0RBQWdEO0VBQ2hELDhDQUE4QztFQUM5QyxtQ0FBbUM7QUFDckM7O0FBRUE7RUFDRSxrQ0FBa0M7QUFDcEM7O0FBRUE7RUFDRSw0Q0FBNEM7QUFDOUM7O0FBRUE7RUFDRSwyQ0FBMkM7QUFDN0M7O0FBRUE7RUFDRTtJQUNFLDJCQUEyQjtFQUM3QjtBQUNGO0FBQ0E7RUFDRTtJQUNFLDJCQUEyQjtFQUM3QjtBQUNGO0FBQ0E7RUFDRTs7OztJQUlFLGVBQWU7RUFDakI7QUFDRjtBQUNBO0VBQ0UsYUFBYTtFQUNiLG1CQUFtQjtFQUNuQiw4QkFBOEI7RUFDOUIsa0JBQWtCO0VBQ2xCLG9DQUFvQztBQUN0Qzs7QUFFQTtFQUNFLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxPQUFPO0VBQ1AsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtBQUNuQjs7QUFFQTtFQUNFLGlDQUFpQztFQUNqQyxrQkFBa0I7RUFDbEIsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixTQUFTO0FBQ1g7O0FBRUE7RUFDRSxlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsYUFBYTtFQUNiLFNBQVM7RUFDVCxtQkFBbUI7RUFDbkIsbUJBQW1CO0VBQ25CLG9DQUFvQztBQUN0Qzs7QUFFQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxXQUFXO0VBQ1gsWUFBWTtFQUNaLG9CQUFpQjtLQUFqQixpQkFBaUI7RUFDakIsY0FBYztBQUNoQjs7QUFFQTtFQUNFLE9BQU87RUFDUCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxtQkFBbUI7RUFDbkIsY0FBYztBQUNoQjs7QUFFQTtFQUNFLFNBQVM7RUFDVCxlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLGVBQWU7RUFDZixTQUFTO0VBQ1QsMkJBQTJCO0VBQzNCLCtDQUErQztFQUMvQyxxQkFBcUI7RUFDckIsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsV0FBVztFQUNYLGVBQWU7RUFDZiw0QkFBNEI7QUFDOUI7O0FBRUE7RUFDRSxlQUFlO0VBQ2Ysc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0UsYUFBYTtFQUNiLFNBQVM7RUFDVCwwQkFBMEI7RUFDMUIsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0U7SUFDRSxnQ0FBZ0M7SUFDaEMsa0JBQWtCO0VBQ3BCO0FBQ0Y7QUFDQTtFQUNFLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsU0FBUztFQUNULFlBQVk7QUFDZDs7QUFFQTtFQUNFLDBCQUEwQjtFQUMxQix3QkFBd0I7RUFDeEIsNkJBQTZCO0VBQzdCLG1CQUFtQjtFQUNuQixhQUFhO0VBQ2IsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixTQUFTO0VBQ1QsWUFBWTtBQUNkOztBQUVBO0VBQ0UsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLFNBQVM7RUFDVCxtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixxQkFBcUI7RUFDckIsMEJBQTBCO0VBQzFCLG1CQUFtQjtFQUNuQixpQkFBaUI7QUFDbkI7O0FBRUE7RUFDRSxpQ0FBaUM7RUFDakMsaUJBQWlCO0VBQ2pCLGdCQUFnQjtFQUNoQixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsYUFBYTtFQUNiLFNBQVM7RUFDVCx1QkFBdUI7RUFDdkIsNkJBQTZCO0VBQzdCLG1CQUFtQjtFQUNuQixhQUFhO0VBQ2IsZUFBZTtBQUNqQjs7QUFFQTtFQUNFLGdDQUFnQztFQUNoQywyQkFBMkI7RUFDM0IseUJBQXlCO0FBQzNCOztBQUVBO0VBQ0UsZUFBZTtFQUNmLGdDQUFnQztBQUNsQzs7QUFFQTtFQUNFLGNBQWM7RUFDZCxtQkFBbUI7QUFDckI7O0FBRUE7RUFDRSxhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLFFBQVE7QUFDVjs7QUFFQTtFQUNFLDZCQUE2QjtFQUM3QixxQkFBcUI7RUFDckIsZ0JBQWdCO0VBQ2hCLG1CQUFtQjtFQUNuQixrQkFBa0I7QUFDcEI7O0FBRUE7RUFDRSxTQUFTO0VBQ1QsY0FBYztFQUNkLGVBQWU7RUFDZixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGdCQUFnQjtFQUNoQixTQUFTO0FBQ1g7O0FBRUE7OztFQUdFLGFBQWE7QUFDZjs7QUFFQTtFQUNFLGlDQUFpQztFQUNqQyx5QkFBeUI7RUFDekIsdUJBQXVCO0FBQ3pCOztBQUVBO0VBQ0Usd0JBQXdCO0VBQ3hCLGFBQWE7RUFDYixlQUFlO0VBQ2YsY0FBYztFQUNkLGVBQWU7QUFDakI7O0FBRUE7RUFDRSxjQUFjO0FBQ2hCOztBQUVBO0VBQ0Usb0JBQW9CO0FBQ3RCOztBQUVBO0VBQ0UsZ0JBQWdCO0VBQ2hCLFNBQVM7RUFDVCxpQkFBaUI7RUFDakIsaUNBQWlDO0VBQ2pDLGVBQWU7RUFDZixrQkFBa0I7RUFDbEIsWUFBWTtBQUNkOztBQUVBO0VBQ0UsY0FBYztFQUNkLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLFlBQVk7RUFDWix1QkFBdUI7QUFDekI7O0FBRUE7RUFDRSxhQUFhO0VBQ2IsZUFBZTtFQUNmLFFBQVE7RUFDUixlQUFlO0FBQ2pCOztBQUVBO0VBQ0UsaUJBQWlCO0VBQ2pCLHFCQUFxQjtBQUN2Qjs7QUFFQTtFQUNFLG9CQUFvQjtFQUNwQixZQUFZO0VBQ1osbUJBQW1CO0VBQ25CLFdBQVc7QUFDYjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSwwQkFBMEI7RUFDMUIsb0NBQW9DO0FBQ3RDOztBQUVBO0VBQ0UsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsY0FBYztFQUNkLFdBQVc7RUFDWCxZQUFZO0FBQ2Q7O0FBRUE7RUFDRSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLHdCQUF3QjtBQUMxQjs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixhQUFhO0VBQ2Isc0JBQXNCO0VBQ3RCLG1CQUFtQjtFQUNuQixTQUFTO0VBQ1Qsa0JBQWtCO0FBQ3BCOztBQUVBO0VBQ0UsWUFBWTtFQUNaLFlBQVk7QUFDZDs7QUFFQTtFQUNFLGVBQWU7RUFDZixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRSxTQUFTO0VBQ1QsbUJBQW1CO0FBQ3JCOztBQUVBO0VBQ0UsaUNBQWlDO0FBQ25DOztBQUVBO0VBQ0UsZUFBZTtFQUNmLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFDbEIsZUFBZTtFQUNmLG1CQUFtQjtBQUNyQjs7QUFFQTtFQUNFLGdCQUFnQjtFQUNoQixnQkFBZ0I7QUFDbEI7O0FBRUE7RUFDRTtJQUNFLG1CQUFtQjtFQUNyQjtFQUNBO0lBQ0UsWUFBWTtFQUNkO0VBQ0E7SUFDRSxtQkFBbUI7RUFDckI7RUFDQTtJQUNFLFNBQVM7RUFDWDtFQUNBO0lBQ0UsWUFBWTtFQUNkO0VBQ0E7SUFDRSxlQUFlO0VBQ2pCO0VBQ0E7SUFDRSxlQUFlO0VBQ2pCO0FBQ0YiLCJmaWxlIjoiY2F0YWxvZy5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0IC0tIGVudigpIGZhbGxiYWNrcyBmZWVkIGNhbGMoKSwgd2hlcmUgYSB1bml0bGVzcyAwIGlzIGludmFsaWQgKi9cbjpyb290IHtcbiAgY29sb3Itc2NoZW1lOiBsaWdodDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZy10b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLCAwcHgpO1xuICBwYWRkaW5nLWJvdHRvbTogZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20sIDBweCk7XG4gIC0taGVhZGVyOiAjZmZmO1xuICAtLWhlYWRlci1mZzogIzIxMjUyOTtcbiAgLS1iZzogI2Y1ZjVmNTtcbiAgLS1mZzogIzIxMjUyOTtcbiAgLS1zdXJmYWNlOiAjZmZmO1xuICAtLXN1cmZhY2UtZmc6ICMyMTI1Mjk7XG4gIC0tcHJpY2U6ICMyMTI1Mjk7XG4gIC0tYnJhbmQ6ICMyMTI1Mjk7XG4gIC0tYnJhbmQtZmc6ICNmZmY7XG4gIC0tYWNjZW50OiAjMjEyNTI5O1xuICAtLWFjY2VudC1mZzogI2ZmZjtcbiAgLS1zZWxlY3RlZDogI2U5ZWNlZjtcbiAgLS1zZWxlY3RlZC1mZzogIzIxMjUyOTtcbiAgLS1mb290ZXI6ICNmNWY1ZjU7XG4gIC0tZm9vdGVyLWZnOiAjNmM3NTdkO1xuICAtLW11dGVkOiAjNmM3NTdkO1xuICAtLWxpbmU6ICNkNGQ0ZDQ7XG4gIC0tbm90ZS1iZzogI2ZmZjZlNjtcbiAgLS1ub3RlLWZnOiAjNmI0MzEwO1xuICAtLXNrZWw6ICNlNmViZTk7XG4gIC0tc2hhZG93OiAwIDhweCAzMHB4IHJnYigzMyAzNyA0MSAvIDE1JSk7XG4gIC0tZGlzcGxheTogJ0JyaWNvbGFnZSBHcm90ZXNxdWUnLCAnU2Vnb2UgVUknLCBzeXN0ZW0tdWksIHNhbnMtc2VyaWY7XG4gIC0tYm9keTogJ09uZXN0JywgJ1NlZ29lIFVJJywgc3lzdGVtLXVpLCBzYW5zLXNlcmlmO1xufVxuXG5odG1sIHtcbiAgc2Nyb2xsLXBhZGRpbmctdG9wOiBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMHB4KTtcbn1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJnKTtcbiAgY29sb3I6IHZhcigtLWZnKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJvZHkpO1xuICBmb250LXNpemU6IDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMHB4KSAtIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tLCAwcHgpKTtcbiAgbWluLWhlaWdodDogY2FsYygxMDBkdmggLSBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMHB4KSAtIGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tLCAwcHgpKTtcbn1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4qIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxubWFpbi5hcHAge1xuICBmbGV4OiAxIDAgYXV0bztcbn1cblxuYm9keTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBpbnNldDogMCAwIGF1dG87XG4gIGhlaWdodDogZW52KHNhZmUtYXJlYS1pbnNldC10b3AsIDBweCk7XG4gIHotaW5kZXg6IDEwO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdXJmYWNlKTtcbn1cblxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5idXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbjpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogM3B4IHNvbGlkIHZhcigtLWFjY2VudCk7XG4gIG91dGxpbmUtb2Zmc2V0OiAycHg7XG59XG5cbi53cmFwIHtcbiAgbWF4LXdpZHRoOiAxMTgwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IG1heCgxNnB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQsIDBweCkpO1xuICBwYWRkaW5nLXJpZ2h0OiBtYXgoMTZweCwgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCwgMHB4KSk7XG59XG5cbmgxLFxuaDIsXG5oMyB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1kaXNwbGF5KTtcbiAgdGV4dC13cmFwOiBiYWxhbmNlO1xuICBtYXJnaW46IDA7XG59XG5cbi5tb25leSB7XG4gIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XG59XG5cbi5idG4ge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIHBhZGRpbmc6IDEycHggMThweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQpO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZmcpO1xufVxuXG5hLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5idG5bZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYnRuLmJsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6IHZhcigtLW11dGVkKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbn1cblxuLngge1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDRweCA4cHg7XG4gIGNvbG9yOiB2YXIoLS1tdXRlZCk7XG59XG5cbi5yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgZ2FwOiAxMnB4O1xufVxuXG4ucm93ID4gOmxhc3QtY2hpbGQge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udmlzdWFsbHktaGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0IC0tIGVudigpIGZhbGxiYWNrcyBmZWVkIGNhbGMoKSwgd2hlcmUgYSB1bml0bGVzcyAwIGlzIGludmFsaWQgKi9cbi8qIHNwYWNpb3VzIGhlYWRlciAqL1xuLmhlcm8ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1oZWFkZXIpO1xuICBjb2xvcjogdmFyKC0taGVhZGVyLWZnKTtcbn1cblxuLmhlcm8gLndyYXAge1xuICBwYWRkaW5nLWJsb2NrOiAyNHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDE4cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmhlcm8gLmxvZ28ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA5NnB4O1xuICBtYXgtd2lkdGg6IDI4OHB4O1xuICBmbGV4OiBub25lO1xufVxuXG4uaGVybyAubG9nbyBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4uaGVybyAud2hvIHtcbiAgZmxleDogMSAxIDIwMHB4O1xuICBtaW4td2lkdGg6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogNHB4O1xufVxuXG4uaGVybyAuc3RvcmUtbmFtZSB7XG4gIG1hcmdpbjogMDtcbiAgb3BhY2l0eTogMTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWRpc3BsYXkpO1xuICBmb250LXNpemU6IDI4cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG59XG5cbi5oZXJvIC5zdG9yZS1uYW1lIGEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5AbWVkaWEgKHdpZHRoIDw9IDU5OXB4KSB7XG4gIC5oZXJvIC53cmFwIHtcbiAgICBwYWRkaW5nLWJsb2NrOiAxOHB4O1xuICAgIGdhcDogMTRweDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5oZXJvIC5sb2dvIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA3MnB4O1xuICB9XG4gIC5oZXJvIC53aG8ge1xuICAgIGZsZXg6IG5vbmU7XG4gIH1cbiAgLmhlcm8gLnN0b3JlLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgfVxufVxuLyogc3RpY2t5IHNsaW0gYmFyICovXG4uYmFyIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMHB4KTtcbiAgei1pbmRleDogNTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3VyZmFjZSk7XG4gIGNvbG9yOiB2YXIoLS1zdXJmYWNlLWZnKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWxpbmUpO1xufVxuXG4uYmFyIC53cmFwIHtcbiAgcGFkZGluZy1ibG9jazogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxMHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uYmFyIGlucHV0W3R5cGU9c2VhcmNoXSB7XG4gIGZsZXg6IDE7XG4gIG1pbi13aWR0aDogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJnKTtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgcGFkZGluZzogMTBweCAxNHB4O1xufVxuXG4uYmFyLWxvZ28ge1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBmbGV4OiBub25lO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlOiAxMDAlLzEwMCU7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG59XG5cbi5iYXItbG9nb1toaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmJhci1sb2dvIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIGxlbmd0aC16ZXJvLW5vLXVuaXQgLS0gZW52KCkgZmFsbGJhY2tzIGZlZWQgY2FsYygpLCB3aGVyZSBhIHVuaXRsZXNzIDAgaXMgaW52YWxpZCAqL1xuLnNpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKHdpZHRoID49IDkwMHB4KSB7XG4gIC5zaWRlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAxMHB4O1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiBjYWxjKDc2cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCwgMHB4KSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3VyZmFjZSk7XG4gICAgY29sb3I6IHZhcigtLXN1cmZhY2UtZmcpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgcGFkZGluZzogMTRweDtcbiAgfVxufVxuLnNpZGUgaDIge1xuICBmb250LXNpemU6IDE3cHg7XG59XG5cbi5jYXRmaWx0ZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1saW5lKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmcpO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBwYWRkaW5nOiA4cHggMTBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jYXRzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDRweDtcbiAgbWF4LWhlaWdodDogNjB2aDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLmNhdHMgYSB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nOiA4cHggMTBweCA4cHggY2FsYygxMHB4ICsgdmFyKC0tZGVwdGgsIDApICogMTRweCk7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiA4cHg7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jYXRzIGE6aG92ZXIsXG4uY2F0cyBhW2FyaWEtY3VycmVudD10cnVlXSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXNlbGVjdGVkKTtcbiAgY29sb3I6IHZhcigtLXNlbGVjdGVkLWZnKTtcbn1cblxuLmNhdHMgYVthcmlhLWN1cnJlbnQ9dHJ1ZV0ge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uc2hlZXQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIG1heC1oZWlnaHQ6IDgwdmg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN1cmZhY2UpO1xuICBjb2xvcjogdmFyKC0tc3VyZmFjZS1mZyk7XG4gIHotaW5kZXg6IDIxO1xuICBib3JkZXItcmFkaXVzOiAyMHB4IDIwcHggMCAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3cpO1xuICBwYWRkaW5nOiAxNnB4IG1heCgxNnB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0LCAwcHgpKSBjYWxjKDE2cHggKyBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSwgMHB4KSkgbWF4KDE2cHgsIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCwgMHB4KSk7XG4gIGdhcDogMTBweDtcbn1cblxuLnNoZWV0IGgyIHtcbiAgZm9udC1zaXplOiAxOXB4O1xufVxuXG4uc2hlZXQgLmNhdHMge1xuICBtYXgtaGVpZ2h0OiBub25lO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4uc2NyaW0ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGluc2V0OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDUsIDE1LCAxMiwgMC40NSk7XG4gIHotaW5kZXg6IDIwO1xufVxuXG4uc2hlZXRbaGlkZGVuXSxcbi5zY3JpbVtoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNoZWV0IHtcbiAgYW5pbWF0aW9uOiBzaGVldC1pbiAyNTBtcyBlYXNlLW91dDtcbn1cblxuLnNjcmltOmhhcygrIC5zaGVldCkge1xuICBhbmltYXRpb246IHNjcmltLWluIDI1MG1zIGVhc2Utb3V0O1xufVxuXG4uc2hlZXQuY2xvc2luZyB7XG4gIGFuaW1hdGlvbjogc2hlZXQtb3V0IDIwMG1zIGVhc2UtaW4gZm9yd2FyZHM7XG59XG5cbi5zY3JpbTpoYXMoKyAuc2hlZXQuY2xvc2luZykge1xuICBhbmltYXRpb246IHNjcmltLW91dCAyMDBtcyBlYXNlLWluIGZvcndhcmRzO1xufVxuXG5Aa2V5ZnJhbWVzIHNoZWV0LWluIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHNoZWV0LW91dCB7XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgc2NyaW0taW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHNjcmltLW91dCB7XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuc2hlZXQsXG4gIC5zaGVldC5jbG9zaW5nLFxuICAuc2NyaW06aGFzKCsgLnNoZWV0KSxcbiAgLnNjcmltOmhhcygrIC5zaGVldC5jbG9zaW5nKSB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG4ubGF5b3V0IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdhcDogMjRweDtcbiAgcGFkZGluZy1ibG9jazogMTZweCA0OHB4O1xufVxuXG5AbWVkaWEgKHdpZHRoID49IDkwMHB4KSB7XG4gIC5sYXlvdXQ6aGFzKD4gLnNpZGUpIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDI0MHB4IDFmcjtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gIH1cbn1cbi8qIHRvb2xiYXIgKi9cbi5tYWluIHtcbiAgbWluLXdpZHRoOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDE0cHg7XG59XG5cbi50b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiA4cHg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnRvb2xiYXIgc2VsZWN0LFxuLnRvb2xiYXIgLmNhdG9wZW4ge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1saW5lKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3VyZmFjZSk7XG4gIGNvbG9yOiB2YXIoLS1zdXJmYWNlLWZnKTtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgcGFkZGluZzogMTBweCAxMnB4O1xuICBmbGV4OiAxIDEgMTUwcHg7XG4gIG1pbi13aWR0aDogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuQG1lZGlhICh3aWR0aCA+PSA5MDBweCkge1xuICAudG9vbGJhciBzZWxlY3Qjb3JkZXIge1xuICAgIGZsZXg6IDAgMCAyMjBweDtcbiAgfVxuICAudG9vbGJhciAubWNhdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmNoaXAtY2xlYXIge1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tYnJhbmQpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiAxMHB4IDZweDtcbn1cblxuYS5jaGlwLWNsZWFyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKiBwcm9kdWN0IGxpc3Q6IHBob25lID0gcm93cywgZGVza3RvcCA9IGdyaWQgKi9cbi5ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdhcDogMTBweDtcbn1cblxuLmNhcmQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdXJmYWNlKTtcbiAgY29sb3I6IHZhcigtLXN1cmZhY2UtZmcpO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDEycHg7XG4gIHBhZGRpbmc6IDEycHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxpbmUpO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udGh1bWIge1xuICB3aWR0aDogNzZweDtcbiAgaGVpZ2h0OiA3NnB4O1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBmbGV4OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1saW5lKTtcbn1cblxuLmNhcmQgLnRodW1iIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNhcmQgLmluZm8ge1xuICBmbGV4OiAxO1xuICBtaW4td2lkdGg6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogNHB4O1xufVxuXG4uY2FyZCAubmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jYXJkIC5uYW1lOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG59XG5cbi5jYXJkIC5wcmljZSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiB2YXIoLS1wcmljZSk7XG59XG5cbi50YWcge1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiB2YXIoLS1tdXRlZCk7XG59XG5cbi5hZGQge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kKTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWZnKTtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBmbGV4OiBub25lO1xuICBkaXNwbGF5OiBncmlkO1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5zdGVwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQpO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZmcpO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBmbGV4OiBub25lO1xufVxuXG4uc3RlcHBlciBidXR0b24sXG4uc3RlcHBlciAuYWRkIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogNDBweDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uc3RlcHBlciBidXR0b25bZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uc3RlcHBlciBzcGFuIHtcbiAgbWluLXdpZHRoOiAyMnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XG59XG5cbi8qIFRoZSBuYW1lIGxpbmsgY292ZXJzIHRoZSBjYXJkOyB0aGUgY2FydCBjb250cm9scyBzaXQgYWJvdmUgaXQuICovXG4uY2FyZCAuYWRkLFxuLmNhcmQgLnN0ZXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG59XG5cbkBtZWRpYSAod2lkdGggPj0gOTAwcHgpIHtcbiAgLmdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ2FwOiAxNnB4O1xuICB9XG4gIC5jYXJkIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBnYXA6IDA7XG4gIH1cbiAgLmNhcmQgLnRodW1iIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYXNwZWN0LXJhdGlvOiAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgLmNhcmQgLmluZm8ge1xuICAgIHBhZGRpbmc6IDEycHggMTRweCA0cHg7XG4gIH1cbiAgLmNhcmQgLmluZm86bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDE0cHg7XG4gIH1cbiAgLmNhcmQgLmFkZCB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNnB4O1xuICB9XG4gIC5jYXJkIC5hZGQ6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBBZGljaW9uYXJcIjtcbiAgfVxuICAuY2FyZCAuc3RlcHBlciAuYWRkIHtcbiAgICB3aWR0aDogMzZweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG4gIC5jYXJkIC5zdGVwcGVyIC5hZGQ6OmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lO1xuICB9XG4gIC5jYXJkIC5zdGVwcGVyIHtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nLWlubGluZTogOHB4O1xuICB9XG4gIC5jYXJkIC5zdGVwcGVyIGJ1dHRvbiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC5jYXJkIC5zdGVwcGVyIHNwYW46OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBubyBjYXJyaW5ob1wiO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gMTE0MHB4KSB7XG4gIC5ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICB9XG59XG4jY2F0YWxvZy1saXN0aW5nIHtcbiAgZGlzcGxheTogY29udGVudHM7XG59XG5cbi8qIHRoZSBmcmFtZSBvZiB0aGUgbmV4dCBwYWdlIG5lZWRzIGEgYm94IGZvciBpdHMgbGF6eSBsb2FkaW5nIHRvIHNlZSBpdCAqL1xudHVyYm8tZnJhbWUubmV4dC1wYWdlOm5vdChbYnVzeV0sIFtjb21wbGV0ZV0pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGdyaWQtY29sdW1uOiAxLy0xO1xuICBtaW4taGVpZ2h0OiAxcHg7XG59XG5cbnR1cmJvLWZyYW1lLm5leHQtcGFnZTppcyhbYnVzeV0sIFtjb21wbGV0ZV0pIHtcbiAgZGlzcGxheTogY29udGVudHM7XG59XG5cbnR1cmJvLWZyYW1lLm5leHQtcGFnZTpub3QoW2J1c3ldKSA+IC5za2VsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxudHVyYm8tZnJhbWUubmV4dC1wYWdlID4gLm1vcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBtYXJnaW46IDhweCBhdXRvO1xufVxuXG50dXJiby1mcmFtZS5uZXh0LXBhZ2VbYnVzeV0gPiAubW9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5za2VsIC50aHVtYixcbi5za2VsIC5iYXIxIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc2tlbCk7XG4gIGFuaW1hdGlvbjogcHVsc2UgMS4ycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cblxuLnNrZWwgLmJhcjEge1xuICBoZWlnaHQ6IDEycHg7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbn1cblxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuc2tlbCAudGh1bWIsXG4gIC5za2VsIC5iYXIxIHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gIH1cbn1cbi5lbXB0eSB7XG4gIGdyaWQtY29sdW1uOiAxLy0xO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDQ4cHggMTZweDtcbiAgY29sb3I6IHZhcigtLW11dGVkKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiA4cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5lbXB0eSBoMiB7XG4gIGNvbG9yOiB2YXIoLS1mZyk7XG4gIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuLnByb2R1Y3Qge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDI0cHg7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBwYWRkaW5nLWJsb2NrOiAxNnB4IDQ4cHg7XG59XG5cbkBtZWRpYSAod2lkdGggPj0gODIwcHgpIHtcbiAgLnByb2R1Y3Qge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgfVxufVxuLmNydW1icyB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgY29sb3I6IHZhcigtLW11dGVkKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiA2cHg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy10b3A6IDE2cHg7XG59XG5cbi5jcnVtYnMgYSB7XG4gIGNvbG9yOiB2YXIoLS1wcmljZSk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmhlcm8taW1nIHtcbiAgYXNwZWN0LXJhdGlvOiAxO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6IHZhcigtLWxpbmUpO1xufVxuXG4uaGVyby1pbWcgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGluZm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDE2cHg7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLnBpbmZvIGgxIHtcbiAgZm9udC1zaXplOiAyOHB4O1xufVxuXG4ucGluZm8gLnByaWNlIHtcbiAgZm9udC1zaXplOiAyNnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogdmFyKC0tZGlzcGxheSk7XG4gIGNvbG9yOiB2YXIoLS1wcmljZSk7XG59XG5cbi5vcHRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDhweDtcbiAgbWFyZ2luLXRvcDogOHB4O1xufVxuXG4ub3B0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN1cmZhY2UpO1xuICBjb2xvcjogdmFyKC0tc3VyZmFjZS1mZyk7XG4gIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICBwYWRkaW5nOiA4cHggMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ub3B0W2FyaWEtY3VycmVudD10cnVlXSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc2VsZWN0ZWQtZmcpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWxlY3RlZCk7XG4gIGNvbG9yOiB2YXIoLS1zZWxlY3RlZC1mZyk7XG4gIHRleHQtc2hhZG93OiAwLjRweCAwIGN1cnJlbnRjb2xvcjtcbn1cblxuLm9wdC5kaW0ge1xuICBvcGFjaXR5OiAwLjQ7XG59XG5cbi5vcHRbYXJpYS1kaXNhYmxlZD10cnVlXSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5xdHkge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN1cmZhY2UpO1xufVxuXG4ubGFiZWwgKyAucXR5IHtcbiAgbWFyZ2luLXRvcDogOHB4O1xufVxuXG4ucXR5IGJ1dHRvbiB7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6IHZhcigtLWZnKTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4ucXR5IGJ1dHRvbltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5xdHkgc3BhbiB7XG4gIG1pbi13aWR0aDogMzJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zO1xufVxuXG4uaW5jYXJ0IHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEyLjVweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgbGVuZ3RoLXplcm8tbm8tdW5pdCAtLSBlbnYoKSBmYWxsYmFja3MgZmVlZCBjYWxjKCksIHdoZXJlIGEgdW5pdGxlc3MgMCBpcyBpbnZhbGlkICovXG4uY2FydGJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZCk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1mZyk7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIHBhZGRpbmc6IDEwcHggNDBweCAxMHB4IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5jYXJ0YnRuLWljb24ge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMjJweDtcbiAgaGVpZ2h0OiAyMnB4O1xufVxuXG5AbWVkaWEgKHdpZHRoIDw9IDU5OXB4KSB7XG4gIC5jYXJ0YnRuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogOXB4IDM4cHggOXB4IDEycHg7XG4gIH1cbiAgLmNhcnRidG4taWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmNhcnRidG4tbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbn1cbi5jYXJ0YnRuIC5jb3VudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWFjY2VudCk7XG4gIGNvbG9yOiB2YXIoLS1hY2NlbnQtZmcpO1xuICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgbWluLXdpZHRoOiAyMnB4O1xuICBoZWlnaHQ6IDIycHg7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLyogZmxvYXRpbmcgYmFyLCBkcmF3ZXIgKi9cbi5mbG9hdGJhciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcGFkZGluZzogMCBtYXgoMTZweCwgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCwgMHB4KSkgY2FsYygxNnB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20sIDBweCkpIG1heCgxNnB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQsIDBweCkpO1xuICB6LWluZGV4OiA2O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmZsb2F0YmFyIC5pbm5lciB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBtYXgtd2lkdGg6IDU2MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgYmFja2dyb3VuZDogdmFyKC0tZmcpO1xuICBjb2xvcjogdmFyKC0tYmcpO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBwYWRkaW5nOiAxMnB4IDEycHggMTJweCAxNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDEycHg7XG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdyk7XG59XG5cbi5mbG9hdGJhciAuaW5uZXIgZGl2IHtcbiAgZmxleDogMTtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uZmxvYXRiYXIgLmJ0biB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWFjY2VudCk7XG4gIGNvbG9yOiB2YXIoLS1hY2NlbnQtZmcpO1xufVxuXG4uZHJhd2VyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiBtaW4oNDIwcHgsIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdXJmYWNlKTtcbiAgY29sb3I6IHZhcigtLXN1cmZhY2UtZmcpO1xuICB6LWluZGV4OiAyMTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93KTtcbiAgcGFkZGluZy10b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLCAwcHgpO1xuICBwYWRkaW5nLWJvdHRvbTogZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20sIDBweCk7XG4gIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQsIDBweCk7XG4gIGFuaW1hdGlvbjogZHJhd2VyLWluIDI1MG1zIGVhc2Utb3V0O1xufVxuXG4uc2NyaW06aGFzKCsgLmRyYXdlcikge1xuICBhbmltYXRpb246IHNjcmltLWluIDI1MG1zIGVhc2Utb3V0O1xufVxuXG4uZHJhd2VyLmNsb3Npbmcge1xuICBhbmltYXRpb246IGRyYXdlci1vdXQgMjAwbXMgZWFzZS1pbiBmb3J3YXJkcztcbn1cblxuLnNjcmltOmhhcygrIC5kcmF3ZXIuY2xvc2luZykge1xuICBhbmltYXRpb246IHNjcmltLW91dCAyMDBtcyBlYXNlLWluIGZvcndhcmRzO1xufVxuXG5Aa2V5ZnJhbWVzIGRyYXdlci1pbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgfVxufVxuQGtleWZyYW1lcyBkcmF3ZXItb3V0IHtcbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgfVxufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmRyYXdlcixcbiAgLmRyYXdlci5jbG9zaW5nLFxuICAuc2NyaW06aGFzKCsgLmRyYXdlciksXG4gIC5zY3JpbTpoYXMoKyAuZHJhd2VyLmNsb3NpbmcpIHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gIH1cbn1cbi5kcmF3ZXIgaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAxNnB4IDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1saW5lKTtcbn1cblxuLmRyYXdlciBoZWFkZXIgaDIge1xuICBmb250LXNpemU6IDE5cHg7XG59XG5cbi5kcmF3ZXIgLml0ZW1zIHtcbiAgZmxleDogMTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZzogOHB4IDIwcHg7XG59XG5cbi5kcmF3ZXIgZm9vdGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWxpbmUpO1xuICBwYWRkaW5nOiAxNnB4IDIwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTJweDtcbn1cblxuLmRyYXdlciAuc3VidG90YWwge1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi5saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxMnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWJsb2NrOiAxMnB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tbGluZSk7XG59XG5cbi5saW5lIC50aHVtYiB7XG4gIHdpZHRoOiA1MnB4O1xuICBoZWlnaHQ6IDUycHg7XG59XG5cbi5saW5lIC50aHVtYiBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5saW5lIC5pbmZvIHtcbiAgZmxleDogMTtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4ubGluZSBzbWFsbCB7XG4gIGNvbG9yOiB2YXIoLS1tdXRlZCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaGludCB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogdmFyKC0tbXV0ZWQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50b2FzdCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHRvcDogY2FsYygxNnB4ICsgZW52KHNhZmUtYXJlYS1pbnNldC10b3AsIDBweCkpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1mZyk7XG4gIGNvbG9yOiB2YXIoLS1iZyk7XG4gIHBhZGRpbmc6IDEwcHggMTZweDtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgei1pbmRleDogNDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAzMnB4KTtcbn1cblxuLnN1bW1hcnktdGl0bGUge1xuICBmb250LXNpemU6IDI2cHg7XG4gIG1hcmdpbi1ibG9jazogOHB4IDE2cHg7XG59XG5cbi5zdW1tYXJ5IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAyMHB4O1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgcGFkZGluZy1ibG9jazogOHB4IDQ4cHg7XG59XG5cbkBtZWRpYSAod2lkdGggPj0gODYwcHgpIHtcbiAgLnN1bW1hcnkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMS40ZnIgMWZyO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgfVxufVxuLnN1bW1hcnktZm9ybXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDE2cHg7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLnBhbmVsIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3VyZmFjZSk7XG4gIGNvbG9yOiB2YXIoLS1zdXJmYWNlLWZnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIHBhZGRpbmc6IDE4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMTRweDtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4ucGFuZWwgaDMge1xuICBmb250LXNpemU6IDE3cHg7XG59XG5cbi5wYW5lbCAud2FybiB7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogdmFyKC0tbm90ZS1mZyk7XG4gIGJhY2tncm91bmQ6IHZhcigtLW5vdGUtYmcpO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBwYWRkaW5nOiA4cHggMTJweDtcbn1cblxuLnBhbmVsIC50b3RhbCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1saW5lKTtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuLnJhZGlvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxMnB4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZSk7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIHBhZGRpbmc6IDEycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnJhZGlvOmhhcyhpbnB1dDpjaGVja2VkKSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc2VsZWN0ZWQtZmcpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zZWxlY3RlZCk7XG4gIGNvbG9yOiB2YXIoLS1zZWxlY3RlZC1mZyk7XG59XG5cbi5yYWRpbyBpbnB1dCB7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgYWNjZW50LWNvbG9yOiB2YXIoLS1zZWxlY3RlZC1mZyk7XG59XG5cbi5yYWRpbyBzbWFsbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogdmFyKC0tbXV0ZWQpO1xufVxuXG4uZmllbGQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDRweDtcbn1cblxuLmZpZWxkIGlucHV0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbGluZSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJnKTtcbiAgY29sb3I6IHZhcigtLWZnKTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgcGFkZGluZzogMTBweCAxMnB4O1xufVxuXG4uZXJyIHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogI2I0MzIyYjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ucHJpdmFjeSB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHZhcigtLW11dGVkKTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luOiAwO1xufVxuXG4uc3VtbWFyeVtoaWRkZW5dLFxuLmVtcHR5W2hpZGRlbl0sXG4uYnRuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5mb290ZXIuc3RvcmUge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tbGluZSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWZvb3Rlcik7XG4gIGNvbG9yOiB2YXIoLS1mb290ZXItZmcpO1xufVxuXG5mb290ZXIuc3RvcmUgLndyYXAge1xuICBwYWRkaW5nLWJsb2NrOiAyNHB4IDEycHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiAxNnB4IDQwcHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuZm9vdGVyLnN0b3JlIHN0cm9uZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5ib2R5OmhhcyguZmxvYXRiYXI6bm90KFtoaWRkZW5dKSkgZm9vdGVyLnN0b3JlIC53cmFwIHtcbiAgcGFkZGluZy1ib3R0b206IDk2cHg7XG59XG5cbmZvb3Rlci5zdG9yZSAuY3JlZGl0IHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLXRvcDogMTJweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWxpbmUpO1xuICBmb250LXNpemU6IDEycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogMC44O1xufVxuXG5mb290ZXIuc3RvcmUgLmNyZWRpdCBhIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbmZvb3Rlci5zdG9yZSAud3JhcCA+IGRpdiB7XG4gIG1pbi13aWR0aDogMDtcbiAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG59XG5cbi5jb250YWN0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiA4cHg7XG4gIG1hcmdpbi10b3A6IDZweDtcbn1cblxuLmNvbnRhY3RzIC5idG4ge1xuICBwYWRkaW5nOiA4cHggMTRweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uY29udGFjdHMgLmJ0bi53aGF0c2FwcCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwYWRkaW5nOiA4cHg7XG4gIGJhY2tncm91bmQ6ICMyNWQzNjY7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uY29udGFjdHMgLmJ0bi53aGF0c2FwcCBzdmcge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuXG5oZWFkZXIucGxhdGZvcm0ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zdXJmYWNlKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWxpbmUpO1xufVxuXG5oZWFkZXIucGxhdGZvcm0gLndyYXAge1xuICBwYWRkaW5nLWJsb2NrOiAxNHB4O1xufVxuXG4ucGxhdGZvcm0tbG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAyMHB4O1xufVxuXG5tYWluLm5vdGljZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctYmxvY2s6IDMycHggMjRweDtcbn1cblxubWFpbi5ub3RpY2UgLndyYXAge1xuICBtYXgtd2lkdGg6IDU2MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDE2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm5vdGljZS1hcnQge1xuICB3aWR0aDogMTgwcHg7XG4gIGhlaWdodDogYXV0bztcbn1cblxubWFpbi5ub3RpY2UgaDEge1xuICBmb250LXNpemU6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG59XG5cbm1haW4ubm90aWNlIHAge1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiB2YXIoLS1tdXRlZCk7XG59XG5cbmZvb3Rlci5wbGF0Zm9ybSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1saW5lKTtcbn1cblxuZm9vdGVyLnBsYXRmb3JtIHAge1xuICBtYXJnaW4tYmxvY2s6IDA7XG4gIHBhZGRpbmctYmxvY2s6IDE2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogdmFyKC0tbXV0ZWQpO1xufVxuXG5mb290ZXIucGxhdGZvcm0gYSB7XG4gIGNvbG9yOiB2YXIoLS1mZyk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbkBtZWRpYSAod2lkdGggPj0gNjAwcHgpIHtcbiAgaGVhZGVyLnBsYXRmb3JtIC53cmFwIHtcbiAgICBwYWRkaW5nLWJsb2NrOiAxOHB4O1xuICB9XG4gIC5wbGF0Zm9ybS1sb2dvIHtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gIH1cbiAgbWFpbi5ub3RpY2Uge1xuICAgIHBhZGRpbmctYmxvY2s6IDU2cHg7XG4gIH1cbiAgbWFpbi5ub3RpY2UgLndyYXAge1xuICAgIGdhcDogMjBweDtcbiAgfVxuICAubm90aWNlLWFydCB7XG4gICAgd2lkdGg6IDI0MHB4O1xuICB9XG4gIG1haW4ubm90aWNlIGgxIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gIH1cbiAgbWFpbi5ub3RpY2UgcCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG4iXX0= */