/* css/app.css */
html,
body {
  box-sizing: border-box;
  background: black;
  font-family:
    "Open Sans",
    Avenir,
    Montserrat,
    Corbel,
    "URW Gothic",
    source-sans-pro,
    sans-serif;
  font-weight: normal;
  overflow-x: hidden;
  overflow-y: visible;
  height: 100%;
  scrollbar-width: none;
}
body::after {
  content: "";
  display: block;
  height: calc(100vh + (6 * var(--tile-size)));
}
@media (min-aspect-ratio: 6/5) {
  html,
  body {
    --tile-size: calc(100vh / 20);
  }
  body > div {
    margin: 0 calc(0.5 * var(--tile-size));
  }
}
@media (max-aspect-ratio: 6/5) {
  html,
  body {
    --tile-size: min(calc(100vw / 19), calc(80vh / 19));
  }
}
html::-webkit-scrollbar,
body::-webkit-scrollbar {
  display: none;
}
main {
  height: calc(16 * var(--tile-size));
  aspect-ratio: 1/1;
  margin: calc(2 * var(--tile-size)) auto;
  --tile-front: #f4f0eb;
  --tile-front-side: #eee4d8;
  --tile-back: #f0974c;
  --tile-back-side: #f0974c;
  --bg-color: #0f6f2f;
  position: relative;
  z-index: 1;
  overflow: visible;
}
main::before {
  content: "";
  position: absolute;
  top: calc(-0.5 * var(--tile-size));
  left: calc(-0.5 * var(--tile-size));
  background: var(--bg-color);
  border-radius: calc(0.25 * var(--tile-size));
  width: calc(100% + var(--tile-size));
  height: calc(100% + var(--tile-size));
  z-index: -1;
}
main div#container {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  display: flex;
  flex-flow: column nowrap;
  user-select: none;
  contain: layout;
  font-size: calc(0.5 * var(--tile-size));
  color: white;
}
@media (min-aspect-ratio: 6/5) {
  main::before {
    left: calc(-0.5 * var(--tile-size));
  }
  main div#container {
    left: 0;
  }
}
@media (pointer: coarse), (hover: none) {
  label[data-name][title]:not(.saki-card):focus::before,
  label[data-name][title]:not(.saki-card):focus::after {
    position: fixed;
    font-weight: 500;
    left: calc(1 * var(--tile-size));
    color: var(--tile-front);
    background: inherit;
    border: none;
    width: calc(100% - 2 * var(--tile-size));
    height: fit-content;
    padding: calc(0.25 * var(--tile-size));
    box-sizing: border-box;
    line-height: 1;
    z-index: 100;
  }
  label[data-name][title]:not(.saki-card):focus::before {
    content: attr(data-name);
    font-size: calc(0.75 * var(--tile-size));
    top: calc(0.25 * var(--tile-size));
    border-radius: calc(0.5 * var(--tile-size)) calc(0.5 * var(--tile-size)) 0 0;
  }
  label[data-name][title]:not(.saki-card):focus::after {
    content: attr(title);
    font-size: calc(0.5 * var(--tile-size));
    top: calc(1.5 * var(--tile-size));
    border-radius: 0 0 calc(0.5 * var(--tile-size)) calc(0.5 * var(--tile-size));
    white-space: pre-wrap;
  }
}
input[type=radio],
input[type=checkbox] {
  display: none;
}
label {
  display: inline-block;
  background: gray;
  border-radius: calc(0.125 * var(--tile-size));
  padding: 0 calc(0.125 * var(--tile-size));
  white-space: nowrap;
  user-select: none;
  text-align: center;
  cursor: pointer;
}
input + label {
  background: gray;
}
input:checked + label {
  background: var(--tile-back);
}
textarea {
  width: 100%;
  height: 100%;
  background: #3f3f3f;
  color: white;
  font-family: monospace;
  white-space: pre;
  box-sizing: border-box;
  scrollbar-width: none;
  font-size: calc(var(--tile-size) / 3);
}
textarea::-webkit-scrollbar {
  display: none;
}
button {
  background: var(--tile-front);
  color: black;
  border-width: 0;
  text-decoration: none;
  font-size: calc(0.75 * var(--tile-size));
  border-radius: calc(0.25 * var(--tile-size));
  filter: drop-shadow(0 calc(var(--tile-size) / 8) 0 var(--tile-front-side)) drop-shadow(0 calc(var(--tile-size) / 8) 0 var(--tile-back-side));
  cursor: pointer;
  text-align: center;
  transform: translateY(calc(var(--tile-size) / -8));
}
button:active {
  filter: drop-shadow(0 calc(var(--tile-size) / 8) 0 var(--tile-front-side));
  transform: translateY(0);
}
button:active::before,
button:active::before {
  content: "";
  position: absolute;
  background: transparent;
  width: 100%;
  height: calc(0.125 * var(--tile-size));
  top: calc(-0.125 * var(--tile-size));
  left: 0;
}
div.hand,
div.tiles,
div.calls,
div.flowers,
div.call,
div.draws,
div.buttons,
div.call-buttons,
button.call-button {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-end;
  position: relative;
}
div.hand {
  position: absolute;
  transform-style: preserve-3d;
  width: calc(100% - 2 * var(--tile-size));
}
div.self {
  z-index: 1;
}
div.hand,
div.draws {
  z-index: 2;
}
div.hand.self,
div.draws.self {
  z-index: 3;
}
div.tiles,
div.call.aside {
  flex-wrap: wrap-reverse;
  row-gap: calc(0.25 * var(--tile-size));
  max-width: calc(17.5 * 0.75 * var(--tile-size));
}
div.call.aside {
  justify-content: flex-end;
  max-width: calc(5.5 * 0.75 * var(--tile-size));
}
div.calls {
  position: absolute;
  flex-direction: row-reverse;
  right: 0;
  z-index: -1;
  width: 0;
}
div.call {
  flex-shrink: 0;
}
div.flowers {
  right: calc(1.25 * var(--tile-size));
  bottom: calc(1.25 * var(--tile-size));
  z-index: -2;
}
div.calls > div:nth-child(1) {
  z-index: -1;
}
div.calls > div:nth-child(2) {
  z-index: -2;
}
div.calls > div:nth-child(3) {
  z-index: -3;
}
div.calls > div:nth-child(4) {
  z-index: -4;
}
div.calls > div:nth-child(5) {
  z-index: -5;
}
div.calls > div:nth-child(6) {
  z-index: -6;
}
div.calls > div:nth-child(7) {
  z-index: -7;
}
div.calls > div:nth-child(8) {
  z-index: -8;
}
div.calls > div:nth-child(9) {
  z-index: -9;
}
div.calls > div:nth-child(10) {
  z-index: -10;
}
div.calls > div:nth-child(11) {
  z-index: -11;
}
div.calls > div:nth-child(12) {
  z-index: -12;
}
div.calls > div:nth-child(13) {
  z-index: -13;
}
div.calls > div:nth-child(14) {
  z-index: -14;
}
div.calls > div:nth-child(15) {
  z-index: -15;
}
div.calls > div:nth-child(16) {
  z-index: -16;
}
div.calls > div:nth-child(17) {
  z-index: -17;
}
div.calls > div:nth-child(18) {
  z-index: -18;
}
div.calls > div:nth-child(19) {
  z-index: -19;
}
div.calls > div:nth-child(20) {
  z-index: -20;
}
div.calls > div:nth-child(21) {
  z-index: -21;
}
div.calls > div:nth-child(22) {
  z-index: -22;
}
div.calls > div:nth-child(23) {
  z-index: -23;
}
div.calls > div:nth-child(24) {
  z-index: -24;
}
div.shimocha div.calls > div:nth-child(1) {
  z-index: -24;
}
div.shimocha div.calls > div:nth-child(2) {
  z-index: -23;
}
div.shimocha div.calls > div:nth-child(3) {
  z-index: -22;
}
div.shimocha div.calls > div:nth-child(4) {
  z-index: -21;
}
div.shimocha div.calls > div:nth-child(5) {
  z-index: -20;
}
div.shimocha div.calls > div:nth-child(6) {
  z-index: -19;
}
div.shimocha div.calls > div:nth-child(7) {
  z-index: -18;
}
div.shimocha div.calls > div:nth-child(8) {
  z-index: -17;
}
div.shimocha div.calls > div:nth-child(9) {
  z-index: -16;
}
div.shimocha div.calls > div:nth-child(10) {
  z-index: -15;
}
div.shimocha div.calls > div:nth-child(11) {
  z-index: -14;
}
div.shimocha div.calls > div:nth-child(12) {
  z-index: -13;
}
div.shimocha div.calls > div:nth-child(13) {
  z-index: -12;
}
div.shimocha div.calls > div:nth-child(14) {
  z-index: -11;
}
div.shimocha div.calls > div:nth-child(15) {
  z-index: -10;
}
div.shimocha div.calls > div:nth-child(16) {
  z-index: -9;
}
div.shimocha div.calls > div:nth-child(17) {
  z-index: -8;
}
div.shimocha div.calls > div:nth-child(18) {
  z-index: -7;
}
div.shimocha div.calls > div:nth-child(19) {
  z-index: -6;
}
div.shimocha div.calls > div:nth-child(20) {
  z-index: -5;
}
div.shimocha div.calls > div:nth-child(21) {
  z-index: -4;
}
div.shimocha div.calls > div:nth-child(22) {
  z-index: -3;
}
div.shimocha div.calls > div:nth-child(23) {
  z-index: -2;
}
div.shimocha div.calls > div:nth-child(24) {
  z-index: -1;
}
div.call,
div.draws,
div.winning-tile-container {
  margin-left: calc(0.375 * var(--tile-size));
}
div.winning-tile-container {
  position: relative;
}
div.winning-tile-text {
  text-align: center;
  position: absolute;
  width: 500%;
  font-size: calc(0.4 * var(--tile-size));
  top: calc(-0.75 * var(--tile-size));
  left: -200%;
  color: white;
}
div.hand.self {
  bottom: 0;
}
div.hand.self > div.tiles > div.tile,
div.hand.self > div.draws > div.tile {
  cursor: pointer;
}
div.hand.shimocha {
  right: var(--tile-size);
  transform: rotate(270deg);
  transform-origin: top right;
}
div.hand.toimen {
  top: 0;
  transform: rotate(180deg);
}
div.hand.kamicha {
  left: var(--tile-size);
  transform: rotate(90deg) translateX(calc(2 * var(--tile-size)));
  transform-origin: top left;
}
div.hand.self {
  transform: translateX(calc(2 * var(--tile-size)));
}
div.calls:hover {
  z-index: 100;
}
div.draws::before,
div.tiles:hover::before,
div.calls:hover::before {
  content: "";
  position: absolute;
  top: calc(-0.25 * var(--tile-size));
  left: 0;
  background: var(--bg-color);
  border-radius: calc(0.25 * var(--tile-size));
  width: calc(100% * var(--tile-size));
  height: calc(100% + 0.25 * var(--tile-size));
}
div.hand.toimen:hover {
  z-index: -1;
}
div.hand.shimocha div.tiles:hover::before,
div.hand.shimocha div.calls:hover::before {
  z-index: -20;
}
div.hand.shimocha div.tiles:hover ~ div.calls {
  z-index: -40;
}
div.hand.marking {
  z-index: 10;
}
div.hand.marking.self {
  z-index: 11;
}
div.hand.marking:hover {
  z-index: 20;
}
div.calls > div.dead-hand-button {
  border-radius: 50%;
  width: calc(1 * var(--tile-size));
  height: calc(1 * var(--tile-size));
  background: var(--tile-back);
  font-weight: 200;
  margin-left: calc(0.25 * var(--tile-size));
  transform-origin: 50% 50%;
  cursor: pointer;
}
div.calls > div.dead-hand-button.inactive {
  background: gray;
  opacity: 0.5;
}
div.hand.shimocha div.dead-hand-button {
  transform: rotate(90deg);
}
div.hand.toimen div.dead-hand-button {
  transform: rotate(180deg);
}
div.hand.kamicha div.dead-hand-button {
  transform: rotate(270deg);
}
div.calls > div.dead-hand-button::before {
  content: "\2620";
  font-size: calc(0.8 * var(--tile-size));
  width: calc(1 * var(--tile-size));
  height: calc(1 * var(--tile-size));
  color: var(--tile-front);
  display: flex;
  justify-content: center;
  align-items: center;
  transform: translateX(calc(-0.1 * var(--tile-size)));
}
div.calls > div.dead-hand-button::after {
  content: "?";
  font-size: calc(0.5 * var(--tile-size));
  width: calc(0.5 * var(--tile-size));
  height: calc(0.5 * var(--tile-size));
  color: var(--tile-front);
  display: flex;
  justify-content: center;
  align-items: center;
  transform: translate(calc(0.5 * var(--tile-size)), calc(-0.9 * var(--tile-size)));
}
div.calls > div.dead-hand-button:hover {
  cursor: pointer;
  opacity: 1;
}
div.tile.reversed {
  transform: scaleX(-100%);
}
div.tile.inactive {
  opacity: 0.7;
  --tile-brightness: 60%;
}
div.tile.highlight,
div.pond.highlight div.tile:last-child {
  --tile-brightness: 80%;
  --tile-saturate: 100%;
}
div.tile.transparent {
  --tile-brightness: 80%;
  --tile-saturate: 250%;
  --tile-back: var(--tile-front);
  --tile-back-side: var(--tile-front-side);
  opacity: 0.5;
}
div.tile.transparent.highlight,
div.pond.highlight div.tile.transparent:last-child {
  --tile-brightness: 48%;
}
div.tile.transparent.inactive {
  opacity: 0.35;
  --tile-brightness: 60%;
  --tile-saturate: 100%;
}
div.tile.hidden {
  display: none;
}
div.tile::after {
  display: none;
}
div.tile.one::after {
  content: "1";
}
div.tile.two::after {
  content: "2";
}
div.tile.three::after {
  content: "3";
}
div.tile.four::after {
  content: "4";
}
div.tile.five::after {
  content: "5";
}
div.tile.six::after {
  content: "6";
}
div.tile.seven::after {
  content: "7";
}
div.tile.eight::after {
  content: "8";
}
div.tile.nine::after {
  content: "9";
}
div.tile.ten::after {
  content: "10";
}
div.tile.E::after {
  content: "E";
}
div.tile.S::after {
  content: "S";
}
div.tile.W::after {
  content: "W";
}
div.tile.N::after {
  content: "N";
}
div.tile.Wh::after {
  content: "Wh";
}
div.tile.G::after {
  content: "G";
}
div.tile.R::after {
  content: "R";
}
div#container > input.tile-numbers-checkbox:checked ~ * div.tile::after {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  color: var(--number-color);
  text-shadow:
    0.15em 0 0 var(--tile-front),
    -0.15em 0 0 var(--tile-front),
    0 0.15em 0 var(--tile-front),
    0 -0.15em 0 var(--tile-front);
  border-radius: 50%;
  font-size: calc(0.25 * var(--tile-size));
  font-weight: 600;
  vertical-align: top;
  position: absolute;
  top: calc(0.04 * var(--tile-size));
  left: calc(0.04 * var(--tile-size));
  width: calc(0.25 * var(--tile-size));
  height: calc(0.25 * var(--tile-size));
  z-index: 1;
}
div#container > input.tile-numbers-checkbox:checked ~ * div.tile.sideways::after {
  top: unset;
  bottom: calc(0.04 * var(--tile-size));
  transform: rotate(-90deg);
}
div.pond,
div.secondary-pond {
  display: flex;
  flex-flow: row wrap;
  justify-content: left;
  align-content: flex-start;
  align-items: flex-start;
  position: absolute;
  transform-style: preserve-3d;
  width: calc(100% - 5 * var(--tile-size));
  height: calc(3 * var(--tile-size));
  transform-origin: calc(2.375 * var(--tile-size)) calc(-2.625 * var(--tile-size));
  overflow: visible;
  z-index: -1;
}
div.four-rows > div.pond {
  width: calc(5.125 * var(--tile-size));
  height: calc(4 * var(--tile-size));
}
div.four-rows > div.secondary-pond {
  width: calc(4.375 * var(--tile-size));
  margin-left: calc(4.75 * var(--tile-size));
  margin-top: calc(0.25 * var(--tile-size));
  transform-origin: calc(-2.375 * var(--tile-size)) calc(-2.875 * var(--tile-size));
}
div:not(.four-rows) > div.pond::before,
div:not(.four-rows) > div.pond::after {
  content: "";
  width: 100%;
  order: 1;
}
.pond > .tile {
  order: 0;
}
.pond > .tile:nth-child(n+7) {
  order: 1;
}
.pond > .tile:nth-child(n+13) {
  order: 2;
}
.pond.toimen > .tile {
  z-index: 3;
}
.pond.toimen > .tile:nth-child(n+7) {
  z-index: 2;
}
.pond.toimen > .tile:nth-child(n+13) {
  z-index: 1;
}
.pond.toimen > .tile:nth-child(n+19) {
  z-index: 0;
}
.pond.toimen.secondary-pond > .tile {
  z-index: 3;
}
.pond.toimen.secondary-pond > .tile:nth-child(n+6) {
  z-index: 2;
}
.pond.toimen.secondary-pond > .tile:nth-child(n+11) {
  z-index: 1;
}
.pond.toimen.secondary-pond > .tile:nth-child(n+16) {
  z-index: 0;
}
div.pond.self {
  left: calc(50% - (2.375 * var(--tile-size)));
  top: calc(50% + (2.125 * var(--tile-size)));
  z-index: 3;
}
div.pond.shimocha {
  transform: rotate(270deg);
  left: calc(50% - (2.625 * var(--tile-size)));
  top: calc(50% + (2.375 * var(--tile-size)));
}
div.pond.toimen {
  transform: rotate(180deg);
  left: calc(50% - (2.375 * var(--tile-size)));
  top: calc(50% + (2.625 * var(--tile-size)));
  z-index: 1;
}
div.pond.kamicha {
  transform: rotate(90deg);
  left: calc(50% - (2.125 * var(--tile-size)));
  top: calc(50% + (2.375 * var(--tile-size)));
}
@media (min-aspect-ratio: 6/5) {
  input.mobile-zoom-checkbox + label {
    display: none;
  }
}
@media (max-aspect-ratio: 6/5) {
  main {
    --mobile-scale-factor: 1.5;
  }
  input.mobile-zoom-checkbox + label {
    background: none;
    position: absolute;
    left: calc(1.25 * var(--tile-size));
    bottom: calc(2 * var(--tile-size));
    border-radius: calc(0.125 * var(--tile-size));
    opacity: 0.5;
    margin: 0;
    padding: 0;
    z-index: 1000;
    width: calc(1.5 * var(--tile-size));
    height: calc(1.5 * var(--tile-size));
  }
  input.mobile-zoom-checkbox:not(:checked) + label > svg:first-child,
  input.mobile-zoom-checkbox:checked + label > svg:last-child {
    display: none;
  }
  input.mobile-zoom-checkbox:not(:checked) ~ div.hand.self {
    transform: scale(var(--mobile-scale-factor));
    transform-origin: 0% 100%;
    margin-left: calc(-0.125 * var(--tile-size));
    padding-top: calc(0.25 * var(--tile-size));
    max-width: calc(11 * var(--tile-size));
  }
  input.mobile-zoom-checkbox:not(:checked) ~ div.hand.self {
    flex-flow: row wrap-reverse;
    justify-content: flex-start;
    row-gap: calc(0.25 * var(--tile-size));
  }
  input.mobile-zoom-checkbox:not(:checked) ~ div.hand.self > div.tiles {
    margin-left: 0;
  }
  input.mobile-zoom-checkbox:not(:checked) ~ div.hand.self > div.calls {
    transform: scale(calc(1 / var(--mobile-scale-factor)));
    transform-origin: 100% 100%;
  }
  input.mobile-zoom-checkbox:not(:checked) ~ div.hand.self > div.tiles:hover::before,
  input.mobile-zoom-checkbox:not(:checked) ~ div.hand.self > div.calls:hover::before {
    display: none;
  }
  input.mobile-zoom-checkbox:not(:checked) ~ div.buttons,
  input.mobile-zoom-checkbox:not(:checked) ~ div.call-buttons-container {
    bottom: calc(2 * var(--tile-size));
  }
  div#container.minefield input.mobile-zoom-checkbox + label {
    bottom: calc(7 * var(--tile-size));
  }
  div#container.minefield input.mobile-zoom-checkbox:not(:checked) ~ div.hand.self > div.calls > div.call.aside {
    transform: translateY(calc(-2 * var(--tile-size))) scale(var(--mobile-scale-factor));
    transform-origin: 100% 100%;
  }
  div#container.minefield input.mobile-zoom-checkbox:not(:checked) ~ div.buttons,
  div#container.minefield input.mobile-zoom-checkbox:not(:checked) ~ div.call-buttons-container {
    bottom: calc(5.75 * var(--tile-size));
  }
}
div.compass {
  position: relative;
  width: calc(4.75 * var(--tile-size));
  height: calc(4.75 * var(--tile-size));
  left: calc(50% - (2.375 * var(--tile-size)));
  top: calc(50% - (2.625 * var(--tile-size)));
  transform-origin: 50% 50%;
  user-select: none;
  z-index: 2;
}
div.compass::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background: gray;
  border-radius: calc(0.25 * var(--tile-size));
  z-index: -2;
  filter: drop-shadow(0 calc(var(--tile-size) / 4) 0 #3F3F3F);
}
div.compass > div.score-box {
  position: absolute;
  width: 0;
  height: 0;
  left: calc(50% - (1.25 * var(--tile-size)));
  top: calc(50% - (1.25 * var(--tile-size)));
  border-radius: calc(0.25 * var(--tile-size));
  border: calc(1.25 * var(--tile-size)) solid black;
  z-index: -1;
}
div.compass > div.direction {
  position: absolute;
  width: 100%;
  height: 50%;
  top: 50%;
  transform-origin: 50% 0%;
  pointer-events: none;
}
div.compass.east > div.direction.east {
  transform: rotate(0deg);
}
div.compass.east > div.direction.south {
  transform: rotate(270deg);
}
div.compass.east > div.direction.west {
  transform: rotate(180deg);
}
div.compass.east > div.direction.north {
  transform: rotate(90deg);
}
div.compass.south > div.direction.east {
  transform: rotate(90deg);
}
div.compass.south > div.direction.south {
  transform: rotate(0deg);
}
div.compass.south > div.direction.west {
  transform: rotate(270deg);
}
div.compass.south > div.direction.north {
  transform: rotate(180deg);
}
div.compass.west > div.direction.east {
  transform: rotate(180deg);
}
div.compass.west > div.direction.south {
  transform: rotate(90deg);
}
div.compass.west > div.direction.west {
  transform: rotate(0deg);
}
div.compass.west > div.direction.north {
  transform: rotate(270deg);
}
div.compass.north > div.direction.east {
  transform: rotate(270deg);
}
div.compass.north > div.direction.south {
  transform: rotate(180deg);
}
div.compass.north > div.direction.west {
  transform: rotate(90deg);
}
div.compass.north > div.direction.north {
  transform: rotate(0deg);
}
div.compass > div.direction > div.riichi-tray {
  position: absolute;
  width: calc(2.25 * var(--tile-size));
  height: calc(0.625 * var(--tile-size));
  bottom: calc(0.3125 * var(--tile-size));
  left: calc(50% - (1.125 * var(--tile-size)));
  border-radius: calc(0.25 * var(--tile-size));
  background: darkgray;
}
div.compass > div.direction > div.riichi-tray.highlighted {
  background: var(--tile-back);
}
div.compass > div.direction > div.riichi-tray.riichi::before {
  content: "";
  position: absolute;
  width: calc(2 * var(--tile-size));
  height: calc(0.2 * var(--tile-size));
  border-radius: calc(0.0625 * var(--tile-size));
  left: calc(50% - (1 * var(--tile-size)));
  bottom: calc(50% - (0.1 * var(--tile-size)));
  background: white;
}
div.compass > div.direction > div.riichi-tray.riichi::after {
  content: "";
  position: absolute;
  width: calc(0.1 * var(--tile-size));
  height: calc(0.1 * var(--tile-size));
  border-radius: 50%;
  left: calc(50% - (0.05 * var(--tile-size)));
  bottom: calc(50% - (0.05 * var(--tile-size)));
  background: red;
}
div.compass > div.direction > div.wind-marker {
  position: absolute;
  font-size: calc(0.75 * var(--tile-size));
  color: var(--tile-front);
  width: var(--tile-size);
  height: var(--tile-size);
  bottom: calc(0.125 * var(--tile-size));
  right: calc(-0.0625 * var(--tile-size));
}
div.compass > div.direction > div.wind-marker.highlighted {
  color: var(--tile-back);
}
div.compass > div.direction > div.wind-marker.bot,
div.compass > div.direction > div.wind-marker.highlighted.bot {
  color: #FF7F7F;
}
div.compass > div.direction > div.score-counter {
  position: absolute;
  width: calc(2 * var(--tile-size));
  height: calc(0.66 * var(--tile-size));
  left: calc(50% - (1 * var(--tile-size)));
  top: calc(50% - (0.6 * var(--tile-size)));
  text-align: center;
  font-size: calc(0.5 * var(--tile-size));
  border-radius: calc(0.25 * var(--tile-size));
  color: var(--tile-back);
  pointer-events: initial;
}
div.compass > div.direction > div.score-counter.scientific {
  font-size: calc(0.4 * var(--tile-size));
}
div.compass > div.direction > div.score-counter.relative {
  color: lightgreen;
}
div.compass > div.direction > div.score-counter.negative {
  color: red;
}
div.compass > div.direction > div.score-counter:hover,
div.compass > div.direction > div.score-counter.scientific:hover {
  width: calc(3 * var(--tile-size));
  height: calc(1 * var(--tile-size));
  left: calc(50% - (1.5 * var(--tile-size)));
  top: calc(50% - (0.25 * var(--tile-size)));
  font-size: calc(0.6 * var(--tile-size));
  background: black;
  z-index: 10;
}
div.compass > div.direction > div.score-counter > b {
  font-size: calc(0.5 * var(--tile-size));
  color: var(--tile-front);
}
div.compass > div.direction > div.score-counter:hover > b {
  font-size: calc(0.75 * var(--tile-size));
}
div.compass > div.centerpiece {
  position: relative;
  text-align: center;
  width: calc(1 * var(--tile-size));
  height: calc(1 * var(--tile-size));
  font-size: calc(0.5 * var(--tile-size));
  color: black;
  left: calc(50% - (0.5 * var(--tile-size)));
  top: calc(50% - (0.5 * var(--tile-size)));
  z-index: 1;
  color: white;
  transform-origin: 50% 50%;
}
div.compass > div.centerpiece::before {
  position: absolute;
  content: "";
  background: #5F5F5F;
  border: calc(0.55 * var(--tile-size)) ridge #5F5F5F;
  left: calc(50% - (0.55 * var(--tile-size)));
  top: calc(50% - (0.55 * var(--tile-size)));
  z-index: -1;
}
div.compass > div.centerpiece > div.tiles-left:last-child {
  transform: translateY(calc(0.2 * var(--tile-size)));
}
div.riichi-stick-counter,
div.honba-counter {
  position: absolute;
  font-size: calc(0.25 * var(--tile-size));
  left: calc(0.075 * var(--tile-size));
  right: calc(0.075 * var(--tile-size));
  width: calc(100% - 0.15 * var(--tile-size));
  display: grid;
  grid-template-columns: 1fr min-content;
  justify-content: flex-end;
  align-items: center;
  column-gap: calc(0.1 * var(--tile-size));
}
div.riichi-stick-counter {
  bottom: calc(0.2 * var(--tile-size));
}
div.honba-counter {
  bottom: calc(-0.05 * var(--tile-size));
}
div.riichi-stick-counter::before,
div.riichi-stick-counter::after,
div.honba-counter::before,
div.honba-counter::after {
  content: "";
  grid-column: 0;
}
div.riichi-stick-counter::before,
div.honba-counter::before {
  width: 100%;
  height: calc(0.16 * var(--tile-size));
  border-radius: calc(0.08 * var(--tile-size));
  background: white;
  z-index: 1;
}
div.riichi-stick-counter::after,
div.honba-counter::after {
  font-family: Arial;
  font-size: calc(0.3 * var(--tile-size));
  height: 0;
  margin: auto;
  z-index: 2;
}
div.riichi-stick-counter::after {
  content: "\2022";
  transform: translateY(calc(-0.38 * var(--tile-size))) translateX(calc(-0.03 * var(--tile-size))) rotate(90deg);
  transform-origin: 50% calc(0.2 * var(--tile-size));
  color: red;
}
div.honba-counter::after {
  content: "\28ff";
  transform: translateY(calc(-0.38 * var(--tile-size))) rotate(90deg);
  transform-origin: 50% calc(0.2 * var(--tile-size));
  color: #182890;
}
div.compass ~ div.compass {
  display: none;
}
div.corner-info {
  position: absolute;
  text-align: center;
  background: #0000000F;
  color: #FFFFFF3F;
  border-radius: calc(0.25 * var(--tile-size));
  transform-origin: calc(-2.5 * var(--tile-size)) calc(-2.5 * var(--tile-size));
  width: calc(3 * var(--tile-size));
  height: calc(3 * var(--tile-size));
  right: calc(2.5 * var(--tile-size));
  bottom: calc(2.5 * var(--tile-size));
  font-size: calc(0.5 * var(--tile-size));
  padding-top: calc(1.5 * var(--tile-size) - 2em);
  box-sizing: border-box;
  user-select: none;
  z-index: 2;
}
div.corner-info:hover {
  z-index: 5;
}
div.corner-info.shimocha {
  transform: rotate(270deg);
}
div.corner-info.toimen {
  transform: rotate(180deg);
}
div.corner-info.kamicha {
  transform: rotate(90deg);
}
div.corner-info > div.round-marker {
  position: absolute;
  border-radius: calc(0.25 * var(--tile-size));
  font-size: calc(0.55 * var(--tile-size));
  background: var(--tile-back);
  color: var(--tile-front);
  filter: drop-shadow(0 calc(var(--tile-size) / 16) 0 var(--tile-back-side)) drop-shadow(0 calc(var(--tile-size) / 16) 0 var(--tile-front-side));
  width: calc(1.5 * var(--tile-size));
  height: calc(0.75 * var(--tile-size));
  right: calc(-1 * var(--tile-size));
  bottom: calc(0.25 * var(--tile-size));
}
div.corner-info > div.saki-cards {
  display: flex;
}
@keyframes aiThinking {
  25% {
    content: ".";
  }
  50% {
    content: "..";
  }
  75% {
    content: "...";
  }
}
div.corner-info > div.ai-thinking::before {
  position: absolute;
  content: "";
  font-size: calc(1 * var(--tile-size));
  color: var(--tile-front);
  bottom: calc(50% - 0.5 * var(--tile-size));
  left: calc(50% - 0.4 * var(--tile-size));
  animation: aiThinking 3s linear forwards infinite;
}
div.corner-info.self {
  z-index: 5;
}
div.tile {
  --tile-scale-factor: 1;
  --tile-width: calc(var(--tile-scale-factor) * 0.75 * var(--tile-size));
  --tile-height: calc(var(--tile-scale-factor) * 1 * var(--tile-size));
  --tile-color: transparent;
  --number-color: black;
  --aka-color: #d71e1e;
  --galaxy-color: #67b5ef;
  --ao-color: #2f5298;
  --kin-color: #c9a146;
  --border-width: calc(0 * var(--tile-size));
  --border-color: transparent;
  --num-tiles: 214;
  position: relative;
  width: var(--tile-width);
  height: var(--tile-height);
  background-image:
    url(/images/tiles.png),
    conic-gradient(var(--tile-color) 0 0),
    repeating-linear-gradient(0deg, transparent calc(0 * var(--tile-size)), transparent calc(5.75 * var(--tile-size)), var(--tile-front-side) calc(5.75 * var(--tile-size)), var(--tile-front-side) calc(6 * var(--tile-size)));
  background-repeat:
    no-repeat,
    initial,
    initial;
  background-size: auto calc(var(--tile-scale-factor) * var(--num-tiles) * var(--tile-size));
  background-position: 0 0;
  border: var(--border-width) solid var(--border-color);
  border-radius: calc(0.10 * var(--tile-size) * var(--tile-scale-factor));
  flex-shrink: 0;
  box-sizing: border-box;
}
div.tile.flat {
  background-image: url(/images/tiles.png), conic-gradient(var(--tile-color) 0 0);
}
@keyframes doraShine {
  0% {
    transform: translate(-100%, -100%) rotate(135deg);
  }
  100% {
    transform: translate(50%, 50%) rotate(135deg);
  }
}
div.tile.dora:not(.\31x):not(.selected) {
  overflow: hidden;
  position: relative;
}
div.tile.dora:not(.\31x):not(.selected)::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  animation: doraShine 3s infinite;
  animation-delay: var(--dora-anim-delay, 0ms);
  width: 400%;
  height: 400%;
  background: linear-gradient(0deg, transparent 25%, #ffffff7f 35%, transparent 45%), linear-gradient(0deg, transparent 45%, #ffffff7f 65%, transparent 85%);
}
div.tile.sideways + div.tile.sideways {
  margin-right: calc(-1 * var(--tile-height));
  transform: translateX(calc(-1 * var(--tile-height))) translateY(calc(-1 * var(--tile-width)));
}
div.tile.sideways + div.tile.sideways + div.tile.sideways {
  transform: translateX(calc(-1 * var(--tile-height))) translateY(calc(-2 * var(--tile-width)));
}
div.tile.markable {
  cursor: pointer;
  --border-width: calc(0.05 * var(--tile-size));
  --border-color: var(--tile-back);
}
div.tile.markable:hover,
div.tile.marked {
  --border-width: calc(0.1 * var(--tile-size));
  --border-color: var(--tile-back);
}
div.tile {
  background-position-x: calc(0 * var(--tile-size) * var(--tile-scale-factor) - var(--border-width));
  background-position-y: calc(-1 * var(--tile-index) * var(--tile-size) * var(--tile-scale-factor) - var(--border-width));
}
div.tile.sideways {
  width: var(--tile-height);
  height: var(--tile-width);
  background-position-x: calc(-0.75 * var(--tile-size) * var(--tile-scale-factor) - var(--border-width));
}
div.tile.\30m {
  --number-color: var(--aka-color);
  --tile-index: 0;
}
div.tile.\31m {
  --tile-index: 1;
}
div.tile.\32m {
  --tile-index: 2;
}
div.tile.\33m {
  --tile-index: 3;
}
div.tile.\34m {
  --tile-index: 4;
}
div.tile.\35m {
  --tile-index: 5;
}
div.tile.\36m {
  --tile-index: 6;
}
div.tile.\37m {
  --tile-index: 7;
}
div.tile.\38m {
  --tile-index: 8;
}
div.tile.\39m {
  --tile-index: 9;
}
div.tile.\30p {
  --number-color: var(--aka-color);
  --tile-index: 10;
}
div.tile.\31p {
  --tile-index: 11;
}
div.tile.\32p {
  --tile-index: 12;
}
div.tile.\33p {
  --tile-index: 13;
}
div.tile.\34p {
  --tile-index: 14;
}
div.tile.\35p {
  --tile-index: 15;
}
div.tile.\36p {
  --tile-index: 16;
}
div.tile.\37p {
  --tile-index: 17;
}
div.tile.\38p {
  --tile-index: 18;
}
div.tile.\39p {
  --tile-index: 19;
}
div.tile.\30s {
  --number-color: var(--aka-color);
  --tile-index: 20;
}
div.tile.\31s {
  --tile-index: 21;
}
div.tile.\32s {
  --tile-index: 22;
}
div.tile.\33s {
  --tile-index: 23;
}
div.tile.\34s {
  --tile-index: 24;
}
div.tile.\35s {
  --tile-index: 25;
}
div.tile.\36s {
  --tile-index: 26;
}
div.tile.\37s {
  --tile-index: 27;
}
div.tile.\38s {
  --tile-index: 28;
}
div.tile.\39s {
  --tile-index: 29;
}
div.tile.\31z {
  --tile-index: 30;
}
div.tile.\32z {
  --tile-index: 31;
}
div.tile.\33z {
  --tile-index: 32;
}
div.tile.\34z {
  --tile-index: 33;
}
div.tile.\35z,
div.tile.\31x.transparent {
  --tile-index: 34;
}
div.tile.\36z {
  --tile-index: 35;
}
div.tile.\37z {
  --tile-index: 36;
}
div.tile.\30z {
  --tile-index: 37;
}
div.tile.\38z {
  --tile-index: 38;
}
div.tile.\39z {
  --tile-index: 39;
}
div.tile.\30 0s {
  --tile-index: 40;
}
div.tile.\31 0m {
  --tile-index: 41;
}
div.tile.\31 0p {
  --tile-index: 42;
}
div.tile.\31 0s {
  --tile-index: 43;
}
div.tile.\31x {
  --tile-index: 44;
}
div.tile.\31 f {
  --tile-index: 45;
}
div.tile.\32 f {
  --tile-index: 46;
}
div.tile.\33 f {
  --tile-index: 47;
}
div.tile.\34 f {
  --tile-index: 48;
}
div.tile.\31g {
  --tile-index: 49;
}
div.tile.\32g {
  --tile-index: 50;
}
div.tile.\33g {
  --tile-index: 51;
}
div.tile.\34g {
  --tile-index: 52;
}
div.tile.\31 a {
  --tile-index: 53;
}
div.tile.\32 a {
  --tile-index: 54;
}
div.tile.\33 a {
  --tile-index: 55;
}
div.tile.\34 a {
  --tile-index: 56;
}
div.tile.\31k {
  --tile-index: 57;
}
div.tile.\32k {
  --tile-index: 58;
}
div.tile.\33k {
  --tile-index: 59;
}
div.tile.\34k {
  --tile-index: 60;
}
div.tile.\31q {
  --tile-index: 61;
}
div.tile.\32q {
  --tile-index: 62;
}
div.tile.\33q {
  --tile-index: 63;
}
div.tile.\34q {
  --tile-index: 64;
}
div.tile.\31y {
  --tile-index: 65;
}
div.tile.\31t {
  --tile-index: 66;
}
div.tile.\32t {
  --tile-index: 67;
}
div.tile.\33t {
  --tile-index: 68;
}
div.tile.\34t {
  --tile-index: 69;
}
div.tile.\35t {
  --tile-index: 70;
}
div.tile.\36t {
  --tile-index: 71;
}
div.tile.\37t {
  --tile-index: 72;
}
div.tile.\38t {
  --tile-index: 73;
}
div.tile.\39t {
  --tile-index: 74;
}
div.tile.\31 0t {
  --tile-index: 75;
}
div.tile.\31j {
  --tile-index: 76;
}
div.tile.\30j {
  --tile-index: 77;
}
div.tile.\32j {
  --tile-index: 78;
}
div.tile.\39j {
  --tile-index: 79;
}
div.tile.\34j {
  --tile-index: 80;
}
div.tile.\35j {
  --tile-index: 81;
}
div.tile.\36j,
div.tile.\31 6j {
  --tile-index: 82;
}
div.tile.\37j {
  --tile-index: 83;
}
div.tile.\38j {
  --tile-index: 84;
}
div.tile.\31 0j {
  --tile-index: 85;
}
div.tile.\31 2j {
  --tile-index: 86;
}
div.tile.\33j,
div.tile.\31 3j {
  --tile-index: 87;
}
div.tile.\31 4j {
  --tile-index: 88;
}
div.tile.\31 5j {
  --tile-index: 89;
}
div.tile.\31 7j {
  --tile-index: 90;
}
div.tile.\31 8j {
  --tile-index: 91;
}
div.tile.\31 9j {
  --tile-index: 92;
}
div.tile.\33 7j {
  --tile-index: 93;
}
div.tile.\34 6j {
  --tile-index: 94;
}
div.tile.\31 47j {
  --tile-index: 95;
}
div.tile.\32 58j {
  --tile-index: 96;
}
div.tile.\33 69j {
  --tile-index: 97;
}
div.tile.\37 89j {
  --tile-index: 98;
}
div.tile.\34 56j {
  --tile-index: 99;
}
div.tile.\31 23j {
  --tile-index: 100;
}
div.tile.\31 1j {
  --tile-index: 101;
}
div.tile.\32 2j {
  --tile-index: 102;
}
div.tile.\32 0j {
  --tile-index: 103;
}
div.tile.\39 1j {
  --tile-index: 104;
}
div.tile.\36 4j {
  --tile-index: 105;
}
div.tile.\37 3j {
  --tile-index: 106;
}
div.tile.\38 52j {
  --tile-index: 107;
}
div.tile.\33 0j {
  --tile-index: 108;
}
div.tile.\33 1j {
  --tile-index: 109;
}
div.tile.\33 2j {
  --tile-index: 110;
}
div.tile.\33 3j {
  --tile-index: 111;
}
div.tile.\33 4j {
  --tile-index: 112;
}
div.tile.\32y {
  --tile-index: 113;
}
div.tile.\30 1m {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 164;
}
div.tile.\30 2m {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 165;
}
div.tile.\30 3m {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 166;
}
div.tile.\30 4m {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 167;
}
div.tile.\30 5m {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 168;
}
div.tile.\30 6m {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 169;
}
div.tile.\30 7m {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 170;
}
div.tile.\30 8m {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 171;
}
div.tile.\30 9m {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 172;
}
div.tile.\30 10m {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 173;
}
div.tile.\30 1p {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 174;
}
div.tile.\30 2p {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 175;
}
div.tile.\30 3p {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 176;
}
div.tile.\30 4p {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 177;
}
div.tile.\30 5p {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 178;
}
div.tile.\30 6p {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 179;
}
div.tile.\30 7p {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 180;
}
div.tile.\30 8p {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 181;
}
div.tile.\30 9p {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 182;
}
div.tile.\30 10p {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 183;
}
div.tile.\30 1s {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 184;
}
div.tile.\30 2s {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 185;
}
div.tile.\30 3s {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 186;
}
div.tile.\30 4s {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 187;
}
div.tile.\30 5s {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 188;
}
div.tile.\30 6s {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 189;
}
div.tile.\30 7s {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 190;
}
div.tile.\30 8s {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 191;
}
div.tile.\30 9s {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 192;
}
div.tile.\30 10s {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 193;
}
div.tile.\30 1t {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 194;
}
div.tile.\30 2t {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 195;
}
div.tile.\30 3t {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 196;
}
div.tile.\30 4t {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 197;
}
div.tile.\30 5t,
div.tile.\30t {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 198;
}
div.tile.\30 6t {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 199;
}
div.tile.\30 7t {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 200;
}
div.tile.\30 8t {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 201;
}
div.tile.\30 9t {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 202;
}
div.tile.\30 10t {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 203;
}
div.tile.\30 0z {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 204;
}
div.tile.\30 1z {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 205;
}
div.tile.\30 2z {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 206;
}
div.tile.\30 3z {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 207;
}
div.tile.\30 4z {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 208;
}
div.tile.\30 5z {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 209;
}
div.tile.\30 6z {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 210;
}
div.tile.\30 7z {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 211;
}
div.tile.\30 8z {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 212;
}
div.tile.\30 00s {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 213;
}
div.tile.\31 1m {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 114;
}
div.tile.\31 2m {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 115;
}
div.tile.\31 3m {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 116;
}
div.tile.\31 4m {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 117;
}
div.tile.\31 5m {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 118;
}
div.tile.\31 6m {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 119;
}
div.tile.\31 7m {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 120;
}
div.tile.\31 8m {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 121;
}
div.tile.\31 9m {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 122;
}
div.tile.\31 10m {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 123;
}
div.tile.\31 1p {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 124;
}
div.tile.\31 2p {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 125;
}
div.tile.\31 3p {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 126;
}
div.tile.\31 4p {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 127;
}
div.tile.\31 5p {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 128;
}
div.tile.\31 6p {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 129;
}
div.tile.\31 7p {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 130;
}
div.tile.\31 8p {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 131;
}
div.tile.\31 9p {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 132;
}
div.tile.\31 10p {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 133;
}
div.tile.\31 1s {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 134;
}
div.tile.\31 2s {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 135;
}
div.tile.\31 3s {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 136;
}
div.tile.\31 4s {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 137;
}
div.tile.\31 5s {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 138;
}
div.tile.\31 6s {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 139;
}
div.tile.\31 7s {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 140;
}
div.tile.\31 8s {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 141;
}
div.tile.\31 9s {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 142;
}
div.tile.\31 10s {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 143;
}
div.tile.\31 1t {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 144;
}
div.tile.\31 2t {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 145;
}
div.tile.\31 3t {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 146;
}
div.tile.\31 4t {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 147;
}
div.tile.\31 5t {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 148;
}
div.tile.\31 6t {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 149;
}
div.tile.\31 7t {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 150;
}
div.tile.\31 8t {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 151;
}
div.tile.\31 9t {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 152;
}
div.tile.\31 10t {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 153;
}
div.tile.\31 0z {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 154;
}
div.tile.\31 1z {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 155;
}
div.tile.\31 2z {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 156;
}
div.tile.\31 3z {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 157;
}
div.tile.\31 4z {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 158;
}
div.tile.\31 5z {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 159;
}
div.tile.\31 6z {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 160;
}
div.tile.\31 7z {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 161;
}
div.tile.\31 8z {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 162;
}
div.tile.\31 00s {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
  --tile-index: 163;
}
div.tile.\32 1m {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 164;
}
div.tile.\32 2m {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 165;
}
div.tile.\32 3m {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 166;
}
div.tile.\32 4m {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 167;
}
div.tile.\32 5m {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 168;
}
div.tile.\32 6m {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 169;
}
div.tile.\32 7m {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 170;
}
div.tile.\32 8m {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 171;
}
div.tile.\32 9m {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 172;
}
div.tile.\32 10m {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 173;
}
div.tile.\32 1p {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 174;
}
div.tile.\32 2p {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 175;
}
div.tile.\32 3p {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 176;
}
div.tile.\32 4p {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 177;
}
div.tile.\32 5p {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 178;
}
div.tile.\32 6p {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 179;
}
div.tile.\32 7p {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 180;
}
div.tile.\32 8p {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 181;
}
div.tile.\32 9p {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 182;
}
div.tile.\32 10p {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 183;
}
div.tile.\32 1s {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 184;
}
div.tile.\32 2s {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 185;
}
div.tile.\32 3s {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 186;
}
div.tile.\32 4s {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 187;
}
div.tile.\32 5s {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 188;
}
div.tile.\32 6s {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 189;
}
div.tile.\32 7s {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 190;
}
div.tile.\32 8s {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 191;
}
div.tile.\32 9s {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 192;
}
div.tile.\32 10s {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 193;
}
div.tile.\32 1t {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 194;
}
div.tile.\32 2t {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 195;
}
div.tile.\32 3t {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 196;
}
div.tile.\32 4t {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 197;
}
div.tile.\32 5t {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 198;
}
div.tile.\32 6t {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 199;
}
div.tile.\32 7t {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 200;
}
div.tile.\32 8t {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 201;
}
div.tile.\32 9t {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 202;
}
div.tile.\32 10t {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 203;
}
div.tile.\32 0z {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 204;
}
div.tile.\32 1z {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 205;
}
div.tile.\32 2z {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 206;
}
div.tile.\32 3z {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 207;
}
div.tile.\32 4z {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 208;
}
div.tile.\32 5z {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 209;
}
div.tile.\32 6z {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 210;
}
div.tile.\32 7z {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 211;
}
div.tile.\32 8z {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 212;
}
div.tile.\32 00s {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 213;
}
div.tile.\33 1m {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 164;
}
div.tile.\33 2m {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 165;
}
div.tile.\33 3m {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 166;
}
div.tile.\33 4m {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 167;
}
div.tile.\33 5m {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 168;
}
div.tile.\33 6m {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 169;
}
div.tile.\33 7m {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 170;
}
div.tile.\33 8m {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 171;
}
div.tile.\33 9m {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 172;
}
div.tile.\33 10m {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 173;
}
div.tile.\33 1p {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 174;
}
div.tile.\33 2p {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 175;
}
div.tile.\33 3p {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 176;
}
div.tile.\33 4p {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 177;
}
div.tile.\33 5p {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 178;
}
div.tile.\33 6p {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 179;
}
div.tile.\33 7p {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 180;
}
div.tile.\33 8p {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 181;
}
div.tile.\33 9p {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 182;
}
div.tile.\33 10p {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 183;
}
div.tile.\33 1s {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 184;
}
div.tile.\33 2s {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 185;
}
div.tile.\33 3s {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 186;
}
div.tile.\33 4s {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 187;
}
div.tile.\33 5s {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 188;
}
div.tile.\33 6s {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 189;
}
div.tile.\33 7s {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 190;
}
div.tile.\33 8s {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 191;
}
div.tile.\33 9s {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 192;
}
div.tile.\33 10s {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 193;
}
div.tile.\33 1t {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 194;
}
div.tile.\33 2t {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 195;
}
div.tile.\33 3t {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 196;
}
div.tile.\33 4t {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 197;
}
div.tile.\33 5t {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 198;
}
div.tile.\33 6t {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 199;
}
div.tile.\33 7t {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 200;
}
div.tile.\33 8t {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 201;
}
div.tile.\33 9t {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 202;
}
div.tile.\33 10t {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 203;
}
div.tile.\33 0z {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 204;
}
div.tile.\33 1z {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 205;
}
div.tile.\33 2z {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 206;
}
div.tile.\33 3z {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 207;
}
div.tile.\33 4z {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 208;
}
div.tile.\33 5z {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 209;
}
div.tile.\33 6z {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 210;
}
div.tile.\33 7z {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 211;
}
div.tile.\33 8z {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 212;
}
div.tile.\33 00s {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 213;
}
div.tile.\34 1m {
  --tile-index: 114;
}
div.tile.\34 2m {
  --tile-index: 115;
}
div.tile.\34 3m {
  --tile-index: 116;
}
div.tile.\34 4m {
  --tile-index: 117;
}
div.tile.\34 5m {
  --tile-index: 118;
}
div.tile.\34 6m {
  --tile-index: 119;
}
div.tile.\34 7m {
  --tile-index: 120;
}
div.tile.\34 8m {
  --tile-index: 121;
}
div.tile.\34 9m {
  --tile-index: 122;
}
div.tile.\34 10m {
  --tile-index: 123;
}
div.tile.\34 1p {
  --tile-index: 124;
}
div.tile.\34 2p {
  --tile-index: 125;
}
div.tile.\34 3p {
  --tile-index: 126;
}
div.tile.\34 4p {
  --tile-index: 127;
}
div.tile.\34 5p {
  --tile-index: 128;
}
div.tile.\34 6p {
  --tile-index: 129;
}
div.tile.\34 7p {
  --tile-index: 130;
}
div.tile.\34 8p {
  --tile-index: 131;
}
div.tile.\34 9p {
  --tile-index: 132;
}
div.tile.\34 10p {
  --tile-index: 133;
}
div.tile.\34 1s {
  --tile-index: 134;
}
div.tile.\34 2s {
  --tile-index: 135;
}
div.tile.\34 3s {
  --tile-index: 136;
}
div.tile.\34 4s {
  --tile-index: 137;
}
div.tile.\34 5s {
  --tile-index: 138;
}
div.tile.\34 6s {
  --tile-index: 139;
}
div.tile.\34 7s {
  --tile-index: 140;
}
div.tile.\34 8s {
  --tile-index: 141;
}
div.tile.\34 9s {
  --tile-index: 142;
}
div.tile.\34 10s {
  --tile-index: 143;
}
div.tile.\34 1t {
  --tile-index: 144;
}
div.tile.\34 2t {
  --tile-index: 145;
}
div.tile.\34 3t {
  --tile-index: 146;
}
div.tile.\34 4t {
  --tile-index: 147;
}
div.tile.\34 5t {
  --tile-index: 148;
}
div.tile.\34 6t {
  --tile-index: 149;
}
div.tile.\34 7t {
  --tile-index: 150;
}
div.tile.\34 8t {
  --tile-index: 151;
}
div.tile.\34 9t {
  --tile-index: 152;
}
div.tile.\34 10t {
  --tile-index: 153;
}
div.tile.\34 0z {
  --tile-index: 154;
}
div.tile.\34 1z {
  --tile-index: 155;
}
div.tile.\34 2z {
  --tile-index: 156;
}
div.tile.\34 3z {
  --tile-index: 157;
}
div.tile.\34 4z {
  --tile-index: 158;
}
div.tile.\34 5z {
  --tile-index: 159;
}
div.tile.\34 6z {
  --tile-index: 160;
}
div.tile.\34 7z {
  --tile-index: 161;
}
div.tile.\34 8z {
  --tile-index: 162;
}
div.tile.\34 00s {
  --tile-index: 163;
}
div.tile.\35 1m {
  --tile-index: 164;
}
div.tile.\35 2m {
  --tile-index: 165;
}
div.tile.\35 3m {
  --tile-index: 166;
}
div.tile.\35 4m {
  --tile-index: 167;
}
div.tile.\35 5m {
  --tile-index: 168;
}
div.tile.\35 6m {
  --tile-index: 169;
}
div.tile.\35 7m {
  --tile-index: 170;
}
div.tile.\35 8m {
  --tile-index: 171;
}
div.tile.\35 9m {
  --tile-index: 172;
}
div.tile.\35 10m {
  --tile-index: 173;
}
div.tile.\35 1p {
  --tile-index: 174;
}
div.tile.\35 2p {
  --tile-index: 175;
}
div.tile.\35 3p {
  --tile-index: 176;
}
div.tile.\35 4p {
  --tile-index: 177;
}
div.tile.\35 5p {
  --tile-index: 178;
}
div.tile.\35 6p {
  --tile-index: 179;
}
div.tile.\35 7p {
  --tile-index: 180;
}
div.tile.\35 8p {
  --tile-index: 181;
}
div.tile.\35 9p {
  --tile-index: 182;
}
div.tile.\35 10p {
  --tile-index: 183;
}
div.tile.\35 1s {
  --tile-index: 184;
}
div.tile.\35 2s {
  --tile-index: 185;
}
div.tile.\35 3s {
  --tile-index: 186;
}
div.tile.\35 4s {
  --tile-index: 187;
}
div.tile.\35 5s {
  --tile-index: 188;
}
div.tile.\35 6s {
  --tile-index: 189;
}
div.tile.\35 7s {
  --tile-index: 190;
}
div.tile.\35 8s {
  --tile-index: 191;
}
div.tile.\35 9s {
  --tile-index: 192;
}
div.tile.\35 10s {
  --tile-index: 193;
}
div.tile.\35 1t {
  --tile-index: 194;
}
div.tile.\35 2t {
  --tile-index: 195;
}
div.tile.\35 3t {
  --tile-index: 196;
}
div.tile.\35 4t {
  --tile-index: 197;
}
div.tile.\35 5t {
  --tile-index: 198;
}
div.tile.\35 6t {
  --tile-index: 199;
}
div.tile.\35 7t {
  --tile-index: 200;
}
div.tile.\35 8t {
  --tile-index: 201;
}
div.tile.\35 9t {
  --tile-index: 202;
}
div.tile.\35 10t {
  --tile-index: 203;
}
div.tile.\35 0z {
  --tile-index: 204;
}
div.tile.\35 1z {
  --tile-index: 205;
}
div.tile.\35 2z {
  --tile-index: 206;
}
div.tile.\35 3z {
  --tile-index: 207;
}
div.tile.\35 4z {
  --tile-index: 208;
}
div.tile.\35 5z {
  --tile-index: 209;
}
div.tile.\35 6z {
  --tile-index: 210;
}
div.tile.\35 7z {
  --tile-index: 211;
}
div.tile.\35 8z {
  --tile-index: 212;
}
div.tile.\35 00s {
  --tile-index: 213;
}
div.tile.\32x {
  visibility: hidden;
}
div.tile.\33x {
  visibility: hidden;
  width: calc(0.5 * var(--tile-width));
}
div.tile.\34x {
  display: none;
}
div.tile.\35x {
  visibility: hidden;
  width: calc(0.25 * var(--tile-width));
}
div.tile.\36x {
  visibility: hidden;
  width: calc(0.125 * var(--tile-width));
}
div.tile.\37x {
  visibility: hidden;
  width: calc(0.0625 * var(--tile-width));
}
div.tile.\38x {
  visibility: hidden;
  width: calc(0.03125 * var(--tile-width));
}
div.tile.\31\'s {
  --tile-index: 40;
}
div.tile.\30 1\'s {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 184;
}
div.tile.\31 1\'s {
  --tile-index: 212;
}
div.tile.\32 1\'s {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 184;
}
div.tile.\33 1\'s {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 184;
}
div.tile.\34 1\'s {
  --tile-index: 184;
}
div.tile.\35\'z {
  --tile-index: 37;
}
div.tile.\30 5\'z {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 209;
}
div.tile.\32 5\'z {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 209;
}
div.tile.\33 5\'z {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 209;
}
div.tile.\34 5\'z {
  --tile-index: 209;
}
div.tile.\35\`z {
  --tile-index: 38;
}
div.tile.\30 5\`z {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
  --tile-index: 212;
}
div.tile.\31 5\`z {
  --tile-index: 162;
}
div.tile.\32 5\`z {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
  --tile-index: 212;
}
div.tile.\33 5\`z {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
  --tile-index: 212;
}
div.tile.\34 5\`z {
  --tile-index: 212;
}
div.tile.\35\^z {
  --tile-index: 39;
}
div.tile.facedown {
  --tile-index: 44;
}
div.tile.red {
  --tile-color: var(--aka-color);
  --number-color: var(--aka-color);
}
div.tile.blue {
  --tile-color: var(--ao-color);
  --number-color: var(--ao-color);
}
div.tile.cyan {
  --tile-color: var(--galaxy-color);
  --number-color: var(--galaxy-color);
}
div.tile.gold {
  --tile-color: var(--kin-color);
  --number-color: var(--kin-color);
}
div.tile.orange {
  --tile-color: orange;
}
div.tile.yellow {
  --tile-color: yellow;
}
div.tile.green {
  --tile-color: green;
  --number-color: green;
}
div.tile.lightblue {
  --tile-color: lightblue;
}
div.tile.purple {
  --tile-color: purple;
  --number-color: purple;
}
div.tile.gray {
  --tile-color: gray;
  --number-color: gray;
}
div.tile.grey {
  --tile-color: grey;
  --number-color: grey;
}
div.tile.lightgray {
  --tile-color: lightgray;
}
div.tile.lightgrey {
  --tile-color: lightgrey;
}
div.tile.brown {
  --tile-color: brown;
  --number-color: brown;
}
div.tile.pink {
  --tile-color: pink;
}
div.tile.black {
  --tile-color: black;
  --number-color: black;
}
div.tile.white {
  --tile-color: white;
}
div.tile.rainbow {
  background-image: url(/images/tiles.png), repeating-linear-gradient(180deg, rgba(255, 0, 0, 1) 0%, rgba(255, 154, 0, 1) calc(0.1 * var(--tile-size)), rgba(208, 222, 33, 1) calc(0.2 * var(--tile-size)), rgba(79, 220, 74, 1) calc(0.3 * var(--tile-size)), rgba(63, 218, 216, 1) calc(0.4 * var(--tile-size)), rgba(47, 201, 226, 1) calc(0.5 * var(--tile-size)), rgba(28, 127, 238, 1) calc(0.6 * var(--tile-size)), rgba(95, 21, 242, 1) calc(0.7 * var(--tile-size)), rgba(186, 12, 248, 1) calc(0.8 * var(--tile-size)), rgba(251, 7, 217, 1) calc(0.9 * var(--tile-size)), rgba(255, 0, 0, 1) calc(1 * var(--tile-size)));
}
@keyframes rainbowAnim {
  100% {
    background-position-y: calc(-1 * var(--tile-index) * var(--tile-size) * var(--tile-scale-factor) - var(--border-width)), calc(2 * var(--tile-size));
  }
}
div.tile.rainbow.anim {
  background-position-y: calc(-1 * var(--tile-index) * var(--tile-size) * var(--tile-scale-factor) - var(--border-width)), calc(1 * var(--tile-size));
  animation: rainbowAnim 4s linear forwards infinite;
}
div.tile {
  --tile-brightness: 100%;
  --tile-saturate: 100%;
  filter: brightness(var(--tile-brightness)) saturate(var(--tile-saturate));
}
div.tile:not(.flat) {
  padding-top: calc(0.25 * var(--tile-size));
  box-shadow: 0 calc(var(--tile-height) / -8) 0 0 var(--tile-front-side), 0 calc(var(--tile-height) / -4) 0 0 var(--tile-back-side);
}
div.hand.self div.tiles > div.tile.selected,
div.hand.self div.draws > div.tile.selected {
  transform: translateY(calc(-0.25 * var(--tile-size)));
  position: relative;
}
div.hand.self div.tiles > div.tile.selected::before,
div.hand.self div.draws > div.tile.selected::before {
  content: "";
  position: absolute;
  background: transparent;
  width: 100%;
  height: calc(0.25 * var(--tile-size));
  bottom: calc(-0.25 * var(--tile-size));
}
div.tile.sideways:not(.flat) {
  box-shadow: 0 calc(var(--tile-height) / -16) 0 0 var(--tile-front-side), 0 calc(var(--tile-height) / -8) 0 0 var(--tile-back-side);
}
div.pond.self div.tile:not(.flat),
div.self div.flowers div.tile:not(.flat) {
  box-shadow: 0 calc(var(--tile-height) / 8) 0 0 var(--tile-front-side), 0 calc(var(--tile-height) / 4) 0 0 var(--tile-back-side);
}
div.shimocha div.tile:not(.flat) {
  box-shadow: calc(var(--tile-height) / -8) 0 0 0 var(--tile-front-side), calc(var(--tile-height) / -4) 0 0 0 var(--tile-back-side);
}
div.kamicha div.tile:not(.flat) {
  box-shadow: calc(var(--tile-height) / 8) 0 0 0 var(--tile-front-side), calc(var(--tile-height) / 4) 0 0 0 var(--tile-back-side);
}
div.tile.reversed:not(.flat) {
  transform: scaleX(-100%) translateY(calc(var(--tile-height) / -4)) translateZ(0);
  box-shadow: 0 calc(var(--tile-height) / 8) 0 0 var(--tile-front-side), 0 calc(var(--tile-height) / 4) 0 0 var(--tile-back-side);
}
div.pond.self div.tile.reversed:not(.flat) {
  transform: scaleX(-100%) translateY(calc(var(--tile-height) / -4)) translateZ(0);
}
div.shimocha div.tile.reversed:not(.flat) {
  transform: scaleX(-100%) translateX(calc(var(--tile-height) / 4)) translateZ(0);
}
div.kamicha div.tile.reversed:not(.flat) {
  transform: scaleX(-100%) translateX(calc(var(--tile-height) / -4)) translateZ(0);
}
div.shimocha div.tile:nth-child(2) {
  z-index: -1;
}
div.shimocha div.tile:nth-child(3) {
  z-index: -2;
}
div.shimocha div.tile:nth-child(4) {
  z-index: -3;
}
div.shimocha div.tile:nth-child(5) {
  z-index: -4;
}
div.shimocha div.tile:nth-child(6) {
  z-index: -5;
}
div.shimocha div.tile:nth-child(7) {
  z-index: -6;
}
div.shimocha div.tile:nth-child(8) {
  z-index: -7;
}
div.shimocha div.tile:nth-child(9) {
  z-index: -8;
}
div.shimocha div.tile:nth-child(10) {
  z-index: -9;
}
div.shimocha div.tile:nth-child(11) {
  z-index: -10;
}
div.shimocha div.tile:nth-child(12) {
  z-index: -11;
}
div.shimocha div.tile:nth-child(13) {
  z-index: -12;
}
div.shimocha div.tile:nth-child(14) {
  z-index: -13;
}
div.shimocha div.tile:nth-child(15) {
  z-index: -14;
}
div.shimocha div.tile:nth-child(16) {
  z-index: -15;
}
div.shimocha div.tile:nth-child(17) {
  z-index: -16;
}
div.shimocha div.tile:nth-child(18) {
  z-index: -17;
}
div.shimocha div.tile:nth-child(19) {
  z-index: -18;
}
div.shimocha div.tile:nth-child(20) {
  z-index: -19;
}
div.shimocha div.tile:nth-child(21) {
  z-index: -20;
}
div.shimocha div.tile:nth-child(22) {
  z-index: -21;
}
div.shimocha div.tile:nth-child(23) {
  z-index: -22;
}
div.shimocha div.tile:nth-child(24) {
  z-index: -23;
}
div.shimocha div.tile:nth-child(25) {
  z-index: -24;
}
div.shimocha div.tile:nth-child(26) {
  z-index: -25;
}
div.shimocha div.tile:nth-child(27) {
  z-index: -26;
}
div.shimocha div.tile:nth-child(28) {
  z-index: -27;
}
div.shimocha div.tile:nth-child(29) {
  z-index: -28;
}
div.shimocha div.tile:nth-child(30) {
  z-index: -29;
}
div.self div.tile:nth-child(1) {
  z-index: 0;
}
div.self div.tile:nth-child(2) {
  z-index: 1;
}
div.self div.tile:nth-child(3) {
  z-index: 2;
}
div.self div.tile:nth-child(4) {
  z-index: 3;
}
div.self div.tile:nth-child(5) {
  z-index: 4;
}
div.self div.tile:nth-child(6) {
  z-index: 5;
}
div.self div.tile:nth-child(7) {
  z-index: 6;
}
div.self div.tile:nth-child(8) {
  z-index: 7;
}
div.self div.tile:nth-child(9) {
  z-index: 8;
}
div.self div.tile:nth-child(10) {
  z-index: 9;
}
div.self div.tile:nth-child(11) {
  z-index: 10;
}
div.self div.tile:nth-child(12) {
  z-index: 11;
}
div.self div.tile:nth-child(13) {
  z-index: 12;
}
div.self div.tile:nth-child(14) {
  z-index: 13;
}
div.self div.tile:nth-child(15) {
  z-index: 14;
}
div.self div.tile:nth-child(16) {
  z-index: 15;
}
div.self div.tile:nth-child(17) {
  z-index: 16;
}
div.self div.tile:nth-child(18) {
  z-index: 17;
}
div.self div.tile:nth-child(19) {
  z-index: 18;
}
div.self div.tile:nth-child(20) {
  z-index: 19;
}
div.self div.tile:nth-child(21) {
  z-index: 20;
}
div.self div.tile:nth-child(22) {
  z-index: 21;
}
div.self div.tile:nth-child(23) {
  z-index: 22;
}
div.self div.tile:nth-child(24) {
  z-index: 23;
}
div.self div.tile:nth-child(25) {
  z-index: 24;
}
div.self div.tile:nth-child(26) {
  z-index: 25;
}
div.self div.tile:nth-child(27) {
  z-index: 26;
}
div.self div.tile:nth-child(28) {
  z-index: 27;
}
div.self div.tile:nth-child(29) {
  z-index: 28;
}
div.self div.tile:nth-child(30) {
  z-index: 29;
}
div.tile.\31x:not(.flat) {
  box-shadow: 0 calc(var(--tile-height) / -8) 0 0 var(--tile-back-side), 0 calc(var(--tile-height) / -4) 0 0 var(--tile-front-side);
}
div.tile.\31x.sideways:not(.flat) {
  box-shadow: 0 calc(var(--tile-height) / -16) 0 0 var(--tile-back-side), 0 calc(var(--tile-height) / -8) 0 0 var(--tile-front-side);
}
div.pond.self div.tile.\31x:not(.flat) {
  box-shadow: 0 calc(var(--tile-height) / 8) 0 0 var(--tile-back-side), 0 calc(var(--tile-height) / 4) 0 0 var(--tile-front-side);
}
div.shimocha div.tile.\31x:not(.flat) {
  box-shadow: calc(var(--tile-height) / -8) 0 0 0 var(--tile-back-side), calc(var(--tile-height) / -4) 0 0 0 var(--tile-front-side);
}
div.kamicha div.tile.\31x:not(.flat) {
  box-shadow: calc(var(--tile-height) / 8) 0 0 0 var(--tile-back-side), calc(var(--tile-height) / 4) 0 0 0 var(--tile-front-side);
}
div.tiles div.tile.facedown:not(.flat) {
  box-shadow: 0 calc(var(--tile-height) / 8) 0 0 var(--tile-back-side), 0 calc(var(--tile-height) / 4) 0 0 var(--tile-front-side);
}
@keyframes tilePlayed {
  67% {
    width: var(--tile-width);
  }
  100% {
    width: 0;
  }
}
div.tile.removed {
  background: transparent;
  box-shadow: none;
  animation: tilePlayed 0.75s ease forwards;
}
div.tile.removed ~ div.tile.draw {
  margin-left: 0;
}
@keyframes slideUp {
  0% {
    transform: translateY(calc(2 * var(--tile-size)));
    opacity: 0;
  }
  100% {
  }
}
div.pond > div.tile.just-played:last-child {
  animation: slideUp 0.2s ease forwards;
}
@keyframes slideUp2 {
  0% {
    transform: translateY(calc(-0.25 * var(--tile-size)));
  }
  100% {
    transform: translateY(calc(-2 * var(--tile-size)));
    opacity: 0;
  }
}
div.tile.played {
  animation: slideUp2 0.2s ease forwards;
}
@keyframes slideLeft {
  0% {
    transform: translateX(calc(2 * var(--tile-size)));
    opacity: 0;
  }
  100% {
  }
}
div.hand.just-drew > div.draws > div.tile {
  animation: slideLeft 0.2s ease forwards;
}
@keyframes slideRight {
  0% {
    transform: translateX(calc(-6 * var(--tile-size)));
    opacity: 0;
  }
  100% {
  }
}
div.hand.just-called > div.calls > div.call.just-called,
div.hand.just-called-flower > div.flowers > div.tile:last-child {
  animation: slideRight 0.4s ease forwards;
}
@keyframes slideDown {
  0% {
    transform: translateX(calc(-1 * var(--tile-height))) translateY(calc(-3 * var(--tile-width)));
    opacity: 0;
  }
  100% {
    transform: translateX(calc(-1 * var(--tile-height))) translateY(calc(-1 * var(--tile-width)));
  }
}
@keyframes slideDown2 {
  0% {
    transform: translateX(calc(-1 * var(--tile-height))) translateY(calc(-4 * var(--tile-width)));
    opacity: 0;
  }
  100% {
    transform: translateX(calc(-1 * var(--tile-height))) translateY(calc(-2 * var(--tile-width)));
  }
}
div.hand.just-upgraded > div.calls > div.call.just-upgraded div.tile.sideways + div.tile.last-sideways::before {
  animation: slideDown 0.2s ease forwards;
}
div.hand.just-upgraded > div.calls > div.call.just-upgraded div.tile.sideways + div.tile.sideways + div.tile.last-sideways::before {
  animation: slideDown2 0.2s ease forwards;
}
div.buttons,
div.call-buttons-container {
  position: absolute;
  bottom: calc(1.5 * var(--tile-size));
  right: calc(1.5 * var(--tile-size));
  align-items: flex-end;
  z-index: 10;
}
div#container.minefield div.buttons,
div#container.minefield div.call-buttons-container {
  bottom: calc(2.75 * var(--tile-size));
  left: calc(2 * var(--tile-size));
  right: auto;
}
div.call-buttons-container {
  display: flex;
  flex-direction: column-reverse;
  row-gap: calc(0.25 * var(--tile-size));
  right: calc(4.5 * var(--tile-size));
}
div.buttons,
div.call-buttons {
  justify-content: right;
  align-items: center;
  column-gap: calc(0.25 * var(--tile-size));
  flex-wrap: wrap;
}
div.call-buttons > div.tile:first-child {
  margin-top: calc(0.25 * var(--tile-size));
}
div.call-buttons > div.call-button-separator {
  border-left: calc(0.5 * var(--tile-size)) solid var(--tile-back);
  border-top: calc(0.25 * var(--tile-size)) solid transparent;
  border-bottom: calc(0.25 * var(--tile-size)) solid transparent;
}
div.buttons > button,
div.call-buttons > button {
  font-size: calc(0.75 * var(--tile-size));
  padding: 0 calc(0.1625 * var(--tile-size));
  background: var(--tile-back);
  filter: none;
  transform: none;
}
div.buttons > button.small-text {
  font-size: calc(0.33 * var(--tile-size));
  max-width: calc(6 * var(--tile-size));
}
div.buttons > button {
  height: calc(1 * var(--tile-size));
  transform: skew(-15deg);
}
div.call-buttons > button {
  padding-top: calc(0.25 * var(--tile-size));
}
@keyframes textFade {
  75% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
div.big-text {
  position: absolute;
  width: 100%;
  text-align: center;
  color: white;
  white-space: nowrap;
  font-size: calc(40 * var(--tile-size) / (8 + var(--big-text-length)));
  text-shadow: black calc(0.1 * var(--tile-size)) calc(0.1 * var(--tile-size));
  z-index: 50;
  animation: textFade 1.5s ease forwards;
  user-select: none;
  pointer-events: none;
}
div.big-text.self {
  bottom: 0;
}
div.big-text.kamicha {
  left: calc(-50% + (3 * var(--tile-size)));
  top: calc(50% - (3 * var(--tile-size)));
}
div.big-text.toimen {
  top: 0;
}
div.big-text.shimocha {
  left: calc(50% - (3 * var(--tile-size)));
  top: calc(50% - (3 * var(--tile-size)));
}
div.status-line {
  position: absolute;
  white-space: nowrap;
  font-size: calc(0.25 * var(--tile-size));
  background: #0000001F;
  width: calc(100% + var(--tile-size));
  left: calc(-0.5 * var(--tile-size));
  bottom: calc(-0.5 * var(--tile-size));
  transform-origin: 50% calc(-8.125 * var(--tile-size));
}
div.status-line.kamicha {
  transform: rotate(90deg);
}
div.status-line.toimen {
  transform: rotate(180deg);
}
div.status-line.shimocha {
  transform: rotate(270deg);
}
div.status-line > div.status-text {
  display: inline;
  color: white;
  margin-left: calc(0.5 * var(--tile-size));
}
div.visible-waits-container {
  position: absolute;
  width: calc(100% - 8.25 * var(--tile-size));
  left: calc(4.125 * var(--tile-size));
  bottom: calc(2 * var(--tile-size));
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: flex-end;
  z-index: 100;
}
div.visible-waits {
  background: #0000007F;
  font-size: calc(0.4 * var(--tile-size));
  color: white;
  border-radius: calc(0.25 * var(--tile-size));
  padding: calc(0.25 * var(--tile-size));
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: flex-end;
}
div.visible-waits > div.visible-wait {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: calc(0.25 * var(--tile-size));
}
div.display-am-hand-hover::before {
  content: "(nearest hands)";
  background: gray;
  position: absolute;
  padding: 0 calc(0.125 * var(--tile-size));
  border-radius: calc(0.125 * var(--tile-size));
  font-size: calc(0.75 * var(--tile-size));
  bottom: calc(-1.5 * var(--tile-size));
  right: calc(0.75 * var(--tile-size));
}
div.display-am-hand-container {
  position: absolute;
  display: none;
  width: calc(100% - 2.5 * var(--tile-size));
  left: calc(1 * var(--tile-size));
  bottom: calc(2.5 * var(--tile-size));
  background: #0000007F;
  font-size: calc(0.4 * var(--tile-size));
  color: white;
  border-radius: calc(0.25 * var(--tile-size));
  padding: calc(0.25 * var(--tile-size));
  padding-top: calc(0.5 * var(--tile-size));
}
div.display-am-hand-hover:hover + div.display-am-hand-container {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  z-index: 100;
  row-gap: calc(0.5 * var(--tile-size));
}
div.display-am-hand {
  display: flex;
  flex-flow: row;
  justify-content: center;
  align-items: center;
  position: relative;
}
div.display-am-hand-type {
  position: absolute;
  font-size: calc(0.75 * var(--tile-size));
  border-radius: calc(0.25 * var(--tile-size));
  bottom: 0;
  right: calc(-0.5 * var(--tile-size));
}
div.revealed-tiles {
  display: flex;
  position: absolute;
  font-size: calc(0.5 * var(--tile-size));
  top: calc(-1.5 * var(--tile-size));
  left: 0;
}
div.scryed-tiles-container {
  display: flex;
  position: absolute;
  font-size: calc(0.5 * var(--tile-size));
  bottom: calc(1.5 * var(--tile-size));
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  z-index: 1;
}
div.scryed-tiles {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  position: relative;
}
div.scryed-tiles::before {
  content: "";
  background: #0000001F;
  position: absolute;
  border-radius: calc(0.25 * var(--tile-size));
  top: calc(-0.5 * var(--tile-size));
  width: calc(100% + 1 * var(--tile-size));
  height: calc(100% + 0.75 * var(--tile-size));
}
div.declare-yaku-container {
  display: flex;
  position: absolute;
  font-size: calc(0.5 * var(--tile-size));
  top: calc(3.5 * var(--tile-size));
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  z-index: 10;
}
div.declare-yaku-container > input.declare-yaku-minimize {
  display: none;
}
div.declare-yaku-container > label.declare-yaku-minimize-label {
  position: absolute;
  width: calc(0.5 * var(--tile-size));
  height: calc(0.75 * var(--tile-size));
  top: calc(-0.75 * var(--tile-size));
  right: 0;
}
div.declare-yaku {
  position: relative;
  z-index: 100;
}
div.declare-yaku.minimized {
  display: none;
}
div.declare-yaku > form {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: calc(0.25 * var(--tile-size));
}
div.declare-yaku::before {
  content: "";
  background: var(--bg-color);
  border: calc(0.125 * var(--tile-size)) solid var(--tile-back);
  position: absolute;
  border-radius: calc(0.25 * var(--tile-size));
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  z-index: -1;
}
div.declare-yaku div.declarable-yakus {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  row-gap: calc(0.25 * var(--tile-size));
  column-gap: calc(0.25 * var(--tile-size));
}
div.declare-yaku button.declare-yaku-button {
  margin: calc(0.25 * var(--tile-size)) 0;
  height: calc(1 * var(--tile-size));
  background: var(--tile-front);
  font-size: calc(0.5 * var(--tile-size));
  text-decoration: none;
  color: black;
  border-width: 0;
  border-radius: calc(0.25 * var(--tile-size));
  filter: drop-shadow(0 calc(var(--tile-size) / 8) 0 var(--tile-front-side)) drop-shadow(0 calc(var(--tile-size) / 8) 0 var(--tile-back-side));
  cursor: pointer;
}
div.declare-yaku button.declare-yaku-button:active {
  filter: drop-shadow(0 calc(var(--tile-size) / 8) 0 var(--tile-front-side));
  transform: translateY(calc(var(--tile-size) / 8));
}
div.rules-wrapper {
  z-index: 10000;
  width: 100%;
  height: 100%;
  user-select: none;
  pointer-events: none;
  position: absolute;
  left: calc(-1.25 * var(--tile-size));
  top: calc(-0.5 * var(--tile-size));
  display: flex;
  flex-flow: column nowrap;
  row-gap: calc(0.25 * var(--tile-size));
}
div.rules-wrapper > label {
  padding: calc(0.125 * var(--tile-size));
  border-radius: calc(0.125 * var(--tile-size));
  font-size: calc(0.5 * var(--tile-size));
  bottom: calc(-1.5 * var(--tile-size));
  width: calc(0.5 * var(--tile-size));
  pointer-events: initial;
  writing-mode: tb;
  display: flex;
  justify-content: center;
  align-items: center;
}
div.rules-wrapper > label.lang-en {
  transform: rotate(180deg);
}
input.rules-popover-unselect + label {
  background: transparent;
  width: calc(0.5 * var(--tile-size));
  height: calc(100% + 1 * var(--tile-size));
  top: 0;
  position: absolute;
  z-index: -2;
}
input.rules-popover-radio:checked ~ input.rules-popover-unselect + label {
  z-index: 0;
}
input.rules-popover-radio:checked + label {
  z-index: -1;
}
input.rules-popover-radio:not(:checked) + label {
  z-index: 1;
}
div.rules-popover-container {
  z-index: 10000;
  position: absolute;
  left: calc(1.25 * var(--tile-size));
  top: calc(0.5 * var(--tile-size));
  width: 0;
  transition: width 0.1s ease;
  height: 100%;
  user-select: none;
}
div.rules-popover-container::before {
  content: "";
  background: #3f3f3f;
  border: 0 solid var(--tile-front);
  border-radius: calc(0.25 * var(--tile-size));
  position: absolute;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  z-index: -1;
  transition: border-width 0.1s cubic-bezier(0, 1, 0, 1);
}
input.rules-popover-radio:checked + label + div.rules-popover-container {
  width: 100%;
  pointer-events: initial;
  user-select: text;
}
input.rules-popover-radio:checked + label + div.rules-popover-container::before {
  border-width: calc(0.125 * var(--tile-size));
}
div.rules-popover {
  width: 100%;
  height: calc(100% - calc(0.25 * var(--tile-size)));
  margin: calc(0.125 * var(--tile-size)) 0;
  position: relative;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  color: white;
  overflow-y: scroll;
  scrollbar-width: none;
}
div.rules-popover::-webkit-scrollbar {
  display: none;
}
div.rules-popover-rule {
  flex-basis: 50%;
}
div.rules-popover-rule.full-width {
  flex-basis: 100%;
}
div.rules-popover-title {
  white-space: pre-wrap;
  font-size: calc(0.75 * var(--tile-size));
  font-weight: 600;
  border-bottom: calc(0.0625 * var(--tile-size)) solid var(--tile-front);
  margin: calc(0.25 * var(--tile-size));
}
div.rules-popover-text {
  white-space: pre-wrap;
  font-size: calc(0.5 * var(--tile-size));
  margin: calc(0.25 * var(--tile-size));
}
div.rules-popover-text > div.tile {
  display: inline-block;
  --tile-scale-factor: 0.65;
  margin-top: calc(0.25 * var(--tile-scale-factor) * var(--tile-size));
}
input.tile-numbers-checkbox + label {
  position: absolute;
  padding: 0 calc(0.125 * var(--tile-size));
  border-radius: calc(0.125 * var(--tile-size));
  font-size: calc(0.5 * var(--tile-size));
  bottom: calc(-1.5 * var(--tile-size));
  width: calc(0.75 * var(--tile-size));
  height: calc(1 * var(--tile-size));
  right: calc(-0.5 * var(--tile-size));
  display: flex;
  justify-content: center;
  align-items: center;
}
div.display-wall-container {
  position: absolute;
  width: 100%;
  height: 100%;
  display: none;
  z-index: -100;
}
div.display-wall {
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
div.display-wall::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  background: #0000007F;
  border-radius: calc(0.25 * var(--tile-size));
  width: 100%;
  height: 100%;
}
div.display-wall.minimized {
  display: none;
}
div.display-wall > div.wall {
  display: flex;
  flex-flow: row-reverse;
  transform-style: preserve-3d;
  transform-origin: 50% 50%;
  width: calc(18 * 0.75 * var(--tile-size));
  height: var(--tile-size);
  position: absolute;
}
div.display-wall > div.wall.toimen {
  justify-items: flex-end;
  top: calc(0.25 * var(--tile-size));
  left: calc(0.5 * var(--tile-size));
  transform: rotate(180deg);
}
div.display-wall > div.wall.shimocha {
  right: calc(1.5 * var(--tile-size));
  top: calc(0.75 * var(--tile-size));
  transform: rotate(270deg);
  transform-origin: top right;
}
div.display-wall > div.wall.self {
  flex-direction: row;
  bottom: calc(0.5 * var(--tile-size));
  left: calc(1.75 * var(--tile-size));
  transform: rotate(180deg);
}
div.display-wall > div.wall.kamicha {
  left: calc(1.5 * var(--tile-size));
  top: calc(1.5 * var(--tile-size));
  transform: rotate(90deg);
  transform-origin: top left;
}
div.display-wall > div.wall > div.tile-stack {
  display: flex;
  flex-direction: column-reverse;
}
div.display-wall > div.wall > div.spacer {
  min-width: calc(0.5 * var(--tile-size));
}
div.display-wall > div.wall > div.tile-stack > div.tile {
  z-index: var(--level);
  transform: translateY(calc(1.25 * var(--level) * var(--tile-size)));
}
div.display-wall > div.wall.shimocha > div.tile-stack > div.tile {
  transform: translateX(calc(0.25 * var(--level) * var(--tile-size))) translateY(calc(1 * var(--level) * var(--tile-size)));
}
div.display-wall > div.wall.kamicha > div.tile-stack > div.tile {
  transform: translateX(calc(-0.25 * var(--level) * var(--tile-size))) translateY(calc(1 * var(--level) * var(--tile-size)));
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(1) {
  z-index: -1;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(2) {
  z-index: -2;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(3) {
  z-index: -3;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(4) {
  z-index: -4;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(5) {
  z-index: -5;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(6) {
  z-index: -6;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(7) {
  z-index: -7;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(8) {
  z-index: -8;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(9) {
  z-index: -9;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(10) {
  z-index: -10;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(11) {
  z-index: -11;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(12) {
  z-index: -12;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(13) {
  z-index: -13;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(14) {
  z-index: -14;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(15) {
  z-index: -15;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(16) {
  z-index: -16;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(17) {
  z-index: -17;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(18) {
  z-index: -18;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(19) {
  z-index: -19;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(20) {
  z-index: -20;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(21) {
  z-index: -21;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(22) {
  z-index: -22;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(23) {
  z-index: -23;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(24) {
  z-index: -24;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(25) {
  z-index: -25;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(26) {
  z-index: -26;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(27) {
  z-index: -27;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(28) {
  z-index: -28;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(29) {
  z-index: -29;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(30) {
  z-index: -30;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(31) {
  z-index: -31;
}
div.display-wall > div.wall.kamicha > div.tile-stack:nth-child(32) {
  z-index: -32;
}
div.display-wall > div.dice {
  position: absolute;
  width: 100%;
  height: calc(1.5 * var(--tile-size));
  top: calc(50% + 2 * var(--tile-size));
  column-gap: calc(0.25 * var(--tile-size));
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
div.display-wall > div.dice > div.die {
  background: white;
  width: calc(0.75 * var(--tile-size));
  height: calc(0.75 * var(--tile-size));
  border-radius: calc(0.125 * var(--tile-size));
  position: relative;
}
div.display-wall > div.dice > div.die::before,
div.display-wall > div.dice > div.die::after {
  background: black;
  border-radius: 50%;
  position: absolute;
  top: calc(0.13 * var(--tile-size));
  left: calc(0.13 * var(--tile-size));
  width: calc(0.17 * var(--tile-size));
  height: calc(0.17 * var(--tile-size));
  z-index: 1;
}
div.display-wall > div.dice > div.die::before {
  content: "";
}
div.display-wall > div.dice > div.die.one::before {
  background: red;
  top: calc(0.25 * var(--tile-size));
  left: calc(0.25 * var(--tile-size));
  width: calc(0.25 * var(--tile-size));
  height: calc(0.25 * var(--tile-size));
}
div.display-wall > div.dice > div.die.two::before {
  filter: drop-shadow(calc(0.32 * var(--tile-size)) calc(0.32 * var(--tile-size)) 0 black);
}
div.display-wall > div.dice > div.die.three::before {
  filter: drop-shadow(calc(0.16 * var(--tile-size)) calc(0.16 * var(--tile-size)) 0 black) drop-shadow(calc(0.16 * var(--tile-size)) calc(0.16 * var(--tile-size)) 0 black);
}
div.display-wall > div.dice > div.die.four::before {
  background: red;
  filter: drop-shadow(calc(0 * var(--tile-size)) calc(0.32 * var(--tile-size)) 0 red) drop-shadow(calc(0.32 * var(--tile-size)) calc(0 * var(--tile-size)) 0 red);
}
div.display-wall > div.dice > div.die.five::before {
  filter: drop-shadow(calc(0 * var(--tile-size)) calc(0.32 * var(--tile-size)) 0 black) drop-shadow(calc(0.32 * var(--tile-size)) calc(0 * var(--tile-size)) 0 black);
}
div.display-wall > div.dice > div.die.five::after {
  content: "";
  filter: drop-shadow(calc(0.16 * var(--tile-size)) calc(0.16 * var(--tile-size)) 0 black);
}
div.display-wall > div.dice > div.die.six::before {
  top: calc(0.09 * var(--tile-size));
  filter: drop-shadow(calc(0.32 * var(--tile-size)) calc(0 * var(--tile-size)) 0 black) drop-shadow(calc(0 * var(--tile-size)) calc(0.21 * var(--tile-size)) 0 black) drop-shadow(calc(0 * var(--tile-size)) calc(0.21 * var(--tile-size)) 0 black);
}
div.game-modal-container {
  position: absolute;
  width: 80%;
  height: 80%;
  left: 10%;
  top: 10%;
  z-index: 100;
  float: left;
  transition: opacity 0.5s ease;
  color: black;
}
div.game-modal-container.inactive,
div.game-modal-hide:active,
div.game-modal-hide:active + div.timer {
  opacity: 0;
  pointer-events: none;
  user-select: none;
  color: black;
}
div.game-modal {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  background: none;
}
div.game-modal::before {
  position: absolute;
  content: "";
  width: 108%;
  height: 108%;
  top: -4%;
  left: -4%;
  border-radius: calc(0.25 * var(--tile-size));
  background: black;
  opacity: 0.6;
  z-index: -1;
}
div.game-modal > div.winning-hand,
div.game-modal > div.yakus,
div.game-modal > div.score-display {
  pointer-events: none;
  user-select: none;
}
div.game-modal.error-window > button.dismiss-error,
div.game-modal-container > button.end-back-button {
  position: absolute;
  width: 100%;
  height: calc(1 * var(--tile-size));
  bottom: 0;
}
div.winning-hand-container {
  width: 100%;
  padding-top: calc(0.25 * var(--tile-size));
}
div.winning-hand-container:not(:hover) div.hand.winning-hand:not(.separated-hand) {
  display: flex;
}
div.winning-hand-container:hover div.hand.winning-hand.separated-hand {
  display: flex;
}
div.hand.winning-hand {
  width: 100%;
  justify-content: center;
  display: none;
}
div.hand.winning-hand > div.call.winning-flowers {
  position: relative;
}
div.hand.winning-hand > div.call.winning-flowers > div.tile:not(:last-child) {
  margin-right: calc(-0.5 * var(--tile-size));
}
div.hand.winning-hand > div.call.winning-flowers > div.flower-count {
  background: var(--tile-front);
  padding: calc(0.05 * var(--tile-size));
  border-radius: calc(0.2 * var(--tile-size));
  filter: drop-shadow(calc(var(--tile-size) / -16) calc(var(--tile-size) / -16) 0 var(--tile-back-side));
  position: absolute;
  font-size: calc(0.4 * var(--tile-size));
  bottom: calc(-0.25 * var(--tile-size));
  right: calc(-0.25 * var(--tile-size));
  z-index: 1;
}
div.yakus {
  display: flex;
  flex-flow: column wrap;
  align-content: space-evenly;
  row-gap: calc(0.5 * var(--tile-size));
  margin-left: calc(0.5 * var(--tile-size));
  margin-right: calc(-0.5 * var(--tile-size));
  margin-top: calc(1.75 * var(--tile-size));
  width: 100%;
  height: 90%;
}
div.yakus::before {
  content: "";
  height: 100%;
  order: 1;
}
div.yakus::after {
  content: "";
  height: 100%;
  order: -1;
}
div.yaku:nth-child(n+1):nth-last-child(-n+0),
div.yaku:nth-child(n+2):nth-last-child(-n+1),
div.yaku:nth-child(n+3):nth-last-child(-n+2),
div.yaku:nth-child(n+4):nth-last-child(-n+3),
div.yaku:nth-child(n+5):nth-last-child(-n+4),
div.yaku:nth-child(n+6):nth-last-child(-n+5),
div.yaku:nth-child(n+7):nth-last-child(-n+6),
div.yaku:nth-child(n+8):nth-last-child(-n+7),
div.yaku:nth-child(n+9):nth-last-child(-n+8),
div.yaku:nth-child(n+10):nth-last-child(-n+9) {
  order: 1;
}
div.yaku,
div.yaku > div.han-counter,
div.yaku > div.yaku-text::before {
  font-size: calc(0.6 * var(--tile-size));
  height: 1.2em;
  padding-right: calc(0.5 * var(--tile-size));
  border-radius: calc(0.125 * var(--tile-size));
  white-space: nowrap;
}
div.yaku > div.yaku-text::before {
  filter: drop-shadow(calc(var(--tile-size) / -8) calc(var(--tile-size) / -16) 0 var(--tile-front-side)) drop-shadow(calc(var(--tile-size) / -8) calc(var(--tile-size) / -16) 0 var(--tile-back-side));
}
div.yaku {
  display: flex;
}
div.yaku > div.yaku-text {
  display: inline-block;
  position: relative;
  z-index: 2;
}
div.yaku > div.yaku-text.small {
  font-size: 75%;
  top: 10%;
}
div.yaku > div.yaku-text.small::before {
  top: -10%;
}
div.yaku > div.yaku-text.tiny {
  font-size: 50%;
  top: 20%;
}
div.yaku > div.yaku-text.tiny::before {
  top: -20%;
}
div.yaku > div.yaku-text::before {
  position: absolute;
  content: "";
  z-index: -1;
  background: var(--tile-front);
  width: calc(100% + var(--tile-size));
  left: -10%;
  height: 110%;
  top: 0%;
  transform: rotate(2deg);
}
div.yaku > div.han-counter {
  display: inline-block;
  position: relative;
  z-index: 2;
  transform: rotate(-20deg);
  font-style: normal;
  margin-left: calc(0.5 * var(--tile-size));
}
div.yaku > div.han-counter::before,
div.total-han-display::before,
div.total-fu-display::before,
div.total-score-display::before,
div.total-score-name-display::before {
  background-image: url(/images/brush-bg.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
}
div.total-fu-display::before,
div.total-score-display::before {
  background-image: url(/images/brush-bg2.svg);
}
div.yaku > div.han-counter::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: calc(100% + 0.5 * var(--tile-size));
  height: 160%;
  left: calc(-0.66 * var(--tile-size));
  top: -37.5%;
}
div.score-display {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-evenly;
  row-gap: calc(0.125 * var(--tile-size));
  position: absolute;
  width: 100%;
  bottom: 0;
}
div.score-display::before {
  content: "";
  width: 100%;
  order: 1;
}
div.total-han-display,
div.total-fu-display,
div.total-score-display {
  position: relative;
  white-space: nowrap;
  z-index: 1;
}
div.total-han-display,
div.total-fu-display {
  font-size: calc(1.25 * var(--tile-size));
}
div.total-score-display {
  font-size: calc(2 * var(--tile-size));
  order: 1;
}
div.total-score-display.small {
  font-size: calc(1.25 * var(--tile-size));
}
div.total-score-name-display {
  font-size: calc(1.2 * var(--tile-size));
  order: 1;
}
div.total-score-name-display.small {
  font-size: calc(1 * var(--tile-size));
}
div.total-han-display::before,
div.total-fu-display::before,
div.total-score-display::before,
div.total-score-name-display::before {
  position: absolute;
  content: "";
  width: 150%;
  height: 140%;
  left: -25%;
  bottom: -7.5%;
  z-index: -1;
}
div.total-fu-display::before {
  transform: rotate(180deg);
  width: 160%;
  left: -35%;
  bottom: -35%;
}
div.total-score-display::before {
  width: 180%;
  height: 160%;
  left: -40%;
}
div.total-score-name-display {
  transform: rotate(-20deg);
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 2;
}
div.total-score-name-display::before {
  transform: rotate(180deg);
  width: 140%;
  height: 120%;
  left: -20%;
  bottom: -15%;
}
div.game-modal > div.delta-score-reason {
  position: absolute;
  font-size: calc(1.25 * var(--tile-size));
  text-align: center;
  top: 0;
  width: 100%;
  user-select: none;
  z-index: 3;
}
div.game-modal > div.delta-score-reason::before {
  position: absolute;
  content: "";
  background-image: url(/images/brush-bg.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  transform-origin: 50% calc(50% + var(--tile-size));
  width: 100%;
  height: calc(3 * var(--tile-size));
  left: 0;
  bottom: calc(-0.5 * var(--tile-size));
  z-index: -1;
}
div.game-modal > div.delta-score {
  line-height: 1;
  position: absolute;
  font-size: calc(1 * var(--tile-size));
  text-align: right;
  user-select: none;
  z-index: 2;
}
div.game-modal > div.delta-score.self {
  bottom: calc(0.25 * var(--tile-size));
  left: calc(-50% + 11 * var(--tile-size));
}
div.game-modal > div.delta-score.kamicha {
  left: calc(1.25 * var(--tile-size));
  top: calc(-50% + 12 * var(--tile-size));
}
div.game-modal > div.delta-score.toimen {
  top: calc(2.25 * var(--tile-size));
  left: calc(-50% + 11 * var(--tile-size));
}
div.game-modal > div.delta-score.shimocha {
  right: calc(1.25 * var(--tile-size));
  top: calc(-50% + 12 * var(--tile-size));
}
div.game-modal > div.delta-score > div.hline::before {
  position: absolute;
  content: "";
  background: black;
  width: 100%;
  right: 0;
  height: calc(0.0625 * var(--tile-size));
}
div.game-modal > div.delta-score::before {
  position: absolute;
  content: "";
  background-image: url(/images/brush-bg2.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  transform-origin: 50% calc(50% + var(--tile-size));
  width: calc(6 * var(--tile-size));
  height: calc(6 * var(--tile-size));
  z-index: -1;
}
div.game-modal > div.delta-score.self::before {
  transform: rotate(0deg);
  left: calc(50% - 2.5 * var(--tile-size));
  bottom: calc(50% - 2.25 * var(--tile-size));
}
div.game-modal > div.delta-score.kamicha::before {
  transform: rotate(90deg);
  left: calc(50% - 3.5 * var(--tile-size));
  bottom: calc(50% - 2.5 * var(--tile-size));
}
div.game-modal > div.delta-score.toimen::before {
  transform: rotate(180deg);
  left: calc(50% - 3 * var(--tile-size));
  bottom: calc(50% - 1.5 * var(--tile-size));
}
div.game-modal > div.delta-score.shimocha::before {
  transform: rotate(270deg);
  left: calc(50% - 2.5 * var(--tile-size));
  bottom: calc(50% - 1.5 * var(--tile-size));
}
div.game-modal > div.delta-score > div.initial {
  color: gray;
}
div.game-modal > div.delta-score > div.change.positive {
  color: green;
}
div.game-modal > div.delta-score > div.change.negative {
  color: red;
}
div.game-modal > div.delta-score > div.result {
  transform: translateY(calc(0.125 * var(--tile-size)));
}
div.game-modal-container > div.timer {
  position: absolute;
  color: white;
  text-align: right;
  font-size: calc(0.5 * var(--tile-size));
  right: calc(-0.25 * var(--tile-size));
  bottom: calc(-0.25 * var(--tile-size));
  height: calc(0.75 * var(--tile-size));
  cursor: pointer;
  white-space: nowrap;
  z-index: 1;
}
div.game-modal.error-window {
  color: white;
}
div.game-modal.error-window > h1 {
  text-align: center;
  user-select: none;
}
div.game-modal.error-window > textarea.error {
  position: absolute;
  height: calc(100% - 4 * var(--tile-size));
  top: calc(2 * var(--tile-size));
  left: 0;
}
div.game-modal.error-window::before {
  background: red;
}
div.scoreboard {
  display: flex;
  flex-direction: column;
  row-gap: var(--tile-size);
  margin-top: var(--tile-size);
  margin-bottom: var(--tile-size);
  width: 100%;
  height: calc(100 - 1 * var(--tile-size));
}
div.placement > div.placement-place,
div.placement > div.placement-name {
  font-size: calc(0.6 * var(--tile-size));
  white-space: nowrap;
  height: 1.2em;
}
div.placement > div.placement-name::before {
  filter: drop-shadow(calc(var(--tile-size) / -8) calc(var(--tile-size) / -16) 0 var(--tile-front-side)) drop-shadow(calc(var(--tile-size) / -8) calc(var(--tile-size) / -16) 0 var(--tile-back-side));
}
div.placement {
  display: flex;
  user-select: none;
}
div.placement:nth-child(1) {
  margin-left: calc(0 * var(--tile-size));
}
div.placement:nth-child(2) {
  margin-left: calc(0.5 * var(--tile-size));
}
div.placement:nth-child(3) {
  margin-left: calc(1 * var(--tile-size));
}
div.placement:nth-child(4) {
  margin-left: calc(1.5 * var(--tile-size));
}
div.placement > div.placement-name {
  display: flex;
  position: relative;
  font-size: calc(1 * var(--tile-size));
  padding-left: calc(1.75 * var(--tile-size));
  z-index: 1;
}
div.placement > div.placement-name::before {
  position: absolute;
  content: "";
  z-index: -1;
  background: var(--tile-front);
  width: calc(100% + var(--tile-size));
  border-radius: calc(0.125 * var(--tile-size));
  left: -10%;
  height: 110%;
  top: 0%;
  transform: rotate(2deg);
}
div.placement > div.placement-place {
  display: inline-block;
  position: relative;
  font-size: calc(1 * var(--tile-size));
  transform: translateX(var(--tile-size)) rotate(-20deg);
  z-index: 2;
}
div.placement > div.placement-place::before {
  position: absolute;
  content: "";
  background-image: url(/images/brush-bg.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  left: -40%;
  top: -30%;
  width: 180%;
  height: 140%;
  z-index: -1;
}
div.placement span.placement-score {
  margin-left: calc(0.5 * var(--tile-size));
}
div.ruleset {
  position: absolute;
  top: calc(100vh + (2 * var(--tile-size)) + 1.2em);
  left: calc(50% - min(90vw, 80vh) / 2);
  width: min(90vw, 80vh);
  height: calc(20 * var(--tile-size));
  user-select: text;
}
div.ruleset > div.ruleset-text {
  content: "Ruleset:";
  color: white;
  font-size: calc(1 * var(--tile-size));
}
@media (min-aspect-ratio: 6/5) {
  div.ruleset {
    width: calc(min(90vw, 80vh) + 0.5 * var(--tile-size) + min(50%, calc(40vw - 20% - 0.5 * var(--tile-size))));
  }
}
div.saki-card {
  position: relative;
  width: var(--card-width);
  height: var(--card-height);
  border-radius: calc(0.15 * var(--tile-size));
  flex-shrink: 0;
  z-index: 0;
}
div.saki-card:hover {
  z-index: 1;
}
label.mod {
  position: relative;
}
div.saki-card::before,
div.saki-card::after,
label.mod::before,
label.mod::after {
  position: absolute;
  background: inherit;
  width: var(--card-width);
  height: var(--card-height);
  pointer-events: none;
  left: -350%;
  bottom: 50%;
  transform-origin: 50% 100%;
  z-index: 10;
  content: none;
}
label.mod:hover::before {
  left: 0;
}
label.mod:hover::after {
  left: calc(1 * var(--card-width));
}
label.mod:hover::before,
label.mod:hover::after {
  top: calc(-1 * var(--card-height));
}
div.saki-card:hover::before,
label.mod:hover::before {
  content: "";
}
div.saki-card.v12,
label.mod.v12::before,
label.mod.v12::after {
  --card-width: calc(0.89 * var(--tile-size));
  --card-height: calc(1.25 * var(--tile-size));
  background: url(/images/sakicardsv12.png) no-repeat;
  background-size: auto calc(6 * var(--card-height));
}
div.saki-card.v13,
label.mod.v13::before,
label.mod.v13::after {
  --card-width: calc(0.865 * var(--tile-size));
  --card-height: calc(1.25 * var(--tile-size));
  background: url(/images/sakicardsv13.png) no-repeat;
  background-size: auto calc(7 * var(--card-height));
}
div.saki-card.v12::before,
div.saki-card.v12::after,
label.mod.v12::after,
label.mod.v12::before,
label.mod.v12::after {
  --card-width: calc(7.12 * var(--tile-size));
  --card-height: calc(10 * var(--tile-size));
  background-size: auto calc(6 * var(--card-height));
}
div.saki-card.v13::before,
div.saki-card.v13::after,
label.mod.v13::after,
label.mod.v13::before,
label.mod.v13::after {
  --card-width: calc(6.92 * var(--tile-size));
  --card-height: calc(10 * var(--tile-size));
  background-size: auto calc(7 * var(--card-height));
}
div.saki-card.v12.aislinn-wishart,
div.saki-card.v12.aislinn-wishart::before,
label.mod.v12.aislinn-wishart::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v12.amae-koromo,
div.saki-card.v12.amae-koromo::before,
label.mod.v12.amae-koromo::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v12.anetai-toyone,
div.saki-card.v12.anetai-toyone::before,
label.mod.v12.anetai-toyone::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v12.arakawa-kei,
div.saki-card.v12.arakawa-kei::before,
label.mod.v12.arakawa-kei::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v12.atago-hiroe,
div.saki-card.v12.atago-hiroe::before,
label.mod.v12.atago-hiroe::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v12.atarashi-ako,
div.saki-card.v12.atarashi-ako::before,
label.mod.v12.atarashi-ako::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v12.choe-myeonghwa,
div.saki-card.v12.choe-myeonghwa::before,
label.mod.v12.choe-myeonghwa::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v12.ezaki-hitomi,
div.saki-card.v12.ezaki-hitomi::before,
label.mod.v12.ezaki-hitomi::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v12.fukuji-mihoko,
div.saki-card.v12.fukuji-mihoko::before,
label.mod.v12.fukuji-mihoko::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v12.hanada-kirame,
div.saki-card.v12.hanada-kirame::before,
label.mod.v12.hanada-kirame::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v12.hao-huiyu,
div.saki-card.v12.hao-huiyu::before,
label.mod.v12.hao-huiyu::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v12.haramura-nodoka,
div.saki-card.v12.haramura-nodoka::before,
label.mod.v12.haramura-nodoka::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v12.hirose-sumire,
div.saki-card.v12.hirose-sumire::before,
label.mod.v12.hirose-sumire::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v12.ikeda-kana,
div.saki-card.v12.ikeda-kana::before,
label.mod.v12.ikeda-kana::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v12.inoue-jun,
div.saki-card.v12.inoue-jun::before,
label.mod.v12.inoue-jun::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v12.iwato-kasumi,
div.saki-card.v12.iwato-kasumi::before,
label.mod.v12.iwato-kasumi::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v12.jindai-komaki,
div.saki-card.v12.jindai-komaki::before,
label.mod.v12.jindai-komaki::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v12.kajiki-yumi,
div.saki-card.v12.kajiki-yumi::before,
label.mod.v12.kajiki-yumi::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v12.kainou-yoshiko,
div.saki-card.v12.kainou-yoshiko::before,
label.mod.v12.kainou-yoshiko::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v12.kakura-kurumi,
div.saki-card.v12.kakura-kurumi::before,
label.mod.v12.kakura-kurumi::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v12.kanbara-satomi,
div.saki-card.v12.kanbara-satomi::before,
label.mod.v12.kanbara-satomi::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v12.karijuku-tomoe,
div.saki-card.v12.karijuku-tomoe::before,
label.mod.v12.karijuku-tomoe::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v12.kataoka-yuuki,
div.saki-card.v12.kataoka-yuuki::before,
label.mod.v12.kataoka-yuuki::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v12.kosegawa-shiromi,
div.saki-card.v12.kosegawa-shiromi::before,
label.mod.v12.kosegawa-shiromi::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v12.kunihiro-hajime,
div.saki-card.v12.kunihiro-hajime::before,
label.mod.v12.kunihiro-hajime::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v12.mase-yuuko,
div.saki-card.v12.mase-yuuko::before,
label.mod.v12.mase-yuuko::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v12.matano-seiko,
div.saki-card.v12.matano-seiko::before,
label.mod.v12.matano-seiko::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v12.matsumi-kuro,
div.saki-card.v12.matsumi-kuro::before,
label.mod.v12.matsumi-kuro::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v12.matsumi-yuu,
div.saki-card.v12.matsumi-yuu::before,
label.mod.v12.matsumi-yuu::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v12.maya-yukiko,
div.saki-card.v12.maya-yukiko::before,
label.mod.v12.maya-yukiko::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v12.megan-davin,
div.saki-card.v12.megan-davin::before,
label.mod.v12.megan-davin::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v12.miyanaga-saki,
div.saki-card.v12.miyanaga-saki::before,
label.mod.v12.miyanaga-saki::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v12.miyanaga-teru,
div.saki-card.v12.miyanaga-teru::before,
label.mod.v12.miyanaga-teru::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v12.nanpo-kazue,
div.saki-card.v12.nanpo-kazue::before,
label.mod.v12.nanpo-kazue::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v12.nelly-virsaladze,
div.saki-card.v12.nelly-virsaladze::before,
label.mod.v12.nelly-virsaladze::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v12.onjouji-toki,
div.saki-card.v12.onjouji-toki::before,
label.mod.v12.onjouji-toki::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v12.oohoshi-awai,
div.saki-card.v12.oohoshi-awai::before,
label.mod.v12.oohoshi-awai::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v12.ryuumonbuchi-touka,
div.saki-card.v12.ryuumonbuchi-touka::before,
label.mod.v12.ryuumonbuchi-touka::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v12.sagimori-arata,
div.saki-card.v12.sagimori-arata::before,
label.mod.v12.sagimori-arata::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v12.sawamura-tomoki,
div.saki-card.v12.sawamura-tomoki::before,
label.mod.v12.sawamura-tomoki::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v12.senoo-kaori,
div.saki-card.v12.senoo-kaori::before,
label.mod.v12.senoo-kaori::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v12.shibuya-takami,
div.saki-card.v12.shibuya-takami::before,
label.mod.v12.shibuya-takami::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v12.shimizudani-ryuuka,
div.saki-card.v12.shimizudani-ryuuka::before,
label.mod.v12.shimizudani-ryuuka::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v12.shirouzu-mairu,
div.saki-card.v12.shirouzu-mairu::before,
label.mod.v12.shirouzu-mairu::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v12.someya-mako,
div.saki-card.v12.someya-mako::before,
label.mod.v12.someya-mako::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v12.takakamo-shizuno,
div.saki-card.v12.takakamo-shizuno::before,
label.mod.v12.takakamo-shizuno::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v12.takei-hisa,
div.saki-card.v12.takei-hisa::before,
label.mod.v12.takei-hisa::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v12.takimi-haru,
div.saki-card.v12.takimi-haru::before,
label.mod.v12.takimi-haru::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v12.toyouko-momoko,
div.saki-card.v12.toyouko-momoko::before,
label.mod.v12.toyouko-momoko::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v12.tsujigaito-satoha,
div.saki-card.v12.tsujigaito-satoha::before,
label.mod.v12.tsujigaito-satoha::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v12.tsuruta-himeko,
div.saki-card.v12.tsuruta-himeko::before,
label.mod.v12.tsuruta-himeko::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v12.usuzawa-sae,
div.saki-card.v12.usuzawa-sae::before,
label.mod.v12.usuzawa-sae::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v12.usuzumi-hatsumi,
div.saki-card.v12.usuzumi-hatsumi::before,
label.mod.v12.usuzumi-hatsumi::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v12.yumeno-maho,
div.saki-card.v12.yumeno-maho::before,
label.mod.v12.yumeno-maho::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v13.aislinn-wishart,
div.saki-card.v13.aislinn-wishart::before,
label.mod.v13.aislinn-wishart::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v13.amae-koromo,
div.saki-card.v13.amae-koromo::before,
label.mod.v13.amae-koromo::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v13.anetai-toyone,
div.saki-card.v13.anetai-toyone::before,
label.mod.v13.anetai-toyone::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v13.arakawa-kei,
div.saki-card.v13.arakawa-kei::before,
label.mod.v13.arakawa-kei::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v13.atago-hiroe,
div.saki-card.v13.atago-hiroe::before,
label.mod.v13.atago-hiroe::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v13.atago-kinue,
div.saki-card.v13.atago-kinue::before,
label.mod.v13.atago-kinue::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v13.atarashi-ako,
div.saki-card.v13.atarashi-ako::before,
label.mod.v13.atarashi-ako::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v13.choe-myeonghwa,
div.saki-card.v13.choe-myeonghwa::before,
label.mod.v13.choe-myeonghwa::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v13.ezaki-hitomi,
div.saki-card.v13.ezaki-hitomi::before,
label.mod.v13.ezaki-hitomi::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-0 * var(--card-height));
}
div.saki-card.v13.fukuji-mihoko,
div.saki-card.v13.fukuji-mihoko::before,
label.mod.v13.fukuji-mihoko::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v13.funakubo-hiroko,
div.saki-card.v13.funakubo-hiroko::before,
label.mod.v13.funakubo-hiroko::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v13.hanada-kirame,
div.saki-card.v13.hanada-kirame::before,
label.mod.v13.hanada-kirame::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v13.hao-huiyu,
div.saki-card.v13.hao-huiyu::before,
label.mod.v13.hao-huiyu::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v13.haramura-nodoka,
div.saki-card.v13.haramura-nodoka::before,
label.mod.v13.haramura-nodoka::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v13.hirose-sumire,
div.saki-card.v13.hirose-sumire::before,
label.mod.v13.hirose-sumire::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v13.ikeda-kana,
div.saki-card.v13.ikeda-kana::before,
label.mod.v13.ikeda-kana::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v13.inoue-jun,
div.saki-card.v13.inoue-jun::before,
label.mod.v13.inoue-jun::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v13.iwadate-yuan,
div.saki-card.v13.iwadate-yuan::before,
label.mod.v13.iwadate-yuan::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-1 * var(--card-height));
}
div.saki-card.v13.iwato-kasumi,
div.saki-card.v13.iwato-kasumi::before,
label.mod.v13.iwato-kasumi::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v13.jindai-komaki,
div.saki-card.v13.jindai-komaki::before,
label.mod.v13.jindai-komaki::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v13.kajiki-yumi,
div.saki-card.v13.kajiki-yumi::before,
label.mod.v13.kajiki-yumi::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v13.kainou-yoshiko,
div.saki-card.v13.kainou-yoshiko::before,
label.mod.v13.kainou-yoshiko::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v13.kakura-kurumi,
div.saki-card.v13.kakura-kurumi::before,
label.mod.v13.kakura-kurumi::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v13.kanbara-satomi,
div.saki-card.v13.kanbara-satomi::before,
label.mod.v13.kanbara-satomi::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v13.karijuku-tomoe,
div.saki-card.v13.karijuku-tomoe::before,
label.mod.v13.karijuku-tomoe::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v13.kataoka-yuuki,
div.saki-card.v13.kataoka-yuuki::before,
label.mod.v13.kataoka-yuuki::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v13.kosegawa-shiromi,
div.saki-card.v13.kosegawa-shiromi::before,
label.mod.v13.kosegawa-shiromi::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-2 * var(--card-height));
}
div.saki-card.v13.kunihiro-hajime,
div.saki-card.v13.kunihiro-hajime::before,
label.mod.v13.kunihiro-hajime::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v13.mase-yuuko,
div.saki-card.v13.mase-yuuko::before,
label.mod.v13.mase-yuuko::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v13.matano-seiko,
div.saki-card.v13.matano-seiko::before,
label.mod.v13.matano-seiko::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v13.matsumi-kuro,
div.saki-card.v13.matsumi-kuro::before,
label.mod.v13.matsumi-kuro::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v13.matsumi-yuu,
div.saki-card.v13.matsumi-yuu::before,
label.mod.v13.matsumi-yuu::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v13.maya-yukiko,
div.saki-card.v13.maya-yukiko::before,
label.mod.v13.maya-yukiko::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v13.megan-davin,
div.saki-card.v13.megan-davin::before,
label.mod.v13.megan-davin::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v13.miyanaga-saki,
div.saki-card.v13.miyanaga-saki::before,
label.mod.v13.miyanaga-saki::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v13.miyanaga-teru,
div.saki-card.v13.miyanaga-teru::before,
label.mod.v13.miyanaga-teru::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-3 * var(--card-height));
}
div.saki-card.v13.motouchi-naruka,
div.saki-card.v13.motouchi-naruka::before,
label.mod.v13.motouchi-naruka::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v13.nanpo-kazue,
div.saki-card.v13.nanpo-kazue::before,
label.mod.v13.nanpo-kazue::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v13.nelly-virsaladze,
div.saki-card.v13.nelly-virsaladze::before,
label.mod.v13.nelly-virsaladze::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v13.onjouji-toki,
div.saki-card.v13.onjouji-toki::before,
label.mod.v13.onjouji-toki::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v13.oohoshi-awai,
div.saki-card.v13.oohoshi-awai::before,
label.mod.v13.oohoshi-awai::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v13.ryuumonbuchi-touka,
div.saki-card.v13.ryuumonbuchi-touka::before,
label.mod.v13.ryuumonbuchi-touka::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v13.sagimori-arata,
div.saki-card.v13.sagimori-arata::before,
label.mod.v13.sagimori-arata::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v13.sawamura-tomoki,
div.saki-card.v13.sawamura-tomoki::before,
label.mod.v13.sawamura-tomoki::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v13.senoo-kaori,
div.saki-card.v13.senoo-kaori::before,
label.mod.v13.senoo-kaori::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v13.shibuya-takami,
div.saki-card.v13.shibuya-takami::before,
label.mod.v13.shibuya-takami::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v13.shimizudani-ryuuka,
div.saki-card.v13.shimizudani-ryuuka::before,
label.mod.v13.shimizudani-ryuuka::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v13.shirouzu-mairu,
div.saki-card.v13.shirouzu-mairu::before,
label.mod.v13.shirouzu-mairu::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v13.shishihara-sawaya,
div.saki-card.v13.shishihara-sawaya::before,
label.mod.v13.shishihara-sawaya::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v13.someya-mako,
div.saki-card.v13.someya-mako::before,
label.mod.v13.someya-mako::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v13.suehara-kyouko,
div.saki-card.v13.suehara-kyouko::before,
label.mod.v13.suehara-kyouko::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v13.takakamo-shizuno,
div.saki-card.v13.takakamo-shizuno::before,
label.mod.v13.takakamo-shizuno::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v13.takei-hisa,
div.saki-card.v13.takei-hisa::before,
label.mod.v13.takei-hisa::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v13.takimi-haru,
div.saki-card.v13.takimi-haru::before,
label.mod.v13.takimi-haru::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v13.toyouko-momoko,
div.saki-card.v13.toyouko-momoko::before,
label.mod.v13.toyouko-momoko::before {
  background-position-x: calc(-0 * var(--card-width));
  background-position-y: calc(-6 * var(--card-height));
}
div.saki-card.v13.tsujigaito-satoha,
div.saki-card.v13.tsujigaito-satoha::before,
label.mod.v13.tsujigaito-satoha::before {
  background-position-x: calc(-1 * var(--card-width));
  background-position-y: calc(-6 * var(--card-height));
}
div.saki-card.v13.tsuruta-himeko,
div.saki-card.v13.tsuruta-himeko::before,
label.mod.v13.tsuruta-himeko::before {
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-6 * var(--card-height));
}
div.saki-card.v13.ueshige-suzu,
div.saki-card.v13.ueshige-suzu::before,
label.mod.v13.ueshige-suzu::before {
  background-position-x: calc(-3 * var(--card-width));
  background-position-y: calc(-6 * var(--card-height));
}
div.saki-card.v13.usuzawa-sae,
div.saki-card.v13.usuzawa-sae::before,
label.mod.v13.usuzawa-sae::before {
  background-position-x: calc(-4 * var(--card-width));
  background-position-y: calc(-6 * var(--card-height));
}
div.saki-card.v13.usuzumi-hatsumi,
div.saki-card.v13.usuzumi-hatsumi::before,
label.mod.v13.usuzumi-hatsumi::before {
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-6 * var(--card-height));
}
div.saki-card.v13.yae-kobashiri,
div.saki-card.v13.yae-kobashiri::before,
label.mod.v13.yae-kobashiri::before {
  background-position-x: calc(-6 * var(--card-width));
  background-position-y: calc(-6 * var(--card-height));
}
div.saki-card.v13.yoshitome-miharu,
div.saki-card.v13.yoshitome-miharu::before,
label.mod.v13.yoshitome-miharu::before {
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-6 * var(--card-height));
}
div.saki-card.v13.yumeno-maho,
div.saki-card.v13.yumeno-maho::before,
label.mod.v13.yumeno-maho::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-6 * var(--card-height));
}
label.mod.v13::before {
  background-position-x: calc(-8 * var(--card-width));
  background-position-y: calc(-6 * var(--card-height));
}
div.shimocha div.saki-card::before,
div.shimocha div.saki-card::after {
  transform: rotate(90deg) translateY(calc(3 * var(--tile-size)));
}
div.toimen div.saki-card::before,
div.toimen div.saki-card::after {
  transform: rotate(180deg) translateY(calc(5 * var(--tile-size)));
}
div.kamicha div.saki-card::before,
div.kamicha div.saki-card::after {
  transform: rotate(270deg) translateY(calc(0.5 * var(--tile-size)));
}
div.saki-card.disabled,
div.saki-card.disabled::before {
  filter: saturate(0%);
}
div.saki-card.shirouzu-mairu::after,
div.saki-card.tsuruta-himeko::after {
  left: calc(-350% + 0.5 * var(--card-width));
  z-index: 10;
}
div.saki-card.v12.shirouzu-mairu:hover::after,
label.mod.v12.shirouzu-mairu::after {
  content: "";
  background-position-x: calc(-5 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.v12.tsuruta-himeko:hover::after {
  content: "";
  background-position-x: calc(-7 * var(--card-width));
  background-position-y: calc(-4 * var(--card-height));
}
div.saki-card.v13.shirouzu-mairu:hover::after,
label.mod.v13.shirouzu-mairu::after {
  content: "";
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-6 * var(--card-height));
}
div.saki-card.v13.tsuruta-himeko:hover::after {
  content: "";
  background-position-x: calc(-2 * var(--card-width));
  background-position-y: calc(-5 * var(--card-height));
}
div.saki-card.shirouzu-mairu::before,
div.saki-card.tsuruta-himeko::before {
  transform: translateX(calc(-0.5 * var(--card-width)));
}
div.shimocha div.saki-card.shirouzu-mairu::before,
div.shimocha div.saki-card.tsuruta-himeko::before {
  transform: rotate(90deg) translateX(calc(-0.5 * var(--card-width))) translateY(calc(3 * var(--tile-size)));
}
div.toimen div.saki-card.shirouzu-mairu::before,
div.toimen div.saki-card.tsuruta-himeko::before {
  transform: rotate(180deg) translateX(calc(-0.5 * var(--card-width))) translateY(calc(5 * var(--tile-size)));
}
div.kamicha div.saki-card.shirouzu-mairu::before,
div.kamicha div.saki-card.tsuruta-himeko::before {
  transform: rotate(270deg) translateX(calc(-0.5 * var(--card-width)));
}
div.shimocha div.saki-card.shirouzu-mairu::after,
div.shimocha div.saki-card.tsuruta-himeko::after {
  transform: rotate(90deg) translateX(calc(0.5 * var(--card-width))) translateY(calc(0.5 * var(--card-height))) translateY(calc(1.5 * var(--tile-size)));
}
div.toimen div.saki-card.shirouzu-mairu::after,
div.toimen div.saki-card.tsuruta-himeko::after {
  transform: rotate(180deg) translateX(calc(1 * var(--card-width))) translateY(calc(0.5 * var(--card-height)));
}
div.kamicha div.saki-card.shirouzu-mairu::after,
div.kamicha div.saki-card.tsuruta-himeko::after {
  transform: rotate(270deg) translateX(calc(0.5 * var(--card-width))) translateY(calc(-0.5 * var(--card-height))) translateY(calc(1.5 * var(--tile-size)));
}
div.title {
  text-align: center;
  display: flex;
  column-gap: calc(2 * var(--tile-size));
  user-select: none;
}
div.title > div {
  position: absolute;
  z-index: 1;
  display: inline-block;
}
div.title > div.title-riichi {
  font-size: calc(3 * var(--tile-size));
  color: black;
  transform: rotate(2deg);
  top: 0;
  width: calc(10 * var(--tile-size));
  left: calc(2 * var(--tile-size));
}
div.title > div.title-advanced {
  font-size: calc(2 * var(--tile-size));
  color: black;
  transform: rotate(-10deg);
  left: calc(4.5 * var(--tile-size));
  top: calc(3 * var(--tile-size));
}
div.title > div.tile {
  --tile-scale-factor: 3;
  top: calc(0.6 * var(--tile-size));
}
div.title > div.tile.\38m {
  transform: rotate(10deg);
  left: calc(0.6 * var(--tile-size));
}
div.title > div.tile.\37z {
  transform: rotate(-10deg);
  right: calc(0.6 * var(--tile-size));
}
div.title > div.title-riichi::before,
div.title > div.title-advanced::before {
  position: absolute;
  content: "";
  width: 150%;
  height: 140%;
  left: -25%;
  bottom: -7.5%;
  z-index: -1;
}
div.title > div.title-riichi::before {
  background-image: url(/images/brush-bg.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: -1;
}
div.title > div.title-advanced::before {
  background-image: url(/images/brush-bg2.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  z-index: -1;
}
div#container > div.index-version {
  position: absolute;
  font-size: calc(0.5 * var(--tile-size));
  color: white;
  left: 0;
  bottom: 0;
}
div#container > div.index-bottom-buttons {
  position: absolute;
  right: 0;
  bottom: 0;
}
div#container > div.index-bottom-buttons > button {
  font-size: calc(0.5 * var(--tile-size));
}
div#container > form {
  position: absolute;
  width: calc(100% - 3 * var(--tile-size));
  height: calc(7.5 * var(--tile-size));
  top: calc(50% - 1.5 * var(--tile-size));
  left: calc(1 * var(--tile-size));
  padding: calc(0.5 * var(--tile-size));
  border-radius: calc(0.25 * var(--tile-size));
  background: #609060;
  color: white;
  font-size: calc(0.5 * var(--tile-size));
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: space-around;
}
div#container > form.ruleset-selection-form input,
div#container > form.ruleset-selection-form button {
  font-size: calc(0.75 * var(--tile-size));
}
div#container > form.ruleset-selection-form > div.form-error {
  font-size: calc(0.5 * var(--tile-size));
  color: white;
}
div#container > form.ruleset-selection-form > input.nickname-input {
  margin: calc(0.5 * var(--tile-size));
  font-size: calc(0.75 * var(--tile-size));
  height: 1em;
  margin-bottom: 0;
}
div#container > form.ruleset-selection-form > div.ruleset-selection {
  overflow-y: auto;
  line-height: 1;
  text-align: center;
  flex-grow: 1;
  color: white;
  font-size: calc(0.55 * var(--tile-size));
}
div#container > form.ruleset-selection-form > div.ruleset-selection > label {
  font-size: calc(0.55 * var(--tile-size));
  padding: calc(0.15 * var(--tile-size));
}
div#container > form.ruleset-selection-form > div.ruleset-selection > label > a {
  text-decoration: none;
  color: white;
  font-size: calc(0.55 * var(--tile-size));
}
div#container > form.ruleset-selection-form > div.ruleset-selection > input[disabled] + label {
  opacity: 0.4;
}
div#container > form.ruleset-selection-form > div.ruleset-selection > input[disabled] + label {
  opacity: 0.4;
}
div#container > form.log-selection-form {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
  row-gap: calc(0.25 * var(--tile-size));
}
div#container > form.log-selection-form > input,
div#container > form.log-selection-form > button {
  width: 100%;
}
div#container > form.about-page {
  position: absolute;
  margin: auto;
  width: calc(100% - 0.25 var(--tile-size));
  height: calc(7.5 * var(--tile-size));
  top: calc(50% - 1.5 * var(--tile-size));
  left: 0;
  padding: calc(0.5 * var(--tile-size));
  border-radius: calc(0.25 * var(--tile-size));
  background: #609060;
  color: white;
  font-size: calc(0.5 * var(--tile-size));
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: space-around;
  overflow-y: scroll;
}
div#container > form.about-page > ul.beta-testers {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  box-sizing: border-box;
  list-style-type: none;
  padding: 0;
  margin: 0.5em;
  user-select: text;
}
div#container > form.about-page > ul.beta-testers > li {
  padding: 0.1em 0.25em;
}
div#container > form.about-page > ul.beta-testers > li:nth-child(2n) {
  transform: translateY(-0.25em);
}
div#container div.enter-buttons {
  width: 100%;
  display: flex;
  flex-flow: row nowrap;
  justify-content: stretch;
  margin-top: calc(0.5 * var(--tile-size));
}
div#container div.enter-buttons > button {
  font-size: calc(0.6 * var(--tile-size));
  flex-grow: 1;
}
div.room-code-modal {
  position: absolute;
  border-radius: calc(0.25 * var(--tile-size));
  background: #3f3f3f;
  color: white;
  top: calc(6.5 * var(--tile-size));
  left: calc(0.75 * var(--tile-size));
  width: calc(14.5 * var(--tile-size));
  height: calc(7 * var(--tile-size));
  z-index: 5;
}
div.room-code-modal > div.room-code-display {
  display: inline-block;
  width: 100%;
  height: calc(1 * var(--tile-size));
  margin: calc(0.5 * var(--tile-size));
}
div.room-code-modal > div.room-code-display > div.tile {
  display: inline-block;
}
div.room-code-modal > div.room-code-buttons {
  text-align: center;
}
div.room-code-modal > div.room-code-buttons > button {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
}
div.lobby {
  display: flex;
  position: relative;
  flex-direction: column;
  row-gap: calc(0.25 * var(--tile-size));
  color: white;
}
div.lobby > header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: calc(0.5 * var(--tile-size));
  position: absolute;
  top: calc(-1 * var(--tile-size));
  width: 100%;
}
div.lobby > div.rooms {
  position: relative;
  padding: calc(0.5 * var(--tile-size));
  border-radius: calc(0.25 * var(--tile-size));
  background: #609060;
  width: calc(100% - 1 * var(--tile-size));
  height: calc(100% - 3 * var(--tile-size));
  top: calc(1 * var(--tile-size));
  left: calc(0 * var(--tile-size));
  display: flex;
  flex-direction: column;
  row-gap: calc(0.5 * var(--tile-size));
}
div.lobby > div.rooms {
  overflow-y: scroll;
  scrollbar-width: none;
}
div.lobby > div.rooms::-webkit-scrollbar {
  display: none;
}
div.lobby > div.rooms > div.lobby-room {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  font-size: calc(0.5 * var(--tile-size));
}
div.lobby > div.rooms > div.lobby-room > button.join-room {
  background: var(--tile-front-side);
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding-top: calc(0.25 * var(--tile-size));
}
div.lobby > div.rooms > div.lobby-room > div.room-mods {
  display: flex;
  flex-flow: row wrap;
  flex-grow: 1;
  padding: 0 calc(0.25 * var(--tile-size));
  align-items: center;
  column-gap: calc(0.25 * var(--tile-size));
}
div.lobby > div.rooms > div.lobby-room > div.room-players {
  font-size: calc(0.75 * var(--tile-size));
}
div.lobby > div.rooms > div.lobby-room > div.room-players > div.room-player-count {
  font-size: calc(1 * var(--tile-size));
}
div.lobby > div.rooms > div.lobby-room > div.room-players > div.room-started {
  font-size: calc(0.4 * var(--tile-size));
}
div.room {
  position: relative;
  row-gap: calc(0.25 * var(--tile-size));
  font-size: calc(1 * var(--tile-size));
  color: white;
}
div.room > header {
  display: flex;
  flex-flow: column nowrap;
  align-items: flex-end;
  column-gap: calc(0.5 * var(--tile-size));
  position: absolute;
  top: 0;
  width: 100%;
  height: calc(3 * var(--tile-size));
  font-size: calc(1 * var(--tile-size));
}
div.room > header > div.room-header-title {
  width: 100%;
  margin: 0;
  white-space: nowrap;
  font-size: calc(0.75 * var(--tile-size));
  font-weight: bold;
}
div.room > header > div.room-header-bottom {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  height: 100%;
  column-gap: calc(0.5 * var(--tile-size));
  font-size: calc(1 * var(--tile-size));
  margin-top: calc(-1 * var(--tile-size));
  & > div.session {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    border: calc(0.05 * var(--tile-size)) solid white;
    padding: calc(0.25 * var(--tile-size));
    border-radius: calc(0.5 * var(--tile-size));
    position: relative;
    & > div.room-code-text {
      position: absolute;
      white-space: nowrap;
      font-size: calc(0.5 * var(--tile-size));
      inset: calc(1.5 * var(--tile-size)) 0 0 0;
      text-align: center;
    }
    & > div.tile {
      transform: translateY(calc(0.125 * var(--tile-size)));
    }
  }
  & > label.private-toggle-label {
    font-size: calc(0.875 * var(--tile-size));
    line-height: 1;
    margin-bottom: calc(-0.5 * var(--tile-size));
    padding: calc(0.25 * var(--tile-size));
    width: 8ex;
  }
  & svg {
    vertical-align: sub;
  }
  & > div.room-header-right {
    height: 100%;
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    align-items: flex-end;
    & > a {
      white-space: nowrap;
      color: white;
      right: 0;
    }
    & > label.room-settings-toggle {
      background: none;
      text-decoration: underline;
      padding: 0;
    }
  }
}
div.room div.tips-component {
  position: absolute;
  width: 100%;
  bottom: 0;
  cursor: pointer;
}
div.room div.room-settings {
  position: relative;
  padding: calc(0.5 * var(--tile-size));
  border-radius: calc(0.25 * var(--tile-size));
  background-color: #609060;
  width: calc(100% - 3 * var(--tile-size));
  left: calc(1 * var(--tile-size));
  z-index: 1;
  flex-shrink: 0;
}
div.room > div.room-settings {
  display: none;
}
div.room > input#room-settings-toggle:checked + div.room-settings {
  display: block;
  position: absolute;
  width: calc(100% - 1 * var(--tile-size));
  height: calc(100% - 4.25 * var(--tile-size));
  left: 0;
  top: calc(3.25 * var(--tile-size));
  z-index: 2;
  overflow-y: auto;
}
div.room > div.seats {
  position: relative;
  padding: calc(0.5 * var(--tile-size));
  width: calc(100% - 1 * var(--tile-size));
  top: calc(3.5 * var(--tile-size));
  left: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  row-gap: calc(0.125 * var(--tile-size));
}
div.room > div.seats > div.player-slot {
  display: flex;
  flex-direction: row;
  column-gap: calc(0.125 * var(--tile-size));
  position: relative;
  height: calc(1.5 * var(--tile-size));
}
div.room > div.room-settings button {
  transform: translateY(calc(-0.25 * var(--tile-size)));
}
div.room > div.room-settings button:active {
  transform: translateY(calc(-0.125 * var(--tile-size)));
}
div.room > div.seats > div.player-slot > div.player-slot-label,
div.room > div.seats > div.player-slot > div.player-slot-name {
  font-size: calc(1 * var(--tile-size));
  color: white;
}
div.room > div.seats > div.player-slot > div.player-slot-label {
  background-color: #0000003F;
  width: calc(1.5 * var(--tile-size));
  height: calc(1.5 * var(--tile-size));
  text-align: center;
}
div.room > div.seats > div.player-slot > div.player-slot-name {
  flex-grow: 1;
  text-align: left;
  padding-left: calc(0.125 * var(--tile-size));
  background-color: #0000003F;
  cursor: pointer;
}
div.room > div.seats > div.player-slot > div.player-slot-name.empty {
  opacity: 0.5;
}
div.room > div.seats > div.player-slot > button,
div.room > div.seats > label.shuffle-seats,
div.room > div.seats > button.start-game-button {
  font-size: calc(1 * var(--tile-size));
}
div.room > div.seats > div.player-slot > button {
  width: calc(1.2 * var(--tile-size));
  height: calc(1.2 * var(--tile-size));
}
div.room div.presets,
div.mods,
div.room div.config,
div.room div.custom-json {
  top: calc(3 * var(--tile-size));
  height: calc(10 * var(--tile-size));
  font-size: calc(0.5 * var(--tile-size));
}
div.room label.room-tab-title {
  font-size: calc(1 * var(--tile-size));
  text-align: center;
}
div.room div.presets {
  margin-top: calc(0.5 * var(--tile-size));
  font-size: calc(0.75 * var(--tile-size));
}
div.mods > div.mods-inner-container {
  display: flex;
  flex-flow: row wrap;
  row-gap: calc(0.0625 * var(--tile-size));
  column-gap: calc(0.125 * var(--tile-size));
  justify-content: flex-start;
  align-items: flex-start;
}
div.mods {
  padding-top: calc(0.25 * var(--tile-size));
  padding-bottom: calc(0.25 * var(--tile-size));
}
div.mods.mods-saki > div.mods-inner-container {
  width: 100%;
  padding-right: 100%;
}
div.mods > div.mods-inner-container > div.mod-category,
div.mods > div.mods-inner-container > div.mod-category-spacer {
  width: 100%;
  min-height: 0.5em;
  margin-left: -0.5em;
}
div.mods > div.mods-inner-container button.mod-menu-button {
  font-size: 75%;
}
div.mods > div.mods-inner-container div.mods-bottom-buttons {
  width: 100%;
  text-align: center;
}
div.room div.config > textarea,
div.room div.custom-json > textarea {
  font-size: calc(0.25 * var(--tile-size));
}
div.room div.custom-json > textarea {
  position: absolute;
  width: calc(100% - 0.5 * var(--tile-size));
  height: calc(100% - 0.5 * var(--tile-size));
  top: calc(0.25 * var(--tile-size));
  left: calc(0.25 * var(--tile-size));
}
div.room-settings > input[type=radio] {
  display: none;
}
div.room-settings > input[type=radio] + label {
  margin: auto;
}
div.room-settings > input:not(:checked) + label {
  opacity: 0.5;
}
div.room-settings > input#presets-tab:not(:checked) ~ div.presets,
div.room-settings > input#mods-tab:not(:checked) ~ div.mods,
div.room-settings > input#config-tab:not(:checked) ~ div.config {
  display: none;
}
div.config {
  width: 100%;
  height: 100%;
  font-size: calc(0.25 * var(--tile-size));
}
label.mod {
  flex-shrink: 1;
  display: flex;
  flex-direction: row;
  align-items: center;
}
div.mods > div.mods-inner-container span.mod-config-name {
  font-size: 67%;
  margin: 0 calc(0.0625 * var(--tile-size));
}
div.mods > div.mods-inner-container form.mod-config-dropdown {
  margin: 0;
  display: flex;
}
div.mods > div.mods-inner-container form.mod-config-dropdown > select {
  -webkit-appearance: none;
  font-size: 67%;
  background-color: var(--tile-front);
  border: none;
  border-radius: calc(0.125 * var(--tile-size));
  padding: calc(0.0625 * var(--tile-size));
  margin: 0;
  min-width: calc(1 * var(--tile-size));
  text-align: center;
}
div.mods > div.mods-inner-container form.mod-config-slider {
  display: flex;
  flex-flow: column;
  height: 100%;
  --thumb-size: calc(0.4 * var(--tile-size));
}
div.mods > div.mods-inner-container form.mod-config-slider > input {
  -webkit-appearance: none;
  width: calc(3 * var(--tile-size));
  height: 0.5em;
  background: transparent;
  margin: 0 calc(0.5 * var(--thumb-size));
  border-radius: calc(0.5 * var(--thumb-size));
  background: var(--tile-front);
  z-index: 1;
}
div.mods > div.mods-inner-container form.mod-config-slider > input::-webkit-slider-thumb,
div.mods > div.mods-inner-container form.mod-config-slider > input::-moz-range-thumb {
  width: var(--thumb-size);
  height: var(--thumb-size);
  border-radius: 50%;
  border-width: calc(0.05 * var(--tile-size));
  border-color: black;
  cursor: pointer;
}
div.mods > div.mods-inner-container form.mod-config-slider > input::-webkit-slider-runnable-track,
div.mods > div.mods-inner-container form.mod-config-slider > input::-moz-range-track {
  -webkit-appearance: none;
  width: calc(100% - var(--thumb-size));
  height: calc(0.5 * var(--thumb-size));
  border-radius: calc(0.5 * var(--thumb-size));
  background: var(--tile-front);
  z-index: 1;
}
div.mods > div.mods-inner-container form.mod-config-slider > datalist {
  display: flex;
  flex-direction: row;
  writing-mode: horizontal-tb;
  font-size: 50%;
  height: 0.5em;
}
div.mods > div.mods-inner-container form.mod-config-slider > datalist > option {
  margin: auto;
}
div#container > input.expand-checkbox + label {
  position: absolute;
  font-size: calc(0.6 * var(--tile-size));
  color: white;
  border-radius: 50%;
  width: calc(1 * var(--tile-size));
  aspect-ratio: 1/1;
  border: none;
  padding: 0;
  z-index: 3;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: top 0.5s, right 0.5s;
}
div#container > input.expand-checkbox.for-rulesets + label {
  right: calc(0.5 * var(--tile-size));
  top: calc(5.875 * var(--tile-size));
}
div#container > input.expand-checkbox.for-rulesets:checked + label {
  top: calc(0.375 * var(--tile-size));
}
div#container > input.expand-checkbox.for-mods + label {
  right: calc(0.5 * var(--tile-size));
  top: calc(4.625 * var(--tile-size));
}
div#container > input.expand-checkbox.for-mods:checked + label {
  right: calc(-0.5 * var(--tile-size));
  top: calc(0.375 * var(--tile-size));
}
div#container > input.expand-checkbox + label::before {
  content: "+";
}
div#container > input.expand-checkbox:checked + label::before {
  content: "\2013";
}
div#container > form,
div#container > div.mods,
div#container > div.custom-json {
  transition:
    width 0.5s,
    height 0.5s,
    top 0.5s,
    left 0.5s;
}
div#container > input.expand-checkbox:checked ~ form {
  height: calc(13 * var(--tile-size));
  top: calc(50% - 7 * var(--tile-size));
}
div#container > input.expand-checkbox:checked ~ div.mods,
div#container > input.expand-checkbox:checked ~ div.custom-json {
  height: calc(100% - 1.5 * var(--tile-size));
  width: calc(100% - 1 * var(--tile-size));
  top: calc(-1.25 * var(--tile-size));
  left: calc(0 * var(--tile-size));
}
div.top-right-container {
  height: var(--tile-size);
  position: absolute;
  top: calc(-1.5 * var(--tile-size));
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  column-gap: calc(0.25 * var(--tile-size));
  z-index: -1;
}
div.menu-buttons {
  display: flex;
  flex-direction: row-reverse;
  column-gap: calc(0.25 * var(--tile-size));
}
div.menu-buttons > button.language-dropdown-container {
  position: relative;
}
div.menu-buttons > button.language-dropdown-container form.language-dropdown > select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: none;
  border: none;
  color: transparent;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
div.menu-buttons > button.language-dropdown-container form.language-dropdown {
  position: absolute;
  top: 0;
  left: 0;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: none;
  border: none;
  color: transparent;
  height: 120%;
  cursor: pointer;
}
div.menu-buttons > button.language-dropdown-container form.language-dropdown select#language-dropdown option {
  color: black;
}
div.menu-buttons > button.language-dropdown-container form.language-dropdown + div {
  pointer-events: none;
  height: 100%;
  aspect-ratio: 1/1;
}
@media (min-aspect-ratio: 6/5) {
  div.top-right-container {
    width: min(50%, calc(40vw - 20% - 0.5 * var(--tile-size)));
    left: calc(100% + var(--tile-size));
  }
}
@media (max-aspect-ratio: 6/5) {
  div.top-right-container {
    width: calc(100% + var(--tile-size));
    right: calc(-0.5 * var(--tile-size));
  }
}
div.menu-buttons > button {
  height: calc(0.8 * var(--tile-size));
  font-size: calc(0.5 * var(--tile-size));
}
@media (min-aspect-ratio: 6/5) {
  div.centerpiece-status-bar {
    display: none;
  }
}
div.centerpiece-status-bar {
  margin-right: calc(2 * var(--tile-size));
  width: calc(1.5 * var(--tile-size));
  color: white;
  transform: translateY(calc(-0.5 * var(--tile-size))) scale(2);
}
div.centerpiece-status-bar > div.tiles-left {
  position: absolute;
  font-size: calc(0.4 * var(--tile-size));
  right: calc(-0.6 * var(--tile-size));
  padding-left: calc(0.1 * var(--tile-size));
  bottom: 0;
  border-left: calc(0.02 * var(--tile-size)) solid white;
}
div.top-right-container > div.menu-buttons:not(:nth-last-child(1)),
div.top-right-container > div.centerpiece-status-bar:not(:nth-last-child(2)),
div.visible-waits-container > div.menu-buttons,
div.visible-waits-container > div.centerpiece-status-bar,
div.display-am-hand-container > div.menu-buttons,
div.display-am-hand-container > div.centerpiece-status-bar {
  display: none;
}
div.log-control {
  background: var(--tile-back);
  position: absolute;
  bottom: calc(2.25 * var(--tile-size));
  right: calc(3.5 * var(--tile-size));
  width: calc(3 * var(--tile-size));
  height: calc(1 * var(--tile-size));
  border-radius: calc(0.25 * var(--tile-size));
  z-index: 5;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
}
div.log-control > button.log-control-button {
  height: calc(0.8 * var(--tile-size));
  background: transparent;
  padding: 0;
  transform: translateY(0);
  filter: none;
}
div.tutorial-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 100;
  pointer-events: none;
}
div.tutorial-overlay-objects {
  position: relative;
  margin-left: calc(-0.5 * var(--tile-size));
  margin-top: calc(-0.5 * var(--tile-size));
  width: calc(100% + 1 * var(--tile-size));
  height: calc(100% + 1 * var(--tile-size));
}
div.tutorial-overlay-objects.awaiting-click {
  pointer-events: initial;
}
div.tutorial-text {
  position: absolute;
  width: calc(var(--width) * var(--tile-size));
  left: calc(var(--x) * var(--tile-size));
  top: calc(var(--y) * var(--tile-size));
  color: black;
  background: var(--tile-front);
  border-radius: calc(0.5 * var(--tile-size));
  font-size: calc(var(--size) * var(--tile-size));
  padding: calc(0.25 * var(--tile-size));
  filter: drop-shadow(0 calc(var(--tile-size) / 16) 0 var(--tile-back-side));
  z-index: 1;
}
div.tutorial-text > p:first-child {
  margin-top: 0;
}
div.tutorial-text > p:last-child {
  margin-bottom: 0;
}
div.tutorial-focus {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0.5;
  background: black;
  mask-composite: intersect;
}
div.tutorial-focus.mobile {
  display: none;
}
@media (max-aspect-ratio: 6/5) {
  input.mobile-zoom-checkbox:not(:checked) ~ div.tutorial-overlay div.tutorial-focus.desktop {
    display: none;
  }
  input.mobile-zoom-checkbox:not(:checked) ~ div.tutorial-overlay div.tutorial-focus.mobile {
    display: block;
  }
}
header.tutorial-menu-header {
  color: white;
  width: 100%;
  top: calc(-0.5 * var(--tile-size));
  font-size: calc(0.6 * var(--tile-size));
}
header.tutorial-menu-header > h3 {
  font-size: calc(0.8 * var(--tile-size));
  font-weight: 400;
  white-space: nowrap;
  margin: 0;
}
div.tutorial-menu-container,
div.tutorial-menu-buttons {
  font-size: calc(0.6 * var(--tile-size));
  color: white;
  overflow-y: scroll;
  scrollbar-width: none;
  flex-grow: 1;
  background: #609060;
  border-radius: calc(0.5 * var(--tile-size));
  padding: calc(0.5 * var(--tile-size));
}
div.tutorial-menu-container {
  margin: calc(0.5 * var(--tile-size)) 0;
}
div.tutorial-menu-buttons {
  display: flex;
  flex-flow: column nowrap;
  justify-content: flex-start;
  align-items: center;
  margin-top: calc(-0.5 * var(--tile-size));
}
div.tutorial-menu-container::-webkit-scrollbar,
div.tutorial-menu-buttons::-webkit-scrollbar {
  display: none;
}
div.tutorial-menu-buttons > button {
  height: calc(2 * var(--tile-size));
  margin: calc(0.5 * var(--tile-size));
  padding: calc(0.5 * var(--tile-size));
  font-size: calc(0.6 * var(--tile-size));
}
footer.tutorial-menu-footer,
footer.tutorial-menu-footer > button {
  width: 100%;
}
div#container > form.tutorial-menu-container {
  top: 0;
  left: 0;
  width: calc(100% - var(--tile-size));
  height: calc(100% - var(--tile-size));
  transition: none;
  display: flex;
  flex-direction: column;
  row-gap: calc(0.5 * var(--tile-size));
}
form.tutorial-menu-container > header {
  display: flex;
  flex-flow: row nowrap;
  height: calc(1.5 * var(--tile-size));
  align-items: stretch;
  column-gap: calc(0.25 * var(--tile-size));
}
form.tutorial-menu-container > header > select.ruleset-dropdown {
  font-size: calc(0.6 * var(--tile-size));
  background-color: var(--tile-front);
  border: none;
  border-radius: calc(0.25 * var(--tile-size));
  flex-grow: 1;
}
form.tutorial-menu-container > header > label {
  font-size: calc(1 * var(--tile-size));
}
form.tutorial-menu-container > textarea {
  font-size: calc(0.25 * var(--tile-size));
}
div.majstest-container > label {
  position: absolute;
  top: 0;
  right: 0;
}
div.majstest-container > form {
  display: flex;
  flex-direction: column;
  row-gap: calc(0.25 * var(--tile-size));
  padding: calc(0.25 * var(--tile-size)) 0;
}
div.majstest-container > form > select {
  font-size: calc(0.6 * var(--tile-size));
  background-color: var(--tile-front);
  border: none;
  border-radius: calc(0.25 * var(--tile-size));
  flex-grow: 1;
}
div.majstest-container > form > textarea {
  height: calc(5.25 * var(--tile-size));
  font-size: calc(0.25 * var(--tile-size));
  border-width: calc(0.05 * var(--tile-size));
}
div.majstest-container > form > button {
  width: 100%;
}
div.majstest-container > div.mods-container {
  display: none;
  position: absolute;
  width: 100%;
  height: calc(100% - 0.75 * var(--tile-size));
  border-radius: calc(0.25 * var(--tile-size));
  padding: calc(0.5 * var(--tile-size));
  top: calc(0.75 * var(--tile-size));
  left: 0;
  background: #609060;
  box-sizing: border-box;
  overflow-y: scroll;
  z-index: 2;
}
div.majstest-container > input.show-mods-checkbox:checked ~ div.mods-container {
  display: block;
}
/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vYXNzZXRzL2Nzcy9hcHAuY3NzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJodG1sLCBib2R5IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBBdmVuaXIsIE1vbnRzZXJyYXQsIENvcmJlbCwgXCJVUlcgR290aGljXCIsIHNvdXJjZS1zYW5zLXBybywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTsgLyogRmlyZWZveCAqL1xufVxuYm9keTo6YWZ0ZXIge1xuICAvKiByZXF1aXJlZCBzaW5jZSBjaHJvbWUgZmFpbHMgdG8gb3ZlcmZsb3cgaHRtbC9ib2R5XG4gICAgIHRvIGFjY29tbW9kYXRlIGFic29sdXRlbHkgcG9zaXRpb25lZCBlbGVtZW50cyAqL1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgKDYgKiB2YXIoLS10aWxlLXNpemUpKSk7XG59XG4vKiBsYW5kc2NhcGUgKi9cbkBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzogNi81KSB7XG4gIGh0bWwsIGJvZHkge1xuICAgIC8qIDE2ICh0YWJsZSBoZWlnaHQpXG4gICAgICArIDEgKHRhYmxlIG1hcmdpbilcbiAgICArIDEuNSAodG9wIG1hcmdpbilcbiAgICArIDEuNSAoYm90dG9tIG1hcmdpbilcbiAgICA9IDIwICovXG4gICAgLS10aWxlLXNpemU6IGNhbGMoMTAwdmggLyAyMCk7XG4gIH1cbiAgYm9keSA+IGRpdiB7XG4gICAgbWFyZ2luOiAwIGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIH1cbn1cbi8qIHBvcnRyYWl0IChtb2JpbGUpICovXG5AbWVkaWEgKG1heC1hc3BlY3QtcmF0aW86IDYvNSkge1xuICBodG1sLCBib2R5IHtcbiAgICAvKiAxNiAodGFibGUgd2lkdGgvaGVpZ2h0KVxuICAgICAgKyAxICh0YWJsZSBtYXJnaW4pXG4gICAgICArIDEgKGxlZnQgbWFyZ2luKVxuICAgICAgKyAxIChyaWdodCBtYXJnaW4pXG4gICAgID0gMTkgKi9cbiAgICAtLXRpbGUtc2l6ZTogbWluKGNhbGMoMTAwdncgLyAxOSksIGNhbGMoODB2aCAvIDE5KSk7XG4gIH1cbn1cblxuaHRtbDo6LXdlYmtpdC1zY3JvbGxiYXIsIGJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFyIHsgXG4gIGRpc3BsYXk6IG5vbmU7IC8qIFNhZmFyaS9DaHJvbWUgKi9cbn1cbm1haW4ge1xuICBoZWlnaHQ6IGNhbGMoMTYgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gIG1hcmdpbjogY2FsYygyICogdmFyKC0tdGlsZS1zaXplKSkgYXV0bztcbiAgLS10aWxlLWZyb250OiAjZjRmMGViO1xuICAtLXRpbGUtZnJvbnQtc2lkZTogI2VlZTRkODtcbiAgLS10aWxlLWJhY2s6ICNmMDk3NGM7XG4gIC0tdGlsZS1iYWNrLXNpZGU6ICNmMDk3NGM7XG4gIC0tYmctY29sb3I6ICMwZjZmMmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5tYWluOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygtMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGxlZnQ6IGNhbGMoLTAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB3aWR0aDogY2FsYygxMDAlICsgdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogY2FsYygxMDAlICsgdmFyKC0tdGlsZS1zaXplKSk7XG4gIHotaW5kZXg6IC0xO1xufVxubWFpbiBkaXYjY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgY29udGFpbjogbGF5b3V0OyAvKiBtYWtlIHtwb3NpdGlvbjogZml4ZWQ7fSBlbGVtZW50cyByZWxhdGl2ZSB0byB0aGlzICovXG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4vKiBsYW5kc2NhcGUgKi9cbkBtZWRpYSAobWluLWFzcGVjdC1yYXRpbzogNi81KSB7XG4gIG1haW46OmJlZm9yZSB7XG4gICAgbGVmdDogY2FsYygtMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIH1cbiAgbWFpbiBkaXYjY29udGFpbmVyIHtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi8qIGFsbCB0b29sdGlwczogaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzYwNjYwMjA3ICovXG5AbWVkaWEgKHBvaW50ZXI6IGNvYXJzZSksIChob3Zlcjogbm9uZSkge1xuICBsYWJlbFtkYXRhLW5hbWVdW3RpdGxlXTpub3QoLnNha2ktY2FyZCk6Zm9jdXM6OmJlZm9yZSxcbiAgbGFiZWxbZGF0YS1uYW1lXVt0aXRsZV06bm90KC5zYWtpLWNhcmQpOmZvY3VzOjphZnRlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGVmdDogY2FsYygxICogdmFyKC0tdGlsZS1zaXplKSk7XG4gICAgY29sb3I6IHZhcigtLXRpbGUtZnJvbnQpO1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyICogdmFyKC0tdGlsZS1zaXplKSk7XG4gICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICBwYWRkaW5nOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgfVxuICBsYWJlbFtkYXRhLW5hbWVdW3RpdGxlXTpub3QoLnNha2ktY2FyZCk6Zm9jdXM6OmJlZm9yZSB7XG4gICAgY29udGVudDogYXR0cihkYXRhLW5hbWUpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygwLjc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gICAgdG9wOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgICBib3JkZXItcmFkaXVzOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpIGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSkgMCAwO1xuICB9XG4gIGxhYmVsW2RhdGEtbmFtZV1bdGl0bGVdOm5vdCguc2FraS1jYXJkKTpmb2N1czo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIodGl0bGUpO1xuICAgIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgICB0b3A6IGNhbGMoMS41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSkgY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gIH1cbn1cblxuLyogZ2xvYmFsIHN0eWxlcyAqL1xuXG4vKiB0b2dnbGUgYnV0dG9ucyAqL1xuaW5wdXRbdHlwZT1cInJhZGlvXCJdLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0geyBkaXNwbGF5OiBub25lOyB9XG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogZ3JheTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjEyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBwYWRkaW5nOiAwIGNhbGMoMC4xMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuaW5wdXQgKyBsYWJlbCB7IGJhY2tncm91bmQ6IGdyYXk7IH1cbmlucHV0OmNoZWNrZWQgKyBsYWJlbCB7IGJhY2tncm91bmQ6IHZhcigtLXRpbGUtYmFjayk7IH1cbi8qIHRleHRhcmVhcyAqL1xudGV4dGFyZWEge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjM2YzZjNmO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTsgLyogRmlyZWZveCAqL1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdGlsZS1zaXplKSAvIDMpO1xufVxudGV4dGFyZWE6Oi13ZWJraXQtc2Nyb2xsYmFyIHsgXG4gIGRpc3BsYXk6IG5vbmU7IC8qIFNhZmFyaS9DaHJvbWUgKi9cbn1cbi8qIGJ1dHRvbnMgKi9cbmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRpbGUtZnJvbnQpO1xuICBjb2xvcjogYmxhY2s7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IGNhbGMoMC43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIGNhbGModmFyKC0tdGlsZS1zaXplKSAvIDgpIDAgdmFyKC0tdGlsZS1mcm9udC1zaWRlKSlcbiAgICAgICAgICBkcm9wLXNoYWRvdygwIGNhbGModmFyKC0tdGlsZS1zaXplKSAvIDgpIDAgdmFyKC0tdGlsZS1iYWNrLXNpZGUpKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKHZhcigtLXRpbGUtc2l6ZSkgLyAtOCkpO1xufVxuYnV0dG9uOmFjdGl2ZSB7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMCBjYWxjKHZhcigtLXRpbGUtc2l6ZSkgLyA4KSAwIHZhcigtLXRpbGUtZnJvbnQtc2lkZSkpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5idXR0b246YWN0aXZlOjpiZWZvcmUsXG5idXR0b246YWN0aXZlOjpiZWZvcmUge1xuICAvKiBhZGQgYSBjbGlja2FibGUgYXJlYSBhYm92ZSB0aGUgYnV0dG9uICovXG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMC4xMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdG9wOiBjYWxjKC0wLjEyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiAwO1xufVxuXG4vKiBoYW5kcyAqL1xuZGl2LmhhbmQsIGRpdi50aWxlcywgZGl2LmNhbGxzLCBkaXYuZmxvd2VycywgZGl2LmNhbGwsIGRpdi5kcmF3cywgZGl2LmJ1dHRvbnMsIGRpdi5jYWxsLWJ1dHRvbnMsIGJ1dHRvbi5jYWxsLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5kaXYuaGFuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDIgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5zZWxmIHsgei1pbmRleDogMTsgfSAvKiB5b3VyIHN0dWZmIGdvZXMgYWJvdmUgb3RoZXIgcGVvcGxlJ3Mgc3R1ZmYgKi9cbmRpdi5oYW5kLCBkaXYuZHJhd3MgeyB6LWluZGV4OiAyOyB9IC8qIHNvIGlmIHRoZXkgb3ZlcmxhcCB3aXRoIGNhbGxzLCB0aGUgaGFuZCBnb2VzIG9uIHRvcCAqL1xuZGl2LmhhbmQuc2VsZiwgZGl2LmRyYXdzLnNlbGYgeyB6LWluZGV4OiAzOyB9IC8qIHlvdXIgc3R1ZmYgZ29lcyBhYm92ZSBvdGhlciBwZW9wbGUncyBzdHVmZiAqL1xuZGl2LnRpbGVzLCBkaXYuY2FsbC5hc2lkZSB7XG4gIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlO1xuICByb3ctZ2FwOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbWF4LXdpZHRoOiBjYWxjKDE3LjUgKiAwLjc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYuY2FsbC5hc2lkZSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIG1heC13aWR0aDogY2FsYyg1LjUgKiAwLjc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYuY2FsbHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMDtcbn1cbmRpdi5jYWxsIHtcbiAgLyogd2UgbmVlZCB0aGlzIHNpbmNlIHRoZSBjYWxscyBjb250YWluZXIgaXMgemVybyB3aWR0aCAqL1xuICBmbGV4LXNocmluazogMDtcbn1cbmRpdi5mbG93ZXJzIHtcbiAgcmlnaHQ6IGNhbGMoMS4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBib3R0b206IGNhbGMoMS4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB6LWluZGV4OiAtMjtcbn1cbi8qIHJldmVyc2UgdGhlIHotaW5kZXggb2YgY2FsbHMgc28gdGhleSBvdmVybGFwIGNvcnJlY3RseSAqL1xuZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCgxKSB7IHotaW5kZXg6IC0xOyB9XG5kaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDIpIHsgei1pbmRleDogLTI7IH1cbmRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoMykgeyB6LWluZGV4OiAtMzsgfVxuZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCg0KSB7IHotaW5kZXg6IC00OyB9XG5kaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDUpIHsgei1pbmRleDogLTU7IH1cbmRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoNikgeyB6LWluZGV4OiAtNjsgfVxuZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCg3KSB7IHotaW5kZXg6IC03OyB9XG5kaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDgpIHsgei1pbmRleDogLTg7IH1cbmRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoOSkgeyB6LWluZGV4OiAtOTsgfVxuZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCgxMCkgeyB6LWluZGV4OiAtMTA7IH1cbmRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoMTEpIHsgei1pbmRleDogLTExOyB9XG5kaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDEyKSB7IHotaW5kZXg6IC0xMjsgfVxuZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCgxMykgeyB6LWluZGV4OiAtMTM7IH1cbmRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoMTQpIHsgei1pbmRleDogLTE0OyB9XG5kaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDE1KSB7IHotaW5kZXg6IC0xNTsgfVxuZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCgxNikgeyB6LWluZGV4OiAtMTY7IH1cbmRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoMTcpIHsgei1pbmRleDogLTE3OyB9XG5kaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDE4KSB7IHotaW5kZXg6IC0xODsgfVxuZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCgxOSkgeyB6LWluZGV4OiAtMTk7IH1cbmRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoMjApIHsgei1pbmRleDogLTIwOyB9XG5kaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDIxKSB7IHotaW5kZXg6IC0yMTsgfVxuZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCgyMikgeyB6LWluZGV4OiAtMjI7IH1cbmRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoMjMpIHsgei1pbmRleDogLTIzOyB9XG5kaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDI0KSB7IHotaW5kZXg6IC0yNDsgfVxuLyogc2hpbW9jaGEncyBjYWxscyBvdmVybGFwIGluIHRoZSByZXZlcnNlIG9yZGVyICovXG5kaXYuc2hpbW9jaGEgZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCgxKSB7IHotaW5kZXg6IC0yNDsgfVxuZGl2LnNoaW1vY2hhIGRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoMikgeyB6LWluZGV4OiAtMjM7IH1cbmRpdi5zaGltb2NoYSBkaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDMpIHsgei1pbmRleDogLTIyOyB9XG5kaXYuc2hpbW9jaGEgZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCg0KSB7IHotaW5kZXg6IC0yMTsgfVxuZGl2LnNoaW1vY2hhIGRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoNSkgeyB6LWluZGV4OiAtMjA7IH1cbmRpdi5zaGltb2NoYSBkaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDYpIHsgei1pbmRleDogLTE5OyB9XG5kaXYuc2hpbW9jaGEgZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCg3KSB7IHotaW5kZXg6IC0xODsgfVxuZGl2LnNoaW1vY2hhIGRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoOCkgeyB6LWluZGV4OiAtMTc7IH1cbmRpdi5zaGltb2NoYSBkaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDkpIHsgei1pbmRleDogLTE2OyB9XG5kaXYuc2hpbW9jaGEgZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCgxMCkgeyB6LWluZGV4OiAtMTU7IH1cbmRpdi5zaGltb2NoYSBkaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDExKSB7IHotaW5kZXg6IC0xNDsgfVxuZGl2LnNoaW1vY2hhIGRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoMTIpIHsgei1pbmRleDogLTEzOyB9XG5kaXYuc2hpbW9jaGEgZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCgxMykgeyB6LWluZGV4OiAtMTI7IH1cbmRpdi5zaGltb2NoYSBkaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDE0KSB7IHotaW5kZXg6IC0xMTsgfVxuZGl2LnNoaW1vY2hhIGRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoMTUpIHsgei1pbmRleDogLTEwOyB9XG5kaXYuc2hpbW9jaGEgZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCgxNikgeyB6LWluZGV4OiAtOTsgfVxuZGl2LnNoaW1vY2hhIGRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoMTcpIHsgei1pbmRleDogLTg7IH1cbmRpdi5zaGltb2NoYSBkaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDE4KSB7IHotaW5kZXg6IC03OyB9XG5kaXYuc2hpbW9jaGEgZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCgxOSkgeyB6LWluZGV4OiAtNjsgfVxuZGl2LnNoaW1vY2hhIGRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoMjApIHsgei1pbmRleDogLTU7IH1cbmRpdi5zaGltb2NoYSBkaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDIxKSB7IHotaW5kZXg6IC00OyB9XG5kaXYuc2hpbW9jaGEgZGl2LmNhbGxzID4gZGl2Om50aC1jaGlsZCgyMikgeyB6LWluZGV4OiAtMzsgfVxuZGl2LnNoaW1vY2hhIGRpdi5jYWxscyA+IGRpdjpudGgtY2hpbGQoMjMpIHsgei1pbmRleDogLTI7IH1cbmRpdi5zaGltb2NoYSBkaXYuY2FsbHMgPiBkaXY6bnRoLWNoaWxkKDI0KSB7IHotaW5kZXg6IC0xOyB9XG5kaXYuY2FsbCwgZGl2LmRyYXdzLCBkaXYud2lubmluZy10aWxlLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDAuMzc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYud2lubmluZy10aWxlLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmRpdi53aW5uaW5nLXRpbGUtdGV4dCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogNTAwJTtcbiAgZm9udC1zaXplOiBjYWxjKDAuNCAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0b3A6IGNhbGMoLTAuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogLTIwMCU7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbmRpdi5oYW5kLnNlbGYge1xuICBib3R0b206IDA7XG59XG5kaXYuaGFuZC5zZWxmID4gZGl2LnRpbGVzID4gZGl2LnRpbGUsXG5kaXYuaGFuZC5zZWxmID4gZGl2LmRyYXdzID4gZGl2LnRpbGUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5kaXYuaGFuZC5zaGltb2NoYSB7XG4gIHJpZ2h0OiB2YXIoLS10aWxlLXNpemUpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgcmlnaHQ7XG59XG5kaXYuaGFuZC50b2ltZW4ge1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5kaXYuaGFuZC5rYW1pY2hhIHtcbiAgbGVmdDogdmFyKC0tdGlsZS1zaXplKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZVgoY2FsYygyICogdmFyKC0tdGlsZS1zaXplKSkpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbn1cbmRpdi5oYW5kLnNlbGYge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygyICogdmFyKC0tdGlsZS1zaXplKSkpO1xufVxuZGl2LmNhbGxzOmhvdmVyIHsgei1pbmRleDogMTAwOyB9XG5kaXYuZHJhd3M6OmJlZm9yZSwgZGl2LnRpbGVzOmhvdmVyOjpiZWZvcmUsIGRpdi5jYWxsczpob3Zlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoLTAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSArIDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbi8qIHRvaW1lbidzIGhhbmQgY292ZXJzIHNoaW1vJ3MgY2FsbHMgKi9cbi8qIGJ1dCBpZiB3ZSBsb3dlciBpdHMgei1pbmRleCwgdGhlbiB0b2ltZW4ncyBjYWxscyBhcmUgY292ZXJlZCBieSBrYW1pICovXG4vKiBiZXN0IHdheSB0byBtYWtlIHNoaW1vJ3MgZGlzY2FyZHMgY2xpY2thYmxlIGlzIHRvIHotZmlnaHQgKi9cbmRpdi5oYW5kLnRvaW1lbjpob3ZlciB7IHotaW5kZXg6IC0xOyB9XG4vKiBzaGltbyB1c2VzIG5lZ2F0aXZlIHotaW5kZXggc28gd2UgbmVlZCB0byBkbyBzb21lIHdlaXJkbmVzcyAqL1xuZGl2LmhhbmQuc2hpbW9jaGEgZGl2LnRpbGVzOmhvdmVyOjpiZWZvcmUsXG5kaXYuaGFuZC5zaGltb2NoYSBkaXYuY2FsbHM6aG92ZXI6OmJlZm9yZSB7IHotaW5kZXg6IC0yMDsgfVxuZGl2LmhhbmQuc2hpbW9jaGEgZGl2LnRpbGVzOmhvdmVyIH4gZGl2LmNhbGxzIHsgei1pbmRleDogLTQwOyB9XG5kaXYuaGFuZC5tYXJraW5nIHsgei1pbmRleDogMTA7IH1cbmRpdi5oYW5kLm1hcmtpbmcuc2VsZiB7IHotaW5kZXg6IDExOyB9XG5kaXYuaGFuZC5tYXJraW5nOmhvdmVyIHsgei1pbmRleDogMjA7IH1cbi8qIGRlYWQgaGFuZCBidXR0b25zICovXG5kaXYuY2FsbHMgPiBkaXYuZGVhZC1oYW5kLWJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgd2lkdGg6IGNhbGMoMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS10aWxlLWJhY2spO1xuICBmb250LXdlaWdodDogMjAwO1xuICBtYXJnaW4tbGVmdDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmRpdi5jYWxscyA+IGRpdi5kZWFkLWhhbmQtYnV0dG9uLmluYWN0aXZlIHsgYmFja2dyb3VuZDogZ3JheTsgb3BhY2l0eTogMC41OyB9XG5kaXYuaGFuZC5zaGltb2NoYSBkaXYuZGVhZC1oYW5kLWJ1dHRvbiB7IHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfVxuZGl2LmhhbmQudG9pbWVuIGRpdi5kZWFkLWhhbmQtYnV0dG9uIHsgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuZGl2LmhhbmQua2FtaWNoYSBkaXYuZGVhZC1oYW5kLWJ1dHRvbiB7IHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7IH1cbmRpdi5jYWxscyA+IGRpdi5kZWFkLWhhbmQtYnV0dG9uOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlx1MjYyMFwiO1xuICBmb250LXNpemU6IGNhbGMoMC44ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHdpZHRoOiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgY29sb3I6IHZhcigtLXRpbGUtZnJvbnQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTAuMSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbn1cbmRpdi5jYWxscyA+IGRpdi5kZWFkLWhhbmQtYnV0dG9uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiP1wiO1xuICBmb250LXNpemU6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHdpZHRoOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS10aWxlLWZyb250KTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSksIGNhbGMoLTAuOSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbn1cbmRpdi5jYWxscyA+IGRpdi5kZWFkLWhhbmQtYnV0dG9uOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiB0aWxlIGF0dHJzICovXG5kaXYudGlsZS5yZXZlcnNlZCB7IHRyYW5zZm9ybTogc2NhbGVYKC0xMDAlKTsgfVxuZGl2LnRpbGUuaW5hY3RpdmUgeyBvcGFjaXR5OiAwLjc7IC0tdGlsZS1icmlnaHRuZXNzOiA2MCU7IH1cbmRpdi50aWxlLmhpZ2hsaWdodCxcbmRpdi5wb25kLmhpZ2hsaWdodCBkaXYudGlsZTpsYXN0LWNoaWxkIHtcbiAgLS10aWxlLWJyaWdodG5lc3M6IDgwJTtcbiAgLS10aWxlLXNhdHVyYXRlOiAxMDAlO1xufVxuZGl2LnRpbGUudHJhbnNwYXJlbnQge1xuICAtLXRpbGUtYnJpZ2h0bmVzczogODAlO1xuICAtLXRpbGUtc2F0dXJhdGU6IDI1MCU7XG4gIC0tdGlsZS1iYWNrOiB2YXIoLS10aWxlLWZyb250KTtcbiAgLS10aWxlLWJhY2stc2lkZTogdmFyKC0tdGlsZS1mcm9udC1zaWRlKTtcbiAgb3BhY2l0eTogMC41O1xufVxuZGl2LnRpbGUudHJhbnNwYXJlbnQuaGlnaGxpZ2h0LFxuZGl2LnBvbmQuaGlnaGxpZ2h0IGRpdi50aWxlLnRyYW5zcGFyZW50Omxhc3QtY2hpbGQgeyAtLXRpbGUtYnJpZ2h0bmVzczogNDglOyB9XG5kaXYudGlsZS50cmFuc3BhcmVudC5pbmFjdGl2ZSB7IG9wYWNpdHk6IDAuMzU7IC0tdGlsZS1icmlnaHRuZXNzOiA2MCU7IC0tdGlsZS1zYXR1cmF0ZTogMTAwJTsgfVxuZGl2LnRpbGUuaGlkZGVuIHsgZGlzcGxheTogbm9uZTsgfVxuXG4vKiB0aWxlIG51bWJlcnMgKi9cbmRpdi50aWxlOjphZnRlciB7IGRpc3BsYXk6IG5vbmU7IH1cbmRpdi50aWxlLm9uZTo6YWZ0ZXIgeyBjb250ZW50OiBcIjFcIjsgfVxuZGl2LnRpbGUudHdvOjphZnRlciB7IGNvbnRlbnQ6IFwiMlwiOyB9XG5kaXYudGlsZS50aHJlZTo6YWZ0ZXIgeyBjb250ZW50OiBcIjNcIjsgfVxuZGl2LnRpbGUuZm91cjo6YWZ0ZXIgeyBjb250ZW50OiBcIjRcIjsgfVxuZGl2LnRpbGUuZml2ZTo6YWZ0ZXIgeyBjb250ZW50OiBcIjVcIjsgfVxuZGl2LnRpbGUuc2l4OjphZnRlciB7IGNvbnRlbnQ6IFwiNlwiOyB9XG5kaXYudGlsZS5zZXZlbjo6YWZ0ZXIgeyBjb250ZW50OiBcIjdcIjsgfVxuZGl2LnRpbGUuZWlnaHQ6OmFmdGVyIHsgY29udGVudDogXCI4XCI7IH1cbmRpdi50aWxlLm5pbmU6OmFmdGVyIHsgY29udGVudDogXCI5XCI7IH1cbmRpdi50aWxlLnRlbjo6YWZ0ZXIgeyBjb250ZW50OiBcIjEwXCI7IH1cbmRpdi50aWxlLkU6OmFmdGVyIHsgY29udGVudDogXCJFXCI7IH1cbmRpdi50aWxlLlM6OmFmdGVyIHsgY29udGVudDogXCJTXCI7IH1cbmRpdi50aWxlLlc6OmFmdGVyIHsgY29udGVudDogXCJXXCI7IH1cbmRpdi50aWxlLk46OmFmdGVyIHsgY29udGVudDogXCJOXCI7IH1cbmRpdi50aWxlLldoOjphZnRlciB7IGNvbnRlbnQ6IFwiV2hcIjsgfVxuZGl2LnRpbGUuRzo6YWZ0ZXIgeyBjb250ZW50OiBcIkdcIjsgfVxuZGl2LnRpbGUuUjo6YWZ0ZXIgeyBjb250ZW50OiBcIlJcIjsgfVxuZGl2I2NvbnRhaW5lciA+IGlucHV0LnRpbGUtbnVtYmVycy1jaGVja2JveDpjaGVja2VkIH4gKiBkaXYudGlsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGNvbG9yOiB2YXIoLS1udW1iZXItY29sb3IpO1xuICB0ZXh0LXNoYWRvdzpcbiAgICAwLjE1ZW0gMCAwIHZhcigtLXRpbGUtZnJvbnQpLFxuICAgIC0wLjE1ZW0gMCAwIHZhcigtLXRpbGUtZnJvbnQpLFxuICAgIDAgMC4xNWVtIDAgdmFyKC0tdGlsZS1mcm9udCksXG4gICAgMCAtMC4xNWVtIDAgdmFyKC0tdGlsZS1mcm9udCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZm9udC1zaXplOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMC4wNCAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiBjYWxjKDAuMDQgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgd2lkdGg6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB6LWluZGV4OiAxO1xufVxuZGl2I2NvbnRhaW5lciA+IGlucHV0LnRpbGUtbnVtYmVycy1jaGVja2JveDpjaGVja2VkIH4gKiBkaXYudGlsZS5zaWRld2F5czo6YWZ0ZXIge1xuICB0b3A6IHVuc2V0O1xuICBib3R0b206IGNhbGMoMC4wNCAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xufVxuXG4vKiBwb25kcyAqL1xuZGl2LnBvbmQsIGRpdi5zZWNvbmRhcnktcG9uZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIC8qZmxleC1kaXJlY3Rpb246IHJvdzsqL1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGxlZnQ7XG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogY2FsYygzICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNhbGMoMi4zNzUgKiB2YXIoLS10aWxlLXNpemUpKSBjYWxjKC0yLjYyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgei1pbmRleDogLTE7XG59XG5kaXYuZm91ci1yb3dzID4gZGl2LnBvbmQge1xuICB3aWR0aDogY2FsYyg1LjEyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoNCAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LmZvdXItcm93cyA+IGRpdi5zZWNvbmRhcnktcG9uZCB7XG4gIHdpZHRoOiBjYWxjKDQuMzc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDQuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbWFyZ2luLXRvcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNhbGMoLTIuMzc1ICogdmFyKC0tdGlsZS1zaXplKSkgY2FsYygtMi44NzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdjpub3QoLmZvdXItcm93cykgPiBkaXYucG9uZDo6YmVmb3JlLFxuZGl2Om5vdCguZm91ci1yb3dzKSA+IGRpdi5wb25kOjphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IHdpZHRoOiAxMDAlOyBvcmRlcjogMTsgfVxuLnBvbmQgPiAudGlsZSB7IG9yZGVyOiAwOyB9XG4ucG9uZCA+IC50aWxlOm50aC1jaGlsZChuKzcpIHsgb3JkZXI6IDE7IH1cbi5wb25kID4gLnRpbGU6bnRoLWNoaWxkKG4rMTMpIHsgb3JkZXI6IDI7IH1cbi8qIGZvciB0b2ltZW4sIHRoZWlyIHRpbGVzIG92ZXJsYXAgYmFja3dhcmRzLCBzbyB3ZSBuZWVkIHRvIHotaW5kZXggdGhlbSAqL1xuLnBvbmQudG9pbWVuID4gLnRpbGUgeyB6LWluZGV4OiAzOyB9XG4ucG9uZC50b2ltZW4gPiAudGlsZTpudGgtY2hpbGQobis3KSB7IHotaW5kZXg6IDI7IH1cbi5wb25kLnRvaW1lbiA+IC50aWxlOm50aC1jaGlsZChuKzEzKSB7IHotaW5kZXg6IDE7IH1cbi5wb25kLnRvaW1lbiA+IC50aWxlOm50aC1jaGlsZChuKzE5KSB7IHotaW5kZXg6IDA7IH1cbi5wb25kLnRvaW1lbi5zZWNvbmRhcnktcG9uZCA+IC50aWxlIHsgei1pbmRleDogMzsgfVxuLnBvbmQudG9pbWVuLnNlY29uZGFyeS1wb25kID4gLnRpbGU6bnRoLWNoaWxkKG4rNikgeyB6LWluZGV4OiAyOyB9XG4ucG9uZC50b2ltZW4uc2Vjb25kYXJ5LXBvbmQgPiAudGlsZTpudGgtY2hpbGQobisxMSkgeyB6LWluZGV4OiAxOyB9XG4ucG9uZC50b2ltZW4uc2Vjb25kYXJ5LXBvbmQgPiAudGlsZTpudGgtY2hpbGQobisxNikgeyB6LWluZGV4OiAwOyB9XG5kaXYucG9uZC5zZWxmIHtcbiAgbGVmdDogY2FsYyg1MCUgLSAoMi4zNzUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gIHRvcDogY2FsYyg1MCUgKyAoMi4xMjUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gIHotaW5kZXg6IDM7IC8qIGFib3ZlIGNvbXBhc3MgKi9cbn1cbmRpdi5wb25kLnNoaW1vY2hhIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgbGVmdDogY2FsYyg1MCUgLSAoMi42MjUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gIHRvcDogY2FsYyg1MCUgKyAoMi4zNzUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG59XG5kaXYucG9uZC50b2ltZW4ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICBsZWZ0OiBjYWxjKDUwJSAtICgyLjM3NSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbiAgdG9wOiBjYWxjKDUwJSArICgyLjYyNSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbiAgei1pbmRleDogMTsgLyogYmVsb3cgY29tcGFzcyAqL1xufVxuZGl2LnBvbmQua2FtaWNoYSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgbGVmdDogY2FsYyg1MCUgLSAoMi4xMjUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gIHRvcDogY2FsYyg1MCUgKyAoMi4zNzUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG59XG5cbi8qIG1vYmlsZSB6b29tIGJ1dHRvbiBmb3IgaGFuZCAqL1xuLyogbGFuZHNjYXBlICovXG5AbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86IDYvNSkge1xuICBpbnB1dC5tb2JpbGUtem9vbS1jaGVja2JveCArIGxhYmVsIHsgZGlzcGxheTogbm9uZTsgfVxufVxuLyogcG9ydHJhaXQgKG1vYmlsZSkgKi9cbkBtZWRpYSAobWF4LWFzcGVjdC1yYXRpbzogNi81KSB7XG4gIG1haW4ge1xuICAgIC0tbW9iaWxlLXNjYWxlLWZhY3RvcjogMS41O1xuICB9XG4gIGlucHV0Lm1vYmlsZS16b29tLWNoZWNrYm94ICsgbGFiZWwge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IGNhbGMoMS4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICAgIGJvdHRvbTogY2FsYygyICogdmFyKC0tdGlsZS1zaXplKSk7XG4gICAgYm9yZGVyLXJhZGl1czogY2FsYygwLjEyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIHdpZHRoOiBjYWxjKDEuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICAgIGhlaWdodDogY2FsYygxLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgfVxuICBpbnB1dC5tb2JpbGUtem9vbS1jaGVja2JveDpub3QoOmNoZWNrZWQpICsgbGFiZWwgPiBzdmc6Zmlyc3QtY2hpbGQsXG4gIGlucHV0Lm1vYmlsZS16b29tLWNoZWNrYm94OmNoZWNrZWQgKyBsYWJlbCA+IHN2ZzpsYXN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC8qIGhvdmVyLXpvb20gdmlldyBvZiBvdXIgb3duIGhhbmQgKi9cbiAgaW5wdXQubW9iaWxlLXpvb20tY2hlY2tib3g6bm90KDpjaGVja2VkKSB+IGRpdi5oYW5kLnNlbGYge1xuICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tbW9iaWxlLXNjYWxlLWZhY3RvcikpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAlIDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTAuMTI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICAgIG1heC13aWR0aDogY2FsYygxMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB9XG4gIGlucHV0Lm1vYmlsZS16b29tLWNoZWNrYm94Om5vdCg6Y2hlY2tlZCkgfiBkaXYuaGFuZC5zZWxmIHtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwLXJldmVyc2U7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIHJvdy1nYXA6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB9XG4gIGlucHV0Lm1vYmlsZS16b29tLWNoZWNrYm94Om5vdCg6Y2hlY2tlZCkgfiBkaXYuaGFuZC5zZWxmID4gZGl2LnRpbGVzIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICBpbnB1dC5tb2JpbGUtem9vbS1jaGVja2JveDpub3QoOmNoZWNrZWQpIH4gZGl2LmhhbmQuc2VsZiA+IGRpdi5jYWxscyB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZShjYWxjKDEgLyB2YXIoLS1tb2JpbGUtc2NhbGUtZmFjdG9yKSkpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgfVxuICBpbnB1dC5tb2JpbGUtem9vbS1jaGVja2JveDpub3QoOmNoZWNrZWQpIH4gZGl2LmhhbmQuc2VsZiA+IGRpdi50aWxlczpob3Zlcjo6YmVmb3JlLFxuICBpbnB1dC5tb2JpbGUtem9vbS1jaGVja2JveDpub3QoOmNoZWNrZWQpIH4gZGl2LmhhbmQuc2VsZiA+IGRpdi5jYWxsczpob3Zlcjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC8qIG1vdmUgYnV0dG9ucyB1cCAqL1xuICBpbnB1dC5tb2JpbGUtem9vbS1jaGVja2JveDpub3QoOmNoZWNrZWQpIH4gZGl2LmJ1dHRvbnMsXG4gIGlucHV0Lm1vYmlsZS16b29tLWNoZWNrYm94Om5vdCg6Y2hlY2tlZCkgfiBkaXYuY2FsbC1idXR0b25zLWNvbnRhaW5lciB7XG4gICAgYm90dG9tOiBjYWxjKDIgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgfVxuICBkaXYjY29udGFpbmVyLm1pbmVmaWVsZCBpbnB1dC5tb2JpbGUtem9vbS1jaGVja2JveCArIGxhYmVsIHtcbiAgICBib3R0b206IGNhbGMoNyAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB9XG4gIGRpdiNjb250YWluZXIubWluZWZpZWxkIGlucHV0Lm1vYmlsZS16b29tLWNoZWNrYm94Om5vdCg6Y2hlY2tlZCkgfiBkaXYuaGFuZC5zZWxmID4gZGl2LmNhbGxzID4gZGl2LmNhbGwuYXNpZGUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC0yICogdmFyKC0tdGlsZS1zaXplKSkpIHNjYWxlKHZhcigtLW1vYmlsZS1zY2FsZS1mYWN0b3IpKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gIH1cbiAgZGl2I2NvbnRhaW5lci5taW5lZmllbGQgaW5wdXQubW9iaWxlLXpvb20tY2hlY2tib3g6bm90KDpjaGVja2VkKSB+IGRpdi5idXR0b25zLFxuICBkaXYjY29udGFpbmVyLm1pbmVmaWVsZCBpbnB1dC5tb2JpbGUtem9vbS1jaGVja2JveDpub3QoOmNoZWNrZWQpIH4gZGl2LmNhbGwtYnV0dG9ucy1jb250YWluZXIge1xuICAgIGJvdHRvbTogY2FsYyg1Ljc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIH1cbn1cblxuLyogY29tcGFzcyAqL1xuZGl2LmNvbXBhc3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBjYWxjKDQuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiBjYWxjKDQuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogY2FsYyg1MCUgLSAoMi4zNzUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gIHRvcDogY2FsYyg1MCUgLSAoMi42MjUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB6LWluZGV4OiAyO1xufVxuZGl2LmNvbXBhc3M6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogZ3JheTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHotaW5kZXg6IC0yO1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgY2FsYyh2YXIoLS10aWxlLXNpemUpIC8gNCkgMCAjM0YzRjNGKTtcbn1cbmRpdi5jb21wYXNzID4gZGl2LnNjb3JlLWJveCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgbGVmdDogY2FsYyg1MCUgLSAoMS4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbiAgdG9wOiBjYWxjKDUwJSAtICgxLjI1ICogdmFyKC0tdGlsZS1zaXplKSkpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm9yZGVyOiBjYWxjKDEuMjUgKiB2YXIoLS10aWxlLXNpemUpKSBzb2xpZCBibGFjaztcbiAgei1pbmRleDogLTE7XG59XG5kaXYuY29tcGFzcyA+IGRpdi5kaXJlY3Rpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5kaXYuY29tcGFzcy5lYXN0ID4gZGl2LmRpcmVjdGlvbi5lYXN0IHt0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuZGl2LmNvbXBhc3MuZWFzdCA+IGRpdi5kaXJlY3Rpb24uc291dGggeyB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpOyB9XG5kaXYuY29tcGFzcy5lYXN0ID4gZGl2LmRpcmVjdGlvbi53ZXN0IHsgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuZGl2LmNvbXBhc3MuZWFzdCA+IGRpdi5kaXJlY3Rpb24ubm9ydGggeyB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IH1cbmRpdi5jb21wYXNzLnNvdXRoID4gZGl2LmRpcmVjdGlvbi5lYXN0IHsgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG5kaXYuY29tcGFzcy5zb3V0aCA+IGRpdi5kaXJlY3Rpb24uc291dGggeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuZGl2LmNvbXBhc3Muc291dGggPiBkaXYuZGlyZWN0aW9uLndlc3QgeyB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpOyB9XG5kaXYuY29tcGFzcy5zb3V0aCA+IGRpdi5kaXJlY3Rpb24ubm9ydGggeyB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5kaXYuY29tcGFzcy53ZXN0ID4gZGl2LmRpcmVjdGlvbi5lYXN0IHsgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuZGl2LmNvbXBhc3Mud2VzdCA+IGRpdi5kaXJlY3Rpb24uc291dGggeyB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IH1cbmRpdi5jb21wYXNzLndlc3QgPiBkaXYuZGlyZWN0aW9uLndlc3QgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuZGl2LmNvbXBhc3Mud2VzdCA+IGRpdi5kaXJlY3Rpb24ubm9ydGggeyB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpOyB9XG5kaXYuY29tcGFzcy5ub3J0aCA+IGRpdi5kaXJlY3Rpb24uZWFzdCB7IHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7IH1cbmRpdi5jb21wYXNzLm5vcnRoID4gZGl2LmRpcmVjdGlvbi5zb3V0aCB7IHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbmRpdi5jb21wYXNzLm5vcnRoID4gZGl2LmRpcmVjdGlvbi53ZXN0IHsgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG5kaXYuY29tcGFzcy5ub3J0aCA+IGRpdi5kaXJlY3Rpb24ubm9ydGggeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuZGl2LmNvbXBhc3MgPiBkaXYuZGlyZWN0aW9uID4gZGl2LnJpaWNoaS10cmF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogY2FsYygyLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogY2FsYygwLjYyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBib3R0b206IGNhbGMoMC4zMTI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gKDEuMTI1ICogdmFyKC0tdGlsZS1zaXplKSkpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYmFja2dyb3VuZDogZGFya2dyYXk7XG59XG5kaXYuY29tcGFzcyA+IGRpdi5kaXJlY3Rpb24gPiBkaXYucmlpY2hpLXRyYXkuaGlnaGxpZ2h0ZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS10aWxlLWJhY2spO1xufVxuZGl2LmNvbXBhc3MgPiBkaXYuZGlyZWN0aW9uID4gZGl2LnJpaWNoaS10cmF5LnJpaWNoaTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogY2FsYygyICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogY2FsYygwLjIgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjA2MjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogY2FsYyg1MCUgLSAoMSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbiAgYm90dG9tOiBjYWxjKDUwJSAtICgwLjEgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuZGl2LmNvbXBhc3MgPiBkaXYuZGlyZWN0aW9uID4gZGl2LnJpaWNoaS10cmF5LnJpaWNoaTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBjYWxjKDAuMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMC4xICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbGVmdDogY2FsYyg1MCUgLSAoMC4wNSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbiAgYm90dG9tOiBjYWxjKDUwJSAtICgwLjA1ICogdmFyKC0tdGlsZS1zaXplKSkpO1xuICBiYWNrZ3JvdW5kOiByZWQ7XG59XG5kaXYuY29tcGFzcyA+IGRpdi5kaXJlY3Rpb24gPiBkaXYud2luZC1tYXJrZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS10aWxlLWZyb250KTtcbiAgd2lkdGg6IHZhcigtLXRpbGUtc2l6ZSk7XG4gIGhlaWdodDogdmFyKC0tdGlsZS1zaXplKTtcbiAgYm90dG9tOiBjYWxjKDAuMTI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHJpZ2h0OiBjYWxjKC0wLjA2MjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5jb21wYXNzID4gZGl2LmRpcmVjdGlvbiA+IGRpdi53aW5kLW1hcmtlci5oaWdobGlnaHRlZCB7XG4gIGNvbG9yOiB2YXIoLS10aWxlLWJhY2spO1xufVxuZGl2LmNvbXBhc3MgPiBkaXYuZGlyZWN0aW9uID4gZGl2LndpbmQtbWFya2VyLmJvdCxcbmRpdi5jb21wYXNzID4gZGl2LmRpcmVjdGlvbiA+IGRpdi53aW5kLW1hcmtlci5oaWdobGlnaHRlZC5ib3Qge1xuICBjb2xvcjogI0ZGN0Y3Rjtcbn1cbmRpdi5jb21wYXNzID4gZGl2LmRpcmVjdGlvbiA+IGRpdi5zY29yZS1jb3VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogY2FsYygyICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogY2FsYygwLjY2ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gKDEgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gIHRvcDogY2FsYyg1MCUgLSAoMC42ICogdmFyKC0tdGlsZS1zaXplKSkpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS10aWxlLWJhY2spO1xuICBwb2ludGVyLWV2ZW50czogaW5pdGlhbDtcbn1cbmRpdi5jb21wYXNzID4gZGl2LmRpcmVjdGlvbiA+IGRpdi5zY29yZS1jb3VudGVyLnNjaWVudGlmaWMge1xuICBmb250LXNpemU6IGNhbGMoMC40ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYuY29tcGFzcyA+IGRpdi5kaXJlY3Rpb24gPiBkaXYuc2NvcmUtY291bnRlci5yZWxhdGl2ZSB7XG4gIGNvbG9yOiBsaWdodGdyZWVuO1xufVxuZGl2LmNvbXBhc3MgPiBkaXYuZGlyZWN0aW9uID4gZGl2LnNjb3JlLWNvdW50ZXIubmVnYXRpdmUge1xuICBjb2xvcjogcmVkO1xufVxuZGl2LmNvbXBhc3MgPiBkaXYuZGlyZWN0aW9uID4gZGl2LnNjb3JlLWNvdW50ZXI6aG92ZXIsXG5kaXYuY29tcGFzcyA+IGRpdi5kaXJlY3Rpb24gPiBkaXYuc2NvcmUtY291bnRlci5zY2llbnRpZmljOmhvdmVyIHtcbiAgd2lkdGg6IGNhbGMoMyAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiBjYWxjKDUwJSAtICgxLjUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gIHRvcDogY2FsYyg1MCUgLSAoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbiAgZm9udC1zaXplOiBjYWxjKDAuNiAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgei1pbmRleDogMTA7XG59XG5kaXYuY29tcGFzcyA+IGRpdi5kaXJlY3Rpb24gPiBkaXYuc2NvcmUtY291bnRlciA+IGIge1xuICBmb250LXNpemU6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS10aWxlLWZyb250KTtcbn1cbmRpdi5jb21wYXNzID4gZGl2LmRpcmVjdGlvbiA+IGRpdi5zY29yZS1jb3VudGVyOmhvdmVyID4gYiB7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYuY29tcGFzcyA+IGRpdi5jZW50ZXJwaWVjZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogY2FsYygxICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogY2FsYygxICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgY29sb3I6IGJsYWNrO1xuICBsZWZ0OiBjYWxjKDUwJSAtICgwLjUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gIHRvcDogY2FsYyg1MCUgLSAoMC41ICogdmFyKC0tdGlsZS1zaXplKSkpO1xuICB6LWluZGV4OiAxO1xuICBjb2xvcjogd2hpdGU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG59XG5kaXYuY29tcGFzcyA+IGRpdi5jZW50ZXJwaWVjZTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiAjNUY1RjVGO1xuICBib3JkZXI6IGNhbGMoMC41NSAqIHZhcigtLXRpbGUtc2l6ZSkpIHJpZGdlICM1RjVGNUY7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gKDAuNTUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gIHRvcDogY2FsYyg1MCUgLSAoMC41NSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbiAgei1pbmRleDogLTE7XG59XG5kaXYuY29tcGFzcyA+IGRpdi5jZW50ZXJwaWVjZSA+IGRpdi50aWxlcy1sZWZ0Omxhc3QtY2hpbGQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygwLjIgKiB2YXIoLS10aWxlLXNpemUpKSk7XG59XG5kaXYucmlpY2hpLXN0aWNrLWNvdW50ZXIsXG5kaXYuaG9uYmEtY291bnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogY2FsYygwLjA3NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICByaWdodDogY2FsYygwLjA3NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMC4xNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBtaW4tY29udGVudDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogY2FsYygwLjEgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5yaWljaGktc3RpY2stY291bnRlciB7IGJvdHRvbTogY2FsYygwLjIgKiB2YXIoLS10aWxlLXNpemUpKTsgfVxuZGl2LmhvbmJhLWNvdW50ZXIgeyBib3R0b206IGNhbGMoLTAuMDUgKiB2YXIoLS10aWxlLXNpemUpKTsgfVxuZGl2LnJpaWNoaS1zdGljay1jb3VudGVyOjpiZWZvcmUsXG5kaXYucmlpY2hpLXN0aWNrLWNvdW50ZXI6OmFmdGVyLFxuZGl2LmhvbmJhLWNvdW50ZXI6OmJlZm9yZSxcbmRpdi5ob25iYS1jb3VudGVyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGdyaWQtY29sdW1uOiAwO1xufVxuZGl2LnJpaWNoaS1zdGljay1jb3VudGVyOjpiZWZvcmUsXG5kaXYuaG9uYmEtY291bnRlcjo6YmVmb3JlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygwLjE2ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4wOCAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgei1pbmRleDogMTtcbn1cbmRpdi5yaWljaGktc3RpY2stY291bnRlcjo6YWZ0ZXIsXG5kaXYuaG9uYmEtY291bnRlcjo6YWZ0ZXIge1xuICBmb250LWZhbWlseTogQXJpYWw7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjMgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IDI7XG59XG5kaXYucmlpY2hpLXN0aWNrLWNvdW50ZXI6OmFmdGVyIHtcbiAgY29udGVudDogXCJcdTIwMjJcIjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTAuMzggKiB2YXIoLS10aWxlLXNpemUpKSkgdHJhbnNsYXRlWChjYWxjKC0wLjAzICogdmFyKC0tdGlsZS1zaXplKSkpIHJvdGF0ZSg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSBjYWxjKDAuMiAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBjb2xvcjogcmVkO1xufVxuZGl2LmhvbmJhLWNvdW50ZXI6OmFmdGVyIHtcbiAgY29udGVudDogXCJcdTI4RkZcIjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTAuMzggKiB2YXIoLS10aWxlLXNpemUpKSkgcm90YXRlKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIGNhbGMoMC4yICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGNvbG9yOiAjMTgyODkwO1xufVxuLyogc29tZXRpbWVzIHRoZSBjb21wYXNzIGR1cGxpY2F0ZXMgaXRzZWxmLCByZW1vdmUgdGhlIGR1cGxpY2F0ZSAqL1xuZGl2LmNvbXBhc3MgfiBkaXYuY29tcGFzcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cblxuLyogY29ybmVyIGluZm8gKi9cbmRpdi5jb3JuZXItaW5mbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwMEY7XG4gIGNvbG9yOiAjRkZGRkZGM0Y7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjYWxjKC0yLjUgKiB2YXIoLS10aWxlLXNpemUpKSBjYWxjKC0yLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgd2lkdGg6IGNhbGMoMyAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMyAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICByaWdodDogY2FsYygyLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm90dG9tOiBjYWxjKDIuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmb250LXNpemU6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDEuNSAqIHZhcigtLXRpbGUtc2l6ZSkgLSAyZW0pO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgei1pbmRleDogMjtcbn1cbmRpdi5jb3JuZXItaW5mbzpob3ZlciB7IHotaW5kZXg6IDU7IH0gLyogaG92ZXJlZCBjb3JuZXIgc2hvdWxkIGNvdmVyIG90aGVyIGNvcm5lcnMgKi9cbmRpdi5jb3JuZXItaW5mby5zaGltb2NoYSB7IHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7IH1cbmRpdi5jb3JuZXItaW5mby50b2ltZW4geyB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5kaXYuY29ybmVyLWluZm8ua2FtaWNoYSB7IHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfVxuZGl2LmNvcm5lci1pbmZvID4gZGl2LnJvdW5kLW1hcmtlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjU1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRpbGUtYmFjayk7XG4gIGNvbG9yOiB2YXIoLS10aWxlLWZyb250KTtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIGNhbGModmFyKC0tdGlsZS1zaXplKSAvIDE2KSAwIHZhcigtLXRpbGUtYmFjay1zaWRlKSlcbiAgICAgICAgICBkcm9wLXNoYWRvdygwIGNhbGModmFyKC0tdGlsZS1zaXplKSAvIDE2KSAwIHZhcigtLXRpbGUtZnJvbnQtc2lkZSkpO1xuICB3aWR0aDogY2FsYygxLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiBjYWxjKDAuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm90dG9tOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5jb3JuZXItaW5mbyA+IGRpdi5zYWtpLWNhcmRzIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbkBrZXlmcmFtZXMgYWlUaGlua2luZyB7XG4gIDI1JSB7IGNvbnRlbnQ6IFwiLlwiOyB9XG4gIDUwJSB7IGNvbnRlbnQ6IFwiLi5cIjsgfVxuICA3NSUgeyBjb250ZW50OiBcIi4uLlwiOyB9XG59XG5kaXYuY29ybmVyLWluZm8gPiBkaXYuYWktdGhpbmtpbmc6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgZm9udC1zaXplOiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgY29sb3I6IHZhcigtLXRpbGUtZnJvbnQpO1xuICBib3R0b206IGNhbGMoNTAlIC0gMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gMC40ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGFuaW1hdGlvbjogYWlUaGlua2luZyAzcyBsaW5lYXIgZm9yd2FyZHMgaW5maW5pdGU7XG59XG5kaXYuY29ybmVyLWluZm8uc2VsZiB7XG4gIHotaW5kZXg6IDU7IC8qIGFib3ZlIHBvbmQgKi9cbn1cblxuLyogdGlsZXMgKi9cbmRpdi50aWxlIHtcbiAgLS10aWxlLXNjYWxlLWZhY3RvcjogMTtcbiAgLS10aWxlLXdpZHRoOiBjYWxjKHZhcigtLXRpbGUtc2NhbGUtZmFjdG9yKSAqIDAuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgLS10aWxlLWhlaWdodDogY2FsYyh2YXIoLS10aWxlLXNjYWxlLWZhY3RvcikgKiAxICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIC0tdGlsZS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tbnVtYmVyLWNvbG9yOiBibGFjaztcbiAgLS1ha2EtY29sb3I6ICNkNzFlMWU7XG4gIC0tZ2FsYXh5LWNvbG9yOiAjNjdiNWVmO1xuICAtLWFvLWNvbG9yOiAjMmY1Mjk4O1xuICAtLWtpbi1jb2xvcjogI2M5YTE0NjtcbiAgLS1ib3JkZXItd2lkdGg6IGNhbGMoMCAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICAtLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tbnVtLXRpbGVzOiAyMTQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IHZhcigtLXRpbGUtd2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLXRpbGUtaGVpZ2h0KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogXG4gICAgdXJsKFwiL2ltYWdlcy90aWxlcy5wbmdcIiksIFxuICAgIGNvbmljLWdyYWRpZW50KHZhcigtLXRpbGUtY29sb3IpIDAgMCksXG4gICAgLyogZmlsbCBnYXAgYmV0d2VlbiB0aWxlIGZhY2UgYW5kIHRvcCBvZiB0aWxlICovXG4gICAgcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudChcbiAgICAgIDBkZWcsXG4gICAgICB0cmFuc3BhcmVudCBjYWxjKDAgKiB2YXIoLS10aWxlLXNpemUpKSxcbiAgICAgIHRyYW5zcGFyZW50IGNhbGMoNS43NSAqIHZhcigtLXRpbGUtc2l6ZSkpLFxuICAgICAgdmFyKC0tdGlsZS1mcm9udC1zaWRlKSBjYWxjKDUuNzUgKiB2YXIoLS10aWxlLXNpemUpKSxcbiAgICAgIHZhcigtLXRpbGUtZnJvbnQtc2lkZSkgY2FsYyg2ICogdmFyKC0tdGlsZS1zaXplKSlcbiAgICApO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0LCBpbml0aWFsLCBpbml0aWFsO1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gY2FsYyh2YXIoLS10aWxlLXNjYWxlLWZhY3RvcikgKiB2YXIoLS1udW0tdGlsZXMpICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4xMCAqIHZhcigtLXRpbGUtc2l6ZSkgKiB2YXIoLS10aWxlLXNjYWxlLWZhY3RvcikpO1xuICBmbGV4LXNocmluazogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbmRpdi50aWxlLmZsYXQge1xuICBiYWNrZ3JvdW5kLWltYWdlOlxuICAgIHVybChcIi9pbWFnZXMvdGlsZXMucG5nXCIpLFxuICAgIGNvbmljLWdyYWRpZW50KHZhcigtLXRpbGUtY29sb3IpIDAgMCk7XG59XG4vKiBkb3JhIHNoaW5lICovXG5Aa2V5ZnJhbWVzIGRvcmFTaGluZSB7XG4gIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTEwMCUsIC0xMDAlKSByb3RhdGUoMTM1ZGVnKTsgfVxuICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCA1MCUpIHJvdGF0ZSgxMzVkZWcpOyB9XG59XG5kaXYudGlsZS5kb3JhOm5vdCguXFwzMSB4KTpub3QoLnNlbGVjdGVkKSB7IG92ZXJmbG93OiBoaWRkZW47IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuZGl2LnRpbGUuZG9yYTpub3QoLlxcMzEgeCk6bm90KC5zZWxlY3RlZCk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBhbmltYXRpb246IGRvcmFTaGluZSAzcyBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWRlbGF5OiB2YXIoLS1kb3JhLWFuaW0tZGVsYXksIDBtcyk7XG4gIHdpZHRoOiA0MDAlO1xuICBoZWlnaHQ6IDQwMCU7XG4gIGJhY2tncm91bmQ6IFxuICAgIGxpbmVhci1ncmFkaWVudCgwZGVnLCB0cmFuc3BhcmVudCAyNSUsICNmZmZmZmY3ZiAzNSUsIHRyYW5zcGFyZW50IDQ1JSksXG4gICAgbGluZWFyLWdyYWRpZW50KDBkZWcsIHRyYW5zcGFyZW50IDQ1JSwgI2ZmZmZmZjdmIDY1JSwgdHJhbnNwYXJlbnQgODUlKTtcbn1cbmRpdi50aWxlLnNpZGV3YXlzICsgZGl2LnRpbGUuc2lkZXdheXMge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS10aWxlLWhlaWdodCkpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtMSAqIHZhcigtLXRpbGUtaGVpZ2h0KSkpIHRyYW5zbGF0ZVkoY2FsYygtMSAqIHZhcigtLXRpbGUtd2lkdGgpKSk7XG59XG5kaXYudGlsZS5zaWRld2F5cyArIGRpdi50aWxlLnNpZGV3YXlzICsgZGl2LnRpbGUuc2lkZXdheXMge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtMSAqIHZhcigtLXRpbGUtaGVpZ2h0KSkpIHRyYW5zbGF0ZVkoY2FsYygtMiAqIHZhcigtLXRpbGUtd2lkdGgpKSk7XG59XG5kaXYudGlsZS5tYXJrYWJsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLS1ib3JkZXItd2lkdGg6IGNhbGMoMC4wNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICAtLWJvcmRlci1jb2xvcjogdmFyKC0tdGlsZS1iYWNrKTtcbn1cbmRpdi50aWxlLm1hcmthYmxlOmhvdmVyLCBkaXYudGlsZS5tYXJrZWQge1xuICAtLWJvcmRlci13aWR0aDogY2FsYygwLjEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgLS1ib3JkZXItY29sb3I6IHZhcigtLXRpbGUtYmFjayk7XG59XG5kaXYudGlsZSB7IGJhY2tncm91bmQtcG9zaXRpb24teDogY2FsYygwICogdmFyKC0tdGlsZS1zaXplKSAqIHZhcigtLXRpbGUtc2NhbGUtZmFjdG9yKSAtIHZhcigtLWJvcmRlci13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS10aWxlLWluZGV4KSAqIHZhcigtLXRpbGUtc2l6ZSkgKiB2YXIoLS10aWxlLXNjYWxlLWZhY3RvcikgLSB2YXIoLS1ib3JkZXItd2lkdGgpKTsgfVxuZGl2LnRpbGUuc2lkZXdheXMgeyB3aWR0aDogdmFyKC0tdGlsZS1oZWlnaHQpOyBoZWlnaHQ6IHZhcigtLXRpbGUtd2lkdGgpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGNhbGMoLTAuNzUgKiB2YXIoLS10aWxlLXNpemUpICogdmFyKC0tdGlsZS1zY2FsZS1mYWN0b3IpIC0gdmFyKC0tYm9yZGVyLXdpZHRoKSk7IH1cbmRpdi50aWxlLlxcMzAgbSB7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDA7IH1cbmRpdi50aWxlLlxcMzEgbSB7IC0tdGlsZS1pbmRleDogMTsgfVxuZGl2LnRpbGUuXFwzMiBtIHsgLS10aWxlLWluZGV4OiAyOyB9XG5kaXYudGlsZS5cXDMzIG0geyAtLXRpbGUtaW5kZXg6IDM7IH1cbmRpdi50aWxlLlxcMzQgbSB7IC0tdGlsZS1pbmRleDogNDsgfVxuZGl2LnRpbGUuXFwzNSBtIHsgLS10aWxlLWluZGV4OiA1OyB9XG5kaXYudGlsZS5cXDM2IG0geyAtLXRpbGUtaW5kZXg6IDY7IH1cbmRpdi50aWxlLlxcMzcgbSB7IC0tdGlsZS1pbmRleDogNzsgfVxuZGl2LnRpbGUuXFwzOCBtIHsgLS10aWxlLWluZGV4OiA4OyB9XG5kaXYudGlsZS5cXDM5IG0geyAtLXRpbGUtaW5kZXg6IDk7IH1cbmRpdi50aWxlLlxcMzAgcCB7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDEwOyB9XG5kaXYudGlsZS5cXDMxIHAgeyAtLXRpbGUtaW5kZXg6IDExOyB9XG5kaXYudGlsZS5cXDMyIHAgeyAtLXRpbGUtaW5kZXg6IDEyOyB9XG5kaXYudGlsZS5cXDMzIHAgeyAtLXRpbGUtaW5kZXg6IDEzOyB9XG5kaXYudGlsZS5cXDM0IHAgeyAtLXRpbGUtaW5kZXg6IDE0OyB9XG5kaXYudGlsZS5cXDM1IHAgeyAtLXRpbGUtaW5kZXg6IDE1OyB9XG5kaXYudGlsZS5cXDM2IHAgeyAtLXRpbGUtaW5kZXg6IDE2OyB9XG5kaXYudGlsZS5cXDM3IHAgeyAtLXRpbGUtaW5kZXg6IDE3OyB9XG5kaXYudGlsZS5cXDM4IHAgeyAtLXRpbGUtaW5kZXg6IDE4OyB9XG5kaXYudGlsZS5cXDM5IHAgeyAtLXRpbGUtaW5kZXg6IDE5OyB9XG5kaXYudGlsZS5cXDMwIHMgeyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDsgfVxuZGl2LnRpbGUuXFwzMSBzIHsgLS10aWxlLWluZGV4OiAyMTsgfVxuZGl2LnRpbGUuXFwzMiBzIHsgLS10aWxlLWluZGV4OiAyMjsgfVxuZGl2LnRpbGUuXFwzMyBzIHsgLS10aWxlLWluZGV4OiAyMzsgfVxuZGl2LnRpbGUuXFwzNCBzIHsgLS10aWxlLWluZGV4OiAyNDsgfVxuZGl2LnRpbGUuXFwzNSBzIHsgLS10aWxlLWluZGV4OiAyNTsgfVxuZGl2LnRpbGUuXFwzNiBzIHsgLS10aWxlLWluZGV4OiAyNjsgfVxuZGl2LnRpbGUuXFwzNyBzIHsgLS10aWxlLWluZGV4OiAyNzsgfVxuZGl2LnRpbGUuXFwzOCBzIHsgLS10aWxlLWluZGV4OiAyODsgfVxuZGl2LnRpbGUuXFwzOSBzIHsgLS10aWxlLWluZGV4OiAyOTsgfVxuZGl2LnRpbGUuXFwzMSB6IHsgLS10aWxlLWluZGV4OiAzMDsgfVxuZGl2LnRpbGUuXFwzMiB6IHsgLS10aWxlLWluZGV4OiAzMTsgfVxuZGl2LnRpbGUuXFwzMyB6IHsgLS10aWxlLWluZGV4OiAzMjsgfVxuZGl2LnRpbGUuXFwzNCB6IHsgLS10aWxlLWluZGV4OiAzMzsgfVxuZGl2LnRpbGUuXFwzNSB6LCBkaXYudGlsZS5cXDMxIHgudHJhbnNwYXJlbnQgeyAtLXRpbGUtaW5kZXg6IDM0OyB9XG5kaXYudGlsZS5cXDM2IHogeyAtLXRpbGUtaW5kZXg6IDM1OyB9XG5kaXYudGlsZS5cXDM3IHogeyAtLXRpbGUtaW5kZXg6IDM2OyB9XG5kaXYudGlsZS5cXDMwIHogeyAtLXRpbGUtaW5kZXg6IDM3OyB9XG5kaXYudGlsZS5cXDM4IHogeyAtLXRpbGUtaW5kZXg6IDM4OyB9XG5kaXYudGlsZS5cXDM5IHogeyAtLXRpbGUtaW5kZXg6IDM5OyB9XG5kaXYudGlsZS5cXDMwIFxcMzAgcyB7IC0tdGlsZS1pbmRleDogNDA7IH1cbmRpdi50aWxlLlxcMzEgXFwzMCBtIHsgLS10aWxlLWluZGV4OiA0MTsgfVxuZGl2LnRpbGUuXFwzMSBcXDMwIHAgeyAtLXRpbGUtaW5kZXg6IDQyOyB9XG5kaXYudGlsZS5cXDMxIFxcMzAgcyB7IC0tdGlsZS1pbmRleDogNDM7IH1cbmRpdi50aWxlLlxcMzEgeCB7IC0tdGlsZS1pbmRleDogNDQ7IH1cbmRpdi50aWxlLlxcMzEgZiB7IC0tdGlsZS1pbmRleDogNDU7IH1cbmRpdi50aWxlLlxcMzIgZiB7IC0tdGlsZS1pbmRleDogNDY7IH1cbmRpdi50aWxlLlxcMzMgZiB7IC0tdGlsZS1pbmRleDogNDc7IH1cbmRpdi50aWxlLlxcMzQgZiB7IC0tdGlsZS1pbmRleDogNDg7IH1cbmRpdi50aWxlLlxcMzEgZyB7IC0tdGlsZS1pbmRleDogNDk7IH1cbmRpdi50aWxlLlxcMzIgZyB7IC0tdGlsZS1pbmRleDogNTA7IH1cbmRpdi50aWxlLlxcMzMgZyB7IC0tdGlsZS1pbmRleDogNTE7IH1cbmRpdi50aWxlLlxcMzQgZyB7IC0tdGlsZS1pbmRleDogNTI7IH1cbmRpdi50aWxlLlxcMzEgYSB7IC0tdGlsZS1pbmRleDogNTM7IH1cbmRpdi50aWxlLlxcMzIgYSB7IC0tdGlsZS1pbmRleDogNTQ7IH1cbmRpdi50aWxlLlxcMzMgYSB7IC0tdGlsZS1pbmRleDogNTU7IH1cbmRpdi50aWxlLlxcMzQgYSB7IC0tdGlsZS1pbmRleDogNTY7IH1cbmRpdi50aWxlLlxcMzEgayB7IC0tdGlsZS1pbmRleDogNTc7IH1cbmRpdi50aWxlLlxcMzIgayB7IC0tdGlsZS1pbmRleDogNTg7IH1cbmRpdi50aWxlLlxcMzMgayB7IC0tdGlsZS1pbmRleDogNTk7IH1cbmRpdi50aWxlLlxcMzQgayB7IC0tdGlsZS1pbmRleDogNjA7IH1cbmRpdi50aWxlLlxcMzEgcSB7IC0tdGlsZS1pbmRleDogNjE7IH1cbmRpdi50aWxlLlxcMzIgcSB7IC0tdGlsZS1pbmRleDogNjI7IH1cbmRpdi50aWxlLlxcMzMgcSB7IC0tdGlsZS1pbmRleDogNjM7IH1cbmRpdi50aWxlLlxcMzQgcSB7IC0tdGlsZS1pbmRleDogNjQ7IH1cbmRpdi50aWxlLlxcMzEgeSB7IC0tdGlsZS1pbmRleDogNjU7IH1cbmRpdi50aWxlLlxcMzEgdCB7IC0tdGlsZS1pbmRleDogNjY7IH1cbmRpdi50aWxlLlxcMzIgdCB7IC0tdGlsZS1pbmRleDogNjc7IH1cbmRpdi50aWxlLlxcMzMgdCB7IC0tdGlsZS1pbmRleDogNjg7IH1cbmRpdi50aWxlLlxcMzQgdCB7IC0tdGlsZS1pbmRleDogNjk7IH1cbmRpdi50aWxlLlxcMzUgdCB7IC0tdGlsZS1pbmRleDogNzA7IH1cbmRpdi50aWxlLlxcMzYgdCB7IC0tdGlsZS1pbmRleDogNzE7IH1cbmRpdi50aWxlLlxcMzcgdCB7IC0tdGlsZS1pbmRleDogNzI7IH1cbmRpdi50aWxlLlxcMzggdCB7IC0tdGlsZS1pbmRleDogNzM7IH1cbmRpdi50aWxlLlxcMzkgdCB7IC0tdGlsZS1pbmRleDogNzQ7IH1cbmRpdi50aWxlLlxcMzEgXFwzMCB0IHsgLS10aWxlLWluZGV4OiA3NTsgfVxuZGl2LnRpbGUuXFwzMSBqIHsgLS10aWxlLWluZGV4OiA3NjsgfVxuZGl2LnRpbGUuXFwzMCBqIHsgLS10aWxlLWluZGV4OiA3NzsgfVxuZGl2LnRpbGUuXFwzMiBqIHsgLS10aWxlLWluZGV4OiA3ODsgfVxuZGl2LnRpbGUuXFwzOSBqIHsgLS10aWxlLWluZGV4OiA3OTsgfVxuZGl2LnRpbGUuXFwzNCBqIHsgLS10aWxlLWluZGV4OiA4MDsgfVxuZGl2LnRpbGUuXFwzNSBqIHsgLS10aWxlLWluZGV4OiA4MTsgfVxuZGl2LnRpbGUuXFwzNiBqLCBkaXYudGlsZS5cXDMxIFxcMzYgaiB7IC0tdGlsZS1pbmRleDogODI7IH1cbmRpdi50aWxlLlxcMzcgaiB7IC0tdGlsZS1pbmRleDogODM7IH1cbmRpdi50aWxlLlxcMzggaiB7IC0tdGlsZS1pbmRleDogODQ7IH1cbmRpdi50aWxlLlxcMzEgXFwzMCBqIHsgLS10aWxlLWluZGV4OiA4NTsgfVxuZGl2LnRpbGUuXFwzMSBcXDMyIGogeyAtLXRpbGUtaW5kZXg6IDg2OyB9XG5kaXYudGlsZS5cXDMzIGosIGRpdi50aWxlLlxcMzEgXFwzMyBqIHsgLS10aWxlLWluZGV4OiA4NzsgfVxuZGl2LnRpbGUuXFwzMSBcXDM0IGogeyAtLXRpbGUtaW5kZXg6IDg4OyB9XG5kaXYudGlsZS5cXDMxIFxcMzUgaiB7IC0tdGlsZS1pbmRleDogODk7IH1cbmRpdi50aWxlLlxcMzEgXFwzNyBqIHsgLS10aWxlLWluZGV4OiA5MDsgfVxuZGl2LnRpbGUuXFwzMSBcXDM4IGogeyAtLXRpbGUtaW5kZXg6IDkxOyB9XG5kaXYudGlsZS5cXDMxIFxcMzkgaiB7IC0tdGlsZS1pbmRleDogOTI7IH1cbmRpdi50aWxlLlxcMzMgXFwzNyBqIHsgLS10aWxlLWluZGV4OiA5MzsgfVxuZGl2LnRpbGUuXFwzNCBcXDM2IGogeyAtLXRpbGUtaW5kZXg6IDk0OyB9XG5kaXYudGlsZS5cXDMxIFxcMzQgXFwzNyBqIHsgLS10aWxlLWluZGV4OiA5NTsgfVxuZGl2LnRpbGUuXFwzMiBcXDM1IFxcMzggaiB7IC0tdGlsZS1pbmRleDogOTY7IH1cbmRpdi50aWxlLlxcMzMgXFwzNiBcXDM5IGogeyAtLXRpbGUtaW5kZXg6IDk3OyB9XG5kaXYudGlsZS5cXDM3IFxcMzggXFwzOSBqIHsgLS10aWxlLWluZGV4OiA5ODsgfVxuZGl2LnRpbGUuXFwzNCBcXDM1IFxcMzYgaiB7IC0tdGlsZS1pbmRleDogOTk7IH1cbmRpdi50aWxlLlxcMzEgXFwzMiBcXDMzIGogeyAtLXRpbGUtaW5kZXg6IDEwMDsgfVxuZGl2LnRpbGUuXFwzMSBcXDMxIGogeyAtLXRpbGUtaW5kZXg6IDEwMTsgfVxuZGl2LnRpbGUuXFwzMiBcXDMyIGogeyAtLXRpbGUtaW5kZXg6IDEwMjsgfVxuZGl2LnRpbGUuXFwzMiBcXDMwIGogeyAtLXRpbGUtaW5kZXg6IDEwMzsgfVxuZGl2LnRpbGUuXFwzOSBcXDMxIGogeyAtLXRpbGUtaW5kZXg6IDEwNDsgfVxuZGl2LnRpbGUuXFwzNiBcXDM0IGogeyAtLXRpbGUtaW5kZXg6IDEwNTsgfVxuZGl2LnRpbGUuXFwzNyBcXDMzIGogeyAtLXRpbGUtaW5kZXg6IDEwNjsgfVxuZGl2LnRpbGUuXFwzOCBcXDM1IFxcMzIgaiB7IC0tdGlsZS1pbmRleDogMTA3OyB9XG5kaXYudGlsZS5cXDMzIFxcMzAgaiB7IC0tdGlsZS1pbmRleDogMTA4OyB9XG5kaXYudGlsZS5cXDMzIFxcMzEgaiB7IC0tdGlsZS1pbmRleDogMTA5OyB9XG5kaXYudGlsZS5cXDMzIFxcMzIgaiB7IC0tdGlsZS1pbmRleDogMTEwOyB9XG5kaXYudGlsZS5cXDMzIFxcMzMgaiB7IC0tdGlsZS1pbmRleDogMTExOyB9XG5kaXYudGlsZS5cXDMzIFxcMzQgaiB7IC0tdGlsZS1pbmRleDogMTEyOyB9XG5kaXYudGlsZS5cXDMyIHkgeyAtLXRpbGUtaW5kZXg6IDExMzsgfVxuZGl2LnRpbGUuXFwzMCBcXDMxIG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE2NDsgfVxuZGl2LnRpbGUuXFwzMCBcXDMyIG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE2NTsgfVxuZGl2LnRpbGUuXFwzMCBcXDMzIG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE2NjsgfVxuZGl2LnRpbGUuXFwzMCBcXDM0IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE2NzsgfVxuZGl2LnRpbGUuXFwzMCBcXDM1IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE2ODsgfVxuZGl2LnRpbGUuXFwzMCBcXDM2IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE2OTsgfVxuZGl2LnRpbGUuXFwzMCBcXDM3IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3MDsgfVxuZGl2LnRpbGUuXFwzMCBcXDM4IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3MTsgfVxuZGl2LnRpbGUuXFwzMCBcXDM5IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3MjsgfVxuZGl2LnRpbGUuXFwzMCBcXDMxIFxcMzAgbSB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTczOyB9XG5kaXYudGlsZS5cXDMwIFxcMzEgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTc0OyB9XG5kaXYudGlsZS5cXDMwIFxcMzIgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTc1OyB9XG5kaXYudGlsZS5cXDMwIFxcMzMgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTc2OyB9XG5kaXYudGlsZS5cXDMwIFxcMzQgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTc3OyB9XG5kaXYudGlsZS5cXDMwIFxcMzUgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTc4OyB9XG5kaXYudGlsZS5cXDMwIFxcMzYgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTc5OyB9XG5kaXYudGlsZS5cXDMwIFxcMzcgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTgwOyB9XG5kaXYudGlsZS5cXDMwIFxcMzggcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTgxOyB9XG5kaXYudGlsZS5cXDMwIFxcMzkgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTgyOyB9XG5kaXYudGlsZS5cXDMwIFxcMzEgXFwzMCBwIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxODM7IH1cbmRpdi50aWxlLlxcMzAgXFwzMSBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxODQ7IH1cbmRpdi50aWxlLlxcMzAgXFwzMiBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxODU7IH1cbmRpdi50aWxlLlxcMzAgXFwzMyBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxODY7IH1cbmRpdi50aWxlLlxcMzAgXFwzNCBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxODc7IH1cbmRpdi50aWxlLlxcMzAgXFwzNSBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxODg7IH1cbmRpdi50aWxlLlxcMzAgXFwzNiBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxODk7IH1cbmRpdi50aWxlLlxcMzAgXFwzNyBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTA7IH1cbmRpdi50aWxlLlxcMzAgXFwzOCBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTE7IH1cbmRpdi50aWxlLlxcMzAgXFwzOSBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTI7IH1cbmRpdi50aWxlLlxcMzAgXFwzMSBcXDMwIHMgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE5MzsgfVxuZGl2LnRpbGUuXFwzMCBcXDMxIHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE5NDsgfVxuZGl2LnRpbGUuXFwzMCBcXDMyIHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE5NTsgfVxuZGl2LnRpbGUuXFwzMCBcXDMzIHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE5NjsgfVxuZGl2LnRpbGUuXFwzMCBcXDM0IHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE5NzsgfVxuZGl2LnRpbGUuXFwzMCBcXDM1IHQsIGRpdi50aWxlLlxcMzAgdCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTk4OyB9XG5kaXYudGlsZS5cXDMwIFxcMzYgdCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTk5OyB9XG5kaXYudGlsZS5cXDMwIFxcMzcgdCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMjAwOyB9XG5kaXYudGlsZS5cXDMwIFxcMzggdCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMjAxOyB9XG5kaXYudGlsZS5cXDMwIFxcMzkgdCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tdGlsZS1pbmRleDogMjAyOyB9XG5kaXYudGlsZS5cXDMwIFxcMzEgXFwzMCB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDM7IH1cbmRpdi50aWxlLlxcMzAgXFwzMCB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDQ7IH1cbmRpdi50aWxlLlxcMzAgXFwzMSB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDU7IH1cbmRpdi50aWxlLlxcMzAgXFwzMiB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDY7IH1cbmRpdi50aWxlLlxcMzAgXFwzMyB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDc7IH1cbmRpdi50aWxlLlxcMzAgXFwzNCB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDg7IH1cbmRpdi50aWxlLlxcMzAgXFwzNSB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDk7IH1cbmRpdi50aWxlLlxcMzAgXFwzNiB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMTA7IH1cbmRpdi50aWxlLlxcMzAgXFwzNyB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMTE7IH1cbmRpdi50aWxlLlxcMzAgXFwzOCB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMTI7IH1cbmRpdi50aWxlLlxcMzAgXFwzMCBcXDMwIHMgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIxMzsgfVxuZGl2LnRpbGUuXFwzMSBcXDMxIG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDExNDsgfVxuZGl2LnRpbGUuXFwzMSBcXDMyIG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDExNTsgfVxuZGl2LnRpbGUuXFwzMSBcXDMzIG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDExNjsgfVxuZGl2LnRpbGUuXFwzMSBcXDM0IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDExNzsgfVxuZGl2LnRpbGUuXFwzMSBcXDM1IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDExODsgfVxuZGl2LnRpbGUuXFwzMSBcXDM2IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDExOTsgfVxuZGl2LnRpbGUuXFwzMSBcXDM3IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDEyMDsgfVxuZGl2LnRpbGUuXFwzMSBcXDM4IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDEyMTsgfVxuZGl2LnRpbGUuXFwzMSBcXDM5IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDEyMjsgfVxuZGl2LnRpbGUuXFwzMSBcXDMxIFxcMzAgbSB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTIzOyB9XG5kaXYudGlsZS5cXDMxIFxcMzEgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTI0OyB9XG5kaXYudGlsZS5cXDMxIFxcMzIgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTI1OyB9XG5kaXYudGlsZS5cXDMxIFxcMzMgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTI2OyB9XG5kaXYudGlsZS5cXDMxIFxcMzQgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTI3OyB9XG5kaXYudGlsZS5cXDMxIFxcMzUgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTI4OyB9XG5kaXYudGlsZS5cXDMxIFxcMzYgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTI5OyB9XG5kaXYudGlsZS5cXDMxIFxcMzcgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTMwOyB9XG5kaXYudGlsZS5cXDMxIFxcMzggcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTMxOyB9XG5kaXYudGlsZS5cXDMxIFxcMzkgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTMyOyB9XG5kaXYudGlsZS5cXDMxIFxcMzEgXFwzMCBwIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS10aWxlLWluZGV4OiAxMzM7IH1cbmRpdi50aWxlLlxcMzEgXFwzMSBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS10aWxlLWluZGV4OiAxMzQ7IH1cbmRpdi50aWxlLlxcMzEgXFwzMiBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS10aWxlLWluZGV4OiAxMzU7IH1cbmRpdi50aWxlLlxcMzEgXFwzMyBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS10aWxlLWluZGV4OiAxMzY7IH1cbmRpdi50aWxlLlxcMzEgXFwzNCBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS10aWxlLWluZGV4OiAxMzc7IH1cbmRpdi50aWxlLlxcMzEgXFwzNSBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS10aWxlLWluZGV4OiAxMzg7IH1cbmRpdi50aWxlLlxcMzEgXFwzNiBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS10aWxlLWluZGV4OiAxMzk7IH1cbmRpdi50aWxlLlxcMzEgXFwzNyBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNDA7IH1cbmRpdi50aWxlLlxcMzEgXFwzOCBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNDE7IH1cbmRpdi50aWxlLlxcMzEgXFwzOSBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNDI7IH1cbmRpdi50aWxlLlxcMzEgXFwzMSBcXDMwIHMgeyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE0MzsgfVxuZGl2LnRpbGUuXFwzMSBcXDMxIHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE0NDsgfVxuZGl2LnRpbGUuXFwzMSBcXDMyIHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE0NTsgfVxuZGl2LnRpbGUuXFwzMSBcXDMzIHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE0NjsgfVxuZGl2LnRpbGUuXFwzMSBcXDM0IHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE0NzsgfVxuZGl2LnRpbGUuXFwzMSBcXDM1IHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE0ODsgfVxuZGl2LnRpbGUuXFwzMSBcXDM2IHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE0OTsgfVxuZGl2LnRpbGUuXFwzMSBcXDM3IHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE1MDsgfVxuZGl2LnRpbGUuXFwzMSBcXDM4IHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE1MTsgfVxuZGl2LnRpbGUuXFwzMSBcXDM5IHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE1MjsgfVxuZGl2LnRpbGUuXFwzMSBcXDMxIFxcMzAgdCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTUzOyB9XG5kaXYudGlsZS5cXDMxIFxcMzAgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTU0OyB9XG5kaXYudGlsZS5cXDMxIFxcMzEgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTU1OyB9XG5kaXYudGlsZS5cXDMxIFxcMzIgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTU2OyB9XG5kaXYudGlsZS5cXDMxIFxcMzMgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTU3OyB9XG5kaXYudGlsZS5cXDMxIFxcMzQgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTU4OyB9XG5kaXYudGlsZS5cXDMxIFxcMzUgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTU5OyB9XG5kaXYudGlsZS5cXDMxIFxcMzYgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTYwOyB9XG5kaXYudGlsZS5cXDMxIFxcMzcgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTYxOyB9XG5kaXYudGlsZS5cXDMxIFxcMzggeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IC0tdGlsZS1pbmRleDogMTYyOyB9XG5kaXYudGlsZS5cXDMxIFxcMzAgXFwzMCBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1nYWxheHktY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNjM7IH1cbmRpdi50aWxlLlxcMzIgXFwzMSBtIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMTY0OyB9XG5kaXYudGlsZS5cXDMyIFxcMzIgbSB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE2NTsgfVxuZGl2LnRpbGUuXFwzMiBcXDMzIG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNjY7IH1cbmRpdi50aWxlLlxcMzIgXFwzNCBtIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMTY3OyB9XG5kaXYudGlsZS5cXDMyIFxcMzUgbSB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE2ODsgfVxuZGl2LnRpbGUuXFwzMiBcXDM2IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNjk7IH1cbmRpdi50aWxlLlxcMzIgXFwzNyBtIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMTcwOyB9XG5kaXYudGlsZS5cXDMyIFxcMzggbSB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3MTsgfVxuZGl2LnRpbGUuXFwzMiBcXDM5IG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNzI7IH1cbmRpdi50aWxlLlxcMzIgXFwzMSBcXDMwIG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNzM7IH1cbmRpdi50aWxlLlxcMzIgXFwzMSBwIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMTc0OyB9XG5kaXYudGlsZS5cXDMyIFxcMzIgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3NTsgfVxuZGl2LnRpbGUuXFwzMiBcXDMzIHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNzY7IH1cbmRpdi50aWxlLlxcMzIgXFwzNCBwIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMTc3OyB9XG5kaXYudGlsZS5cXDMyIFxcMzUgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3ODsgfVxuZGl2LnRpbGUuXFwzMiBcXDM2IHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNzk7IH1cbmRpdi50aWxlLlxcMzIgXFwzNyBwIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMTgwOyB9XG5kaXYudGlsZS5cXDMyIFxcMzggcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE4MTsgfVxuZGl2LnRpbGUuXFwzMiBcXDM5IHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxODI7IH1cbmRpdi50aWxlLlxcMzIgXFwzMSBcXDMwIHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxODM7IH1cbmRpdi50aWxlLlxcMzIgXFwzMSBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMTg0OyB9XG5kaXYudGlsZS5cXDMyIFxcMzIgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE4NTsgfVxuZGl2LnRpbGUuXFwzMiBcXDMzIHMgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxODY7IH1cbmRpdi50aWxlLlxcMzIgXFwzNCBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMTg3OyB9XG5kaXYudGlsZS5cXDMyIFxcMzUgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE4ODsgfVxuZGl2LnRpbGUuXFwzMiBcXDM2IHMgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxODk7IH1cbmRpdi50aWxlLlxcMzIgXFwzNyBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMTkwOyB9XG5kaXYudGlsZS5cXDMyIFxcMzggcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE5MTsgfVxuZGl2LnRpbGUuXFwzMiBcXDM5IHMgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTI7IH1cbmRpdi50aWxlLlxcMzIgXFwzMSBcXDMwIHMgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTM7IH1cbmRpdi50aWxlLlxcMzIgXFwzMSB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMTk0OyB9XG5kaXYudGlsZS5cXDMyIFxcMzIgdCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE5NTsgfVxuZGl2LnRpbGUuXFwzMiBcXDMzIHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTY7IH1cbmRpdi50aWxlLlxcMzIgXFwzNCB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMTk3OyB9XG5kaXYudGlsZS5cXDMyIFxcMzUgdCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE5ODsgfVxuZGl2LnRpbGUuXFwzMiBcXDM2IHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTk7IH1cbmRpdi50aWxlLlxcMzIgXFwzNyB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMjAwOyB9XG5kaXYudGlsZS5cXDMyIFxcMzggdCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIwMTsgfVxuZGl2LnRpbGUuXFwzMiBcXDM5IHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDI7IH1cbmRpdi50aWxlLlxcMzIgXFwzMSBcXDMwIHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDM7IH1cbmRpdi50aWxlLlxcMzIgXFwzMCB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMjA0OyB9XG5kaXYudGlsZS5cXDMyIFxcMzEgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIwNTsgfVxuZGl2LnRpbGUuXFwzMiBcXDMyIHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDY7IH1cbmRpdi50aWxlLlxcMzIgXFwzMyB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMjA3OyB9XG5kaXYudGlsZS5cXDMyIFxcMzQgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIwODsgfVxuZGl2LnRpbGUuXFwzMiBcXDM1IHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDk7IH1cbmRpdi50aWxlLlxcMzIgXFwzNiB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMjEwOyB9XG5kaXYudGlsZS5cXDMyIFxcMzcgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIxMTsgfVxuZGl2LnRpbGUuXFwzMiBcXDM4IHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMTI7IH1cbmRpdi50aWxlLlxcMzIgXFwzMCBcXDMwIHMgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMTM7IH1cbmRpdi50aWxlLlxcMzMgXFwzMSBtIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNjQ7IH1cbmRpdi50aWxlLlxcMzMgXFwzMiBtIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNjU7IH1cbmRpdi50aWxlLlxcMzMgXFwzMyBtIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNjY7IH1cbmRpdi50aWxlLlxcMzMgXFwzNCBtIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNjc7IH1cbmRpdi50aWxlLlxcMzMgXFwzNSBtIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNjg7IH1cbmRpdi50aWxlLlxcMzMgXFwzNiBtIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNjk7IH1cbmRpdi50aWxlLlxcMzMgXFwzNyBtIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNzA7IH1cbmRpdi50aWxlLlxcMzMgXFwzOCBtIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNzE7IH1cbmRpdi50aWxlLlxcMzMgXFwzOSBtIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxNzI7IH1cbmRpdi50aWxlLlxcMzMgXFwzMSBcXDMwIG0geyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3MzsgfVxuZGl2LnRpbGUuXFwzMyBcXDMxIHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3NDsgfVxuZGl2LnRpbGUuXFwzMyBcXDMyIHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3NTsgfVxuZGl2LnRpbGUuXFwzMyBcXDMzIHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3NjsgfVxuZGl2LnRpbGUuXFwzMyBcXDM0IHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3NzsgfVxuZGl2LnRpbGUuXFwzMyBcXDM1IHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3ODsgfVxuZGl2LnRpbGUuXFwzMyBcXDM2IHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE3OTsgfVxuZGl2LnRpbGUuXFwzMyBcXDM3IHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE4MDsgfVxuZGl2LnRpbGUuXFwzMyBcXDM4IHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE4MTsgfVxuZGl2LnRpbGUuXFwzMyBcXDM5IHAgeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE4MjsgfVxuZGl2LnRpbGUuXFwzMyBcXDMxIFxcMzAgcCB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMTgzOyB9XG5kaXYudGlsZS5cXDMzIFxcMzEgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMTg0OyB9XG5kaXYudGlsZS5cXDMzIFxcMzIgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMTg1OyB9XG5kaXYudGlsZS5cXDMzIFxcMzMgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMTg2OyB9XG5kaXYudGlsZS5cXDMzIFxcMzQgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMTg3OyB9XG5kaXYudGlsZS5cXDMzIFxcMzUgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMTg4OyB9XG5kaXYudGlsZS5cXDMzIFxcMzYgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMTg5OyB9XG5kaXYudGlsZS5cXDMzIFxcMzcgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMTkwOyB9XG5kaXYudGlsZS5cXDMzIFxcMzggcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMTkxOyB9XG5kaXYudGlsZS5cXDMzIFxcMzkgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMTkyOyB9XG5kaXYudGlsZS5cXDMzIFxcMzEgXFwzMCBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTM7IH1cbmRpdi50aWxlLlxcMzMgXFwzMSB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTQ7IH1cbmRpdi50aWxlLlxcMzMgXFwzMiB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTU7IH1cbmRpdi50aWxlLlxcMzMgXFwzMyB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTY7IH1cbmRpdi50aWxlLlxcMzMgXFwzNCB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTc7IH1cbmRpdi50aWxlLlxcMzMgXFwzNSB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTg7IH1cbmRpdi50aWxlLlxcMzMgXFwzNiB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxOTk7IH1cbmRpdi50aWxlLlxcMzMgXFwzNyB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDA7IH1cbmRpdi50aWxlLlxcMzMgXFwzOCB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDE7IH1cbmRpdi50aWxlLlxcMzMgXFwzOSB0IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMDI7IH1cbmRpdi50aWxlLlxcMzMgXFwzMSBcXDMwIHQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIwMzsgfVxuZGl2LnRpbGUuXFwzMyBcXDMwIHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIwNDsgfVxuZGl2LnRpbGUuXFwzMyBcXDMxIHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIwNTsgfVxuZGl2LnRpbGUuXFwzMyBcXDMyIHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIwNjsgfVxuZGl2LnRpbGUuXFwzMyBcXDMzIHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIwNzsgfVxuZGl2LnRpbGUuXFwzMyBcXDM0IHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIwODsgfVxuZGl2LnRpbGUuXFwzMyBcXDM1IHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIwOTsgfVxuZGl2LnRpbGUuXFwzMyBcXDM2IHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIxMDsgfVxuZGl2LnRpbGUuXFwzMyBcXDM3IHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIxMTsgfVxuZGl2LnRpbGUuXFwzMyBcXDM4IHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIxMjsgfVxuZGl2LnRpbGUuXFwzMyBcXDMwIFxcMzAgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMjEzOyB9XG5kaXYudGlsZS5cXDM0IFxcMzEgbSB7IC0tdGlsZS1pbmRleDogMTE0OyB9XG5kaXYudGlsZS5cXDM0IFxcMzIgbSB7IC0tdGlsZS1pbmRleDogMTE1OyB9XG5kaXYudGlsZS5cXDM0IFxcMzMgbSB7IC0tdGlsZS1pbmRleDogMTE2OyB9XG5kaXYudGlsZS5cXDM0IFxcMzQgbSB7IC0tdGlsZS1pbmRleDogMTE3OyB9XG5kaXYudGlsZS5cXDM0IFxcMzUgbSB7IC0tdGlsZS1pbmRleDogMTE4OyB9XG5kaXYudGlsZS5cXDM0IFxcMzYgbSB7IC0tdGlsZS1pbmRleDogMTE5OyB9XG5kaXYudGlsZS5cXDM0IFxcMzcgbSB7IC0tdGlsZS1pbmRleDogMTIwOyB9XG5kaXYudGlsZS5cXDM0IFxcMzggbSB7IC0tdGlsZS1pbmRleDogMTIxOyB9XG5kaXYudGlsZS5cXDM0IFxcMzkgbSB7IC0tdGlsZS1pbmRleDogMTIyOyB9XG5kaXYudGlsZS5cXDM0IFxcMzEgXFwzMCBtIHsgLS10aWxlLWluZGV4OiAxMjM7IH1cbmRpdi50aWxlLlxcMzQgXFwzMSBwIHsgLS10aWxlLWluZGV4OiAxMjQ7IH1cbmRpdi50aWxlLlxcMzQgXFwzMiBwIHsgLS10aWxlLWluZGV4OiAxMjU7IH1cbmRpdi50aWxlLlxcMzQgXFwzMyBwIHsgLS10aWxlLWluZGV4OiAxMjY7IH1cbmRpdi50aWxlLlxcMzQgXFwzNCBwIHsgLS10aWxlLWluZGV4OiAxMjc7IH1cbmRpdi50aWxlLlxcMzQgXFwzNSBwIHsgLS10aWxlLWluZGV4OiAxMjg7IH1cbmRpdi50aWxlLlxcMzQgXFwzNiBwIHsgLS10aWxlLWluZGV4OiAxMjk7IH1cbmRpdi50aWxlLlxcMzQgXFwzNyBwIHsgLS10aWxlLWluZGV4OiAxMzA7IH1cbmRpdi50aWxlLlxcMzQgXFwzOCBwIHsgLS10aWxlLWluZGV4OiAxMzE7IH1cbmRpdi50aWxlLlxcMzQgXFwzOSBwIHsgLS10aWxlLWluZGV4OiAxMzI7IH1cbmRpdi50aWxlLlxcMzQgXFwzMSBcXDMwIHAgeyAtLXRpbGUtaW5kZXg6IDEzMzsgfVxuZGl2LnRpbGUuXFwzNCBcXDMxIHMgeyAtLXRpbGUtaW5kZXg6IDEzNDsgfVxuZGl2LnRpbGUuXFwzNCBcXDMyIHMgeyAtLXRpbGUtaW5kZXg6IDEzNTsgfVxuZGl2LnRpbGUuXFwzNCBcXDMzIHMgeyAtLXRpbGUtaW5kZXg6IDEzNjsgfVxuZGl2LnRpbGUuXFwzNCBcXDM0IHMgeyAtLXRpbGUtaW5kZXg6IDEzNzsgfVxuZGl2LnRpbGUuXFwzNCBcXDM1IHMgeyAtLXRpbGUtaW5kZXg6IDEzODsgfVxuZGl2LnRpbGUuXFwzNCBcXDM2IHMgeyAtLXRpbGUtaW5kZXg6IDEzOTsgfVxuZGl2LnRpbGUuXFwzNCBcXDM3IHMgeyAtLXRpbGUtaW5kZXg6IDE0MDsgfVxuZGl2LnRpbGUuXFwzNCBcXDM4IHMgeyAtLXRpbGUtaW5kZXg6IDE0MTsgfVxuZGl2LnRpbGUuXFwzNCBcXDM5IHMgeyAtLXRpbGUtaW5kZXg6IDE0MjsgfVxuZGl2LnRpbGUuXFwzNCBcXDMxIFxcMzAgcyB7IC0tdGlsZS1pbmRleDogMTQzOyB9XG5kaXYudGlsZS5cXDM0IFxcMzEgdCB7IC0tdGlsZS1pbmRleDogMTQ0OyB9XG5kaXYudGlsZS5cXDM0IFxcMzIgdCB7IC0tdGlsZS1pbmRleDogMTQ1OyB9XG5kaXYudGlsZS5cXDM0IFxcMzMgdCB7IC0tdGlsZS1pbmRleDogMTQ2OyB9XG5kaXYudGlsZS5cXDM0IFxcMzQgdCB7IC0tdGlsZS1pbmRleDogMTQ3OyB9XG5kaXYudGlsZS5cXDM0IFxcMzUgdCB7IC0tdGlsZS1pbmRleDogMTQ4OyB9XG5kaXYudGlsZS5cXDM0IFxcMzYgdCB7IC0tdGlsZS1pbmRleDogMTQ5OyB9XG5kaXYudGlsZS5cXDM0IFxcMzcgdCB7IC0tdGlsZS1pbmRleDogMTUwOyB9XG5kaXYudGlsZS5cXDM0IFxcMzggdCB7IC0tdGlsZS1pbmRleDogMTUxOyB9XG5kaXYudGlsZS5cXDM0IFxcMzkgdCB7IC0tdGlsZS1pbmRleDogMTUyOyB9XG5kaXYudGlsZS5cXDM0IFxcMzEgXFwzMCB0IHsgLS10aWxlLWluZGV4OiAxNTM7IH1cbmRpdi50aWxlLlxcMzQgXFwzMCB6IHsgLS10aWxlLWluZGV4OiAxNTQ7IH1cbmRpdi50aWxlLlxcMzQgXFwzMSB6IHsgLS10aWxlLWluZGV4OiAxNTU7IH1cbmRpdi50aWxlLlxcMzQgXFwzMiB6IHsgLS10aWxlLWluZGV4OiAxNTY7IH1cbmRpdi50aWxlLlxcMzQgXFwzMyB6IHsgLS10aWxlLWluZGV4OiAxNTc7IH1cbmRpdi50aWxlLlxcMzQgXFwzNCB6IHsgLS10aWxlLWluZGV4OiAxNTg7IH1cbmRpdi50aWxlLlxcMzQgXFwzNSB6IHsgLS10aWxlLWluZGV4OiAxNTk7IH1cbmRpdi50aWxlLlxcMzQgXFwzNiB6IHsgLS10aWxlLWluZGV4OiAxNjA7IH1cbmRpdi50aWxlLlxcMzQgXFwzNyB6IHsgLS10aWxlLWluZGV4OiAxNjE7IH1cbmRpdi50aWxlLlxcMzQgXFwzOCB6IHsgLS10aWxlLWluZGV4OiAxNjI7IH1cbmRpdi50aWxlLlxcMzQgXFwzMCBcXDMwIHMgeyAtLXRpbGUtaW5kZXg6IDE2MzsgfVxuZGl2LnRpbGUuXFwzNSBcXDMxIG0geyAtLXRpbGUtaW5kZXg6IDE2NDsgfVxuZGl2LnRpbGUuXFwzNSBcXDMyIG0geyAtLXRpbGUtaW5kZXg6IDE2NTsgfVxuZGl2LnRpbGUuXFwzNSBcXDMzIG0geyAtLXRpbGUtaW5kZXg6IDE2NjsgfVxuZGl2LnRpbGUuXFwzNSBcXDM0IG0geyAtLXRpbGUtaW5kZXg6IDE2NzsgfVxuZGl2LnRpbGUuXFwzNSBcXDM1IG0geyAtLXRpbGUtaW5kZXg6IDE2ODsgfVxuZGl2LnRpbGUuXFwzNSBcXDM2IG0geyAtLXRpbGUtaW5kZXg6IDE2OTsgfVxuZGl2LnRpbGUuXFwzNSBcXDM3IG0geyAtLXRpbGUtaW5kZXg6IDE3MDsgfVxuZGl2LnRpbGUuXFwzNSBcXDM4IG0geyAtLXRpbGUtaW5kZXg6IDE3MTsgfVxuZGl2LnRpbGUuXFwzNSBcXDM5IG0geyAtLXRpbGUtaW5kZXg6IDE3MjsgfVxuZGl2LnRpbGUuXFwzNSBcXDMxIFxcMzAgbSB7IC0tdGlsZS1pbmRleDogMTczOyB9XG5kaXYudGlsZS5cXDM1IFxcMzEgcCB7IC0tdGlsZS1pbmRleDogMTc0OyB9XG5kaXYudGlsZS5cXDM1IFxcMzIgcCB7IC0tdGlsZS1pbmRleDogMTc1OyB9XG5kaXYudGlsZS5cXDM1IFxcMzMgcCB7IC0tdGlsZS1pbmRleDogMTc2OyB9XG5kaXYudGlsZS5cXDM1IFxcMzQgcCB7IC0tdGlsZS1pbmRleDogMTc3OyB9XG5kaXYudGlsZS5cXDM1IFxcMzUgcCB7IC0tdGlsZS1pbmRleDogMTc4OyB9XG5kaXYudGlsZS5cXDM1IFxcMzYgcCB7IC0tdGlsZS1pbmRleDogMTc5OyB9XG5kaXYudGlsZS5cXDM1IFxcMzcgcCB7IC0tdGlsZS1pbmRleDogMTgwOyB9XG5kaXYudGlsZS5cXDM1IFxcMzggcCB7IC0tdGlsZS1pbmRleDogMTgxOyB9XG5kaXYudGlsZS5cXDM1IFxcMzkgcCB7IC0tdGlsZS1pbmRleDogMTgyOyB9XG5kaXYudGlsZS5cXDM1IFxcMzEgXFwzMCBwIHsgLS10aWxlLWluZGV4OiAxODM7IH1cbmRpdi50aWxlLlxcMzUgXFwzMSBzIHsgLS10aWxlLWluZGV4OiAxODQ7IH1cbmRpdi50aWxlLlxcMzUgXFwzMiBzIHsgLS10aWxlLWluZGV4OiAxODU7IH1cbmRpdi50aWxlLlxcMzUgXFwzMyBzIHsgLS10aWxlLWluZGV4OiAxODY7IH1cbmRpdi50aWxlLlxcMzUgXFwzNCBzIHsgLS10aWxlLWluZGV4OiAxODc7IH1cbmRpdi50aWxlLlxcMzUgXFwzNSBzIHsgLS10aWxlLWluZGV4OiAxODg7IH1cbmRpdi50aWxlLlxcMzUgXFwzNiBzIHsgLS10aWxlLWluZGV4OiAxODk7IH1cbmRpdi50aWxlLlxcMzUgXFwzNyBzIHsgLS10aWxlLWluZGV4OiAxOTA7IH1cbmRpdi50aWxlLlxcMzUgXFwzOCBzIHsgLS10aWxlLWluZGV4OiAxOTE7IH1cbmRpdi50aWxlLlxcMzUgXFwzOSBzIHsgLS10aWxlLWluZGV4OiAxOTI7IH1cbmRpdi50aWxlLlxcMzUgXFwzMSBcXDMwIHMgeyAtLXRpbGUtaW5kZXg6IDE5MzsgfVxuZGl2LnRpbGUuXFwzNSBcXDMxIHQgeyAtLXRpbGUtaW5kZXg6IDE5NDsgfVxuZGl2LnRpbGUuXFwzNSBcXDMyIHQgeyAtLXRpbGUtaW5kZXg6IDE5NTsgfVxuZGl2LnRpbGUuXFwzNSBcXDMzIHQgeyAtLXRpbGUtaW5kZXg6IDE5NjsgfVxuZGl2LnRpbGUuXFwzNSBcXDM0IHQgeyAtLXRpbGUtaW5kZXg6IDE5NzsgfVxuZGl2LnRpbGUuXFwzNSBcXDM1IHQgeyAtLXRpbGUtaW5kZXg6IDE5ODsgfVxuZGl2LnRpbGUuXFwzNSBcXDM2IHQgeyAtLXRpbGUtaW5kZXg6IDE5OTsgfVxuZGl2LnRpbGUuXFwzNSBcXDM3IHQgeyAtLXRpbGUtaW5kZXg6IDIwMDsgfVxuZGl2LnRpbGUuXFwzNSBcXDM4IHQgeyAtLXRpbGUtaW5kZXg6IDIwMTsgfVxuZGl2LnRpbGUuXFwzNSBcXDM5IHQgeyAtLXRpbGUtaW5kZXg6IDIwMjsgfVxuZGl2LnRpbGUuXFwzNSBcXDMxIFxcMzAgdCB7IC0tdGlsZS1pbmRleDogMjAzOyB9XG5kaXYudGlsZS5cXDM1IFxcMzAgeiB7IC0tdGlsZS1pbmRleDogMjA0OyB9XG5kaXYudGlsZS5cXDM1IFxcMzEgeiB7IC0tdGlsZS1pbmRleDogMjA1OyB9XG5kaXYudGlsZS5cXDM1IFxcMzIgeiB7IC0tdGlsZS1pbmRleDogMjA2OyB9XG5kaXYudGlsZS5cXDM1IFxcMzMgeiB7IC0tdGlsZS1pbmRleDogMjA3OyB9XG5kaXYudGlsZS5cXDM1IFxcMzQgeiB7IC0tdGlsZS1pbmRleDogMjA4OyB9XG5kaXYudGlsZS5cXDM1IFxcMzUgeiB7IC0tdGlsZS1pbmRleDogMjA5OyB9XG5kaXYudGlsZS5cXDM1IFxcMzYgeiB7IC0tdGlsZS1pbmRleDogMjEwOyB9XG5kaXYudGlsZS5cXDM1IFxcMzcgeiB7IC0tdGlsZS1pbmRleDogMjExOyB9XG5kaXYudGlsZS5cXDM1IFxcMzggeiB7IC0tdGlsZS1pbmRleDogMjEyOyB9XG5kaXYudGlsZS5cXDM1IFxcMzAgXFwzMCBzIHsgLS10aWxlLWluZGV4OiAyMTM7IH1cbmRpdi50aWxlLlxcMzIgeCB7IHZpc2liaWxpdHk6IGhpZGRlbjsgfSAvKiBibGFuayBzcGFjZSAqL1xuZGl2LnRpbGUuXFwzMyB4IHsgdmlzaWJpbGl0eTogaGlkZGVuOyB3aWR0aDogY2FsYygwLjUgKiB2YXIoLS10aWxlLXdpZHRoKSk7IH0gLyogaGFsZiBibGFuayBzcGFjZSAqL1xuZGl2LnRpbGUuXFwzNCB4IHsgZGlzcGxheTogbm9uZTsgfSAvKiBmdWxseSBpbnZpc2libGUgdGlsZSAqL1xuZGl2LnRpbGUuXFwzNSB4IHsgdmlzaWJpbGl0eTogaGlkZGVuOyB3aWR0aDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS13aWR0aCkpOyB9IC8qIHF1YXJ0ZXIgYmxhbmsgc3BhY2UgKi9cbmRpdi50aWxlLlxcMzYgeCB7IHZpc2liaWxpdHk6IGhpZGRlbjsgd2lkdGg6IGNhbGMoMC4xMjUgKiB2YXIoLS10aWxlLXdpZHRoKSk7IH0gLyogZWlnaHRoIGJsYW5rIHNwYWNlICovXG5kaXYudGlsZS5cXDM3IHggeyB2aXNpYmlsaXR5OiBoaWRkZW47IHdpZHRoOiBjYWxjKDAuMDYyNSAqIHZhcigtLXRpbGUtd2lkdGgpKTsgfSAvKiBzaXh0ZWVudGggYmxhbmsgc3BhY2UgKi9cbmRpdi50aWxlLlxcMzggeCB7IHZpc2liaWxpdHk6IGhpZGRlbjsgd2lkdGg6IGNhbGMoMC4wMzEyNSAqIHZhcigtLXRpbGUtd2lkdGgpKTsgfSAvKiAzMnRoIGJsYW5rIHNwYWNlICovXG4vKiBwdW5jdHVhdGlvbiBuYW1lcyBmb3IgYWx0IHRpbGVzICovXG4vKiBhbHRlcm5hdGUgMXM6IDEncyAqL1xuZGl2LnRpbGUuXFwzMSBcXDI3IHMgeyAtLXRpbGUtaW5kZXg6IDQwOyB9XG5kaXYudGlsZS5cXDMwIFxcMzEgXFwyNyBzIHsgLS10aWxlLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS10aWxlLWluZGV4OiAxODQ7IH1cbmRpdi50aWxlLlxcMzEgXFwzMSBcXDI3IHMgeyAtLXRpbGUtaW5kZXg6IDIxMjsgfVxuZGl2LnRpbGUuXFwzMiBcXDMxIFxcMjcgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDE4NDsgfVxuZGl2LnRpbGUuXFwzMyBcXDMxIFxcMjcgcyB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMTg0OyB9XG5kaXYudGlsZS5cXDM0IFxcMzEgXFwyNyBzIHsgLS10aWxlLWluZGV4OiAxODQ7IH1cbi8qIGFsdGVybmF0ZSAwejogNSd6ICovXG5kaXYudGlsZS5cXDM1IFxcMjcgeiB7IC0tdGlsZS1pbmRleDogMzc7IH1cbmRpdi50aWxlLlxcMzAgXFwzNSBcXDI3IHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIwOTsgfVxuZGl2LnRpbGUuXFwzMiBcXDM1IFxcMjcgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0tYW8tY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIwOTsgfVxuZGl2LnRpbGUuXFwzMyBcXDM1IFxcMjcgeiB7IC0tdGlsZS1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tdGlsZS1pbmRleDogMjA5OyB9XG5kaXYudGlsZS5cXDM0IFxcMzUgXFwyNyB6IHsgLS10aWxlLWluZGV4OiAyMDk7IH1cbi8qIG1hbGF5c2lhbiAwejogNWB6ICovXG5kaXYudGlsZS5cXDM1IFxcNjAgeiB7IC0tdGlsZS1pbmRleDogMzg7IH1cbmRpdi50aWxlLlxcMzAgXFwzNSBcXDYwIHogeyAtLXRpbGUtY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1ha2EtY29sb3IpOyAtLXRpbGUtaW5kZXg6IDIxMjsgfVxuZGl2LnRpbGUuXFwzMSBcXDM1IFxcNjAgeiB7IC0tdGlsZS1pbmRleDogMTYyOyB9XG5kaXYudGlsZS5cXDMyIFxcMzUgXFw2MCB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1hby1jb2xvcik7IC0tdGlsZS1pbmRleDogMjEyOyB9XG5kaXYudGlsZS5cXDMzIFxcMzUgXFw2MCB6IHsgLS10aWxlLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyAtLW51bWJlci1jb2xvcjogdmFyKC0ta2luLWNvbG9yKTsgLS10aWxlLWluZGV4OiAyMTI7IH1cbmRpdi50aWxlLlxcMzQgXFwzNSBcXDYwIHogeyAtLXRpbGUtaW5kZXg6IDIxMjsgfVxuLyogc2hpcm8gcG9jY2hpOiA1XnogKi9cbmRpdi50aWxlLlxcMzUgXFw1ZSB6IHsgLS10aWxlLWluZGV4OiAzOTsgfVxuXG4vKiBmYWNlZG93biB0aWxlcyBzaG91bGQgbWF0Y2ggMXggKi9cbmRpdi50aWxlLmZhY2Vkb3duIHsgLS10aWxlLWluZGV4OiA0NDsgfVxuXG4vKiBjdXN0b20gY29sb3JpbmcgKi9cbmRpdi50aWxlLnJlZCB7IC0tdGlsZS1jb2xvcjogdmFyKC0tYWthLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFrYS1jb2xvcik7IH1cbmRpdi50aWxlLmJsdWUgeyAtLXRpbGUtY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWFvLWNvbG9yKTsgfVxuZGl2LnRpbGUuY3lhbiB7IC0tdGlsZS1jb2xvcjogdmFyKC0tZ2FsYXh5LWNvbG9yKTsgLS1udW1iZXItY29sb3I6IHZhcigtLWdhbGF4eS1jb2xvcik7IH1cbmRpdi50aWxlLmdvbGQgeyAtLXRpbGUtY29sb3I6IHZhcigtLWtpbi1jb2xvcik7IC0tbnVtYmVyLWNvbG9yOiB2YXIoLS1raW4tY29sb3IpOyB9XG5kaXYudGlsZS5vcmFuZ2UgeyAtLXRpbGUtY29sb3I6IG9yYW5nZTsgfVxuZGl2LnRpbGUueWVsbG93IHsgLS10aWxlLWNvbG9yOiB5ZWxsb3c7IH1cbmRpdi50aWxlLmdyZWVuIHsgLS10aWxlLWNvbG9yOiBncmVlbjsgLS1udW1iZXItY29sb3I6IGdyZWVuOyB9XG5kaXYudGlsZS5saWdodGJsdWUgeyAtLXRpbGUtY29sb3I6IGxpZ2h0Ymx1ZTsgfVxuZGl2LnRpbGUucHVycGxlIHsgLS10aWxlLWNvbG9yOiBwdXJwbGU7IC0tbnVtYmVyLWNvbG9yOiBwdXJwbGU7IH1cbmRpdi50aWxlLmdyYXkgeyAtLXRpbGUtY29sb3I6IGdyYXk7IC0tbnVtYmVyLWNvbG9yOiBncmF5OyB9XG5kaXYudGlsZS5ncmV5IHsgLS10aWxlLWNvbG9yOiBncmV5OyAtLW51bWJlci1jb2xvcjogZ3JleTsgfVxuZGl2LnRpbGUubGlnaHRncmF5IHsgLS10aWxlLWNvbG9yOiBsaWdodGdyYXk7IH1cbmRpdi50aWxlLmxpZ2h0Z3JleSB7IC0tdGlsZS1jb2xvcjogbGlnaHRncmV5OyB9XG5kaXYudGlsZS5icm93biB7IC0tdGlsZS1jb2xvcjogYnJvd247IC0tbnVtYmVyLWNvbG9yOiBicm93bjsgfVxuZGl2LnRpbGUucGluayB7IC0tdGlsZS1jb2xvcjogcGluazsgfVxuZGl2LnRpbGUuYmxhY2sgeyAtLXRpbGUtY29sb3I6IGJsYWNrOyAtLW51bWJlci1jb2xvcjogYmxhY2s7IH1cbmRpdi50aWxlLndoaXRlIHsgLS10aWxlLWNvbG9yOiB3aGl0ZTsgfVxuZGl2LnRpbGUucmFpbmJvdyB7XG4gIC8qIGZyb20gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNTY0MTg3NjMvICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvdGlsZXMucG5nXCIpLCByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuICAgIDE4MGRlZyxcbiAgICByZ2JhKDI1NSwgMCwgMCwgMSkgMCUsXG4gICAgcmdiYSgyNTUsIDE1NCwgMCwgMSkgY2FsYygwLjEgKiB2YXIoLS10aWxlLXNpemUpKSxcbiAgICByZ2JhKDIwOCwgMjIyLCAzMywgMSkgY2FsYygwLjIgKiB2YXIoLS10aWxlLXNpemUpKSxcbiAgICByZ2JhKDc5LCAyMjAsIDc0LCAxKSBjYWxjKDAuMyAqIHZhcigtLXRpbGUtc2l6ZSkpLFxuICAgIHJnYmEoNjMsIDIxOCwgMjE2LCAxKSBjYWxjKDAuNCAqIHZhcigtLXRpbGUtc2l6ZSkpLFxuICAgIHJnYmEoNDcsIDIwMSwgMjI2LCAxKSBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpLFxuICAgIHJnYmEoMjgsIDEyNywgMjM4LCAxKSBjYWxjKDAuNiAqIHZhcigtLXRpbGUtc2l6ZSkpLFxuICAgIHJnYmEoOTUsIDIxLCAyNDIsIDEpIGNhbGMoMC43ICogdmFyKC0tdGlsZS1zaXplKSksXG4gICAgcmdiYSgxODYsIDEyLCAyNDgsIDEpIGNhbGMoMC44ICogdmFyKC0tdGlsZS1zaXplKSksXG4gICAgcmdiYSgyNTEsIDcsIDIxNywgMSkgY2FsYygwLjkgKiB2YXIoLS10aWxlLXNpemUpKSxcbiAgICByZ2JhKDI1NSwgMCwgMCwgMSkgY2FsYygxICogdmFyKC0tdGlsZS1zaXplKSlcbiAgKTtcbn1cbi8qIHRpbGUgYW5pbWF0aW9ucyAqL1xuQGtleWZyYW1lcyByYWluYm93QW5pbSB7XG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogY2FsYygtMSAqIHZhcigtLXRpbGUtaW5kZXgpICogdmFyKC0tdGlsZS1zaXplKSAqIHZhcigtLXRpbGUtc2NhbGUtZmFjdG9yKSAtIHZhcigtLWJvcmRlci13aWR0aCkpLCBjYWxjKDIgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgfVxufVxuZGl2LnRpbGUucmFpbmJvdy5hbmltIHtcbiAgLyogZnJvbSBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy81NjQxODc2My8gKi9cbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiBjYWxjKC0xICogdmFyKC0tdGlsZS1pbmRleCkgKiB2YXIoLS10aWxlLXNpemUpICogdmFyKC0tdGlsZS1zY2FsZS1mYWN0b3IpIC0gdmFyKC0tYm9yZGVyLXdpZHRoKSksIGNhbGMoMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBhbmltYXRpb246IHJhaW5ib3dBbmltIDRzIGxpbmVhciBmb3J3YXJkcyBpbmZpbml0ZTtcbn1cbi8qIHRpbGUgM2QgKi9cbmRpdi50aWxlIHtcbiAgLS10aWxlLWJyaWdodG5lc3M6IDEwMCU7XG4gIC0tdGlsZS1zYXR1cmF0ZTogMTAwJTtcbiAgZmlsdGVyOiBicmlnaHRuZXNzKHZhcigtLXRpbGUtYnJpZ2h0bmVzcykpIHNhdHVyYXRlKHZhcigtLXRpbGUtc2F0dXJhdGUpKTtcbn1cbmRpdi50aWxlOm5vdCguZmxhdCkge1xuICBwYWRkaW5nLXRvcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJveC1zaGFkb3c6IDAgY2FsYyh2YXIoLS10aWxlLWhlaWdodCkgLyAtOCkgMCAwIHZhcigtLXRpbGUtZnJvbnQtc2lkZSksXG4gICAgICAgICAgICAgIDAgY2FsYyh2YXIoLS10aWxlLWhlaWdodCkgLyAtNCkgMCAwIHZhcigtLXRpbGUtYmFjay1zaWRlKTtcbn1cbmRpdi5oYW5kLnNlbGYgZGl2LnRpbGVzID4gZGl2LnRpbGUuc2VsZWN0ZWQsXG5kaXYuaGFuZC5zZWxmIGRpdi5kcmF3cyA+IGRpdi50aWxlLnNlbGVjdGVkIHtcbiAgLyogdGhpcyBpcyBoZXJlIHRvIG92ZXJyaWRlIHRoZSB0cmFuc2xhdGVaKDApICovXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC0wLjI1ICogdmFyKC0tdGlsZS1zaXplKSkpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5kaXYuaGFuZC5zZWxmIGRpdi50aWxlcyA+IGRpdi50aWxlLnNlbGVjdGVkOjpiZWZvcmUsXG5kaXYuaGFuZC5zZWxmIGRpdi5kcmF3cyA+IGRpdi50aWxlLnNlbGVjdGVkOjpiZWZvcmUge1xuICAvKiBhZGQgYSBjbGlja2FibGUgYXJlYSB1bmRlciB0aGUgdGlsZSAqL1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm90dG9tOiBjYWxjKC0wLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYudGlsZS5zaWRld2F5czpub3QoLmZsYXQpIHtcbiAgYm94LXNoYWRvdzogMCBjYWxjKHZhcigtLXRpbGUtaGVpZ2h0KSAvIC0xNikgMCAwIHZhcigtLXRpbGUtZnJvbnQtc2lkZSksXG4gICAgICAgICAgICAgIDAgY2FsYyh2YXIoLS10aWxlLWhlaWdodCkgLyAtOCkgMCAwIHZhcigtLXRpbGUtYmFjay1zaWRlKTtcbn1cbmRpdi5wb25kLnNlbGYgZGl2LnRpbGU6bm90KC5mbGF0KSxcbmRpdi5zZWxmIGRpdi5mbG93ZXJzIGRpdi50aWxlOm5vdCguZmxhdCkge1xuICBib3gtc2hhZG93OiAwIGNhbGModmFyKC0tdGlsZS1oZWlnaHQpIC8gOCkgMCAwIHZhcigtLXRpbGUtZnJvbnQtc2lkZSksXG4gICAgICAgICAgICAgIDAgY2FsYyh2YXIoLS10aWxlLWhlaWdodCkgLyA0KSAwIDAgdmFyKC0tdGlsZS1iYWNrLXNpZGUpO1xufVxuZGl2LnNoaW1vY2hhIGRpdi50aWxlOm5vdCguZmxhdCkge1xuICBib3gtc2hhZG93OiBjYWxjKHZhcigtLXRpbGUtaGVpZ2h0KSAvIC04KSAwIDAgMCB2YXIoLS10aWxlLWZyb250LXNpZGUpLFxuICAgICAgICAgICAgICBjYWxjKHZhcigtLXRpbGUtaGVpZ2h0KSAvIC00KSAwIDAgMCB2YXIoLS10aWxlLWJhY2stc2lkZSk7XG59XG5kaXYua2FtaWNoYSBkaXYudGlsZTpub3QoLmZsYXQpIHtcbiAgYm94LXNoYWRvdzogY2FsYyh2YXIoLS10aWxlLWhlaWdodCkgLyA4KSAwIDAgMCB2YXIoLS10aWxlLWZyb250LXNpZGUpLFxuICAgICAgICAgICAgICBjYWxjKHZhcigtLXRpbGUtaGVpZ2h0KSAvIDQpIDAgMCAwIHZhcigtLXRpbGUtYmFjay1zaWRlKTtcbn1cbmRpdi50aWxlLnJldmVyc2VkOm5vdCguZmxhdCkge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgtMTAwJSkgdHJhbnNsYXRlWShjYWxjKHZhcigtLXRpbGUtaGVpZ2h0KSAvIC00KSkgdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCBjYWxjKHZhcigtLXRpbGUtaGVpZ2h0KSAvIDgpIDAgMCB2YXIoLS10aWxlLWZyb250LXNpZGUpLFxuICAgICAgICAgICAgICAwIGNhbGModmFyKC0tdGlsZS1oZWlnaHQpIC8gNCkgMCAwIHZhcigtLXRpbGUtYmFjay1zaWRlKTtcbn1cbmRpdi5wb25kLnNlbGYgZGl2LnRpbGUucmV2ZXJzZWQ6bm90KC5mbGF0KSB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKC0xMDAlKSB0cmFuc2xhdGVZKGNhbGModmFyKC0tdGlsZS1oZWlnaHQpIC8gLTQpKSB0cmFuc2xhdGVaKDApO1xufVxuZGl2LnNoaW1vY2hhIGRpdi50aWxlLnJldmVyc2VkOm5vdCguZmxhdCkge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgtMTAwJSkgdHJhbnNsYXRlWChjYWxjKHZhcigtLXRpbGUtaGVpZ2h0KSAvIDQpKSB0cmFuc2xhdGVaKDApO1xufVxuZGl2LmthbWljaGEgZGl2LnRpbGUucmV2ZXJzZWQ6bm90KC5mbGF0KSB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKC0xMDAlKSB0cmFuc2xhdGVYKGNhbGModmFyKC0tdGlsZS1oZWlnaHQpIC8gLTQpKSB0cmFuc2xhdGVaKDApO1xufVxuLyogc2hpbW9jaGEncyB0aWxlcyBuZWVkIHRvIG92ZXJsYXAgaW4gdGhlIHJldmVyc2Ugb3JkZXIgKi9cbmRpdi5zaGltb2NoYSBkaXYudGlsZTpudGgtY2hpbGQoMikgeyB6LWluZGV4OiAtMTsgfVxuZGl2LnNoaW1vY2hhIGRpdi50aWxlOm50aC1jaGlsZCgzKSB7IHotaW5kZXg6IC0yOyB9XG5kaXYuc2hpbW9jaGEgZGl2LnRpbGU6bnRoLWNoaWxkKDQpIHsgei1pbmRleDogLTM7IH1cbmRpdi5zaGltb2NoYSBkaXYudGlsZTpudGgtY2hpbGQoNSkgeyB6LWluZGV4OiAtNDsgfVxuZGl2LnNoaW1vY2hhIGRpdi50aWxlOm50aC1jaGlsZCg2KSB7IHotaW5kZXg6IC01OyB9XG5kaXYuc2hpbW9jaGEgZGl2LnRpbGU6bnRoLWNoaWxkKDcpIHsgei1pbmRleDogLTY7IH1cbmRpdi5zaGltb2NoYSBkaXYudGlsZTpudGgtY2hpbGQoOCkgeyB6LWluZGV4OiAtNzsgfVxuZGl2LnNoaW1vY2hhIGRpdi50aWxlOm50aC1jaGlsZCg5KSB7IHotaW5kZXg6IC04OyB9XG5kaXYuc2hpbW9jaGEgZGl2LnRpbGU6bnRoLWNoaWxkKDEwKSB7IHotaW5kZXg6IC05OyB9XG5kaXYuc2hpbW9jaGEgZGl2LnRpbGU6bnRoLWNoaWxkKDExKSB7IHotaW5kZXg6IC0xMDsgfVxuZGl2LnNoaW1vY2hhIGRpdi50aWxlOm50aC1jaGlsZCgxMikgeyB6LWluZGV4OiAtMTE7IH1cbmRpdi5zaGltb2NoYSBkaXYudGlsZTpudGgtY2hpbGQoMTMpIHsgei1pbmRleDogLTEyOyB9XG5kaXYuc2hpbW9jaGEgZGl2LnRpbGU6bnRoLWNoaWxkKDE0KSB7IHotaW5kZXg6IC0xMzsgfVxuZGl2LnNoaW1vY2hhIGRpdi50aWxlOm50aC1jaGlsZCgxNSkgeyB6LWluZGV4OiAtMTQ7IH1cbmRpdi5zaGltb2NoYSBkaXYudGlsZTpudGgtY2hpbGQoMTYpIHsgei1pbmRleDogLTE1OyB9XG5kaXYuc2hpbW9jaGEgZGl2LnRpbGU6bnRoLWNoaWxkKDE3KSB7IHotaW5kZXg6IC0xNjsgfVxuZGl2LnNoaW1vY2hhIGRpdi50aWxlOm50aC1jaGlsZCgxOCkgeyB6LWluZGV4OiAtMTc7IH1cbmRpdi5zaGltb2NoYSBkaXYudGlsZTpudGgtY2hpbGQoMTkpIHsgei1pbmRleDogLTE4OyB9XG5kaXYuc2hpbW9jaGEgZGl2LnRpbGU6bnRoLWNoaWxkKDIwKSB7IHotaW5kZXg6IC0xOTsgfVxuZGl2LnNoaW1vY2hhIGRpdi50aWxlOm50aC1jaGlsZCgyMSkgeyB6LWluZGV4OiAtMjA7IH1cbmRpdi5zaGltb2NoYSBkaXYudGlsZTpudGgtY2hpbGQoMjIpIHsgei1pbmRleDogLTIxOyB9XG5kaXYuc2hpbW9jaGEgZGl2LnRpbGU6bnRoLWNoaWxkKDIzKSB7IHotaW5kZXg6IC0yMjsgfVxuZGl2LnNoaW1vY2hhIGRpdi50aWxlOm50aC1jaGlsZCgyNCkgeyB6LWluZGV4OiAtMjM7IH1cbmRpdi5zaGltb2NoYSBkaXYudGlsZTpudGgtY2hpbGQoMjUpIHsgei1pbmRleDogLTI0OyB9XG5kaXYuc2hpbW9jaGEgZGl2LnRpbGU6bnRoLWNoaWxkKDI2KSB7IHotaW5kZXg6IC0yNTsgfVxuZGl2LnNoaW1vY2hhIGRpdi50aWxlOm50aC1jaGlsZCgyNykgeyB6LWluZGV4OiAtMjY7IH1cbmRpdi5zaGltb2NoYSBkaXYudGlsZTpudGgtY2hpbGQoMjgpIHsgei1pbmRleDogLTI3OyB9XG5kaXYuc2hpbW9jaGEgZGl2LnRpbGU6bnRoLWNoaWxkKDI5KSB7IHotaW5kZXg6IC0yODsgfVxuZGl2LnNoaW1vY2hhIGRpdi50aWxlOm50aC1jaGlsZCgzMCkgeyB6LWluZGV4OiAtMjk7IH1cbi8qIHNlbGYncyB0aWxlcyBuZWVkIHRvIG92ZXJsYXAgaW4gdGhlIGZvcndhcmQgb3JkZXIgKi9cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCgxKSB7IHotaW5kZXg6IDA7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCgyKSB7IHotaW5kZXg6IDE7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCgzKSB7IHotaW5kZXg6IDI7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCg0KSB7IHotaW5kZXg6IDM7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCg1KSB7IHotaW5kZXg6IDQ7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCg2KSB7IHotaW5kZXg6IDU7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCg3KSB7IHotaW5kZXg6IDY7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCg4KSB7IHotaW5kZXg6IDc7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCg5KSB7IHotaW5kZXg6IDg7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCgxMCkgeyB6LWluZGV4OiA5OyB9XG5kaXYuc2VsZiBkaXYudGlsZTpudGgtY2hpbGQoMTEpIHsgei1pbmRleDogMTA7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCgxMikgeyB6LWluZGV4OiAxMTsgfVxuZGl2LnNlbGYgZGl2LnRpbGU6bnRoLWNoaWxkKDEzKSB7IHotaW5kZXg6IDEyOyB9XG5kaXYuc2VsZiBkaXYudGlsZTpudGgtY2hpbGQoMTQpIHsgei1pbmRleDogMTM7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCgxNSkgeyB6LWluZGV4OiAxNDsgfVxuZGl2LnNlbGYgZGl2LnRpbGU6bnRoLWNoaWxkKDE2KSB7IHotaW5kZXg6IDE1OyB9XG5kaXYuc2VsZiBkaXYudGlsZTpudGgtY2hpbGQoMTcpIHsgei1pbmRleDogMTY7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCgxOCkgeyB6LWluZGV4OiAxNzsgfVxuZGl2LnNlbGYgZGl2LnRpbGU6bnRoLWNoaWxkKDE5KSB7IHotaW5kZXg6IDE4OyB9XG5kaXYuc2VsZiBkaXYudGlsZTpudGgtY2hpbGQoMjApIHsgei1pbmRleDogMTk7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCgyMSkgeyB6LWluZGV4OiAyMDsgfVxuZGl2LnNlbGYgZGl2LnRpbGU6bnRoLWNoaWxkKDIyKSB7IHotaW5kZXg6IDIxOyB9XG5kaXYuc2VsZiBkaXYudGlsZTpudGgtY2hpbGQoMjMpIHsgei1pbmRleDogMjI7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCgyNCkgeyB6LWluZGV4OiAyMzsgfVxuZGl2LnNlbGYgZGl2LnRpbGU6bnRoLWNoaWxkKDI1KSB7IHotaW5kZXg6IDI0OyB9XG5kaXYuc2VsZiBkaXYudGlsZTpudGgtY2hpbGQoMjYpIHsgei1pbmRleDogMjU7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCgyNykgeyB6LWluZGV4OiAyNjsgfVxuZGl2LnNlbGYgZGl2LnRpbGU6bnRoLWNoaWxkKDI4KSB7IHotaW5kZXg6IDI3OyB9XG5kaXYuc2VsZiBkaXYudGlsZTpudGgtY2hpbGQoMjkpIHsgei1pbmRleDogMjg7IH1cbmRpdi5zZWxmIGRpdi50aWxlOm50aC1jaGlsZCgzMCkgeyB6LWluZGV4OiAyOTsgfVxuXG4vKiBhbGwgM2QgZWZmZWN0cyBzaG91bGQgaGF2ZSByZXZlcnNlZCBjb2xvciBmb3IgdXBzaWRlIGRvd24gdGlsZXMgKi9cbmRpdi50aWxlLlxcMzEgeDpub3QoLmZsYXQpIHtcbiAgYm94LXNoYWRvdzogMCBjYWxjKHZhcigtLXRpbGUtaGVpZ2h0KSAvIC04KSAwIDAgdmFyKC0tdGlsZS1iYWNrLXNpZGUpLFxuICAgICAgICAgICAgICAwIGNhbGModmFyKC0tdGlsZS1oZWlnaHQpIC8gLTQpIDAgMCB2YXIoLS10aWxlLWZyb250LXNpZGUpO1xufVxuZGl2LnRpbGUuXFwzMSB4LnNpZGV3YXlzOm5vdCguZmxhdCkge1xuICBib3gtc2hhZG93OiAwIGNhbGModmFyKC0tdGlsZS1oZWlnaHQpIC8gLTE2KSAwIDAgdmFyKC0tdGlsZS1iYWNrLXNpZGUpLFxuICAgICAgICAgICAgICAwIGNhbGModmFyKC0tdGlsZS1oZWlnaHQpIC8gLTgpIDAgMCB2YXIoLS10aWxlLWZyb250LXNpZGUpO1xufVxuZGl2LnBvbmQuc2VsZiBkaXYudGlsZS5cXDMxIHg6bm90KC5mbGF0KSB7XG4gIGJveC1zaGFkb3c6IDAgY2FsYyh2YXIoLS10aWxlLWhlaWdodCkgLyA4KSAwIDAgdmFyKC0tdGlsZS1iYWNrLXNpZGUpLFxuICAgICAgICAgICAgICAwIGNhbGModmFyKC0tdGlsZS1oZWlnaHQpIC8gNCkgMCAwIHZhcigtLXRpbGUtZnJvbnQtc2lkZSk7XG59XG5kaXYuc2hpbW9jaGEgZGl2LnRpbGUuXFwzMSB4Om5vdCguZmxhdCkge1xuICBib3gtc2hhZG93OiBjYWxjKHZhcigtLXRpbGUtaGVpZ2h0KSAvIC04KSAwIDAgMCB2YXIoLS10aWxlLWJhY2stc2lkZSksXG4gICAgICAgICAgICAgIGNhbGModmFyKC0tdGlsZS1oZWlnaHQpIC8gLTQpIDAgMCAwIHZhcigtLXRpbGUtZnJvbnQtc2lkZSk7XG59XG5kaXYua2FtaWNoYSBkaXYudGlsZS5cXDMxIHg6bm90KC5mbGF0KSB7XG4gIGJveC1zaGFkb3c6IGNhbGModmFyKC0tdGlsZS1oZWlnaHQpIC8gOCkgMCAwIDAgdmFyKC0tdGlsZS1iYWNrLXNpZGUpLFxuICAgICAgICAgICAgICBjYWxjKHZhcigtLXRpbGUtaGVpZ2h0KSAvIDQpIDAgMCAwIHZhcigtLXRpbGUtZnJvbnQtc2lkZSk7XG59XG4vKiBmYWNlZG93biB0aWxlcyBpbiBoYW5kIHNob3VsZCBsb29rIGZhY2Vkb3duICovXG5kaXYudGlsZXMgZGl2LnRpbGUuZmFjZWRvd246bm90KC5mbGF0KSB7XG4gIGJveC1zaGFkb3c6IDAgY2FsYyh2YXIoLS10aWxlLWhlaWdodCkgLyA4KSAwIDAgdmFyKC0tdGlsZS1iYWNrLXNpZGUpLFxuICAgICAgICAgICAgICAwIGNhbGModmFyKC0tdGlsZS1oZWlnaHQpIC8gNCkgMCAwIHZhcigtLXRpbGUtZnJvbnQtc2lkZSk7XG59XG5cblxuXG4vKiB0aWxlIGFuaW1hdGlvbnMgKi9cbkBrZXlmcmFtZXMgdGlsZVBsYXllZCB7XG4gIDY3JSB7XG4gICAgd2lkdGg6IHZhcigtLXRpbGUtd2lkdGgpO1xuICB9XG4gIDEwMCUge1xuICAgIHdpZHRoOiAwO1xuICB9XG59XG5kaXYudGlsZS5yZW1vdmVkIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGFuaW1hdGlvbjogdGlsZVBsYXllZCAwLjc1cyBlYXNlIGZvcndhcmRzO1xufVxuZGl2LnRpbGUucmVtb3ZlZCB+IGRpdi50aWxlLmRyYXcge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi8qIHRpbGVzIGp1c3QgZGlzY2FyZGVkIGluIHBvbmQgKi9cbkBrZXlmcmFtZXMgc2xpZGVVcCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygyICogdmFyKC0tdGlsZS1zaXplKSkpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7fVxufVxuZGl2LnBvbmQgPiBkaXYudGlsZS5qdXN0LXBsYXllZDpsYXN0LWNoaWxkIHtcbiAgYW5pbWF0aW9uOiBzbGlkZVVwIDAuMnMgZWFzZSBmb3J3YXJkcztcbn1cbi8qIHRpbGVzIGp1c3QgcGxheWVkIGluIGhhbmQgKi9cbkBrZXlmcmFtZXMgc2xpZGVVcDIge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTAuMjUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTIgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuZGl2LnRpbGUucGxheWVkIHtcbiAgYW5pbWF0aW9uOiBzbGlkZVVwMiAwLjJzIGVhc2UgZm9yd2FyZHM7XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVMZWZ0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDIgKiB2YXIoLS10aWxlLXNpemUpKSk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHt9XG59XG5kaXYuaGFuZC5qdXN0LWRyZXcgPiBkaXYuZHJhd3MgPiBkaXYudGlsZSB7XG4gIGFuaW1hdGlvbjogc2xpZGVMZWZ0IDAuMnMgZWFzZSBmb3J3YXJkcztcbn1cblxuQGtleWZyYW1lcyBzbGlkZVJpZ2h0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC02ICogdmFyKC0tdGlsZS1zaXplKSkpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7fVxufVxuZGl2LmhhbmQuanVzdC1jYWxsZWQgPiBkaXYuY2FsbHMgPiBkaXYuY2FsbC5qdXN0LWNhbGxlZCxcbmRpdi5oYW5kLmp1c3QtY2FsbGVkLWZsb3dlciA+IGRpdi5mbG93ZXJzID4gZGl2LnRpbGU6bGFzdC1jaGlsZCB7XG4gIGFuaW1hdGlvbjogc2xpZGVSaWdodCAwLjRzIGVhc2UgZm9yd2FyZHM7XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVEb3duIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC0xICogdmFyKC0tdGlsZS1oZWlnaHQpKSkgdHJhbnNsYXRlWShjYWxjKC0zICogdmFyKC0tdGlsZS13aWR0aCkpKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC0xICogdmFyKC0tdGlsZS1oZWlnaHQpKSkgdHJhbnNsYXRlWShjYWxjKC0xICogdmFyKC0tdGlsZS13aWR0aCkpKTtcbiAgfVxufVxuQGtleWZyYW1lcyBzbGlkZURvd24yIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC0xICogdmFyKC0tdGlsZS1oZWlnaHQpKSkgdHJhbnNsYXRlWShjYWxjKC00ICogdmFyKC0tdGlsZS13aWR0aCkpKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC0xICogdmFyKC0tdGlsZS1oZWlnaHQpKSkgdHJhbnNsYXRlWShjYWxjKC0yICogdmFyKC0tdGlsZS13aWR0aCkpKTtcbiAgfVxufVxuZGl2LmhhbmQuanVzdC11cGdyYWRlZCA+IGRpdi5jYWxscyA+IGRpdi5jYWxsLmp1c3QtdXBncmFkZWQgZGl2LnRpbGUuc2lkZXdheXMgKyBkaXYudGlsZS5sYXN0LXNpZGV3YXlzOjpiZWZvcmUge1xuICBhbmltYXRpb246IHNsaWRlRG93biAwLjJzIGVhc2UgZm9yd2FyZHM7XG59XG5kaXYuaGFuZC5qdXN0LXVwZ3JhZGVkID4gZGl2LmNhbGxzID4gZGl2LmNhbGwuanVzdC11cGdyYWRlZCBkaXYudGlsZS5zaWRld2F5cyArIGRpdi50aWxlLnNpZGV3YXlzICsgZGl2LnRpbGUubGFzdC1zaWRld2F5czo6YmVmb3JlIHtcbiAgYW5pbWF0aW9uOiBzbGlkZURvd24yIDAuMnMgZWFzZSBmb3J3YXJkcztcbn1cblxuXG4vKiBidXR0b25zIGFuZCBjYWxsIGNob2ljZSBidXR0b25zICovXG5kaXYuYnV0dG9ucywgZGl2LmNhbGwtYnV0dG9ucy1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogY2FsYygxLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcmlnaHQ6IGNhbGMoMS41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgei1pbmRleDogMTA7XG59XG5kaXYjY29udGFpbmVyLm1pbmVmaWVsZCBkaXYuYnV0dG9ucywgZGl2I2NvbnRhaW5lci5taW5lZmllbGQgZGl2LmNhbGwtYnV0dG9ucy1jb250YWluZXIge1xuICBib3R0b206IGNhbGMoMi43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiBjYWxjKDIgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcmlnaHQ6IGF1dG87XG59XG5kaXYuY2FsbC1idXR0b25zLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgcm93LWdhcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHJpZ2h0OiBjYWxjKDQuNSAqIHZhcigtLXRpbGUtc2l6ZSkpOyAvKiBtYWtlIHJvb20gZm9yICdjYW5jZWwnIGJ1dHRvbiAqL1xufVxuZGl2LmJ1dHRvbnMsIGRpdi5jYWxsLWJ1dHRvbnMge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHJpZ2h0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2x1bW4tZ2FwOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuZGl2LmNhbGwtYnV0dG9ucyA+IGRpdi50aWxlOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYuY2FsbC1idXR0b25zID4gZGl2LmNhbGwtYnV0dG9uLXNlcGFyYXRvciB7XG4gIGJvcmRlci1sZWZ0OiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpIHNvbGlkIHZhcigtLXRpbGUtYmFjayk7XG4gIGJvcmRlci10b3A6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbmRpdi5idXR0b25zID4gYnV0dG9uLFxuZGl2LmNhbGwtYnV0dG9ucyA+IGJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHBhZGRpbmc6IDAgY2FsYygwLjE2MjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdGlsZS1iYWNrKTtcbiAgZmlsdGVyOiBub25lO1xuICB0cmFuc2Zvcm06IG5vbmU7XG59XG5kaXYuYnV0dG9ucyA+IGJ1dHRvbi5zbWFsbC10ZXh0IHtcbiAgZm9udC1zaXplOiBjYWxjKDAuMzMgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbWF4LXdpZHRoOiBjYWxjKDYgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5idXR0b25zID4gYnV0dG9uIHtcbiAgaGVpZ2h0OiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdHJhbnNmb3JtOiBza2V3KC0xNWRlZyk7XG59XG5kaXYuY2FsbC1idXR0b25zID4gYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuXG5cbi8qIGJpZyB0ZXh0ICovXG5Aa2V5ZnJhbWVzIHRleHRGYWRlIHtcbiAgNzUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbmRpdi5iaWctdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHdoaXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBmb250LXNpemU6IGNhbGMoNDAgKiB2YXIoLS10aWxlLXNpemUpIC8gKDggKyB2YXIoLS1iaWctdGV4dC1sZW5ndGgpKSk7XG4gIHRleHQtc2hhZG93OiBibGFjayBjYWxjKDAuMSAqIHZhcigtLXRpbGUtc2l6ZSkpIGNhbGMoMC4xICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHotaW5kZXg6IDUwO1xuICBhbmltYXRpb246IHRleHRGYWRlIDEuNXMgZWFzZSBmb3J3YXJkcztcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuZGl2LmJpZy10ZXh0LnNlbGYgeyBib3R0b206IDA7IH1cbmRpdi5iaWctdGV4dC5rYW1pY2hhIHsgbGVmdDogY2FsYygtNTAlICsgKDMgKiB2YXIoLS10aWxlLXNpemUpKSk7IHRvcDogY2FsYyg1MCUgLSAoMyAqIHZhcigtLXRpbGUtc2l6ZSkpKTsgfVxuZGl2LmJpZy10ZXh0LnRvaW1lbiB7IHRvcDogMDsgfVxuZGl2LmJpZy10ZXh0LnNoaW1vY2hhIHsgbGVmdDogY2FsYyg1MCUgLSAoMyAqIHZhcigtLXRpbGUtc2l6ZSkpKTsgdG9wOiBjYWxjKDUwJSAtICgzICogdmFyKC0tdGlsZS1zaXplKSkpOyB9XG5cbi8qIHN0YXR1cyBsaW5lcyAqL1xuXG5kaXYuc3RhdHVzLWxpbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDAxRjtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiBjYWxjKC0wLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm90dG9tOiBjYWxjKC0wLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIGNhbGMoLTguMTI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYuc3RhdHVzLWxpbmUua2FtaWNoYSB7IHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTt9XG5kaXYuc3RhdHVzLWxpbmUudG9pbWVuIHsgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTt9XG5kaXYuc3RhdHVzLWxpbmUuc2hpbW9jaGEgeyB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO31cbmRpdi5zdGF0dXMtbGluZSA+IGRpdi5zdGF0dXMtdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgY29sb3I6IHdoaXRlO1xuICBtYXJnaW4tbGVmdDogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cblxuLyogdmlzaWJsZSB3YWl0cyAqL1xuZGl2LnZpc2libGUtd2FpdHMtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogY2FsYygxMDAlIC0gOC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiBjYWxjKDQuMTI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvdHRvbTogY2FsYygyICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIHotaW5kZXg6IDEwMDtcbn1cbmRpdi52aXNpYmxlLXdhaXRzIHtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDdGO1xuICBmb250LXNpemU6IGNhbGMoMC40ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHBhZGRpbmc6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuZGl2LnZpc2libGUtd2FpdHMgPiBkaXYudmlzaWJsZS13YWl0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcm93LWdhcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5cbi8qIG5lYXJlc3QgYW1lcmljYW4gaGFuZHMgKi9cbmRpdi5kaXNwbGF5LWFtLWhhbmQtaG92ZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiKG5lYXJlc3QgaGFuZHMpXCI7XG4gIGJhY2tncm91bmQ6IGdyYXk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZzogMCBjYWxjKDAuMTI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4xMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgZm9udC1zaXplOiBjYWxjKDAuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm90dG9tOiBjYWxjKC0xLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcmlnaHQ6IGNhbGMoMC43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LmRpc3BsYXktYW0taGFuZC1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogY2FsYygxICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvdHRvbTogY2FsYygyLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDdGO1xuICBmb250LXNpemU6IGNhbGMoMC40ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHBhZGRpbmc6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBwYWRkaW5nLXRvcDogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5kaXNwbGF5LWFtLWhhbmQtaG92ZXI6aG92ZXIgKyBkaXYuZGlzcGxheS1hbS1oYW5kLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwMDtcbiAgcm93LWdhcDogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5kaXNwbGF5LWFtLWhhbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmRpdi5kaXNwbGF5LWFtLWhhbmQtdHlwZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiBjYWxjKDAuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IGNhbGMoLTAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuXG4vKiByZXZlYWxlZCB0aWxlcyAqL1xuZGl2LnJldmVhbGVkLXRpbGVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LXNpemU6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRvcDogY2FsYygtMS41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGxlZnQ6IDA7XG59XG5cbi8qIHNjcnllZCB0aWxlcyAqL1xuZGl2LnNjcnllZC10aWxlcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm90dG9tOiBjYWxjKDEuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHotaW5kZXg6IDE7XG59XG5kaXYuc2NyeWVkLXRpbGVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmRpdi5zY3J5ZWQtdGlsZXM6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDAxRjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdG9wOiBjYWxjKC0wLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgKyAwLjc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5cbi8qIGRlY2xhcmUgeWFrdSAqL1xuZGl2LmRlY2xhcmUteWFrdS1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdG9wOiBjYWxjKDMuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwO1xufVxuZGl2LmRlY2xhcmUteWFrdS1jb250YWluZXIgPiBpbnB1dC5kZWNsYXJlLXlha3UtbWluaW1pemUgeyBkaXNwbGF5OiBub25lOyB9XG5kaXYuZGVjbGFyZS15YWt1LWNvbnRhaW5lciA+IGxhYmVsLmRlY2xhcmUteWFrdS1taW5pbWl6ZS1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogY2FsYygwLjc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRvcDogY2FsYygtMC43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICByaWdodDogMDtcbn1cbmRpdi5kZWNsYXJlLXlha3Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwMDtcbn1cbmRpdi5kZWNsYXJlLXlha3UubWluaW1pemVkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbmRpdi5kZWNsYXJlLXlha3UgPiBmb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LmRlY2xhcmUteWFrdTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmctY29sb3IpO1xuICBib3JkZXI6IGNhbGMoMC4xMjUgKiB2YXIoLS10aWxlLXNpemUpKSBzb2xpZCB2YXIoLS10aWxlLWJhY2spO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB6LWluZGV4OiAtMTtcbn1cbmRpdi5kZWNsYXJlLXlha3UgZGl2LmRlY2xhcmFibGUteWFrdXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcm93LWdhcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGNvbHVtbi1nYXA6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LmRlY2xhcmUteWFrdSBidXR0b24uZGVjbGFyZS15YWt1LWJ1dHRvbiB7XG4gIG1hcmdpbjogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSkgMDtcbiAgaGVpZ2h0OiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdGlsZS1mcm9udCk7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogYmxhY2s7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMCBjYWxjKHZhcigtLXRpbGUtc2l6ZSkgLyA4KSAwIHZhcigtLXRpbGUtZnJvbnQtc2lkZSkpXG4gICAgICAgICAgZHJvcC1zaGFkb3coMCBjYWxjKHZhcigtLXRpbGUtc2l6ZSkgLyA4KSAwIHZhcigtLXRpbGUtYmFjay1zaWRlKSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmRpdi5kZWNsYXJlLXlha3UgYnV0dG9uLmRlY2xhcmUteWFrdS1idXR0b246YWN0aXZlIHtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIGNhbGModmFyKC0tdGlsZS1zaXplKSAvIDgpIDAgdmFyKC0tdGlsZS1mcm9udC1zaWRlKSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKHZhcigtLXRpbGUtc2l6ZSkgLyA4KSk7XG59XG5cbi8qIHJ1bGVzICovXG5kaXYucnVsZXMtd3JhcHBlciB7XG4gIHotaW5kZXg6IDEwMDAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogY2FsYygtMS4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0b3A6IGNhbGMoLTAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gIHJvdy1nYXA6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LnJ1bGVzLXdyYXBwZXIgPiBsYWJlbCB7XG4gIHBhZGRpbmc6IGNhbGMoMC4xMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjEyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmb250LXNpemU6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvdHRvbTogY2FsYygtMS41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHdpZHRoOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBwb2ludGVyLWV2ZW50czogaW5pdGlhbDtcbiAgd3JpdGluZy1tb2RlOiB0YjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5kaXYucnVsZXMtd3JhcHBlciA+IGxhYmVsLmxhbmctZW4ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyAvKiBtYWtlIHRleHQgZmFjZSByaWdodCAqL1xufVxuXG4vKlxuICBoYWNrOyBhZGQgaW52aXNpYmxlIFwidW5zZWxlY3RcIiByYWRpbyBvcHRpb24gdG8gYWxsb3cgdW5zZWxlY3RpbmdcbiAgdGhpcyBhcHBlYXJzIGFib3ZlIHRoZSBzZWxlY3RlZCBsYWJlbCwgYnV0IGJlbG93IHVuc2VsZWN0ZWQgbGFiZWxzXG4qL1xuaW5wdXQucnVsZXMtcG9wb3Zlci11bnNlbGVjdCArIGxhYmVsIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSArIDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdG9wOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IC0yO1xufVxuaW5wdXQucnVsZXMtcG9wb3Zlci1yYWRpbzpjaGVja2VkIH4gaW5wdXQucnVsZXMtcG9wb3Zlci11bnNlbGVjdCArIGxhYmVsIHtcbiAgei1pbmRleDogMDtcbn1cbmlucHV0LnJ1bGVzLXBvcG92ZXItcmFkaW86Y2hlY2tlZCArIGxhYmVsIHtcbiAgei1pbmRleDogLTE7XG59XG5pbnB1dC5ydWxlcy1wb3BvdmVyLXJhZGlvOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbCB7XG4gIHotaW5kZXg6IDE7XG59XG5kaXYucnVsZXMtcG9wb3Zlci1jb250YWluZXIge1xuICB6LWluZGV4OiAxMDAwMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiBjYWxjKDEuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdG9wOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB3aWR0aDogMDtcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4xcyBlYXNlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuZGl2LnJ1bGVzLXBvcG92ZXItY29udGFpbmVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiAjM2YzZjNmO1xuICBib3JkZXI6IDAgc29saWQgdmFyKC0tdGlsZS1mcm9udCk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHotaW5kZXg6IC0xO1xuICB0cmFuc2l0aW9uOiBib3JkZXItd2lkdGggMC4xcyBjdWJpYy1iZXppZXIoMCwgMSwgMCwgMSk7XG59XG5pbnB1dC5ydWxlcy1wb3BvdmVyLXJhZGlvOmNoZWNrZWQgKyBsYWJlbCArIGRpdi5ydWxlcy1wb3BvdmVyLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogaW5pdGlhbDtcbiAgdXNlci1zZWxlY3Q6IHRleHQ7XG59XG5pbnB1dC5ydWxlcy1wb3BvdmVyLXJhZGlvOmNoZWNrZWQgKyBsYWJlbCArIGRpdi5ydWxlcy1wb3BvdmVyLWNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgYm9yZGVyLXdpZHRoOiBjYWxjKDAuMTI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYucnVsZXMtcG9wb3ZlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbiAgbWFyZ2luOiBjYWxjKDAuMTI1ICogdmFyKC0tdGlsZS1zaXplKSkgMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7IC8qIEZpcmVmb3ggKi9cbn1cbmRpdi5ydWxlcy1wb3BvdmVyOjotd2Via2l0LXNjcm9sbGJhciB7IFxuICBkaXNwbGF5OiBub25lOyAvKiBTYWZhcmkvQ2hyb21lICovXG59XG5kaXYucnVsZXMtcG9wb3Zlci1ydWxlIHtcbiAgZmxleC1iYXNpczogNTAlO1xufVxuZGl2LnJ1bGVzLXBvcG92ZXItcnVsZS5mdWxsLXdpZHRoIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbn1cbmRpdi5ydWxlcy1wb3BvdmVyLXRpdGxlIHtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICBmb250LXNpemU6IGNhbGMoMC43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBib3JkZXItYm90dG9tOiBjYWxjKDAuMDYyNSAqIHZhcigtLXRpbGUtc2l6ZSkpIHNvbGlkIHZhcigtLXRpbGUtZnJvbnQpO1xuICBtYXJnaW46IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LnJ1bGVzLXBvcG92ZXItdGV4dCB7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgZm9udC1zaXplOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBtYXJnaW46IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LnJ1bGVzLXBvcG92ZXItdGV4dCA+IGRpdi50aWxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAtLXRpbGUtc2NhbGUtZmFjdG9yOiAwLjY1OyAvKiBlbm91Z2ggZm9yIDE0IHRpbGVzIHRvIGJlIGluIGEgcm93ICovXG4gIG1hcmdpbi10b3A6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2NhbGUtZmFjdG9yKSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuXG4vKiB0aWxlIG51bWJlcnMgKi9cbmlucHV0LnRpbGUtbnVtYmVycy1jaGVja2JveCArIGxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nOiAwIGNhbGMoMC4xMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjEyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmb250LXNpemU6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvdHRvbTogY2FsYygtMS41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHdpZHRoOiBjYWxjKDAuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcmlnaHQ6IGNhbGMoLTAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLyogZGlzcGxheSB3YWxsICovXG5kaXYuZGlzcGxheS13YWxsLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogLTEwMDtcbn1cbmRpdi5kaXNwbGF5LXdhbGwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbmRpdi5kaXNwbGF5LXdhbGw6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwN0Y7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuZGl2LmRpc3BsYXktd2FsbC5taW5pbWl6ZWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3ctcmV2ZXJzZTtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgd2lkdGg6IGNhbGMoMTggKiAwLjc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogdmFyKC0tdGlsZS1zaXplKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLyogZGVidWcgKi9cbi8qXG5kaXYuZGlzcGxheS13YWxsLWNvbnRhaW5lciB7IGRpc3BsYXk6IGJsb2NrOyB6LWluZGV4OiAxMDA7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbCB7IGJhY2tncm91bmQ6IHJlZDsgfVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsICogeyB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiovXG5kaXYuZGlzcGxheS13YWxsID4gZGl2LndhbGwudG9pbWVuIHtcbiAganVzdGlmeS1pdGVtczogZmxleC1lbmQ7XG4gIHRvcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGxlZnQ6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LndhbGwuc2hpbW9jaGEge1xuICByaWdodDogY2FsYygxLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdG9wOiBjYWxjKDAuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIHJpZ2h0O1xufVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsLnNlbGYge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBib3R0b206IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGxlZnQ6IGNhbGMoMS43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsLmthbWljaGEge1xuICBsZWZ0OiBjYWxjKDEuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0b3A6IGNhbGMoMS41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG59XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LndhbGwgPiBkaXYudGlsZS1zdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbCA+IGRpdi5zcGFjZXIge1xuICBtaW4td2lkdGg6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LndhbGwgPiBkaXYudGlsZS1zdGFjayA+IGRpdi50aWxlIHtcbiAgei1pbmRleDogdmFyKC0tbGV2ZWwpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygxLjI1ICogdmFyKC0tbGV2ZWwpICogdmFyKC0tdGlsZS1zaXplKSkpO1xufVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsLnNoaW1vY2hhID4gZGl2LnRpbGUtc3RhY2sgPiBkaXYudGlsZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKDAuMjUgKiB2YXIoLS1sZXZlbCkgKiB2YXIoLS10aWxlLXNpemUpKSkgdHJhbnNsYXRlWShjYWxjKDEgKiB2YXIoLS1sZXZlbCkgKiB2YXIoLS10aWxlLXNpemUpKSk7XG59XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LndhbGwua2FtaWNoYSA+IGRpdi50aWxlLXN0YWNrID4gZGl2LnRpbGUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtMC4yNSAqIHZhcigtLWxldmVsKSAqIHZhcigtLXRpbGUtc2l6ZSkpKSB0cmFuc2xhdGVZKGNhbGMoMSAqIHZhcigtLWxldmVsKSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbn1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDEpIHsgei1pbmRleDogLTE7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDIpIHsgei1pbmRleDogLTI7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDMpIHsgei1pbmRleDogLTM7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDQpIHsgei1pbmRleDogLTQ7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDUpIHsgei1pbmRleDogLTU7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDYpIHsgei1pbmRleDogLTY7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDcpIHsgei1pbmRleDogLTc7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDgpIHsgei1pbmRleDogLTg7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDkpIHsgei1pbmRleDogLTk7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDEwKSB7IHotaW5kZXg6IC0xMDsgfVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsLmthbWljaGEgPiBkaXYudGlsZS1zdGFjazpudGgtY2hpbGQoMTEpIHsgei1pbmRleDogLTExOyB9XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LndhbGwua2FtaWNoYSA+IGRpdi50aWxlLXN0YWNrOm50aC1jaGlsZCgxMikgeyB6LWluZGV4OiAtMTI7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDEzKSB7IHotaW5kZXg6IC0xMzsgfVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsLmthbWljaGEgPiBkaXYudGlsZS1zdGFjazpudGgtY2hpbGQoMTQpIHsgei1pbmRleDogLTE0OyB9XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LndhbGwua2FtaWNoYSA+IGRpdi50aWxlLXN0YWNrOm50aC1jaGlsZCgxNSkgeyB6LWluZGV4OiAtMTU7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDE2KSB7IHotaW5kZXg6IC0xNjsgfVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsLmthbWljaGEgPiBkaXYudGlsZS1zdGFjazpudGgtY2hpbGQoMTcpIHsgei1pbmRleDogLTE3OyB9XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LndhbGwua2FtaWNoYSA+IGRpdi50aWxlLXN0YWNrOm50aC1jaGlsZCgxOCkgeyB6LWluZGV4OiAtMTg7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDE5KSB7IHotaW5kZXg6IC0xOTsgfVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsLmthbWljaGEgPiBkaXYudGlsZS1zdGFjazpudGgtY2hpbGQoMjApIHsgei1pbmRleDogLTIwOyB9XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LndhbGwua2FtaWNoYSA+IGRpdi50aWxlLXN0YWNrOm50aC1jaGlsZCgyMSkgeyB6LWluZGV4OiAtMjE7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDIyKSB7IHotaW5kZXg6IC0yMjsgfVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsLmthbWljaGEgPiBkaXYudGlsZS1zdGFjazpudGgtY2hpbGQoMjMpIHsgei1pbmRleDogLTIzOyB9XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LndhbGwua2FtaWNoYSA+IGRpdi50aWxlLXN0YWNrOm50aC1jaGlsZCgyNCkgeyB6LWluZGV4OiAtMjQ7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDI1KSB7IHotaW5kZXg6IC0yNTsgfVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsLmthbWljaGEgPiBkaXYudGlsZS1zdGFjazpudGgtY2hpbGQoMjYpIHsgei1pbmRleDogLTI2OyB9XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LndhbGwua2FtaWNoYSA+IGRpdi50aWxlLXN0YWNrOm50aC1jaGlsZCgyNykgeyB6LWluZGV4OiAtMjc7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDI4KSB7IHotaW5kZXg6IC0yODsgfVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsLmthbWljaGEgPiBkaXYudGlsZS1zdGFjazpudGgtY2hpbGQoMjkpIHsgei1pbmRleDogLTI5OyB9XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LndhbGwua2FtaWNoYSA+IGRpdi50aWxlLXN0YWNrOm50aC1jaGlsZCgzMCkgeyB6LWluZGV4OiAtMzA7IH1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYud2FsbC5rYW1pY2hhID4gZGl2LnRpbGUtc3RhY2s6bnRoLWNoaWxkKDMxKSB7IHotaW5kZXg6IC0zMTsgfVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi53YWxsLmthbWljaGEgPiBkaXYudGlsZS1zdGFjazpudGgtY2hpbGQoMzIpIHsgei1pbmRleDogLTMyOyB9XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LmRpY2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMS41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRvcDogY2FsYyg1MCUgKyAyICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGNvbHVtbi1nYXA6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYuZGljZSA+IGRpdi5kaWUge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgd2lkdGg6IGNhbGMoMC43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMC43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMTI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYuZGljZSA+IGRpdi5kaWU6OmJlZm9yZSxcbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYuZGljZSA+IGRpdi5kaWU6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMC4xMyAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiBjYWxjKDAuMTMgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgd2lkdGg6IGNhbGMoMC4xNyAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMC4xNyAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB6LWluZGV4OiAxO1xufVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi5kaWNlID4gZGl2LmRpZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbn1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYuZGljZSA+IGRpdi5kaWUub25lOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiByZWQ7XG4gIHRvcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGxlZnQ6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB3aWR0aDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LmRpY2UgPiBkaXYuZGllLnR3bzo6YmVmb3JlIHtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdyhjYWxjKDAuMzIgKiB2YXIoLS10aWxlLXNpemUpKSBjYWxjKDAuMzIgKiB2YXIoLS10aWxlLXNpemUpKSAwIGJsYWNrKTtcbn1cbmRpdi5kaXNwbGF5LXdhbGwgPiBkaXYuZGljZSA+IGRpdi5kaWUudGhyZWU6OmJlZm9yZSB7XG4gIGZpbHRlcjpcbiAgICBkcm9wLXNoYWRvdyhjYWxjKDAuMTYgKiB2YXIoLS10aWxlLXNpemUpKSBjYWxjKDAuMTYgKiB2YXIoLS10aWxlLXNpemUpKSAwIGJsYWNrKVxuICAgIGRyb3Atc2hhZG93KGNhbGMoMC4xNiAqIHZhcigtLXRpbGUtc2l6ZSkpIGNhbGMoMC4xNiAqIHZhcigtLXRpbGUtc2l6ZSkpIDAgYmxhY2spO1xufVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi5kaWNlID4gZGl2LmRpZS5mb3VyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiByZWQ7XG4gIGZpbHRlcjpcbiAgICBkcm9wLXNoYWRvdyhjYWxjKDAgKiB2YXIoLS10aWxlLXNpemUpKSBjYWxjKDAuMzIgKiB2YXIoLS10aWxlLXNpemUpKSAwIHJlZClcbiAgICBkcm9wLXNoYWRvdyhjYWxjKDAuMzIgKiB2YXIoLS10aWxlLXNpemUpKSBjYWxjKDAgKiB2YXIoLS10aWxlLXNpemUpKSAwIHJlZCk7XG59XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LmRpY2UgPiBkaXYuZGllLmZpdmU6OmJlZm9yZSB7XG4gIGZpbHRlcjpcbiAgICBkcm9wLXNoYWRvdyhjYWxjKDAgKiB2YXIoLS10aWxlLXNpemUpKSBjYWxjKDAuMzIgKiB2YXIoLS10aWxlLXNpemUpKSAwIGJsYWNrKVxuICAgIGRyb3Atc2hhZG93KGNhbGMoMC4zMiAqIHZhcigtLXRpbGUtc2l6ZSkpIGNhbGMoMCAqIHZhcigtLXRpbGUtc2l6ZSkpIDAgYmxhY2spO1xufVxuZGl2LmRpc3BsYXktd2FsbCA+IGRpdi5kaWNlID4gZGl2LmRpZS5maXZlOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coY2FsYygwLjE2ICogdmFyKC0tdGlsZS1zaXplKSkgY2FsYygwLjE2ICogdmFyKC0tdGlsZS1zaXplKSkgMCBibGFjayk7XG59XG5kaXYuZGlzcGxheS13YWxsID4gZGl2LmRpY2UgPiBkaXYuZGllLnNpeDo6YmVmb3JlIHtcbiAgdG9wOiBjYWxjKDAuMDkgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgZmlsdGVyOlxuICAgIGRyb3Atc2hhZG93KGNhbGMoMC4zMiAqIHZhcigtLXRpbGUtc2l6ZSkpIGNhbGMoMCAqIHZhcigtLXRpbGUtc2l6ZSkpIDAgYmxhY2spXG4gICAgZHJvcC1zaGFkb3coY2FsYygwICogdmFyKC0tdGlsZS1zaXplKSkgY2FsYygwLjIxICogdmFyKC0tdGlsZS1zaXplKSkgMCBibGFjaylcbiAgICBkcm9wLXNoYWRvdyhjYWxjKDAgKiB2YXIoLS10aWxlLXNpemUpKSBjYWxjKDAuMjEgKiB2YXIoLS10aWxlLXNpemUpKSAwIGJsYWNrKTtcbn1cblxuLyogZ2FtZSBtb2RhbHMgKHdpbi9kcmF3L2Vycm9yIHdpbmRvd3MpICovXG5kaXYuZ2FtZS1tb2RhbC1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA4MCU7XG4gIGhlaWdodDogODAlO1xuICBsZWZ0OiAxMCU7XG4gIHRvcDogMTAlO1xuICB6LWluZGV4OiAxMDA7XG4gIGZsb2F0OiBsZWZ0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZTtcbiAgY29sb3I6IGJsYWNrO1xufVxuZGl2LmdhbWUtbW9kYWwtY29udGFpbmVyLmluYWN0aXZlLFxuZGl2LmdhbWUtbW9kYWwtaGlkZTphY3RpdmUsXG5kaXYuZ2FtZS1tb2RhbC1oaWRlOmFjdGl2ZSArIGRpdi50aW1lciB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgY29sb3I6IGJsYWNrO1xufVxuZGl2LmdhbWUtbW9kYWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuZGl2LmdhbWUtbW9kYWw6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDEwOCU7XG4gIGhlaWdodDogMTA4JTtcbiAgdG9wOiAtNCU7XG4gIGxlZnQ6IC00JTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJhY2tncm91bmQ6IGJsYWNrO1xuICBvcGFjaXR5OiAwLjY7XG4gIHotaW5kZXg6IC0xO1xufVxuZGl2LmdhbWUtbW9kYWwgPiBkaXYud2lubmluZy1oYW5kLFxuZGl2LmdhbWUtbW9kYWwgPiBkaXYueWFrdXMsXG5kaXYuZ2FtZS1tb2RhbCA+IGRpdi5zY29yZS1kaXNwbGF5IHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuZGl2LmdhbWUtbW9kYWwuZXJyb3Itd2luZG93ID4gYnV0dG9uLmRpc21pc3MtZXJyb3IsXG5kaXYuZ2FtZS1tb2RhbC1jb250YWluZXIgPiBidXR0b24uZW5kLWJhY2stYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm90dG9tOiAwO1xufVxuZGl2Lndpbm5pbmctaGFuZC1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2Lndpbm5pbmctaGFuZC1jb250YWluZXI6bm90KDpob3ZlcikgZGl2LmhhbmQud2lubmluZy1oYW5kOm5vdCguc2VwYXJhdGVkLWhhbmQpIHsgZGlzcGxheTogZmxleDsgfVxuZGl2Lndpbm5pbmctaGFuZC1jb250YWluZXI6aG92ZXIgZGl2LmhhbmQud2lubmluZy1oYW5kLnNlcGFyYXRlZC1oYW5kIHsgZGlzcGxheTogZmxleDsgfVxuZGl2LmhhbmQud2lubmluZy1oYW5kIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogc3RhY2sgZmxvd2VycyBpbiB3aW5uaW5nIGhhbmQgaWYgbmVlZGVkICovXG5kaXYuaGFuZC53aW5uaW5nLWhhbmQgPiBkaXYuY2FsbC53aW5uaW5nLWZsb3dlcnMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5kaXYuaGFuZC53aW5uaW5nLWhhbmQgPiBkaXYuY2FsbC53aW5uaW5nLWZsb3dlcnMgPiBkaXYudGlsZTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0wLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5oYW5kLndpbm5pbmctaGFuZCA+IGRpdi5jYWxsLndpbm5pbmctZmxvd2VycyA+IGRpdi5mbG93ZXItY291bnQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS10aWxlLWZyb250KTtcbiAgcGFkZGluZzogY2FsYygwLjA1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coY2FsYyh2YXIoLS10aWxlLXNpemUpIC8gLTE2KSBjYWxjKHZhcigtLXRpbGUtc2l6ZSkgLyAtMTYpIDAgdmFyKC0tdGlsZS1iYWNrLXNpZGUpKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LXNpemU6IGNhbGMoMC40ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvdHRvbTogY2FsYygtMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICByaWdodDogY2FsYygtMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB6LWluZGV4OiAxO1xufVxuLyogeWFrdXMgKi9cbmRpdi55YWt1cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIHdyYXA7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbiAgcm93LWdhcDogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIG1hcmdpbi10b3A6IGNhbGMoMS43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA5MCU7XG59XG4vKiB3cmFwIGhhY2ssIHN1cHBvcnRzIDE5IGl0ZW1zICovXG5kaXYueWFrdXM6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXCI7IGhlaWdodDogMTAwJTsgb3JkZXI6IDE7IH1cbmRpdi55YWt1czo6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBoZWlnaHQ6IDEwMCU7IG9yZGVyOiAtMTsgfSAvKiBmb3Igc3BhY2UtZXZlbmx5IHRvIHdvcmsgKi9cbmRpdi55YWt1Om50aC1jaGlsZChuKzEpOm50aC1sYXN0LWNoaWxkKC1uKzApLFxuZGl2Lnlha3U6bnRoLWNoaWxkKG4rMik6bnRoLWxhc3QtY2hpbGQoLW4rMSksXG5kaXYueWFrdTpudGgtY2hpbGQobiszKTpudGgtbGFzdC1jaGlsZCgtbisyKSxcbmRpdi55YWt1Om50aC1jaGlsZChuKzQpOm50aC1sYXN0LWNoaWxkKC1uKzMpLFxuZGl2Lnlha3U6bnRoLWNoaWxkKG4rNSk6bnRoLWxhc3QtY2hpbGQoLW4rNCksXG5kaXYueWFrdTpudGgtY2hpbGQobis2KTpudGgtbGFzdC1jaGlsZCgtbis1KSxcbmRpdi55YWt1Om50aC1jaGlsZChuKzcpOm50aC1sYXN0LWNoaWxkKC1uKzYpLFxuZGl2Lnlha3U6bnRoLWNoaWxkKG4rOCk6bnRoLWxhc3QtY2hpbGQoLW4rNyksXG5kaXYueWFrdTpudGgtY2hpbGQobis5KTpudGgtbGFzdC1jaGlsZCgtbis4KSxcbmRpdi55YWt1Om50aC1jaGlsZChuKzEwKTpudGgtbGFzdC1jaGlsZCgtbis5KSB7IG9yZGVyOiAxOyB9XG5kaXYueWFrdSxcbmRpdi55YWt1ID4gZGl2Lmhhbi1jb3VudGVyLFxuZGl2Lnlha3UgPiBkaXYueWFrdS10ZXh0OjpiZWZvcmUge1xuICBmb250LXNpemU6IGNhbGMoMC42ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogMS4yZW07XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4xMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbmRpdi55YWt1ID4gZGl2Lnlha3UtdGV4dDo6YmVmb3JlIHtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdyhjYWxjKHZhcigtLXRpbGUtc2l6ZSkgLyAtOCkgY2FsYyh2YXIoLS10aWxlLXNpemUpIC8gLTE2KSAwIHZhcigtLXRpbGUtZnJvbnQtc2lkZSkpXG4gICAgICAgICAgZHJvcC1zaGFkb3coY2FsYyh2YXIoLS10aWxlLXNpemUpIC8gLTgpIGNhbGModmFyKC0tdGlsZS1zaXplKSAvIC0xNikgMCB2YXIoLS10aWxlLWJhY2stc2lkZSkpO1xufVxuZGl2Lnlha3Uge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuZGl2Lnlha3UgPiBkaXYueWFrdS10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5kaXYueWFrdSA+IGRpdi55YWt1LXRleHQuc21hbGwgeyBmb250LXNpemU6IDc1JTsgdG9wOiAxMCU7IH1cbmRpdi55YWt1ID4gZGl2Lnlha3UtdGV4dC5zbWFsbDo6YmVmb3JlIHsgdG9wOiAtMTAlOyB9XG5kaXYueWFrdSA+IGRpdi55YWt1LXRleHQudGlueSB7IGZvbnQtc2l6ZTogNTAlOyB0b3A6IDIwJTsgfVxuZGl2Lnlha3UgPiBkaXYueWFrdS10ZXh0LnRpbnk6OmJlZm9yZSB7IHRvcDogLTIwJTsgfVxuZGl2Lnlha3UgPiBkaXYueWFrdS10ZXh0OjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHotaW5kZXg6IC0xO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS10aWxlLWZyb250KTtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiAtMTAlO1xuICBoZWlnaHQ6IDExMCU7XG4gIHRvcDogMCU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDJkZWcpO1xufVxuZGl2Lnlha3UgPiBkaXYuaGFuLWNvdW50ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTIwZGVnKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBtYXJnaW4tbGVmdDogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi55YWt1ID4gZGl2Lmhhbi1jb3VudGVyOjpiZWZvcmUsXG5kaXYudG90YWwtaGFuLWRpc3BsYXk6OmJlZm9yZSxcbmRpdi50b3RhbC1mdS1kaXNwbGF5OjpiZWZvcmUsXG5kaXYudG90YWwtc2NvcmUtZGlzcGxheTo6YmVmb3JlLFxuZGl2LnRvdGFsLXNjb3JlLW5hbWUtZGlzcGxheTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvYnJ1c2gtYmcuc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5kaXYudG90YWwtZnUtZGlzcGxheTo6YmVmb3JlLFxuZGl2LnRvdGFsLXNjb3JlLWRpc3BsYXk6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2JydXNoLWJnMi5zdmcpO1xufVxuZGl2Lnlha3UgPiBkaXYuaGFuLWNvdW50ZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiAxNjAlO1xuICBsZWZ0OiBjYWxjKC0wLjY2ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRvcDogLTM3LjUlO1xufVxuXG4vKiBzY29yZSBkaXNwbGF5ICovXG5kaXYuc2NvcmUtZGlzcGxheSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuICByb3ctZ2FwOiBjYWxjKDAuMTI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogMDtcbn1cbmRpdi5zY29yZS1kaXNwbGF5OjpiZWZvcmUgeyBjb250ZW50OiBcIlwiOyB3aWR0aDogMTAwJTsgb3JkZXI6IDE7IH1cbmRpdi50b3RhbC1oYW4tZGlzcGxheSxcbmRpdi50b3RhbC1mdS1kaXNwbGF5LFxuZGl2LnRvdGFsLXNjb3JlLWRpc3BsYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHotaW5kZXg6IDE7XG59XG5kaXYudG90YWwtaGFuLWRpc3BsYXksIGRpdi50b3RhbC1mdS1kaXNwbGF5IHsgZm9udC1zaXplOiBjYWxjKDEuMjUgKiB2YXIoLS10aWxlLXNpemUpKTsgfVxuZGl2LnRvdGFsLXNjb3JlLWRpc3BsYXkgeyBmb250LXNpemU6IGNhbGMoMiAqIHZhcigtLXRpbGUtc2l6ZSkpOyBvcmRlcjogMTsgfVxuZGl2LnRvdGFsLXNjb3JlLWRpc3BsYXkuc21hbGwgeyBmb250LXNpemU6IGNhbGMoMS4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpOyB9XG5kaXYudG90YWwtc2NvcmUtbmFtZS1kaXNwbGF5IHsgZm9udC1zaXplOiBjYWxjKDEuMiAqIHZhcigtLXRpbGUtc2l6ZSkpOyBvcmRlcjogMTsgfVxuZGl2LnRvdGFsLXNjb3JlLW5hbWUtZGlzcGxheS5zbWFsbCB7IGZvbnQtc2l6ZTogY2FsYygxICogdmFyKC0tdGlsZS1zaXplKSk7IH1cbmRpdi50b3RhbC1oYW4tZGlzcGxheTo6YmVmb3JlLFxuZGl2LnRvdGFsLWZ1LWRpc3BsYXk6OmJlZm9yZSxcbmRpdi50b3RhbC1zY29yZS1kaXNwbGF5OjpiZWZvcmUsXG5kaXYudG90YWwtc2NvcmUtbmFtZS1kaXNwbGF5OjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxNTAlO1xuICBoZWlnaHQ6IDE0MCU7XG4gIGxlZnQ6IC0yNSU7XG4gIGJvdHRvbTogLTcuNSU7XG4gIHotaW5kZXg6IC0xO1xufVxuZGl2LnRvdGFsLWZ1LWRpc3BsYXk6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHdpZHRoOiAxNjAlO1xuICBsZWZ0OiAtMzUlO1xuICBib3R0b206IC0zNSU7XG59XG5kaXYudG90YWwtc2NvcmUtZGlzcGxheTo6YmVmb3JlIHtcbiAgd2lkdGg6IDE4MCU7XG4gIGhlaWdodDogMTYwJTtcbiAgbGVmdDogLTQwJTtcbn1cbmRpdi50b3RhbC1zY29yZS1uYW1lLWRpc3BsYXkge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjBkZWcpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDI7XG59XG5kaXYudG90YWwtc2NvcmUtbmFtZS1kaXNwbGF5OjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB3aWR0aDogMTQwJTtcbiAgaGVpZ2h0OiAxMjAlO1xuICBsZWZ0OiAtMjAlO1xuICBib3R0b206IC0xNSU7XG59XG5cbi8qIGRlbHRhIHNjb3JlIHdpbmRvdyAqL1xuZGl2LmdhbWUtbW9kYWwgPiBkaXYuZGVsdGEtc2NvcmUtcmVhc29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LXNpemU6IGNhbGMoMS4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB6LWluZGV4OiAzO1xufVxuZGl2LmdhbWUtbW9kYWwgPiBkaXYuZGVsdGEtc2NvcmUtcmVhc29uOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2JydXNoLWJnLnN2Zyk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgY2FsYyg1MCUgKyB2YXIoLS10aWxlLXNpemUpKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygzICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogY2FsYygtMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHotaW5kZXg6IC0xO1xufVxuZGl2LmdhbWUtbW9kYWwgPiBkaXYuZGVsdGEtc2NvcmUge1xuICBsaW5lLWhlaWdodDogMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LXNpemU6IGNhbGMoMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHotaW5kZXg6IDI7XG59XG5kaXYuZ2FtZS1tb2RhbCA+IGRpdi5kZWx0YS1zY29yZS5zZWxmIHsgYm90dG9tOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTsgbGVmdDogY2FsYygtNTAlICsgMTEgKiB2YXIoLS10aWxlLXNpemUpKTt9XG5kaXYuZ2FtZS1tb2RhbCA+IGRpdi5kZWx0YS1zY29yZS5rYW1pY2hhIHsgbGVmdDogY2FsYygxLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7IHRvcDogY2FsYygtNTAlICsgMTIgKiB2YXIoLS10aWxlLXNpemUpKTsgfVxuZGl2LmdhbWUtbW9kYWwgPiBkaXYuZGVsdGEtc2NvcmUudG9pbWVuIHsgdG9wOiBjYWxjKDIuMjUgKiB2YXIoLS10aWxlLXNpemUpKTsgbGVmdDogY2FsYygtNTAlICsgMTEgKiB2YXIoLS10aWxlLXNpemUpKTt9XG5kaXYuZ2FtZS1tb2RhbCA+IGRpdi5kZWx0YS1zY29yZS5zaGltb2NoYSB7IHJpZ2h0OiBjYWxjKDEuMjUgKiB2YXIoLS10aWxlLXNpemUpKTsgdG9wOiBjYWxjKC01MCUgKyAxMiAqIHZhcigtLXRpbGUtc2l6ZSkpOyB9XG5kaXYuZ2FtZS1tb2RhbCA+IGRpdi5kZWx0YS1zY29yZSA+IGRpdi5obGluZTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgd2lkdGg6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IGNhbGMoMC4wNjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYuZ2FtZS1tb2RhbCA+IGRpdi5kZWx0YS1zY29yZTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9icnVzaC1iZzIuc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSBjYWxjKDUwJSArIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB3aWR0aDogY2FsYyg2ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogY2FsYyg2ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHotaW5kZXg6IC0xO1xufVxuZGl2LmdhbWUtbW9kYWwgPiBkaXYuZGVsdGEtc2NvcmUuc2VsZjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gMi41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvdHRvbTogY2FsYyg1MCUgLSAyLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYuZ2FtZS1tb2RhbCA+IGRpdi5kZWx0YS1zY29yZS5rYW1pY2hhOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gMy41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvdHRvbTogY2FsYyg1MCUgLSAyLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5nYW1lLW1vZGFsID4gZGl2LmRlbHRhLXNjb3JlLnRvaW1lbjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgbGVmdDogY2FsYyg1MCUgLSAzICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvdHRvbTogY2FsYyg1MCUgLSAxLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5nYW1lLW1vZGFsID4gZGl2LmRlbHRhLXNjb3JlLnNoaW1vY2hhOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICBsZWZ0OiBjYWxjKDUwJSAtIDIuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBib3R0b206IGNhbGMoNTAlIC0gMS41ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYuZ2FtZS1tb2RhbCA+IGRpdi5kZWx0YS1zY29yZSA+IGRpdi5pbml0aWFsIHsgY29sb3I6IGdyYXk7IH1cbmRpdi5nYW1lLW1vZGFsID4gZGl2LmRlbHRhLXNjb3JlID4gZGl2LmNoYW5nZS5wb3NpdGl2ZSB7IGNvbG9yOiBncmVlbjsgfVxuZGl2LmdhbWUtbW9kYWwgPiBkaXYuZGVsdGEtc2NvcmUgPiBkaXYuY2hhbmdlLm5lZ2F0aXZlIHsgY29sb3I6IHJlZDsgfVxuZGl2LmdhbWUtbW9kYWwgPiBkaXYuZGVsdGEtc2NvcmUgPiBkaXYucmVzdWx0IHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoMC4xMjUgKiB2YXIoLS10aWxlLXNpemUpKSk7IH1cblxuLyogZ2FtZSBlbmQgdGltZXIgKi9cblxuZGl2LmdhbWUtbW9kYWwtY29udGFpbmVyID4gZGl2LnRpbWVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBmb250LXNpemU6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHJpZ2h0OiBjYWxjKC0wLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvdHRvbTogY2FsYygtMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMC43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHotaW5kZXg6IDE7XG59XG5cbi8qIGVycm9yIGJveCAqL1xuZGl2LmdhbWUtbW9kYWwuZXJyb3Itd2luZG93IHtcbiAgY29sb3I6IHdoaXRlO1xufVxuZGl2LmdhbWUtbW9kYWwuZXJyb3Itd2luZG93ID4gaDEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuZGl2LmdhbWUtbW9kYWwuZXJyb3Itd2luZG93ID4gdGV4dGFyZWEuZXJyb3Ige1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gNCAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0b3A6IGNhbGMoMiAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiAwO1xufVxuZGl2LmdhbWUtbW9kYWwuZXJyb3Itd2luZG93OjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiByZWQ7XG59XG5cbi8qIGdhbWUgY29uY2x1ZGVkIHdpbmRvdyAqL1xuZGl2LnNjb3JlYm9hcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICByb3ctZ2FwOiB2YXIoLS10aWxlLXNpemUpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS10aWxlLXNpemUpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS10aWxlLXNpemUpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCAtIDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5wbGFjZW1lbnQgPiBkaXYucGxhY2VtZW50LXBsYWNlLFxuZGl2LnBsYWNlbWVudCA+IGRpdi5wbGFjZW1lbnQtbmFtZSB7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjYgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgaGVpZ2h0OiAxLjJlbTtcbn1cbmRpdi5wbGFjZW1lbnQgPiBkaXYucGxhY2VtZW50LW5hbWU6OmJlZm9yZSB7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coY2FsYyh2YXIoLS10aWxlLXNpemUpIC8gLTgpIGNhbGModmFyKC0tdGlsZS1zaXplKSAvIC0xNikgMCB2YXIoLS10aWxlLWZyb250LXNpZGUpKVxuICAgICAgICAgIGRyb3Atc2hhZG93KGNhbGModmFyKC0tdGlsZS1zaXplKSAvIC04KSBjYWxjKHZhcigtLXRpbGUtc2l6ZSkgLyAtMTYpIDAgdmFyKC0tdGlsZS1iYWNrLXNpZGUpKTtcbn1cbmRpdi5wbGFjZW1lbnQgeyBkaXNwbGF5OiBmbGV4OyB1c2VyLXNlbGVjdDogbm9uZTsgfVxuZGl2LnBsYWNlbWVudDpudGgtY2hpbGQoMSkgeyBtYXJnaW4tbGVmdDogY2FsYygwICogdmFyKC0tdGlsZS1zaXplKSk7IH1cbmRpdi5wbGFjZW1lbnQ6bnRoLWNoaWxkKDIpIHsgbWFyZ2luLWxlZnQ6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7IH1cbmRpdi5wbGFjZW1lbnQ6bnRoLWNoaWxkKDMpIHsgbWFyZ2luLWxlZnQ6IGNhbGMoMSAqIHZhcigtLXRpbGUtc2l6ZSkpOyB9XG5kaXYucGxhY2VtZW50Om50aC1jaGlsZCg0KSB7IG1hcmdpbi1sZWZ0OiBjYWxjKDEuNSAqIHZhcigtLXRpbGUtc2l6ZSkpOyB9XG5kaXYucGxhY2VtZW50ID4gZGl2LnBsYWNlbWVudC1uYW1lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IGNhbGMoMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMS43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB6LWluZGV4OiAxO1xufVxuZGl2LnBsYWNlbWVudCA+IGRpdi5wbGFjZW1lbnQtbmFtZTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICB6LWluZGV4OiAtMTtcbiAgYmFja2dyb3VuZDogdmFyKC0tdGlsZS1mcm9udCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjEyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiAtMTAlO1xuICBoZWlnaHQ6IDExMCU7XG4gIHRvcDogMCU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDJkZWcpO1xufVxuZGl2LnBsYWNlbWVudCA+IGRpdi5wbGFjZW1lbnQtcGxhY2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKHZhcigtLXRpbGUtc2l6ZSkpIHJvdGF0ZSgtMjBkZWcpO1xuICB6LWluZGV4OiAyO1xufVxuZGl2LnBsYWNlbWVudCA+IGRpdi5wbGFjZW1lbnQtcGxhY2U6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvYnJ1c2gtYmcuc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGxlZnQ6IC00MCU7XG4gIHRvcDogLTMwJTtcbiAgd2lkdGg6IDE4MCU7XG4gIGhlaWdodDogMTQwJTtcbiAgei1pbmRleDogLTE7XG59XG5kaXYucGxhY2VtZW50IHNwYW4ucGxhY2VtZW50LXNjb3JlIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5cblxuXG4vKiBydWxlc2V0IHRleHRib3ggKi9cbmRpdi5ydWxlc2V0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwdmggKyAoMiAqIHZhcigtLXRpbGUtc2l6ZSkpICsgMS4yZW0pO1xuICBsZWZ0OiBjYWxjKDUwJSAtIG1pbig5MHZ3LCA4MHZoKSAvIDIpO1xuICB3aWR0aDogbWluKDkwdncsIDgwdmgpO1xuICBoZWlnaHQ6IGNhbGMoMjAgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdXNlci1zZWxlY3Q6IHRleHQ7XG59XG5kaXYucnVsZXNldCA+IGRpdi5ydWxlc2V0LXRleHQge1xuICBjb250ZW50OiBcIlJ1bGVzZXQ6XCI7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbi8qIGxhbmRzY2FwZSAqL1xuQG1lZGlhIChtaW4tYXNwZWN0LXJhdGlvOiA2LzUpIHtcbiAgZGl2LnJ1bGVzZXQge1xuICAgIHdpZHRoOiBjYWxjKG1pbig5MHZ3LCA4MHZoKSArIDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkgKyBtaW4oNTAlLCBjYWxjKDQwdncgLSAyMCUgLSAwLjUgKiB2YXIoLS10aWxlLXNpemUpKSkpO1xuICB9XG59XG5cblxuXG5cblxuLyogc2FraSBjYXJkcyAqL1xuLyogVE9ETyBjaGVjayB3aHkgaG92ZXJpbmcgY29ybmVyIGluZm8gbGVhZHMgdG8gZmxpY2tlcmluZyBkcm9wLXNoYWRvdyAqL1xuZGl2LnNha2ktY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IHZhcigtLWNhcmQtd2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLWNhcmQtaGVpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjE1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB6LWluZGV4OiAwO1xufVxuZGl2LnNha2ktY2FyZDpob3ZlciB7XG4gIHotaW5kZXg6IDE7XG59XG5sYWJlbC5tb2Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5kaXYuc2FraS1jYXJkOjpiZWZvcmUsIGRpdi5zYWtpLWNhcmQ6OmFmdGVyLCBsYWJlbC5tb2Q6OmJlZm9yZSwgbGFiZWwubW9kOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgd2lkdGg6IHZhcigtLWNhcmQtd2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLWNhcmQtaGVpZ2h0KTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGxlZnQ6IC0zNTAlO1xuICBib3R0b206IDUwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7XG4gIHotaW5kZXg6IDEwO1xuICBjb250ZW50OiBub25lO1xufVxubGFiZWwubW9kOmhvdmVyOjpiZWZvcmUgeyBsZWZ0OiAwOyB9XG5sYWJlbC5tb2Q6aG92ZXI6OmFmdGVyIHsgbGVmdDogY2FsYygxICogdmFyKC0tY2FyZC13aWR0aCkpOyB9XG5sYWJlbC5tb2Q6aG92ZXI6OmJlZm9yZSwgbGFiZWwubW9kOmhvdmVyOjphZnRlciB7IHRvcDogY2FsYygtMSAqIHZhcigtLWNhcmQtaGVpZ2h0KSk7IH1cbmRpdi5zYWtpLWNhcmQ6aG92ZXI6OmJlZm9yZSwgbGFiZWwubW9kOmhvdmVyOjpiZWZvcmUgeyBjb250ZW50OiBcIlwiOyB9XG5kaXYuc2FraS1jYXJkLnYxMiwgbGFiZWwubW9kLnYxMjo6YmVmb3JlLCBsYWJlbC5tb2QudjEyOjphZnRlciB7XG4gIC0tY2FyZC13aWR0aDogY2FsYygwLjg5ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIC0tY2FyZC1oZWlnaHQ6IGNhbGMoMS4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvaW1hZ2VzL3Nha2ljYXJkc3YxMi5wbmdcIikgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gY2FsYyg2ICogdmFyKC0tY2FyZC1oZWlnaHQpKTtcbn1cbmRpdi5zYWtpLWNhcmQudjEzLCBsYWJlbC5tb2QudjEzOjpiZWZvcmUsIGxhYmVsLm1vZC52MTM6OmFmdGVyIHtcbiAgLS1jYXJkLXdpZHRoOiBjYWxjKDAuODY1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIC0tY2FyZC1oZWlnaHQ6IGNhbGMoMS4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvaW1hZ2VzL3Nha2ljYXJkc3YxMy5wbmdcIikgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gY2FsYyg3ICogdmFyKC0tY2FyZC1oZWlnaHQpKTtcbn1cbmRpdi5zYWtpLWNhcmQudjEyOjpiZWZvcmUsIGRpdi5zYWtpLWNhcmQudjEyOjphZnRlciwgbGFiZWwubW9kLnYxMjo6YWZ0ZXIsIGxhYmVsLm1vZC52MTI6OmJlZm9yZSwgbGFiZWwubW9kLnYxMjo6YWZ0ZXIge1xuICAtLWNhcmQtd2lkdGg6IGNhbGMoNy4xMiAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICAtLWNhcmQtaGVpZ2h0OiBjYWxjKDEwICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byBjYWxjKDYgKiB2YXIoLS1jYXJkLWhlaWdodCkpO1xufVxuZGl2LnNha2ktY2FyZC52MTM6OmJlZm9yZSwgZGl2LnNha2ktY2FyZC52MTM6OmFmdGVyLCBsYWJlbC5tb2QudjEzOjphZnRlciwgbGFiZWwubW9kLnYxMzo6YmVmb3JlLCBsYWJlbC5tb2QudjEzOjphZnRlciB7XG4gIC0tY2FyZC13aWR0aDogY2FsYyg2LjkyICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIC0tY2FyZC1oZWlnaHQ6IGNhbGMoMTAgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIGNhbGMoNyAqIHZhcigtLWNhcmQtaGVpZ2h0KSk7XG59XG5kaXYuc2FraS1jYXJkLnYxMi5haXNsaW5uLXdpc2hhcnQsIGRpdi5zYWtpLWNhcmQudjEyLmFpc2xpbm4td2lzaGFydDo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLmFpc2xpbm4td2lzaGFydDo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5hbWFlLWtvcm9tbywgZGl2LnNha2ktY2FyZC52MTIuYW1hZS1rb3JvbW86OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5hbWFlLWtvcm9tbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5hbmV0YWktdG95b25lLCBkaXYuc2FraS1jYXJkLnYxMi5hbmV0YWktdG95b25lOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIuYW5ldGFpLXRveW9uZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5hcmFrYXdhLWtlaSwgZGl2LnNha2ktY2FyZC52MTIuYXJha2F3YS1rZWk6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5hcmFrYXdhLWtlaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5hdGFnby1oaXJvZSwgZGl2LnNha2ktY2FyZC52MTIuYXRhZ28taGlyb2U6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5hdGFnby1oaXJvZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5hdGFyYXNoaS1ha28sIGRpdi5zYWtpLWNhcmQudjEyLmF0YXJhc2hpLWFrbzo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLmF0YXJhc2hpLWFrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5jaG9lLW15ZW9uZ2h3YSwgZGl2LnNha2ktY2FyZC52MTIuY2hvZS1teWVvbmdod2E6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5jaG9lLW15ZW9uZ2h3YTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5lemFraS1oaXRvbWksIGRpdi5zYWtpLWNhcmQudjEyLmV6YWtpLWhpdG9taTo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLmV6YWtpLWhpdG9taTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5mdWt1amktbWlob2tvLCBkaXYuc2FraS1jYXJkLnYxMi5mdWt1amktbWlob2tvOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIuZnVrdWppLW1paG9rbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5oYW5hZGEta2lyYW1lLCBkaXYuc2FraS1jYXJkLnYxMi5oYW5hZGEta2lyYW1lOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIuaGFuYWRhLWtpcmFtZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5oYW8taHVpeXUsIGRpdi5zYWtpLWNhcmQudjEyLmhhby1odWl5dTo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLmhhby1odWl5dTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5oYXJhbXVyYS1ub2Rva2EsIGRpdi5zYWtpLWNhcmQudjEyLmhhcmFtdXJhLW5vZG9rYTo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLmhhcmFtdXJhLW5vZG9rYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5oaXJvc2Utc3VtaXJlLCBkaXYuc2FraS1jYXJkLnYxMi5oaXJvc2Utc3VtaXJlOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIuaGlyb3NlLXN1bWlyZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5pa2VkYS1rYW5hLCBkaXYuc2FraS1jYXJkLnYxMi5pa2VkYS1rYW5hOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIuaWtlZGEta2FuYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5pbm91ZS1qdW4sIGRpdi5zYWtpLWNhcmQudjEyLmlub3VlLWp1bjo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLmlub3VlLWp1bjo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5pd2F0by1rYXN1bWksIGRpdi5zYWtpLWNhcmQudjEyLml3YXRvLWthc3VtaTo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLml3YXRvLWthc3VtaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5qaW5kYWkta29tYWtpLCBkaXYuc2FraS1jYXJkLnYxMi5qaW5kYWkta29tYWtpOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIuamluZGFpLWtvbWFraTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5rYWppa2kteXVtaSwgZGl2LnNha2ktY2FyZC52MTIua2FqaWtpLXl1bWk6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5rYWppa2kteXVtaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5rYWlub3UteW9zaGlrbywgZGl2LnNha2ktY2FyZC52MTIua2Fpbm91LXlvc2hpa286OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5rYWlub3UteW9zaGlrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5rYWt1cmEta3VydW1pLCBkaXYuc2FraS1jYXJkLnYxMi5rYWt1cmEta3VydW1pOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIua2FrdXJhLWt1cnVtaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5rYW5iYXJhLXNhdG9taSwgZGl2LnNha2ktY2FyZC52MTIua2FuYmFyYS1zYXRvbWk6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5rYW5iYXJhLXNhdG9taTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5rYXJpanVrdS10b21vZSwgZGl2LnNha2ktY2FyZC52MTIua2FyaWp1a3UtdG9tb2U6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5rYXJpanVrdS10b21vZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5rYXRhb2thLXl1dWtpLCBkaXYuc2FraS1jYXJkLnYxMi5rYXRhb2thLXl1dWtpOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIua2F0YW9rYS15dXVraTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5rb3NlZ2F3YS1zaGlyb21pLCBkaXYuc2FraS1jYXJkLnYxMi5rb3NlZ2F3YS1zaGlyb21pOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIua29zZWdhd2Etc2hpcm9taTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5rdW5paGlyby1oYWppbWUsIGRpdi5zYWtpLWNhcmQudjEyLmt1bmloaXJvLWhhamltZTo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLmt1bmloaXJvLWhhamltZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5tYXNlLXl1dWtvLCBkaXYuc2FraS1jYXJkLnYxMi5tYXNlLXl1dWtvOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIubWFzZS15dXVrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5tYXRhbm8tc2Vpa28sIGRpdi5zYWtpLWNhcmQudjEyLm1hdGFuby1zZWlrbzo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLm1hdGFuby1zZWlrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5tYXRzdW1pLWt1cm8sIGRpdi5zYWtpLWNhcmQudjEyLm1hdHN1bWkta3Vybzo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLm1hdHN1bWkta3Vybzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5tYXRzdW1pLXl1dSwgZGl2LnNha2ktY2FyZC52MTIubWF0c3VtaS15dXU6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5tYXRzdW1pLXl1dTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5tYXlhLXl1a2lrbywgZGl2LnNha2ktY2FyZC52MTIubWF5YS15dWtpa286OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5tYXlhLXl1a2lrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5tZWdhbi1kYXZpbiwgZGl2LnNha2ktY2FyZC52MTIubWVnYW4tZGF2aW46OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5tZWdhbi1kYXZpbjo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5taXlhbmFnYS1zYWtpLCBkaXYuc2FraS1jYXJkLnYxMi5taXlhbmFnYS1zYWtpOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIubWl5YW5hZ2Etc2FraTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5taXlhbmFnYS10ZXJ1LCBkaXYuc2FraS1jYXJkLnYxMi5taXlhbmFnYS10ZXJ1OjpiZWZvcmUsIGxhYmVsLm1vZC52MTIubWl5YW5hZ2EtdGVydTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5uYW5wby1rYXp1ZSwgZGl2LnNha2ktY2FyZC52MTIubmFucG8ta2F6dWU6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5uYW5wby1rYXp1ZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5uZWxseS12aXJzYWxhZHplLCBkaXYuc2FraS1jYXJkLnYxMi5uZWxseS12aXJzYWxhZHplOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIubmVsbHktdmlyc2FsYWR6ZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5vbmpvdWppLXRva2ksIGRpdi5zYWtpLWNhcmQudjEyLm9uam91amktdG9raTo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLm9uam91amktdG9raTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5vb2hvc2hpLWF3YWksIGRpdi5zYWtpLWNhcmQudjEyLm9vaG9zaGktYXdhaTo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLm9vaG9zaGktYXdhaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5yeXV1bW9uYnVjaGktdG91a2EsIGRpdi5zYWtpLWNhcmQudjEyLnJ5dXVtb25idWNoaS10b3VrYTo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLnJ5dXVtb25idWNoaS10b3VrYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5zYWdpbW9yaS1hcmF0YSwgZGl2LnNha2ktY2FyZC52MTIuc2FnaW1vcmktYXJhdGE6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5zYWdpbW9yaS1hcmF0YTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5zYXdhbXVyYS10b21va2ksIGRpdi5zYWtpLWNhcmQudjEyLnNhd2FtdXJhLXRvbW9raTo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLnNhd2FtdXJhLXRvbW9raTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5zZW5vby1rYW9yaSwgZGl2LnNha2ktY2FyZC52MTIuc2Vub28ta2Fvcmk6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5zZW5vby1rYW9yaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5zaGlidXlhLXRha2FtaSwgZGl2LnNha2ktY2FyZC52MTIuc2hpYnV5YS10YWthbWk6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5zaGlidXlhLXRha2FtaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5zaGltaXp1ZGFuaS1yeXV1a2EsIGRpdi5zYWtpLWNhcmQudjEyLnNoaW1penVkYW5pLXJ5dXVrYTo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLnNoaW1penVkYW5pLXJ5dXVrYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5zaGlyb3V6dS1tYWlydSwgZGl2LnNha2ktY2FyZC52MTIuc2hpcm91enUtbWFpcnU6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5zaGlyb3V6dS1tYWlydTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi5zb21leWEtbWFrbywgZGl2LnNha2ktY2FyZC52MTIuc29tZXlhLW1ha286OmJlZm9yZSwgbGFiZWwubW9kLnYxMi5zb21leWEtbWFrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi50YWtha2Ftby1zaGl6dW5vLCBkaXYuc2FraS1jYXJkLnYxMi50YWtha2Ftby1zaGl6dW5vOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIudGFrYWthbW8tc2hpenVubzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi50YWtlaS1oaXNhLCBkaXYuc2FraS1jYXJkLnYxMi50YWtlaS1oaXNhOjpiZWZvcmUsIGxhYmVsLm1vZC52MTIudGFrZWktaGlzYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi50YWtpbWktaGFydSwgZGl2LnNha2ktY2FyZC52MTIudGFraW1pLWhhcnU6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi50YWtpbWktaGFydTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi50b3lvdWtvLW1vbW9rbywgZGl2LnNha2ktY2FyZC52MTIudG95b3Vrby1tb21va286OmJlZm9yZSwgbGFiZWwubW9kLnYxMi50b3lvdWtvLW1vbW9rbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi50c3VqaWdhaXRvLXNhdG9oYSwgZGl2LnNha2ktY2FyZC52MTIudHN1amlnYWl0by1zYXRvaGE6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi50c3VqaWdhaXRvLXNhdG9oYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi50c3VydXRhLWhpbWVrbywgZGl2LnNha2ktY2FyZC52MTIudHN1cnV0YS1oaW1la286OmJlZm9yZSwgbGFiZWwubW9kLnYxMi50c3VydXRhLWhpbWVrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi51c3V6YXdhLXNhZSwgZGl2LnNha2ktY2FyZC52MTIudXN1emF3YS1zYWU6OmJlZm9yZSwgbGFiZWwubW9kLnYxMi51c3V6YXdhLXNhZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi51c3V6dW1pLWhhdHN1bWksIGRpdi5zYWtpLWNhcmQudjEyLnVzdXp1bWktaGF0c3VtaTo6YmVmb3JlLCBsYWJlbC5tb2QudjEyLnVzdXp1bWktaGF0c3VtaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi55dW1lbm8tbWFobywgZGl2LnNha2ktY2FyZC52MTIueXVtZW5vLW1haG86OmJlZm9yZSwgbGFiZWwubW9kLnYxMi55dW1lbm8tbWFobzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5haXNsaW5uLXdpc2hhcnQsIGRpdi5zYWtpLWNhcmQudjEzLmFpc2xpbm4td2lzaGFydDo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLmFpc2xpbm4td2lzaGFydDo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5hbWFlLWtvcm9tbywgZGl2LnNha2ktY2FyZC52MTMuYW1hZS1rb3JvbW86OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5hbWFlLWtvcm9tbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5hbmV0YWktdG95b25lLCBkaXYuc2FraS1jYXJkLnYxMy5hbmV0YWktdG95b25lOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMuYW5ldGFpLXRveW9uZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5hcmFrYXdhLWtlaSwgZGl2LnNha2ktY2FyZC52MTMuYXJha2F3YS1rZWk6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5hcmFrYXdhLWtlaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5hdGFnby1oaXJvZSwgZGl2LnNha2ktY2FyZC52MTMuYXRhZ28taGlyb2U6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5hdGFnby1oaXJvZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5hdGFnby1raW51ZSwgZGl2LnNha2ktY2FyZC52MTMuYXRhZ28ta2ludWU6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5hdGFnby1raW51ZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5hdGFyYXNoaS1ha28sIGRpdi5zYWtpLWNhcmQudjEzLmF0YXJhc2hpLWFrbzo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLmF0YXJhc2hpLWFrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5jaG9lLW15ZW9uZ2h3YSwgZGl2LnNha2ktY2FyZC52MTMuY2hvZS1teWVvbmdod2E6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5jaG9lLW15ZW9uZ2h3YTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5lemFraS1oaXRvbWksIGRpdi5zYWtpLWNhcmQudjEzLmV6YWtpLWhpdG9taTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLmV6YWtpLWhpdG9taTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTAgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5mdWt1amktbWlob2tvLCBkaXYuc2FraS1jYXJkLnYxMy5mdWt1amktbWlob2tvOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMuZnVrdWppLW1paG9rbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5mdW5ha3Viby1oaXJva28sIGRpdi5zYWtpLWNhcmQudjEzLmZ1bmFrdWJvLWhpcm9rbzo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLmZ1bmFrdWJvLWhpcm9rbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5oYW5hZGEta2lyYW1lLCBkaXYuc2FraS1jYXJkLnYxMy5oYW5hZGEta2lyYW1lOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMuaGFuYWRhLWtpcmFtZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5oYW8taHVpeXUsIGRpdi5zYWtpLWNhcmQudjEzLmhhby1odWl5dTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLmhhby1odWl5dTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5oYXJhbXVyYS1ub2Rva2EsIGRpdi5zYWtpLWNhcmQudjEzLmhhcmFtdXJhLW5vZG9rYTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLmhhcmFtdXJhLW5vZG9rYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5oaXJvc2Utc3VtaXJlLCBkaXYuc2FraS1jYXJkLnYxMy5oaXJvc2Utc3VtaXJlOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMuaGlyb3NlLXN1bWlyZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5pa2VkYS1rYW5hLCBkaXYuc2FraS1jYXJkLnYxMy5pa2VkYS1rYW5hOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMuaWtlZGEta2FuYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5pbm91ZS1qdW4sIGRpdi5zYWtpLWNhcmQudjEzLmlub3VlLWp1bjo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLmlub3VlLWp1bjo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5pd2FkYXRlLXl1YW4sIGRpdi5zYWtpLWNhcmQudjEzLml3YWRhdGUteXVhbjo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLml3YWRhdGUteXVhbjo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTEgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5pd2F0by1rYXN1bWksIGRpdi5zYWtpLWNhcmQudjEzLml3YXRvLWthc3VtaTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLml3YXRvLWthc3VtaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5qaW5kYWkta29tYWtpLCBkaXYuc2FraS1jYXJkLnYxMy5qaW5kYWkta29tYWtpOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMuamluZGFpLWtvbWFraTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5rYWppa2kteXVtaSwgZGl2LnNha2ktY2FyZC52MTMua2FqaWtpLXl1bWk6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5rYWppa2kteXVtaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5rYWlub3UteW9zaGlrbywgZGl2LnNha2ktY2FyZC52MTMua2Fpbm91LXlvc2hpa286OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5rYWlub3UteW9zaGlrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5rYWt1cmEta3VydW1pLCBkaXYuc2FraS1jYXJkLnYxMy5rYWt1cmEta3VydW1pOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMua2FrdXJhLWt1cnVtaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5rYW5iYXJhLXNhdG9taSwgZGl2LnNha2ktY2FyZC52MTMua2FuYmFyYS1zYXRvbWk6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5rYW5iYXJhLXNhdG9taTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5rYXJpanVrdS10b21vZSwgZGl2LnNha2ktY2FyZC52MTMua2FyaWp1a3UtdG9tb2U6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5rYXJpanVrdS10b21vZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5rYXRhb2thLXl1dWtpLCBkaXYuc2FraS1jYXJkLnYxMy5rYXRhb2thLXl1dWtpOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMua2F0YW9rYS15dXVraTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5rb3NlZ2F3YS1zaGlyb21pLCBkaXYuc2FraS1jYXJkLnYxMy5rb3NlZ2F3YS1zaGlyb21pOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMua29zZWdhd2Etc2hpcm9taTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5rdW5paGlyby1oYWppbWUsIGRpdi5zYWtpLWNhcmQudjEzLmt1bmloaXJvLWhhamltZTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLmt1bmloaXJvLWhhamltZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5tYXNlLXl1dWtvLCBkaXYuc2FraS1jYXJkLnYxMy5tYXNlLXl1dWtvOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMubWFzZS15dXVrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5tYXRhbm8tc2Vpa28sIGRpdi5zYWtpLWNhcmQudjEzLm1hdGFuby1zZWlrbzo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLm1hdGFuby1zZWlrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5tYXRzdW1pLWt1cm8sIGRpdi5zYWtpLWNhcmQudjEzLm1hdHN1bWkta3Vybzo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLm1hdHN1bWkta3Vybzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5tYXRzdW1pLXl1dSwgZGl2LnNha2ktY2FyZC52MTMubWF0c3VtaS15dXU6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5tYXRzdW1pLXl1dTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5tYXlhLXl1a2lrbywgZGl2LnNha2ktY2FyZC52MTMubWF5YS15dWtpa286OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5tYXlhLXl1a2lrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5tZWdhbi1kYXZpbiwgZGl2LnNha2ktY2FyZC52MTMubWVnYW4tZGF2aW46OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5tZWdhbi1kYXZpbjo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5taXlhbmFnYS1zYWtpLCBkaXYuc2FraS1jYXJkLnYxMy5taXlhbmFnYS1zYWtpOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMubWl5YW5hZ2Etc2FraTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5taXlhbmFnYS10ZXJ1LCBkaXYuc2FraS1jYXJkLnYxMy5taXlhbmFnYS10ZXJ1OjpiZWZvcmUsIGxhYmVsLm1vZC52MTMubWl5YW5hZ2EtdGVydTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTMgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5tb3RvdWNoaS1uYXJ1a2EsIGRpdi5zYWtpLWNhcmQudjEzLm1vdG91Y2hpLW5hcnVrYTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLm1vdG91Y2hpLW5hcnVrYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5uYW5wby1rYXp1ZSwgZGl2LnNha2ktY2FyZC52MTMubmFucG8ta2F6dWU6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5uYW5wby1rYXp1ZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5uZWxseS12aXJzYWxhZHplLCBkaXYuc2FraS1jYXJkLnYxMy5uZWxseS12aXJzYWxhZHplOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMubmVsbHktdmlyc2FsYWR6ZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5vbmpvdWppLXRva2ksIGRpdi5zYWtpLWNhcmQudjEzLm9uam91amktdG9raTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLm9uam91amktdG9raTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5vb2hvc2hpLWF3YWksIGRpdi5zYWtpLWNhcmQudjEzLm9vaG9zaGktYXdhaTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLm9vaG9zaGktYXdhaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5yeXV1bW9uYnVjaGktdG91a2EsIGRpdi5zYWtpLWNhcmQudjEzLnJ5dXVtb25idWNoaS10b3VrYTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLnJ5dXVtb25idWNoaS10b3VrYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5zYWdpbW9yaS1hcmF0YSwgZGl2LnNha2ktY2FyZC52MTMuc2FnaW1vcmktYXJhdGE6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5zYWdpbW9yaS1hcmF0YTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5zYXdhbXVyYS10b21va2ksIGRpdi5zYWtpLWNhcmQudjEzLnNhd2FtdXJhLXRvbW9raTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLnNhd2FtdXJhLXRvbW9raTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5zZW5vby1rYW9yaSwgZGl2LnNha2ktY2FyZC52MTMuc2Vub28ta2Fvcmk6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5zZW5vby1rYW9yaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTQgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5zaGlidXlhLXRha2FtaSwgZGl2LnNha2ktY2FyZC52MTMuc2hpYnV5YS10YWthbWk6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5zaGlidXlhLXRha2FtaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5zaGltaXp1ZGFuaS1yeXV1a2EsIGRpdi5zYWtpLWNhcmQudjEzLnNoaW1penVkYW5pLXJ5dXVrYTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLnNoaW1penVkYW5pLXJ5dXVrYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5zaGlyb3V6dS1tYWlydSwgZGl2LnNha2ktY2FyZC52MTMuc2hpcm91enUtbWFpcnU6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5zaGlyb3V6dS1tYWlydTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5zaGlzaGloYXJhLXNhd2F5YSwgZGl2LnNha2ktY2FyZC52MTMuc2hpc2hpaGFyYS1zYXdheWE6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5zaGlzaGloYXJhLXNhd2F5YTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5zb21leWEtbWFrbywgZGl2LnNha2ktY2FyZC52MTMuc29tZXlhLW1ha286OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5zb21leWEtbWFrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy5zdWVoYXJhLWt5b3VrbywgZGl2LnNha2ktY2FyZC52MTMuc3VlaGFyYS1reW91a286OmJlZm9yZSwgbGFiZWwubW9kLnYxMy5zdWVoYXJhLWt5b3Vrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy50YWtha2Ftby1zaGl6dW5vLCBkaXYuc2FraS1jYXJkLnYxMy50YWtha2Ftby1zaGl6dW5vOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMudGFrYWthbW8tc2hpenVubzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy50YWtlaS1oaXNhLCBkaXYuc2FraS1jYXJkLnYxMy50YWtlaS1oaXNhOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMudGFrZWktaGlzYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy50YWtpbWktaGFydSwgZGl2LnNha2ktY2FyZC52MTMudGFraW1pLWhhcnU6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy50YWtpbWktaGFydTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy50b3lvdWtvLW1vbW9rbywgZGl2LnNha2ktY2FyZC52MTMudG95b3Vrby1tb21va286OmJlZm9yZSwgbGFiZWwubW9kLnYxMy50b3lvdWtvLW1vbW9rbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0wICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTYgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy50c3VqaWdhaXRvLXNhdG9oYSwgZGl2LnNha2ktY2FyZC52MTMudHN1amlnYWl0by1zYXRvaGE6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy50c3VqaWdhaXRvLXNhdG9oYTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0xICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTYgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy50c3VydXRhLWhpbWVrbywgZGl2LnNha2ktY2FyZC52MTMudHN1cnV0YS1oaW1la286OmJlZm9yZSwgbGFiZWwubW9kLnYxMy50c3VydXRhLWhpbWVrbzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0yICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTYgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy51ZXNoaWdlLXN1enUsIGRpdi5zYWtpLWNhcmQudjEzLnVlc2hpZ2Utc3V6dTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLnVlc2hpZ2Utc3V6dTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC0zICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTYgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy51c3V6YXdhLXNhZSwgZGl2LnNha2ktY2FyZC52MTMudXN1emF3YS1zYWU6OmJlZm9yZSwgbGFiZWwubW9kLnYxMy51c3V6YXdhLXNhZTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC00ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTYgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy51c3V6dW1pLWhhdHN1bWksIGRpdi5zYWtpLWNhcmQudjEzLnVzdXp1bWktaGF0c3VtaTo6YmVmb3JlLCBsYWJlbC5tb2QudjEzLnVzdXp1bWktaGF0c3VtaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTYgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy55YWUta29iYXNoaXJpLCBkaXYuc2FraS1jYXJkLnYxMy55YWUta29iYXNoaXJpOjpiZWZvcmUsIGxhYmVsLm1vZC52MTMueWFlLWtvYmFzaGlyaTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC02ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTYgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy55b3NoaXRvbWUtbWloYXJ1LCBkaXYuc2FraS1jYXJkLnYxMy55b3NoaXRvbWUtbWloYXJ1OjpiZWZvcmUsIGxhYmVsLm1vZC52MTMueW9zaGl0b21lLW1paGFydTo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC03ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTYgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMy55dW1lbm8tbWFobywgZGl2LnNha2ktY2FyZC52MTMueXVtZW5vLW1haG86OmJlZm9yZSwgbGFiZWwubW9kLnYxMy55dW1lbm8tbWFobzo6YmVmb3JlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC04ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTYgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5sYWJlbC5tb2QudjEzOjpiZWZvcmUgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGNhbGMoLTggKiB2YXIoLS1jYXJkLXdpZHRoKSk7IGJhY2tncm91bmQtcG9zaXRpb24teTogY2FsYygtNiAqIHZhcigtLWNhcmQtaGVpZ2h0KSk7IH1cbmRpdi5zaGltb2NoYSBkaXYuc2FraS1jYXJkOjpiZWZvcmUsIGRpdi5zaGltb2NoYSBkaXYuc2FraS1jYXJkOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKVxuICAgICAgICAgICAgIHRyYW5zbGF0ZVkoY2FsYygzICogdmFyKC0tdGlsZS1zaXplKSkpO1xufVxuZGl2LnRvaW1lbiBkaXYuc2FraS1jYXJkOjpiZWZvcmUsIGRpdi50b2ltZW4gZGl2LnNha2ktY2FyZDo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpXG4gICAgICAgICAgICAgdHJhbnNsYXRlWShjYWxjKDUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG59XG5kaXYua2FtaWNoYSBkaXYuc2FraS1jYXJkOjpiZWZvcmUsIGRpdi5rYW1pY2hhIGRpdi5zYWtpLWNhcmQ6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKVxuICAgICAgICAgICAgIHRyYW5zbGF0ZVkoY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG59XG5kaXYuc2FraS1jYXJkLmRpc2FibGVkLCBkaXYuc2FraS1jYXJkLmRpc2FibGVkOjpiZWZvcmUgeyBmaWx0ZXI6IHNhdHVyYXRlKDAlKTsgfVxuLyogZG91YmxlIGNhcmQgdmlldyBmb3IgbWFpcnUvaGltZWtvICovXG5kaXYuc2FraS1jYXJkLnNoaXJvdXp1LW1haXJ1OjphZnRlcixcbmRpdi5zYWtpLWNhcmQudHN1cnV0YS1oaW1la286OmFmdGVyIHtcbiAgbGVmdDogY2FsYygtMzUwJSArIDAuNSAqIHZhcigtLWNhcmQtd2lkdGgpKTtcbiAgei1pbmRleDogMTA7XG59XG5kaXYuc2FraS1jYXJkLnYxMi5zaGlyb3V6dS1tYWlydTpob3Zlcjo6YWZ0ZXIsIGxhYmVsLm1vZC52MTIuc2hpcm91enUtbWFpcnU6OmFmdGVyIHsgY29udGVudDogXCJcIjsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiBjYWxjKC01ICogdmFyKC0tY2FyZC13aWR0aCkpOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IGNhbGMoLTUgKiB2YXIoLS1jYXJkLWhlaWdodCkpOyB9XG5kaXYuc2FraS1jYXJkLnYxMi50c3VydXRhLWhpbWVrbzpob3Zlcjo6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGNhbGMoLTcgKiB2YXIoLS1jYXJkLXdpZHRoKSk7IGJhY2tncm91bmQtcG9zaXRpb24teTogY2FsYygtNCAqIHZhcigtLWNhcmQtaGVpZ2h0KSk7IH1cbmRpdi5zYWtpLWNhcmQudjEzLnNoaXJvdXp1LW1haXJ1OmhvdmVyOjphZnRlciwgbGFiZWwubW9kLnYxMy5zaGlyb3V6dS1tYWlydTo6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGNhbGMoLTIgKiB2YXIoLS1jYXJkLXdpZHRoKSk7IGJhY2tncm91bmQtcG9zaXRpb24teTogY2FsYygtNiAqIHZhcigtLWNhcmQtaGVpZ2h0KSk7IH1cbmRpdi5zYWtpLWNhcmQudjEzLnRzdXJ1dGEtaGltZWtvOmhvdmVyOjphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IGJhY2tncm91bmQtcG9zaXRpb24teDogY2FsYygtMiAqIHZhcigtLWNhcmQtd2lkdGgpKTsgYmFja2dyb3VuZC1wb3NpdGlvbi15OiBjYWxjKC01ICogdmFyKC0tY2FyZC1oZWlnaHQpKTsgfVxuZGl2LnNha2ktY2FyZC5zaGlyb3V6dS1tYWlydTo6YmVmb3JlLFxuZGl2LnNha2ktY2FyZC50c3VydXRhLWhpbWVrbzo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTAuNSAqIHZhcigtLWNhcmQtd2lkdGgpKSk7XG59XG5kaXYuc2hpbW9jaGEgZGl2LnNha2ktY2FyZC5zaGlyb3V6dS1tYWlydTo6YmVmb3JlLFxuZGl2LnNoaW1vY2hhIGRpdi5zYWtpLWNhcmQudHN1cnV0YS1oaW1la286OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKVxuICAgICAgICAgICAgIHRyYW5zbGF0ZVgoY2FsYygtMC41ICogdmFyKC0tY2FyZC13aWR0aCkpKVxuICAgICAgICAgICAgIHRyYW5zbGF0ZVkoY2FsYygzICogdmFyKC0tdGlsZS1zaXplKSkpO1xufVxuZGl2LnRvaW1lbiBkaXYuc2FraS1jYXJkLnNoaXJvdXp1LW1haXJ1OjpiZWZvcmUsXG5kaXYudG9pbWVuIGRpdi5zYWtpLWNhcmQudHN1cnV0YS1oaW1la286OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZylcbiAgICAgICAgICAgICB0cmFuc2xhdGVYKGNhbGMoLTAuNSAqIHZhcigtLWNhcmQtd2lkdGgpKSlcbiAgICAgICAgICAgICB0cmFuc2xhdGVZKGNhbGMoNSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbn1cbmRpdi5rYW1pY2hhIGRpdi5zYWtpLWNhcmQuc2hpcm91enUtbWFpcnU6OmJlZm9yZSxcbmRpdi5rYW1pY2hhIGRpdi5zYWtpLWNhcmQudHN1cnV0YS1oaW1la286OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZylcbiAgICAgICAgICAgICB0cmFuc2xhdGVYKGNhbGMoLTAuNSAqIHZhcigtLWNhcmQtd2lkdGgpKSk7XG59XG5kaXYuc2hpbW9jaGEgZGl2LnNha2ktY2FyZC5zaGlyb3V6dS1tYWlydTo6YWZ0ZXIsXG5kaXYuc2hpbW9jaGEgZGl2LnNha2ktY2FyZC50c3VydXRhLWhpbWVrbzo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZylcbiAgICAgICAgICAgICB0cmFuc2xhdGVYKGNhbGMoMC41ICogdmFyKC0tY2FyZC13aWR0aCkpKVxuICAgICAgICAgICAgIHRyYW5zbGF0ZVkoY2FsYygwLjUgKiB2YXIoLS1jYXJkLWhlaWdodCkpKVxuICAgICAgICAgICAgIHRyYW5zbGF0ZVkoY2FsYygxLjUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG59XG5kaXYudG9pbWVuIGRpdi5zYWtpLWNhcmQuc2hpcm91enUtbWFpcnU6OmFmdGVyLFxuZGl2LnRvaW1lbiBkaXYuc2FraS1jYXJkLnRzdXJ1dGEtaGltZWtvOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZylcbiAgICAgICAgICAgICB0cmFuc2xhdGVYKGNhbGMoMSAqIHZhcigtLWNhcmQtd2lkdGgpKSlcbiAgICAgICAgICAgICB0cmFuc2xhdGVZKGNhbGMoMC41ICogdmFyKC0tY2FyZC1oZWlnaHQpKSk7XG59XG5kaXYua2FtaWNoYSBkaXYuc2FraS1jYXJkLnNoaXJvdXp1LW1haXJ1OjphZnRlcixcbmRpdi5rYW1pY2hhIGRpdi5zYWtpLWNhcmQudHN1cnV0YS1oaW1la286OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKVxuICAgICAgICAgICAgIHRyYW5zbGF0ZVgoY2FsYygwLjUgKiB2YXIoLS1jYXJkLXdpZHRoKSkpXG4gICAgICAgICAgICAgdHJhbnNsYXRlWShjYWxjKC0wLjUgKiB2YXIoLS1jYXJkLWhlaWdodCkpKVxuICAgICAgICAgICAgIHRyYW5zbGF0ZVkoY2FsYygxLjUgKiB2YXIoLS10aWxlLXNpemUpKSk7XG59XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vKiBpbmRleC90aXRsZSBzY3JlZW4gYW5kIGxvZyBtZW51IHNjcmVlbiAqL1xuZGl2LnRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBjb2x1bW4tZ2FwOiBjYWxjKDIgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5kaXYudGl0bGUgPiBkaXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbmRpdi50aXRsZSA+IGRpdi50aXRsZS1yaWljaGkge1xuICBmb250LXNpemU6IGNhbGMoMyAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBjb2xvcjogYmxhY2s7XG4gIHRyYW5zZm9ybTogcm90YXRlKDJkZWcpOyAgXG4gIHRvcDogMDtcbiAgd2lkdGg6IGNhbGMoMTAgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogY2FsYygyICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYudGl0bGUgPiBkaXYudGl0bGUtYWR2YW5jZWQge1xuICBmb250LXNpemU6IGNhbGMoMiAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBjb2xvcjogYmxhY2s7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7ICBcbiAgbGVmdDogY2FsYyg0LjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdG9wOiBjYWxjKDMgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi50aXRsZSA+IGRpdi50aWxlIHtcbiAgLS10aWxlLXNjYWxlLWZhY3RvcjogMztcbiAgdG9wOiBjYWxjKDAuNiAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LnRpdGxlID4gZGl2LnRpbGUuXFwzOCBtIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTBkZWcpO1xuICBsZWZ0OiBjYWxjKDAuNiAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LnRpdGxlID4gZGl2LnRpbGUuXFwzNyB6IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcbiAgcmlnaHQ6IGNhbGMoMC42ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYudGl0bGUgPiBkaXYudGl0bGUtcmlpY2hpOjpiZWZvcmUsXG5kaXYudGl0bGUgPiBkaXYudGl0bGUtYWR2YW5jZWQ6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDE1MCU7XG4gIGhlaWdodDogMTQwJTtcbiAgbGVmdDogLTI1JTtcbiAgYm90dG9tOiAtNy41JTtcbiAgei1pbmRleDogLTE7XG59XG5kaXYudGl0bGUgPiBkaXYudGl0bGUtcmlpY2hpOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9icnVzaC1iZy5zdmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgei1pbmRleDogLTE7XG59XG5kaXYudGl0bGUgPiBkaXYudGl0bGUtYWR2YW5jZWQ6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2JydXNoLWJnMi5zdmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgei1pbmRleDogLTE7XG59XG5kaXYjY29udGFpbmVyID4gZGl2LmluZGV4LXZlcnNpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgY29sb3I6IHdoaXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG59XG5kaXYjY29udGFpbmVyID4gZGl2LmluZGV4LWJvdHRvbS1idXR0b25zIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xufVxuZGl2I2NvbnRhaW5lciA+IGRpdi5pbmRleC1ib3R0b20tYnV0dG9ucyA+IGJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdiNjb250YWluZXIgPiBmb3JtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMyAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoNy41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRvcDogY2FsYyg1MCUgLSAxLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogY2FsYygxICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHBhZGRpbmc6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kOiAjNjA5MDYwO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHNwYWNlLWFyb3VuZDtcbn1cbmRpdiNjb250YWluZXIgPiBmb3JtLnJ1bGVzZXQtc2VsZWN0aW9uLWZvcm0gaW5wdXQsIGRpdiNjb250YWluZXIgPiBmb3JtLnJ1bGVzZXQtc2VsZWN0aW9uLWZvcm0gYnV0dG9uIHtcbiAgZm9udC1zaXplOiBjYWxjKDAuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdiNjb250YWluZXIgPiBmb3JtLnJ1bGVzZXQtc2VsZWN0aW9uLWZvcm0gPiBkaXYuZm9ybS1lcnJvciB7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgY29sb3I6IHdoaXRlO1xufVxuZGl2I2NvbnRhaW5lciA+IGZvcm0ucnVsZXNldC1zZWxlY3Rpb24tZm9ybSA+IGlucHV0Lm5pY2tuYW1lLWlucHV0IHtcbiAgbWFyZ2luOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmb250LXNpemU6IGNhbGMoMC43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IDFlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbmRpdiNjb250YWluZXIgPiBmb3JtLnJ1bGVzZXQtc2VsZWN0aW9uLWZvcm0gPiBkaXYucnVsZXNldC1zZWxlY3Rpb24ge1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmbGV4LWdyb3c6IDE7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiBjYWxjKDAuNTUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdiNjb250YWluZXIgPiBmb3JtLnJ1bGVzZXQtc2VsZWN0aW9uLWZvcm0gPiBkaXYucnVsZXNldC1zZWxlY3Rpb24gPiBsYWJlbCB7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjU1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHBhZGRpbmc6IGNhbGMoMC4xNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2I2NvbnRhaW5lciA+IGZvcm0ucnVsZXNldC1zZWxlY3Rpb24tZm9ybSA+IGRpdi5ydWxlc2V0LXNlbGVjdGlvbiA+IGxhYmVsID4gYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IGNhbGMoMC41NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2I2NvbnRhaW5lciA+IGZvcm0ucnVsZXNldC1zZWxlY3Rpb24tZm9ybSA+IGRpdi5ydWxlc2V0LXNlbGVjdGlvbiA+IGlucHV0W2Rpc2FibGVkXSArIGxhYmVsIHtcbiAgb3BhY2l0eTogMC40O1xufVxuZGl2I2NvbnRhaW5lciA+IGZvcm0ucnVsZXNldC1zZWxlY3Rpb24tZm9ybSA+IGRpdi5ydWxlc2V0LXNlbGVjdGlvbiA+IGlucHV0W2Rpc2FibGVkXSArIGxhYmVsIHtcbiAgb3BhY2l0eTogMC40O1xufVxuZGl2I2NvbnRhaW5lciA+IGZvcm0ubG9nLXNlbGVjdGlvbi1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcm93LWdhcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYjY29udGFpbmVyID4gZm9ybS5sb2ctc2VsZWN0aW9uLWZvcm0gPiBpbnB1dCxcbmRpdiNjb250YWluZXIgPiBmb3JtLmxvZy1zZWxlY3Rpb24tZm9ybSA+IGJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLyogYWJvdXQgcGFnZSAqL1xuZGl2I2NvbnRhaW5lciA+IGZvcm0uYWJvdXQtcGFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMC4yNSB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiBjYWxjKDcuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0b3A6IGNhbGMoNTAlIC0gMS41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kOiAjNjA5MDYwO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgei1pbmRleDogMjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHNwYWNlLWFyb3VuZDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuZGl2I2NvbnRhaW5lciA+IGZvcm0uYWJvdXQtcGFnZSA+IHVsLmJldGEtdGVzdGVycyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMC41ZW07XG4gIHVzZXItc2VsZWN0OiB0ZXh0O1xufVxuZGl2I2NvbnRhaW5lciA+IGZvcm0uYWJvdXQtcGFnZSA+IHVsLmJldGEtdGVzdGVycyA+IGxpIHsgcGFkZGluZzogMC4xZW0gMC4yNWVtOyB9XG5kaXYjY29udGFpbmVyID4gZm9ybS5hYm91dC1wYWdlID4gdWwuYmV0YS10ZXN0ZXJzID4gbGk6bnRoLWNoaWxkKDJuKSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4yNWVtKTsgfVxuLyogZW50ZXIgYnV0dG9ucyBmb3IgaW5kZXggYW5kIGxvYmJ5ICovXG5kaXYjY29udGFpbmVyIGRpdi5lbnRlci1idXR0b25zIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuICBtYXJnaW4tdG9wOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2I2NvbnRhaW5lciBkaXYuZW50ZXItYnV0dG9ucyA+IGJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjYgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4vKiByb29tIGNvZGUgbW9kYWwgKi9cbmRpdi5yb29tLWNvZGUtbW9kYWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kOiAjM2YzZjNmO1xuICBjb2xvcjogd2hpdGU7XG4gIHRvcDogY2FsYyg2LjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogY2FsYygwLjc1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHdpZHRoOiBjYWxjKDE0LjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiBjYWxjKDcgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgei1pbmRleDogNTtcbn1cbmRpdi5yb29tLWNvZGUtbW9kYWwgPiBkaXYucm9vbS1jb2RlLWRpc3BsYXkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBtYXJnaW46IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYucm9vbS1jb2RlLW1vZGFsID4gZGl2LnJvb20tY29kZS1kaXNwbGF5ID4gZGl2LnRpbGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5kaXYucm9vbS1jb2RlLW1vZGFsID4gZGl2LnJvb20tY29kZS1idXR0b25zIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuZGl2LnJvb20tY29kZS1tb2RhbCA+IGRpdi5yb29tLWNvZGUtYnV0dG9ucyA+IGJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuXG5cbi8qIGxvYmJ5IHNjcmVlbiAqL1xuZGl2LmxvYmJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICByb3ctZ2FwOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgY29sb3I6IHdoaXRlO1xufVxuZGl2LmxvYmJ5ID4gaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKC0xICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHdpZHRoOiAxMDAlO1xufVxuZGl2LmxvYmJ5ID4gZGl2LnJvb21zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYmFja2dyb3VuZDogIzYwOTA2MDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAzICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRvcDogY2FsYygxICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGxlZnQ6IGNhbGMoMCAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICByb3ctZ2FwOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuLyogYWxsb3cgc2Nyb2xsIGJ1dCBoaWRlIHNjcm9sbGJhciAqL1xuZGl2LmxvYmJ5ID4gZGl2LnJvb21zIHtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7IC8qIEZpcmVmb3ggKi9cbn1cbmRpdi5sb2JieSA+IGRpdi5yb29tczo6LXdlYmtpdC1zY3JvbGxiYXIgeyBcbiAgZGlzcGxheTogbm9uZTsgLyogU2FmYXJpL0Nocm9tZSAqL1xufVxuXG5kaXYubG9iYnkgPiBkaXYucm9vbXMgPiBkaXYubG9iYnktcm9vbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKVxufVxuZGl2LmxvYmJ5ID4gZGl2LnJvb21zID4gZGl2LmxvYmJ5LXJvb20gPiBidXR0b24uam9pbi1yb29tIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tdGlsZS1mcm9udC1zaWRlKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5sb2JieSA+IGRpdi5yb29tcyA+IGRpdi5sb2JieS1yb29tID4gZGl2LnJvb20tbW9kcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGZsZXgtZ3JvdzogMTtcbiAgcGFkZGluZzogMCBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYubG9iYnkgPiBkaXYucm9vbXMgPiBkaXYubG9iYnktcm9vbSA+IGRpdi5yb29tLXBsYXllcnMge1xuICBmb250LXNpemU6IGNhbGMoMC43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LmxvYmJ5ID4gZGl2LnJvb21zID4gZGl2LmxvYmJ5LXJvb20gPiBkaXYucm9vbS1wbGF5ZXJzID4gZGl2LnJvb20tcGxheWVyLWNvdW50IHtcbiAgZm9udC1zaXplOiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5sb2JieSA+IGRpdi5yb29tcyA+IGRpdi5sb2JieS1yb29tID4gZGl2LnJvb20tcGxheWVycyA+IGRpdi5yb29tLXN0YXJ0ZWQge1xuICBmb250LXNpemU6IGNhbGMoMC40ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5cblxuLyogcm9vbSBzY3JlZW4gKi9cbmRpdi5yb29tIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByb3ctZ2FwOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgZm9udC1zaXplOiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgY29sb3I6IHdoaXRlO1xufVxuZGl2LnJvb20gPiBoZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgY29sdW1uLWdhcDogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMyAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmb250LXNpemU6IGNhbGMoMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LnJvb20gPiBoZWFkZXIgPiBkaXYucm9vbS1oZWFkZXItdGl0bGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBmb250LXNpemU6IGNhbGMoMC43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbmRpdi5yb29tID4gaGVhZGVyID4gZGl2LnJvb20taGVhZGVyLWJvdHRvbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbHVtbi1nYXA6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGZvbnQtc2l6ZTogY2FsYygxICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgJiA+IGRpdi5zZXNzaW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJvcmRlcjogY2FsYygwLjA1ICogdmFyKC0tdGlsZS1zaXplKSkgc29saWQgd2hpdGU7XG4gICAgcGFkZGluZzogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gICAgYm9yZGVyLXJhZGl1czogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJiA+IGRpdi5yb29tLWNvZGUtdGV4dCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgZm9udC1zaXplOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICAgICAgaW5zZXQ6IGNhbGMoMS41ICogdmFyKC0tdGlsZS1zaXplKSkgMCAwIDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgICYgPiBkaXYudGlsZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygwLjEyNSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbiAgICB9XG4gIH1cbiAgJiA+IGxhYmVsLnByaXZhdGUtdG9nZ2xlLWxhYmVsIHtcbiAgICBmb250LXNpemU6IGNhbGMoMC44NzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0wLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgICBwYWRkaW5nOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgICB3aWR0aDogOGV4O1xuICB9XG4gICYgc3ZnIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogc3ViO1xuICB9XG4gICYgPiBkaXYucm9vbS1oZWFkZXItcmlnaHQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICYgPiBhIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gICAgJiA+IGxhYmVsLnJvb20tc2V0dGluZ3MtdG9nZ2xlIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG59XG5kaXYucm9vbSBkaXYudGlwcy1jb21wb25lbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBib3R0b206IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmRpdi5yb29tIGRpdi5yb29tLXNldHRpbmdzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYwOTA2MDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDMgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogY2FsYygxICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHotaW5kZXg6IDE7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuZGl2LnJvb20gPiBkaXYucm9vbS1zZXR0aW5ncyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5kaXYucm9vbSA+IGlucHV0I3Jvb20tc2V0dGluZ3MtdG9nZ2xlOmNoZWNrZWQgKyBkaXYucm9vbS1zZXR0aW5ncyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gNC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiAwO1xuICB0b3A6IGNhbGMoMy4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB6LWluZGV4OiAyO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuZGl2LnJvb20gPiBkaXYuc2VhdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRvcDogY2FsYygzLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICByb3ctZ2FwOiBjYWxjKDAuMTI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYucm9vbSA+IGRpdi5zZWF0cyA+IGRpdi5wbGF5ZXItc2xvdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGNvbHVtbi1nYXA6IGNhbGMoMC4xMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IGNhbGMoMS41ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYucm9vbSA+IGRpdi5yb29tLXNldHRpbmdzIGJ1dHRvbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC0wLjI1ICogdmFyKC0tdGlsZS1zaXplKSkpO1xufVxuZGl2LnJvb20gPiBkaXYucm9vbS1zZXR0aW5ncyBidXR0b246YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTAuMTI1ICogdmFyKC0tdGlsZS1zaXplKSkpO1xufVxuZGl2LnJvb20gPiBkaXYuc2VhdHMgPiBkaXYucGxheWVyLXNsb3QgPiBkaXYucGxheWVyLXNsb3QtbGFiZWwsXG5kaXYucm9vbSA+IGRpdi5zZWF0cyA+IGRpdi5wbGF5ZXItc2xvdCA+IGRpdi5wbGF5ZXItc2xvdC1uYW1lIHtcbiAgZm9udC1zaXplOiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgY29sb3I6IHdoaXRlO1xufVxuZGl2LnJvb20gPiBkaXYuc2VhdHMgPiBkaXYucGxheWVyLXNsb3QgPiBkaXYucGxheWVyLXNsb3QtbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwM0Y7XG4gIHdpZHRoOiBjYWxjKDEuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMS41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbmRpdi5yb29tID4gZGl2LnNlYXRzID4gZGl2LnBsYXllci1zbG90ID4gZGl2LnBsYXllci1zbG90LW5hbWUge1xuICBmbGV4LWdyb3c6IDE7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogY2FsYygwLjEyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwM0Y7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmRpdi5yb29tID4gZGl2LnNlYXRzID4gZGl2LnBsYXllci1zbG90ID4gZGl2LnBsYXllci1zbG90LW5hbWUuZW1wdHkge1xuICBvcGFjaXR5OiAwLjU7XG59XG5kaXYucm9vbSA+IGRpdi5zZWF0cyA+IGRpdi5wbGF5ZXItc2xvdCA+IGJ1dHRvbixcbmRpdi5yb29tID4gZGl2LnNlYXRzID4gbGFiZWwuc2h1ZmZsZS1zZWF0cyxcbmRpdi5yb29tID4gZGl2LnNlYXRzID4gYnV0dG9uLnN0YXJ0LWdhbWUtYnV0dG9uIHtcbiAgZm9udC1zaXplOiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5yb29tID4gZGl2LnNlYXRzID4gZGl2LnBsYXllci1zbG90ID4gYnV0dG9uIHtcbiAgd2lkdGg6IGNhbGMoMS4yICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogY2FsYygxLjIgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5yb29tIGRpdi5wcmVzZXRzLFxuZGl2Lm1vZHMsXG5kaXYucm9vbSBkaXYuY29uZmlnLFxuZGl2LnJvb20gZGl2LmN1c3RvbS1qc29uIHtcbiAgdG9wOiBjYWxjKDMgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiBjYWxjKDEwICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi5yb29tIGxhYmVsLnJvb20tdGFiLXRpdGxlIHtcbiAgZm9udC1zaXplOiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuZGl2LnJvb20gZGl2LnByZXNldHMge1xuICBtYXJnaW4tdG9wOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmb250LXNpemU6IGNhbGMoMC43NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2Lm1vZHMgPiBkaXYubW9kcy1pbm5lci1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICByb3ctZ2FwOiBjYWxjKDAuMDYyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBjb2x1bW4tZ2FwOiBjYWxjKDAuMTI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5kaXYubW9kcyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2Lm1vZHMubW9kcy1zYWtpID4gZGl2Lm1vZHMtaW5uZXItY29udGFpbmVyIHtcbiAgLyogc2FraSBuZWVkcyByb29tIGZvciBob3ZlcmFibGUgY2FyZHMgKi9cbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDEwMCU7XG59XG5kaXYubW9kcyA+IGRpdi5tb2RzLWlubmVyLWNvbnRhaW5lciA+IGRpdi5tb2QtY2F0ZWdvcnksXG5kaXYubW9kcyA+IGRpdi5tb2RzLWlubmVyLWNvbnRhaW5lciA+IGRpdi5tb2QtY2F0ZWdvcnktc3BhY2VyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDAuNWVtO1xuICBtYXJnaW4tbGVmdDogLTAuNWVtO1xufVxuZGl2Lm1vZHMgPiBkaXYubW9kcy1pbm5lci1jb250YWluZXIgYnV0dG9uLm1vZC1tZW51LWJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogNzUlO1xufVxuZGl2Lm1vZHMgPiBkaXYubW9kcy1pbm5lci1jb250YWluZXIgZGl2Lm1vZHMtYm90dG9tLWJ1dHRvbnMge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuZGl2LnJvb20gZGl2LmNvbmZpZyA+IHRleHRhcmVhLFxuZGl2LnJvb20gZGl2LmN1c3RvbS1qc29uID4gdGV4dGFyZWEge1xuICBmb250LXNpemU6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LnJvb20gZGl2LmN1c3RvbS1qc29uID4gdGV4dGFyZWEge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdG9wOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG4vKiB0YWIgc3lzdGVtIGZvciBtb2RzL2NvbmZpZyAqL1xuZGl2LnJvb20tc2V0dGluZ3MgPiBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuZGl2LnJvb20tc2V0dGluZ3MgPiBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XG4gIG1hcmdpbjogYXV0bztcbn1cbmRpdi5yb29tLXNldHRpbmdzID4gaW5wdXQ6bm90KDpjaGVja2VkKSArIGxhYmVsIHtcbiAgb3BhY2l0eTogMC41O1xufVxuZGl2LnJvb20tc2V0dGluZ3MgPiBpbnB1dCNwcmVzZXRzLXRhYjpub3QoOmNoZWNrZWQpIH4gZGl2LnByZXNldHMsXG5kaXYucm9vbS1zZXR0aW5ncyA+IGlucHV0I21vZHMtdGFiOm5vdCg6Y2hlY2tlZCkgfiBkaXYubW9kcyxcbmRpdi5yb29tLXNldHRpbmdzID4gaW5wdXQjY29uZmlnLXRhYjpub3QoOmNoZWNrZWQpIH4gZGl2LmNvbmZpZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5kaXYuY29uZmlnIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZm9udC1zaXplOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbi8qIGluZGl2aWRhbCBtb2QgY29uZmlnICovXG5sYWJlbC5tb2Qge1xuICBmbGV4LXNocmluazogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbmRpdi5tb2RzID4gZGl2Lm1vZHMtaW5uZXItY29udGFpbmVyIHNwYW4ubW9kLWNvbmZpZy1uYW1lIHtcbiAgZm9udC1zaXplOiA2NyU7XG4gIG1hcmdpbjogMCBjYWxjKDAuMDYyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuLyogZHJvcGRvd24gKi9cbmRpdi5tb2RzID4gZGl2Lm1vZHMtaW5uZXItY29udGFpbmVyIGZvcm0ubW9kLWNvbmZpZy1kcm9wZG93biB7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDtcbn1cbmRpdi5tb2RzID4gZGl2Lm1vZHMtaW5uZXItY29udGFpbmVyIGZvcm0ubW9kLWNvbmZpZy1kcm9wZG93biA+IHNlbGVjdCB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgZm9udC1zaXplOiA2NyU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRpbGUtZnJvbnQpO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4xMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcGFkZGluZzogY2FsYygwLjA2MjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbWFyZ2luOiAwO1xuICBtaW4td2lkdGg6IGNhbGMoMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4vKiBzbGlkZXIgLS0gZG8gbm90IHVzZSwgc2luY2Ugc2FmYXJpIGRvZXMgbm90IGRpc3BsYXkgZGF0YWxpc3QgdmFsdWVzICovXG5kaXYubW9kcyA+IGRpdi5tb2RzLWlubmVyLWNvbnRhaW5lciBmb3JtLm1vZC1jb25maWctc2xpZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTtcbiAgLS10aHVtYi1zaXplOiBjYWxjKDAuNCAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2Lm1vZHMgPiBkaXYubW9kcy1pbm5lci1jb250YWluZXIgZm9ybS5tb2QtY29uZmlnLXNsaWRlciA+IGlucHV0IHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB3aWR0aDogY2FsYygzICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogMC41ZW07XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBtYXJnaW46IDAgY2FsYygwLjUgKiB2YXIoLS10aHVtYi1zaXplKSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC41ICogdmFyKC0tdGh1bWItc2l6ZSkpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS10aWxlLWZyb250KTtcbiAgei1pbmRleDogMTtcbn1cbmRpdi5tb2RzID4gZGl2Lm1vZHMtaW5uZXItY29udGFpbmVyIGZvcm0ubW9kLWNvbmZpZy1zbGlkZXIgPiBpbnB1dDo6LXdlYmtpdC1zbGlkZXItdGh1bWIsXG5kaXYubW9kcyA+IGRpdi5tb2RzLWlubmVyLWNvbnRhaW5lciBmb3JtLm1vZC1jb25maWctc2xpZGVyID4gaW5wdXQ6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICB3aWR0aDogdmFyKC0tdGh1bWItc2l6ZSk7XG4gIGhlaWdodDogdmFyKC0tdGh1bWItc2l6ZSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXdpZHRoOiBjYWxjKDAuMDUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm9yZGVyLWNvbG9yOiBibGFjaztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuZGl2Lm1vZHMgPiBkaXYubW9kcy1pbm5lci1jb250YWluZXIgZm9ybS5tb2QtY29uZmlnLXNsaWRlciA+IGlucHV0Ojotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayxcbmRpdi5tb2RzID4gZGl2Lm1vZHMtaW5uZXItY29udGFpbmVyIGZvcm0ubW9kLWNvbmZpZy1zbGlkZXIgPiBpbnB1dDo6LW1vei1yYW5nZS10cmFjayB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXRodW1iLXNpemUpKTtcbiAgaGVpZ2h0OiBjYWxjKDAuNSAqIHZhcigtLXRodW1iLXNpemUpKTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjUgKiB2YXIoLS10aHVtYi1zaXplKSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRpbGUtZnJvbnQpO1xuICB6LWluZGV4OiAxO1xufVxuZGl2Lm1vZHMgPiBkaXYubW9kcy1pbm5lci1jb250YWluZXIgZm9ybS5tb2QtY29uZmlnLXNsaWRlciA+IGRhdGFsaXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgd3JpdGluZy1tb2RlOiBob3Jpem9udGFsLXRiO1xuICBmb250LXNpemU6IDUwJTtcbiAgaGVpZ2h0OiAwLjVlbTtcbn1cbmRpdi5tb2RzID4gZGl2Lm1vZHMtaW5uZXItY29udGFpbmVyIGZvcm0ubW9kLWNvbmZpZy1zbGlkZXIgPiBkYXRhbGlzdCA+IG9wdGlvbiB7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuXG4vKiBleHBhbmQgYnV0dG9uIGZvciBydWxlc2V0cywgbW9kcywgYW5kIGN1c3RvbSBydWxlc2V0IGVudHJ5ICovXG5kaXYjY29udGFpbmVyID4gaW5wdXQuZXhwYW5kLWNoZWNrYm94ICsgbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjYgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHdpZHRoOiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgei1pbmRleDogMztcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IHRvcCAwLjVzLCByaWdodCAwLjVzO1xufVxuZGl2I2NvbnRhaW5lciA+IGlucHV0LmV4cGFuZC1jaGVja2JveC5mb3ItcnVsZXNldHMgKyBsYWJlbCB7XG4gIHJpZ2h0OiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0b3A6IGNhbGMoNS44NzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdiNjb250YWluZXIgPiBpbnB1dC5leHBhbmQtY2hlY2tib3guZm9yLXJ1bGVzZXRzOmNoZWNrZWQgKyBsYWJlbCB7XG4gIHRvcDogY2FsYygwLjM3NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2I2NvbnRhaW5lciA+IGlucHV0LmV4cGFuZC1jaGVja2JveC5mb3ItbW9kcyArIGxhYmVsIHtcbiAgcmlnaHQ6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRvcDogY2FsYyg0LjYyNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2I2NvbnRhaW5lciA+IGlucHV0LmV4cGFuZC1jaGVja2JveC5mb3ItbW9kczpjaGVja2VkICsgbGFiZWwge1xuICByaWdodDogY2FsYygtMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRvcDogY2FsYygwLjM3NSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufSBcbmRpdiNjb250YWluZXIgPiBpbnB1dC5leHBhbmQtY2hlY2tib3ggKyBsYWJlbDo6YmVmb3JlIHsgY29udGVudDogXCIrXCI7IH1cbmRpdiNjb250YWluZXIgPiBpbnB1dC5leHBhbmQtY2hlY2tib3g6Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUgeyBjb250ZW50OiBcIlx1MjAxM1wiOyB9XG5kaXYjY29udGFpbmVyID4gZm9ybSxcbmRpdiNjb250YWluZXIgPiBkaXYubW9kcyxcbmRpdiNjb250YWluZXIgPiBkaXYuY3VzdG9tLWpzb24ge1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjVzLCBoZWlnaHQgMC41cywgdG9wIDAuNXMsIGxlZnQgMC41cztcbn1cbmRpdiNjb250YWluZXIgPiBpbnB1dC5leHBhbmQtY2hlY2tib3g6Y2hlY2tlZCB+IGZvcm0ge1xuICBoZWlnaHQ6IGNhbGMoMTMgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdG9wOiBjYWxjKDUwJSAtIDcgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdiNjb250YWluZXIgPiBpbnB1dC5leHBhbmQtY2hlY2tib3g6Y2hlY2tlZCB+IGRpdi5tb2RzLFxuZGl2I2NvbnRhaW5lciA+IGlucHV0LmV4cGFuZC1jaGVja2JveDpjaGVja2VkIH4gZGl2LmN1c3RvbS1qc29uIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgdG9wOiBjYWxjKC0xLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGxlZnQ6IGNhbGMoMCAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuXG4vKiB0b3AgcmlnaHQgKG1lbnUgYnV0dG9ucywgcmlpY2hpIHN0aWNrIGRpc3BsYXl9ICovXG5kaXYudG9wLXJpZ2h0LWNvbnRhaW5lciB7XG4gIGhlaWdodDogdmFyKC0tdGlsZS1zaXplKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoLTEuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBjb2x1bW4tZ2FwOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgei1pbmRleDogLTE7IC8qIGJlaGluZCByZXZlYWxlZCB0aWxlcyAqL1xufVxuZGl2Lm1lbnUtYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgY29sdW1uLWdhcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5kaXYubWVudS1idXR0b25zID4gYnV0dG9uLmxhbmd1YWdlLWRyb3Bkb3duLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmRpdi5tZW51LWJ1dHRvbnMgPiBidXR0b24ubGFuZ3VhZ2UtZHJvcGRvd24tY29udGFpbmVyIGZvcm0ubGFuZ3VhZ2UtZHJvcGRvd24gPiBzZWxlY3Qge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmRpdi5tZW51LWJ1dHRvbnMgPiBidXR0b24ubGFuZ3VhZ2UtZHJvcGRvd24tY29udGFpbmVyIGZvcm0ubGFuZ3VhZ2UtZHJvcGRvd24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBoZWlnaHQ6IDEyMCU7IC8qIHNvIHlvdSBjYW4gY2xpY2sgdGhlIGRyb3Agc2hhZG93IHBhcnQgKi9cbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuZGl2Lm1lbnUtYnV0dG9ucyA+IGJ1dHRvbi5sYW5ndWFnZS1kcm9wZG93bi1jb250YWluZXIgZm9ybS5sYW5ndWFnZS1kcm9wZG93biBzZWxlY3QjbGFuZ3VhZ2UtZHJvcGRvd24gb3B0aW9uIHtcbiAgY29sb3I6IGJsYWNrO1xufVxuZGl2Lm1lbnUtYnV0dG9ucyA+IGJ1dHRvbi5sYW5ndWFnZS1kcm9wZG93bi1jb250YWluZXIgZm9ybS5sYW5ndWFnZS1kcm9wZG93biArIGRpdiB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGFzcGVjdC1yYXRpbzogMS8xO1xufVxuLyogbGFuZHNjYXBlICovXG5AbWVkaWEgKG1pbi1hc3BlY3QtcmF0aW86IDYvNSkge1xuICBkaXYudG9wLXJpZ2h0LWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IG1pbig1MCUsIGNhbGMoNDB2dyAtIDIwJSAtIDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpKTtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgKyB2YXIoLS10aWxlLXNpemUpKTtcbiAgfVxufVxuLyogcG9ydHJhaXQgKG1vYmlsZSkgKi9cbkBtZWRpYSAobWF4LWFzcGVjdC1yYXRpbzogNi81KSB7XG4gIGRpdi50b3AtcmlnaHQtY29udGFpbmVyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgdmFyKC0tdGlsZS1zaXplKSk7XG4gICAgcmlnaHQ6IGNhbGMoLTAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB9XG59XG4vKiBtZW51IGJ1dHRvbnMgKi9cbmRpdi5tZW51LWJ1dHRvbnMgPiBidXR0b24ge1xuICBoZWlnaHQ6IGNhbGMoMC44ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbi8qIGNlbnRlcnBpZWNlIHN0YXR1cyBjb21wb25lbnQgKi9cbi8qIGxhbmRzY2FwZSAqL1xuQG1lZGlhIChtaW4tYXNwZWN0LXJhdGlvOiA2LzUpIHtcbiAgZGl2LmNlbnRlcnBpZWNlLXN0YXR1cy1iYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbmRpdi5jZW50ZXJwaWVjZS1zdGF0dXMtYmFyIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDIgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgd2lkdGg6IGNhbGMoMS41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoLTAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpKSBzY2FsZSgyKTtcbn1cbmRpdi5jZW50ZXJwaWVjZS1zdGF0dXMtYmFyID4gZGl2LnRpbGVzLWxlZnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjQgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcmlnaHQ6IGNhbGMoLTAuNiAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMC4xICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IGNhbGMoMC4wMiAqIHZhcigtLXRpbGUtc2l6ZSkpIHNvbGlkIHdoaXRlO1xufVxuLyogc29tZXRpbWVzIHRoZXNlIGdldCBkdXBsaWNhdGVkIGJ5IG5ldHdvcmsgY29uZGl0aW9ucywgc28gb25seSBzaG93IHRoZSBsYXRlc3Qgb25lICovXG5kaXYudG9wLXJpZ2h0LWNvbnRhaW5lciA+IGRpdi5tZW51LWJ1dHRvbnM6bm90KDpudGgtbGFzdC1jaGlsZCgxKSksXG5kaXYudG9wLXJpZ2h0LWNvbnRhaW5lciA+IGRpdi5jZW50ZXJwaWVjZS1zdGF0dXMtYmFyOm5vdCg6bnRoLWxhc3QtY2hpbGQoMikpLFxuZGl2LnZpc2libGUtd2FpdHMtY29udGFpbmVyID4gZGl2Lm1lbnUtYnV0dG9ucyxcbmRpdi52aXNpYmxlLXdhaXRzLWNvbnRhaW5lciA+IGRpdi5jZW50ZXJwaWVjZS1zdGF0dXMtYmFyLFxuZGl2LmRpc3BsYXktYW0taGFuZC1jb250YWluZXIgPiBkaXYubWVudS1idXR0b25zLFxuZGl2LmRpc3BsYXktYW0taGFuZC1jb250YWluZXIgPiBkaXYuY2VudGVycGllY2Utc3RhdHVzLWJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIGxvZyBjb250cm9sICovXG5cbmRpdi5sb2ctY29udHJvbCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRpbGUtYmFjayk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiBjYWxjKDIuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcmlnaHQ6IGNhbGMoMy41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHdpZHRoOiBjYWxjKDMgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgaGVpZ2h0OiBjYWxjKDEgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHotaW5kZXg6IDU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuZGl2LmxvZy1jb250cm9sID4gYnV0dG9uLmxvZy1jb250cm9sLWJ1dHRvbiB7XG4gIGhlaWdodDogY2FsYygwLjggKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgZmlsdGVyOiBub25lO1xufVxuXG4vKiB0dXRvcmlhbCBvdmVybGF5ICovXG5kaXYudHV0b3JpYWwtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbmRpdi50dXRvcmlhbC1vdmVybGF5LW9iamVjdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0wLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbWFyZ2luLXRvcDogY2FsYygtMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAxICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGhlaWdodDogY2FsYygxMDAlICsgMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2LnR1dG9yaWFsLW92ZXJsYXktb2JqZWN0cy5hd2FpdGluZy1jbGljayB7XG4gIHBvaW50ZXItZXZlbnRzOiBpbml0aWFsO1xufVxuZGl2LnR1dG9yaWFsLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBjYWxjKHZhcigtLXdpZHRoKSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBsZWZ0OiBjYWxjKHZhcigtLXgpICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHRvcDogY2FsYyh2YXIoLS15KSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBjb2xvcjogYmxhY2s7XG4gIGJhY2tncm91bmQ6IHZhcigtLXRpbGUtZnJvbnQpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tc2l6ZSkgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcGFkZGluZzogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMCBjYWxjKHZhcigtLXRpbGUtc2l6ZSkgLyAxNikgMCB2YXIoLS10aWxlLWJhY2stc2lkZSkpO1xuICB6LWluZGV4OiAxO1xufVxuZGl2LnR1dG9yaWFsLXRleHQgPiBwOmZpcnN0LWNoaWxkIHsgbWFyZ2luLXRvcDogMDsgfVxuZGl2LnR1dG9yaWFsLXRleHQgPiBwOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5kaXYudHV0b3JpYWwtZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDAuNTtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG4gIG1hc2stY29tcG9zaXRlOiBpbnRlcnNlY3Q7XG59XG5kaXYudHV0b3JpYWwtZm9jdXMubW9iaWxlIHsgZGlzcGxheTogbm9uZTsgfVxuQG1lZGlhIChtYXgtYXNwZWN0LXJhdGlvOiA2LzUpIHtcbiAgaW5wdXQubW9iaWxlLXpvb20tY2hlY2tib3g6bm90KDpjaGVja2VkKSB+IGRpdi50dXRvcmlhbC1vdmVybGF5IGRpdi50dXRvcmlhbC1mb2N1cy5kZXNrdG9wIHsgZGlzcGxheTogbm9uZTsgfVxuICBpbnB1dC5tb2JpbGUtem9vbS1jaGVja2JveDpub3QoOmNoZWNrZWQpIH4gZGl2LnR1dG9yaWFsLW92ZXJsYXkgZGl2LnR1dG9yaWFsLWZvY3VzLm1vYmlsZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG59XG5cbi8qIHR1dG9yaWFsIHNlbGVjdCBtZW51ICovXG5oZWFkZXIudHV0b3JpYWwtbWVudS1oZWFkZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IGNhbGMoLTAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmb250LXNpemU6IGNhbGMoMC42ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5oZWFkZXIudHV0b3JpYWwtbWVudS1oZWFkZXIgPiBoMyB7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjggKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWFyZ2luOiAwO1xufVxuZGl2LnR1dG9yaWFsLW1lbnUtY29udGFpbmVyLCBkaXYudHV0b3JpYWwtbWVudS1idXR0b25zIHtcbiAgZm9udC1zaXplOiBjYWxjKDAuNiAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBjb2xvcjogd2hpdGU7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvKiBGaXJlZm94ICovXG4gIGZsZXgtZ3JvdzogMTtcbiAgYmFja2dyb3VuZDogIzYwOTA2MDtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgcGFkZGluZzogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi50dXRvcmlhbC1tZW51LWNvbnRhaW5lciB7XG4gIG1hcmdpbjogY2FsYygwLjUgKiB2YXIoLS10aWxlLXNpemUpKSAwO1xufVxuZGl2LnR1dG9yaWFsLW1lbnUtYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tdG9wOiBjYWxjKC0wLjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cbmRpdi50dXRvcmlhbC1tZW51LWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXIsXG5kaXYudHV0b3JpYWwtbWVudS1idXR0b25zOjotd2Via2l0LXNjcm9sbGJhciB7IFxuICBkaXNwbGF5OiBub25lOyAvKiBTYWZhcmkvQ2hyb21lICovXG59XG5kaXYudHV0b3JpYWwtbWVudS1idXR0b25zID4gYnV0dG9uIHtcbiAgaGVpZ2h0OiBjYWxjKDIgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbWFyZ2luOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBwYWRkaW5nOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmb250LXNpemU6IGNhbGMoMC42ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5mb290ZXIudHV0b3JpYWwtbWVudS1mb290ZXIsXG5mb290ZXIudHV0b3JpYWwtbWVudS1mb290ZXIgPiBidXR0b24ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyogdHV0b3JpYWwgY3JlYXRvciBtZW51ICovXG5kaXYjY29udGFpbmVyID4gZm9ybS50dXRvcmlhbC1tZW51LWNvbnRhaW5lciB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLXRpbGUtc2l6ZSkpO1xuICB0cmFuc2l0aW9uOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICByb3ctZ2FwOiBjYWxjKDAuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZm9ybS50dXRvcmlhbC1tZW51LWNvbnRhaW5lciA+IGhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgaGVpZ2h0OiBjYWxjKDEuNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgY29sdW1uLWdhcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG59XG5mb3JtLnR1dG9yaWFsLW1lbnUtY29udGFpbmVyID4gaGVhZGVyID4gc2VsZWN0LnJ1bGVzZXQtZHJvcGRvd24ge1xuICBmb250LXNpemU6IGNhbGMoMC42ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRpbGUtZnJvbnQpO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmbGV4LWdyb3c6IDE7XG59XG5mb3JtLnR1dG9yaWFsLW1lbnUtY29udGFpbmVyID4gaGVhZGVyID4gbGFiZWwge1xuICBmb250LXNpemU6IGNhbGMoMSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZm9ybS50dXRvcmlhbC1tZW51LWNvbnRhaW5lciA+IHRleHRhcmVhIHtcbiAgZm9udC1zaXplOiBjYWxjKDAuMjUgKiB2YXIoLS10aWxlLXNpemUpKTtcbn1cblxuXG5cbi8qIG1hanN0ZXN0ICovXG5cbmRpdi5tYWpzdGVzdC1jb250YWluZXIgPiBsYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbn1cbmRpdi5tYWpzdGVzdC1jb250YWluZXIgPiBmb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcm93LWdhcDogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHBhZGRpbmc6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpIDA7XG59XG5kaXYubWFqc3Rlc3QtY29udGFpbmVyID4gZm9ybSA+IHNlbGVjdCB7XG4gIGZvbnQtc2l6ZTogY2FsYygwLjYgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGlsZS1mcm9udCk7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIGZsZXgtZ3JvdzogMTtcbn1cbmRpdi5tYWpzdGVzdC1jb250YWluZXIgPiBmb3JtID4gdGV4dGFyZWEge1xuICBoZWlnaHQ6IGNhbGMoNS4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBmb250LXNpemU6IGNhbGMoMC4yNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xuICBib3JkZXItd2lkdGg6IGNhbGMoMC4wNSAqIHZhcigtLXRpbGUtc2l6ZSkpO1xufVxuZGl2Lm1hanN0ZXN0LWNvbnRhaW5lciA+IGZvcm0gPiBidXR0b24ge1xuICB3aWR0aDogMTAwJTtcbn1cbmRpdi5tYWpzdGVzdC1jb250YWluZXIgPiBkaXYubW9kcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDAuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1ICogdmFyKC0tdGlsZS1zaXplKSk7XG4gIHBhZGRpbmc6IGNhbGMoMC41ICogdmFyKC0tdGlsZS1zaXplKSk7XG5cbiAgdG9wOiBjYWxjKDAuNzUgKiB2YXIoLS10aWxlLXNpemUpKTtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogIzYwOTA2MDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICB6LWluZGV4OiAyO1xufVxuZGl2Lm1hanN0ZXN0LWNvbnRhaW5lciA+IGlucHV0LnNob3ctbW9kcy1jaGVja2JveDpjaGVja2VkIH4gZGl2Lm1vZHMtY29udGFpbmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiO0FBQUE7QUFBQTtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFHRTtBQUNBO0FBQ0E7QUFBQTtBQUdGO0FBQ0U7QUFBQTtBQU1FO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFBQTtBQUlKO0FBQ0U7QUFBQTtBQU1FO0FBQUE7QUFBQTtBQUlKO0FBQUE7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBSUY7QUFDRTtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFBQTtBQUtKO0FBQ0U7QUFBQTtBQUVFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQU9KO0FBQUE7QUFBOEM7QUFBQTtBQUM5QztBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQWdCO0FBQUE7QUFDaEI7QUFBd0I7QUFBQTtBQUV4QjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBR0Y7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBR0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUlGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFXO0FBQUE7QUFDWDtBQUFBO0FBQXNCO0FBQUE7QUFDdEI7QUFBQTtBQUFnQztBQUFBO0FBQ2hDO0FBQUE7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUVFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBR0Y7QUFBK0I7QUFBQTtBQUMvQjtBQUErQjtBQUFBO0FBQy9CO0FBQStCO0FBQUE7QUFDL0I7QUFBK0I7QUFBQTtBQUMvQjtBQUErQjtBQUFBO0FBQy9CO0FBQStCO0FBQUE7QUFDL0I7QUFBK0I7QUFBQTtBQUMvQjtBQUErQjtBQUFBO0FBQy9CO0FBQStCO0FBQUE7QUFDL0I7QUFBZ0M7QUFBQTtBQUNoQztBQUFnQztBQUFBO0FBQ2hDO0FBQWdDO0FBQUE7QUFDaEM7QUFBZ0M7QUFBQTtBQUNoQztBQUFnQztBQUFBO0FBQ2hDO0FBQWdDO0FBQUE7QUFDaEM7QUFBZ0M7QUFBQTtBQUNoQztBQUFnQztBQUFBO0FBQ2hDO0FBQWdDO0FBQUE7QUFDaEM7QUFBZ0M7QUFBQTtBQUNoQztBQUFnQztBQUFBO0FBQ2hDO0FBQWdDO0FBQUE7QUFDaEM7QUFBZ0M7QUFBQTtBQUNoQztBQUFnQztBQUFBO0FBQ2hDO0FBQWdDO0FBQUE7QUFFaEM7QUFBNEM7QUFBQTtBQUM1QztBQUE0QztBQUFBO0FBQzVDO0FBQTRDO0FBQUE7QUFDNUM7QUFBNEM7QUFBQTtBQUM1QztBQUE0QztBQUFBO0FBQzVDO0FBQTRDO0FBQUE7QUFDNUM7QUFBNEM7QUFBQTtBQUM1QztBQUE0QztBQUFBO0FBQzVDO0FBQTRDO0FBQUE7QUFDNUM7QUFBNkM7QUFBQTtBQUM3QztBQUE2QztBQUFBO0FBQzdDO0FBQTZDO0FBQUE7QUFDN0M7QUFBNkM7QUFBQTtBQUM3QztBQUE2QztBQUFBO0FBQzdDO0FBQTZDO0FBQUE7QUFDN0M7QUFBNkM7QUFBQTtBQUM3QztBQUE2QztBQUFBO0FBQzdDO0FBQTZDO0FBQUE7QUFDN0M7QUFBNkM7QUFBQTtBQUM3QztBQUE2QztBQUFBO0FBQzdDO0FBQTZDO0FBQUE7QUFDN0M7QUFBNkM7QUFBQTtBQUM3QztBQUE2QztBQUFBO0FBQzdDO0FBQTZDO0FBQUE7QUFDN0M7QUFBQTtBQUFBO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQWtCO0FBQUE7QUFDbEI7QUFBQTtBQUFBO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBS0Y7QUFBd0I7QUFBQTtBQUV4QjtBQUFBO0FBQzRDO0FBQUE7QUFDNUM7QUFBZ0Q7QUFBQTtBQUNoRDtBQUFtQjtBQUFBO0FBQ25CO0FBQXdCO0FBQUE7QUFDeEI7QUFBeUI7QUFBQTtBQUV6QjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQTRDO0FBQWtCO0FBQUE7QUFDOUQ7QUFBeUM7QUFBQTtBQUN6QztBQUF1QztBQUFBO0FBQ3ZDO0FBQXdDO0FBQUE7QUFDeEM7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUlGO0FBQW9CO0FBQUE7QUFDcEI7QUFBb0I7QUFBYztBQUFBO0FBQ2xDO0FBQUE7QUFFRTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFDcUQ7QUFBQTtBQUNyRDtBQUFnQztBQUFlO0FBQXdCO0FBQUE7QUFDdkU7QUFBa0I7QUFBQTtBQUdsQjtBQUFrQjtBQUFBO0FBQ2xCO0FBQXNCO0FBQUE7QUFDdEI7QUFBc0I7QUFBQTtBQUN0QjtBQUF3QjtBQUFBO0FBQ3hCO0FBQXVCO0FBQUE7QUFDdkI7QUFBdUI7QUFBQTtBQUN2QjtBQUFzQjtBQUFBO0FBQ3RCO0FBQXdCO0FBQUE7QUFDeEI7QUFBd0I7QUFBQTtBQUN4QjtBQUF1QjtBQUFBO0FBQ3ZCO0FBQXNCO0FBQUE7QUFDdEI7QUFBb0I7QUFBQTtBQUNwQjtBQUFvQjtBQUFBO0FBQ3BCO0FBQW9CO0FBQUE7QUFDcEI7QUFBb0I7QUFBQTtBQUNwQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQW9CO0FBQUE7QUFDcEI7QUFBb0I7QUFBQTtBQUNwQjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBSUY7QUFBQTtBQUNFO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBQ3dDO0FBQWE7QUFBYTtBQUFBO0FBQ2xFO0FBQWdCO0FBQUE7QUFDaEI7QUFBK0I7QUFBQTtBQUMvQjtBQUFnQztBQUFBO0FBRWhDO0FBQXVCO0FBQUE7QUFDdkI7QUFBc0M7QUFBQTtBQUN0QztBQUF1QztBQUFBO0FBQ3ZDO0FBQXVDO0FBQUE7QUFDdkM7QUFBc0M7QUFBQTtBQUN0QztBQUFxRDtBQUFBO0FBQ3JEO0FBQXNEO0FBQUE7QUFDdEQ7QUFBc0Q7QUFBQTtBQUN0RDtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFLRjtBQUNFO0FBQXFDO0FBQUE7QUFBQTtBQUd2QztBQUNFO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBQTtBQUVFO0FBQUE7QUFHRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUFBO0FBR0Y7QUFBQTtBQUVFO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUFBO0FBQUE7QUFLSjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBdUM7QUFBQTtBQUN2QztBQUF5QztBQUFBO0FBQ3pDO0FBQXdDO0FBQUE7QUFDeEM7QUFBeUM7QUFBQTtBQUN6QztBQUF5QztBQUFBO0FBQ3pDO0FBQTBDO0FBQUE7QUFDMUM7QUFBeUM7QUFBQTtBQUN6QztBQUEwQztBQUFBO0FBQzFDO0FBQXdDO0FBQUE7QUFDeEM7QUFBeUM7QUFBQTtBQUN6QztBQUF3QztBQUFBO0FBQ3hDO0FBQXlDO0FBQUE7QUFDekM7QUFBeUM7QUFBQTtBQUN6QztBQUEwQztBQUFBO0FBQzFDO0FBQXlDO0FBQUE7QUFDekM7QUFBMEM7QUFBQTtBQUMxQztBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFBQTtBQUVFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQTJCO0FBQUE7QUFDM0I7QUFBb0I7QUFBQTtBQUNwQjtBQUFBO0FBQUE7QUFBQTtBQUlFO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBR0Y7QUFDRTtBQUFBO0FBS0Y7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQXdCO0FBQUE7QUFDeEI7QUFBMkI7QUFBQTtBQUMzQjtBQUF5QjtBQUFBO0FBQ3pCO0FBQTBCO0FBQUE7QUFDMUI7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFBQTtBQUNRO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUNBO0FBQUE7QUFBQTtBQUVSO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUlGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBS0Y7QUFBQTtBQUNPO0FBQUE7QUFBQTtBQUNFO0FBQUE7QUFBQTtBQUVUO0FBQTJDO0FBQWtCO0FBQUE7QUFDN0Q7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUlGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUFXO0FBQW9HO0FBQUE7QUFDL0c7QUFBb0I7QUFBMkI7QUFBMkI7QUFBQTtBQUMxRTtBQUFpQjtBQUFrQztBQUFBO0FBQ25EO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQWtDO0FBQUE7QUFDbkQ7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBa0M7QUFBQTtBQUNuRDtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQUE7QUFBNkM7QUFBQTtBQUM3QztBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQXFCO0FBQUE7QUFDckI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQUE7QUFDakI7QUFBQTtBQUFxQztBQUFBO0FBQ3JDO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBQTtBQUNqQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBQTtBQUFxQztBQUFBO0FBQ3JDO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBeUI7QUFBQTtBQUN6QjtBQUF5QjtBQUFBO0FBQ3pCO0FBQXlCO0FBQUE7QUFDekI7QUFBeUI7QUFBQTtBQUN6QjtBQUF5QjtBQUFBO0FBQ3pCO0FBQXlCO0FBQUE7QUFDekI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBeUI7QUFBQTtBQUN6QjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBaUI7QUFBQTtBQUNqQjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUF5QjtBQUFnQztBQUFrQztBQUFBO0FBQzNGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXlCO0FBQWdDO0FBQWtDO0FBQUE7QUFDM0Y7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBeUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUMzRjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQUE7QUFBcUM7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RztBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXlCO0FBQWdDO0FBQWtDO0FBQUE7QUFDM0Y7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBeUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUMzRjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUF5QjtBQUFtQztBQUFxQztBQUFBO0FBQ2pHO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXlCO0FBQW1DO0FBQXFDO0FBQUE7QUFDakc7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBeUI7QUFBbUM7QUFBcUM7QUFBQTtBQUNqRztBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUF5QjtBQUFtQztBQUFxQztBQUFBO0FBQ2pHO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXFCO0FBQW1DO0FBQXFDO0FBQUE7QUFDN0Y7QUFBcUI7QUFBbUM7QUFBcUM7QUFBQTtBQUM3RjtBQUFxQjtBQUFtQztBQUFxQztBQUFBO0FBQzdGO0FBQXlCO0FBQW1DO0FBQXFDO0FBQUE7QUFDakc7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBeUI7QUFBK0I7QUFBaUM7QUFBQTtBQUN6RjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUF5QjtBQUErQjtBQUFpQztBQUFBO0FBQ3pGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXlCO0FBQStCO0FBQWlDO0FBQUE7QUFDekY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBeUI7QUFBK0I7QUFBaUM7QUFBQTtBQUN6RjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUFxQjtBQUErQjtBQUFpQztBQUFBO0FBQ3JGO0FBQXFCO0FBQStCO0FBQWlDO0FBQUE7QUFDckY7QUFBcUI7QUFBK0I7QUFBaUM7QUFBQTtBQUNyRjtBQUF5QjtBQUErQjtBQUFpQztBQUFBO0FBQ3pGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXlCO0FBQWdDO0FBQWtDO0FBQUE7QUFDM0Y7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBeUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUMzRjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUF5QjtBQUFnQztBQUFrQztBQUFBO0FBQzNGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXlCO0FBQWdDO0FBQWtDO0FBQUE7QUFDM0Y7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBcUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUN2RjtBQUFxQjtBQUFnQztBQUFrQztBQUFBO0FBQ3ZGO0FBQXFCO0FBQWdDO0FBQWtDO0FBQUE7QUFDdkY7QUFBeUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUMzRjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUF5QjtBQUFBO0FBQ3pCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXlCO0FBQUE7QUFDekI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBeUI7QUFBQTtBQUN6QjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUF5QjtBQUFBO0FBQ3pCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXlCO0FBQUE7QUFDekI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBeUI7QUFBQTtBQUN6QjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUF5QjtBQUFBO0FBQ3pCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXlCO0FBQUE7QUFDekI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBeUI7QUFBQTtBQUN6QjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBcUI7QUFBQTtBQUNyQjtBQUF5QjtBQUFBO0FBQ3pCO0FBQWlCO0FBQUE7QUFDakI7QUFBaUI7QUFBb0I7QUFBQTtBQUNyQztBQUFpQjtBQUFBO0FBQ2pCO0FBQWlCO0FBQW9CO0FBQUE7QUFDckM7QUFBaUI7QUFBb0I7QUFBQTtBQUNyQztBQUFpQjtBQUFvQjtBQUFBO0FBQ3JDO0FBQWlCO0FBQW9CO0FBQUE7QUFHckM7QUFBcUI7QUFBQTtBQUNyQjtBQUF5QjtBQUFnQztBQUFrQztBQUFBO0FBQzNGO0FBQXlCO0FBQUE7QUFDekI7QUFBeUI7QUFBK0I7QUFBaUM7QUFBQTtBQUN6RjtBQUF5QjtBQUFnQztBQUFrQztBQUFBO0FBQzNGO0FBQXlCO0FBQUE7QUFFekI7QUFBcUI7QUFBQTtBQUNyQjtBQUF5QjtBQUFnQztBQUFrQztBQUFBO0FBQzNGO0FBQXlCO0FBQStCO0FBQWlDO0FBQUE7QUFDekY7QUFBeUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUMzRjtBQUF5QjtBQUFBO0FBRXpCO0FBQXFCO0FBQUE7QUFDckI7QUFBeUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUMzRjtBQUF5QjtBQUFBO0FBQ3pCO0FBQXlCO0FBQStCO0FBQWlDO0FBQUE7QUFDekY7QUFBeUI7QUFBZ0M7QUFBa0M7QUFBQTtBQUMzRjtBQUF5QjtBQUFBO0FBRXpCO0FBQXFCO0FBQUE7QUFHckI7QUFBb0I7QUFBQTtBQUdwQjtBQUFlO0FBQWdDO0FBQUE7QUFDL0M7QUFBZ0I7QUFBK0I7QUFBQTtBQUMvQztBQUFnQjtBQUFtQztBQUFBO0FBQ25EO0FBQWdCO0FBQWdDO0FBQUE7QUFDaEQ7QUFBa0I7QUFBQTtBQUNsQjtBQUFrQjtBQUFBO0FBQ2xCO0FBQWlCO0FBQXFCO0FBQUE7QUFDdEM7QUFBcUI7QUFBQTtBQUNyQjtBQUFrQjtBQUFzQjtBQUFBO0FBQ3hDO0FBQWdCO0FBQW9CO0FBQUE7QUFDcEM7QUFBZ0I7QUFBb0I7QUFBQTtBQUNwQztBQUFxQjtBQUFBO0FBQ3JCO0FBQXFCO0FBQUE7QUFDckI7QUFBaUI7QUFBcUI7QUFBQTtBQUN0QztBQUFnQjtBQUFBO0FBQ2hCO0FBQWlCO0FBQXFCO0FBQUE7QUFDdEM7QUFBaUI7QUFBQTtBQUNqQjtBQUVFO0FBQUE7QUFnQkY7QUFBQTtBQUVJO0FBQUE7QUFBQTtBQUdKO0FBRUU7QUFDQTtBQUFBO0FBR0Y7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBR0Y7QUFBQTtBQUdFO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFHRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUdGO0FBQUE7QUFFRTtBQUFBO0FBR0Y7QUFDRTtBQUFBO0FBR0Y7QUFDRTtBQUFBO0FBR0Y7QUFDRTtBQUNBO0FBQUE7QUFHRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFHRjtBQUFxQztBQUFBO0FBQ3JDO0FBQXFDO0FBQUE7QUFDckM7QUFBcUM7QUFBQTtBQUNyQztBQUFxQztBQUFBO0FBQ3JDO0FBQXFDO0FBQUE7QUFDckM7QUFBcUM7QUFBQTtBQUNyQztBQUFxQztBQUFBO0FBQ3JDO0FBQXFDO0FBQUE7QUFDckM7QUFBc0M7QUFBQTtBQUN0QztBQUFzQztBQUFBO0FBQ3RDO0FBQXNDO0FBQUE7QUFDdEM7QUFBc0M7QUFBQTtBQUN0QztBQUFzQztBQUFBO0FBQ3RDO0FBQXNDO0FBQUE7QUFDdEM7QUFBc0M7QUFBQTtBQUN0QztBQUFzQztBQUFBO0FBQ3RDO0FBQXNDO0FBQUE7QUFDdEM7QUFBc0M7QUFBQTtBQUN0QztBQUFzQztBQUFBO0FBQ3RDO0FBQXNDO0FBQUE7QUFDdEM7QUFBc0M7QUFBQTtBQUN0QztBQUFzQztBQUFBO0FBQ3RDO0FBQXNDO0FBQUE7QUFDdEM7QUFBc0M7QUFBQTtBQUN0QztBQUFzQztBQUFBO0FBQ3RDO0FBQXNDO0FBQUE7QUFDdEM7QUFBc0M7QUFBQTtBQUN0QztBQUFzQztBQUFBO0FBQ3RDO0FBQXNDO0FBQUE7QUFFdEM7QUFBaUM7QUFBQTtBQUNqQztBQUFpQztBQUFBO0FBQ2pDO0FBQWlDO0FBQUE7QUFDakM7QUFBaUM7QUFBQTtBQUNqQztBQUFpQztBQUFBO0FBQ2pDO0FBQWlDO0FBQUE7QUFDakM7QUFBaUM7QUFBQTtBQUNqQztBQUFpQztBQUFBO0FBQ2pDO0FBQWlDO0FBQUE7QUFDakM7QUFBa0M7QUFBQTtBQUNsQztBQUFrQztBQUFBO0FBQ2xDO0FBQWtDO0FBQUE7QUFDbEM7QUFBa0M7QUFBQTtBQUNsQztBQUFrQztBQUFBO0FBQ2xDO0FBQWtDO0FBQUE7QUFDbEM7QUFBa0M7QUFBQTtBQUNsQztBQUFrQztBQUFBO0FBQ2xDO0FBQWtDO0FBQUE7QUFDbEM7QUFBa0M7QUFBQTtBQUNsQztBQUFrQztBQUFBO0FBQ2xDO0FBQWtDO0FBQUE7QUFDbEM7QUFBa0M7QUFBQTtBQUNsQztBQUFrQztBQUFBO0FBQ2xDO0FBQWtDO0FBQUE7QUFDbEM7QUFBa0M7QUFBQTtBQUNsQztBQUFrQztBQUFBO0FBQ2xDO0FBQWtDO0FBQUE7QUFDbEM7QUFBa0M7QUFBQTtBQUNsQztBQUFrQztBQUFBO0FBQ2xDO0FBQWtDO0FBQUE7QUFHbEM7QUFDRTtBQUFBO0FBR0Y7QUFDRTtBQUFBO0FBR0Y7QUFDRTtBQUFBO0FBR0Y7QUFDRTtBQUFBO0FBR0Y7QUFDRTtBQUFBO0FBSUY7QUFDRTtBQUFBO0FBT0Y7QUFBQTtBQUVJO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUdKO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFHRjtBQUFBO0FBRUk7QUFDQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUo7QUFDRTtBQUFBO0FBR0Y7QUFBQTtBQUVJO0FBQUE7QUFBQTtBQUdBO0FBQ0E7QUFBQTtBQUFBO0FBR0o7QUFDRTtBQUFBO0FBR0Y7QUFBQTtBQUVJO0FBQ0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlKO0FBQ0U7QUFBQTtBQUdGO0FBQUE7QUFFSTtBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJSjtBQUFBO0FBRUU7QUFBQTtBQUdGO0FBQUE7QUFFSTtBQUNBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUdKO0FBQUE7QUFFSTtBQUNBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUdKO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUtGO0FBQUE7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUtGO0FBQUE7QUFFSTtBQUFBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFHSjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQW9CO0FBQUE7QUFDcEI7QUFBdUI7QUFBMkM7QUFBQTtBQUNsRTtBQUFzQjtBQUFBO0FBQ3RCO0FBQXdCO0FBQTBDO0FBQUE7QUFJbEU7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUEwQjtBQUFBO0FBQzFCO0FBQXlCO0FBQUE7QUFDekI7QUFBMkI7QUFBQTtBQUMzQjtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBSUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFJRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFJRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUlGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFJRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBMkQ7QUFBQTtBQUMzRDtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBSUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFPRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUlGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBSUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBUUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQW9FO0FBQUE7QUFDcEU7QUFBb0U7QUFBQTtBQUNwRTtBQUFvRTtBQUFBO0FBQ3BFO0FBQW9FO0FBQUE7QUFDcEU7QUFBb0U7QUFBQTtBQUNwRTtBQUFvRTtBQUFBO0FBQ3BFO0FBQW9FO0FBQUE7QUFDcEU7QUFBb0U7QUFBQTtBQUNwRTtBQUFvRTtBQUFBO0FBQ3BFO0FBQXFFO0FBQUE7QUFDckU7QUFBcUU7QUFBQTtBQUNyRTtBQUFxRTtBQUFBO0FBQ3JFO0FBQXFFO0FBQUE7QUFDckU7QUFBcUU7QUFBQTtBQUNyRTtBQUFxRTtBQUFBO0FBQ3JFO0FBQXFFO0FBQUE7QUFDckU7QUFBcUU7QUFBQTtBQUNyRTtBQUFxRTtBQUFBO0FBQ3JFO0FBQXFFO0FBQUE7QUFDckU7QUFBcUU7QUFBQTtBQUNyRTtBQUFxRTtBQUFBO0FBQ3JFO0FBQXFFO0FBQUE7QUFDckU7QUFBcUU7QUFBQTtBQUNyRTtBQUFxRTtBQUFBO0FBQ3JFO0FBQXFFO0FBQUE7QUFDckU7QUFBcUU7QUFBQTtBQUNyRTtBQUFxRTtBQUFBO0FBQ3JFO0FBQXFFO0FBQUE7QUFDckU7QUFBcUU7QUFBQTtBQUNyRTtBQUFxRTtBQUFBO0FBQ3JFO0FBQXFFO0FBQUE7QUFDckU7QUFBcUU7QUFBQTtBQUNyRTtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFJRjtBQUNFO0FBQ0E7QUFBQTtBQUlGO0FBQ0U7QUFBQTtBQUlGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFPRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBQTtBQUFBO0FBR0U7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFBQTtBQUdFO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUFvRjtBQUFBO0FBQ3BGO0FBQXdFO0FBQUE7QUFDeEU7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUdGO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFHRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBR0Y7QUFBb0I7QUFBYTtBQUFjO0FBQUE7QUFDL0M7QUFBbUI7QUFBYTtBQUFjO0FBQUE7QUFDOUM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTZ0Q7QUFBQTtBQUNoRDtBQUFBO0FBQUE7QUFHRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFHRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBaUM7QUFBZ0I7QUFBQTtBQUNqRDtBQUF5QztBQUFBO0FBQ3pDO0FBQWdDO0FBQWdCO0FBQUE7QUFDaEQ7QUFBd0M7QUFBQTtBQUN4QztBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLRTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBSUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBNEI7QUFBYTtBQUFhO0FBQUE7QUFDdEQ7QUFBQTtBQUFBO0FBR0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBQThDO0FBQUE7QUFDOUM7QUFBMEI7QUFBdUM7QUFBQTtBQUNqRTtBQUFnQztBQUFBO0FBQ2hDO0FBQStCO0FBQXlDO0FBQUE7QUFDeEU7QUFBcUM7QUFBQTtBQUNyQztBQUFBO0FBQUE7QUFBQTtBQUlFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUlGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQXdDO0FBQXVDO0FBQUE7QUFDL0U7QUFBMkM7QUFBcUM7QUFBQTtBQUNoRjtBQUEwQztBQUFvQztBQUFBO0FBQzlFO0FBQTRDO0FBQXNDO0FBQUE7QUFDbEY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBaUQ7QUFBQTtBQUNqRDtBQUF5RDtBQUFBO0FBQ3pEO0FBQXlEO0FBQUE7QUFDekQ7QUFBZ0Q7QUFBQTtBQUloRDtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFJRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUlGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUdGO0FBQWdCO0FBQWU7QUFBQTtBQUMvQjtBQUE2QjtBQUFBO0FBQzdCO0FBQTZCO0FBQUE7QUFDN0I7QUFBNkI7QUFBQTtBQUM3QjtBQUE2QjtBQUFBO0FBQzdCO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFNRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUdGO0FBQ0U7QUFDRTtBQUFBO0FBQUE7QUFVSjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFBQTtBQUFBO0FBQUE7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBMEI7QUFBQTtBQUMxQjtBQUF5QjtBQUFBO0FBQ3pCO0FBQUE7QUFBa0Q7QUFBQTtBQUNsRDtBQUFBO0FBQXVEO0FBQUE7QUFDdkQ7QUFBQTtBQUFBO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFBQTtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBQUE7QUFBc0g7QUFBcUQ7QUFBQTtBQUMzSztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBb0c7QUFBcUQ7QUFBQTtBQUN6SjtBQUFBO0FBQUE7QUFBc0g7QUFBcUQ7QUFBQTtBQUMzSztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBdUc7QUFBcUQ7QUFBQTtBQUM1SjtBQUFBO0FBQUE7QUFBb0c7QUFBcUQ7QUFBQTtBQUN6SjtBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBeUg7QUFBcUQ7QUFBQTtBQUM5SztBQUFBO0FBQUE7QUFBc0g7QUFBcUQ7QUFBQTtBQUMzSztBQUFBO0FBQUE7QUFBdUc7QUFBcUQ7QUFBQTtBQUM1SjtBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBeUg7QUFBcUQ7QUFBQTtBQUM5SztBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBK0g7QUFBcUQ7QUFBQTtBQUNwTDtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBc0g7QUFBcUQ7QUFBQTtBQUMzSztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBK0g7QUFBcUQ7QUFBQTtBQUNwTDtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBeUg7QUFBcUQ7QUFBQTtBQUM5SztBQUFBO0FBQUE7QUFBdUc7QUFBcUQ7QUFBQTtBQUM1SjtBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBNEg7QUFBcUQ7QUFBQTtBQUNqTDtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBc0g7QUFBcUQ7QUFBQTtBQUMzSztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBc0g7QUFBcUQ7QUFBQTtBQUMzSztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBc0g7QUFBcUQ7QUFBQTtBQUMzSztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBb0c7QUFBcUQ7QUFBQTtBQUN6SjtBQUFBO0FBQUE7QUFBc0g7QUFBcUQ7QUFBQTtBQUMzSztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBdUc7QUFBcUQ7QUFBQTtBQUM1SjtBQUFBO0FBQUE7QUFBb0c7QUFBcUQ7QUFBQTtBQUN6SjtBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBeUg7QUFBcUQ7QUFBQTtBQUM5SztBQUFBO0FBQUE7QUFBc0g7QUFBcUQ7QUFBQTtBQUMzSztBQUFBO0FBQUE7QUFBdUc7QUFBcUQ7QUFBQTtBQUM1SjtBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBc0g7QUFBcUQ7QUFBQTtBQUMzSztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBeUg7QUFBcUQ7QUFBQTtBQUM5SztBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBK0g7QUFBcUQ7QUFBQTtBQUNwTDtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBc0g7QUFBcUQ7QUFBQTtBQUMzSztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBK0g7QUFBcUQ7QUFBQTtBQUNwTDtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBNEg7QUFBcUQ7QUFBQTtBQUNqTDtBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBeUg7QUFBcUQ7QUFBQTtBQUM5SztBQUFBO0FBQUE7QUFBdUc7QUFBcUQ7QUFBQTtBQUM1SjtBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBNEg7QUFBcUQ7QUFBQTtBQUNqTDtBQUFBO0FBQUE7QUFBbUg7QUFBcUQ7QUFBQTtBQUN4SztBQUFBO0FBQUE7QUFBNkc7QUFBcUQ7QUFBQTtBQUNsSztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUFBO0FBQUE7QUFBc0g7QUFBcUQ7QUFBQTtBQUMzSztBQUFBO0FBQUE7QUFBZ0g7QUFBcUQ7QUFBQTtBQUNySztBQUFBO0FBQUE7QUFBeUg7QUFBcUQ7QUFBQTtBQUM5SztBQUFBO0FBQUE7QUFBMEc7QUFBcUQ7QUFBQTtBQUMvSjtBQUF3QjtBQUFxRDtBQUFBO0FBQzdFO0FBQUE7QUFDRTtBQUFBO0FBR0Y7QUFBQTtBQUNFO0FBQUE7QUFHRjtBQUFBO0FBQ0U7QUFBQTtBQUdGO0FBQUE7QUFBeUQ7QUFBQTtBQUV6RDtBQUFBO0FBRUU7QUFDQTtBQUFBO0FBRUY7QUFBQTtBQUFxRjtBQUFhO0FBQXFEO0FBQUE7QUFDdko7QUFBZ0Q7QUFBYTtBQUFxRDtBQUFBO0FBQ2xIO0FBQUE7QUFBcUY7QUFBYTtBQUFxRDtBQUFBO0FBQ3ZKO0FBQWdEO0FBQWE7QUFBcUQ7QUFBQTtBQUNsSDtBQUFBO0FBRUU7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUFBO0FBSUY7QUFBQTtBQUVFO0FBQUE7QUFJRjtBQUFBO0FBRUU7QUFBQTtBQUdGO0FBQUE7QUFFRTtBQUFBO0FBS0Y7QUFBQTtBQUVFO0FBQUE7QUFJRjtBQUFBO0FBRUU7QUFBQTtBQWtCRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFBQTtBQUVFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFBQTtBQUdGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBeUQ7QUFBQTtBQUN6RDtBQUF1RTtBQUFBO0FBRXZFO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFJRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBS0Y7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUdGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBR0Y7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBS0Y7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFBQTtBQUdKO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUFBO0FBSU47QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQUE7QUFBQTtBQUdFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFBQTtBQUFBO0FBSUU7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFFRTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFHRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUFBO0FBQUE7QUFHRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUdGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBR0Y7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBR0Y7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUtGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQXdEO0FBQUE7QUFDeEQ7QUFBZ0U7QUFBQTtBQUNoRTtBQUFBO0FBQUE7QUFHRTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFBQTtBQUVGO0FBQUE7QUFFRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBSUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFBQTtBQUdGO0FBQ0U7QUFDRTtBQUNBO0FBQUE7QUFBQTtBQUlKO0FBQ0U7QUFDRTtBQUNBO0FBQUE7QUFBQTtBQUlKO0FBQ0U7QUFDQTtBQUFBO0FBSUY7QUFDRTtBQUNFO0FBQUE7QUFBQTtBQUdKO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFHRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNRTtBQUFBO0FBS0Y7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBSUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBb0M7QUFBQTtBQUNwQztBQUFtQztBQUFBO0FBQ25DO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUE0QjtBQUFBO0FBQzVCO0FBQ0U7QUFBNkY7QUFBQTtBQUM3RjtBQUE0RjtBQUFBO0FBQUE7QUFJOUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBQTtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFBQTtBQUVFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUFBO0FBRUU7QUFBQTtBQUlGO0FBQ0U7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQUVGO0FBQ0U7QUFBQTtBQU9GO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVGO0FBQ0U7QUFDQTtBQUNBO0FBQUE7QUFFRjtBQUNFO0FBQUE7QUFFRjtBQUNFO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUY7QUFDRTtBQUFBOyIsCiAgIm5hbWVzIjogW10KfQo= */
