/*
Theme Name: Adjacent Landing Page
Author: Vince MingPu Shao, Wenjin Liu, Sukanya Aneja
Description: Adjacent Landing Page theme
Version: 0.0.5
*/
/* inject:scss */
/*---------------------*/
/*
** FONT FAMILY SETUP
*/
/*---------------------*/
@font-face {
  font-family: "spacemono-regular";
  src: url("./public/assets/fonts/SpaceMono-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "spacemono-italic";
  src: url("./public/assets/fonts/SpaceMono-Italic.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "spacemono-bold";
  src: url("./public/assets/fonts/SpaceMono-Bold.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "spacemono-bold-italic";
  src: url("./public/assets/fonts/SpaceMono-BoldItalic.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: "timer45";
  src: url("./public/assets/fonts/timr45w.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

/*---------------------*/
/*
** THEME FONT SETUP
*/
/*---------------------*/
/* level 1 */
/* level 2 */
/*---------------------*/
/*
** FONT SIZE SETUP
**
** fs > stands for --> font size
*/
/*---------------------*/
/*---------------------*/
/*
** FONT STYLES SETUP
**
** fc > stands for --> font color
*/
/*---------------------*/
.-f-title {
  font-family: "timer45";
  font-size: 2.625rem;
  line-height: 2.25rem;
  color: #272727; }

.-f-subtitle {
  font-family: "spacemono-bold";
  font-size: 1.125rem;
  color: #272727; }

.-f-body {
  font-family: "spacemono-regular";
  font-size: 1rem;
  color: #232323; }

.-f-body.-italic {
  font-family: "spacemono-italic"; }

.-f-btn {
  font-size: 1rem;
  font-family: "spacemono-bold"; }

.-fc-light {
  color: #f0efee; }

.-fc-theme {
  color: #0c06d4; }

/*---------------------*/
/*
** DEFAULT FONT STYLE SETUP
*/
/*---------------------*/
a {
  color: #0c06d4;
  text-decoration: underline; }

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0-modified | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* make sure to set some focus styles for accessibility */
:focus {
  outline: 0; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
  -webkit-appearance: none;
  -moz-appearance: none; }

input[type=search] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box; }

textarea {
  overflow: auto;
  vertical-align: top;
  resize: vertical; }

/**
 * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  max-width: 100%; }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
 * Known issue: no IE 6 support.
 */
[hidden] {
  display: none; }

/**
 * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-size: 100%;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/**
 * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
 * 2. Improve image quality when scaled in IE 7.
 */
img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */ }

/**
 * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
 */
figure {
  margin: 0; }

/**
 * Correct margin displayed oddly in IE 6/7.
 */
form {
  margin: 0; }

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct color not being inherited in IE 6/7/8/9.
 * 2. Correct text not wrapping in Firefox 3.
 * 3. Correct alignment displayed oddly in IE 6/7.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */
  *margin-left: -7px;
  /* 3 */ }

/**
 * 1. Correct font size not being inherited in all browsers.
 * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
 *    and Chrome.
 * 3. Improve appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */
  *vertical-align: middle;
  /* 3 */ }

/**
 * Address Firefox 3+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE 6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
  *overflow: visible;
  /* 4 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * 1. Address box sizing set to content-box in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 * 3. Remove excess padding in IE 7.
 *    Known issue: excess padding remains in IE 6.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */ }

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Remove inner padding and border in Firefox 3+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * 1. Remove default vertical scrollbar in IE 6/7/8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */ }

/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

html,
button,
input,
select,
textarea {
  color: #222; }

::-moz-selection {
  background: #b3d4fc;
  text-shadow: none; }

::selection {
  background: #b3d4fc;
  text-shadow: none; }

img {
  vertical-align: middle; }

fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

textarea {
  resize: vertical; }

.chromeframe {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0; }

a {
  text-decoration: none; }

:root {
  --bar-padding-side: 3rem;
  --bar-padding-horizontal: 1.5rem;
  --nav-height: 80px;
  --header-height: 80vh; }

@media (max-width: 1400px) {
  :root {
    --header-height: 65vh; } }

@media (max-width: 1280px) {
  :root {
    --header-height: 62.5vh; } }

@media (max-width: 1170px) {
  :root {
    --header-height: 55vh; } }

@media (max-width: 1024px) {
  :root {
    --header-height: 60vh;
    --bar-padding-side: 1.5rem;
    --bar-padding-horizontal: 0.8rem;
    --nav-height: 64px; } }

@media (max-width: 1024px) {
  :root {
    --header-height: 100vh; } }

/* endinject */
/* inject:scss */
/* endinject */
/* inject:scss */
.nav {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  padding: 0 var(--bar-padding-side);
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  height: var(--nav-height);
  width: 100vw; }

.nav.-is-about {
  border-bottom: 1px solid #232323;
  background-color: #f8f9fa;
  justify-content: space-between; }

.nav__item {
  padding: 1rem 1rem;
  border: none;
  background-color: transparent; }
  .nav__item:first-child {
    margin-right: 2rem; }
  .nav__item:last-child {
    padding-right: 0; }

.nav__item-link {
  font-size: 1.125rem;
  font-family: "timer45";
  color: #232323; }
  @media (min-width: 1025px) {
    .nav__item-link:hover {
      text-decoration: underline;
      color: #0c06d4; } }

.nav.-is-about .nav__item:first-child {
  text-decoration: underline;
  pointer-events: none; }

.nav__left {
  display: none; }

.nav.-is-about .nav__left {
  display: block; }

.nav__logo {
  width: 8rem; }

@media (max-width: 1024px) {
  .nav__main span {
    display: none; }
  .nav__item {
    margin-right: 0 !important;
    padding: 0; } }

.header {
  position: relative;
  height: var(--header-height); }

/*
** header hero text
*/
:root {
  --dot-size: calc(var(--header-height) / 25);
  --hero-height: 45vh;
  --info-height: calc(100vh - var(--hero-height)); }

@media (max-width: 1024px) {
  :root {
    --dot-size: calc(var(--hero-height) / 20); } }

@media (max-width: 1024px) {
  :root {
    --hero-height: 40vh; } }

.header__hero-title {
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none; }

.header__hero {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: inherit; }

.header__hero-text {
  position: relative;
  width: 100%;
  height: 33.3%;
  display: flex;
  align-items: baseline; }

.header__hero-svg {
  height: 91%;
  margin-top: auto;
  transform: translate3d(0, 1.8%, 0); }

.header__hero-text.-top {
  border-bottom: 1px solid #232323; }

.header__hero-text.-center {
  border-bottom: 1px solid #232323; }

.header__hero-text.-top .header__hero-svg {
  margin-left: 2%; }

.header__hero-text.-center .header__hero-svg {
  height: 128%; }

.header__hero-text.-btm .header__hero-svg {
  margin-left: 1%; }

.header__hero-text.-top:after, .header__hero-text.-center:after {
  content: "";
  position: absolute;
  width: var(--dot-size);
  height: var(--dot-size);
  border-radius: 100%;
  background-color: #232323; }

.header__hero-text.-top:after {
  top: calc(60% - var(--dot-size));
  left: calc(var(--header-height)/ 1.5); }

.header__hero-text.-center:after {
  top: calc(65% - var(--dot-size));
  left: calc(var(--header-height)/ 2); }

@media (max-width: 1024px) {
  .header__hero-text.-top:after {
    left: calc(var(--header-height)/ 3.5); }
  .header__hero-text.-center:after {
    left: calc(var(--header-height)/ 5); }
  .header__hero-text.-btm {
    border-bottom: 1px solid #232323; } }

@media (max-width: 850px) {
  .header__hero-text.-top:after {
    left: calc(var(--header-height)/ 4); }
  .header__hero-text.-center:after {
    left: calc(var(--header-height)/ 6); } }

/*
** header grid
*/
.header__grids {
  width: 100%;
  height: inherit;
  display: flex;
  position: absolute;
  top: 0;
  left: 0; }

.header__grids {
  position: relative; }
  .header__grids:before, .header__grids:after {
    content: "";
    position: absolute;
    top: 45vh;
    left: calc(-45vh);
    width: 200vh;
    height: 1px;
    background-color: #0c06d4; }
  .header__grids:before {
    transform-origin: center;
    transform: rotate(45deg); }
  .header__grids:after {
    transform-origin: center;
    transform: rotate(-45deg); }

@media (max-width: 1024px) {
  .header__grids:before, .header__grids:after {
    top: 35vh;
    left: auto;
    right: calc(-90vh); } }

.header__grid {
  height: 100%; }
  .header__grid.-left {
    width: calc(100% - 26%* 2);
    border-right: 1px solid #232323; }
  .header__grid.-center {
    width: 26%;
    border-right: 1px solid #232323; }
  .header__grid.-right {
    width: 26%; }

/*
** header info
*/
.header__info {
  position: absolute;
  right: var(--bar-padding-side);
  top: calc((100% - calc(var(--header-height) * 0.725)) / 2);
  z-index: 2;
  width: calc(var(--header-height) * 0.8);
  max-width: calc(var(--header-height) * 0.8);
  height: calc(var(--header-height) * 0.755);
  max-height: calc(var(--header-height) * 0.755);
  background-color: #f8f9fa; }
  @media (min-width: 1025px) {
    .header__info:hover:after {
      background-color: #0c06d4;
      border-color: transparent;
      transform: translate3d(-0.5rem, 0.5rem, 0);
      transition: all .2s; } }

.header-latest {
  position: relative;
  display: block;
  min-width: 100%;
  min-height: 100%;
  padding: 2rem 0 2rem 2.5rem;
  box-sizing: border-box;
  border: 1px solid #272727;
  background-color: #f8f9fa; }
  .header-latest .header-latest__cta {
    color: #0c06d4;
    font-family: "spacemono-bold";
    text-decoration: underline; }
  @media (min-width: 1025px) {
    .header-latest:hover .header-latest__cta {
      color: #534FD2; } }

.header__info:after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 2rem;
  left: -2rem;
  width: 100%;
  height: 100%;
  border: 1px solid #272727;
  background-color: #f8f9fa; }

.header-latest__heading {
  display: inline-block;
  font-size: 1rem;
  color: #232323;
  margin-bottom: 0.5rem; }

.header-latest__title {
  font-family: "timer45";
  font-size: 3.5rem;
  color: #232323; }

.header-latest__top {
  margin-bottom: 1rem; }

.header-latest__main {
  min-height: calc(var(--header-height) * 0.5);
  max-height: calc(var(--header-height) * 0.5);
  margin-bottom: 1rem; }

.header-latest__preview {
  min-height: inherit;
  background-position: top left;
  background-size: cover; }

@media (max-width: 1400px) {
  .header__info:after {
    height: calc(100% + 2rem); }
  .header__info {
    height: calc(var(--header-height) * 0.655);
    max-height: calc(var(--header-height) * 0.655); }
  .header-latest__main {
    min-height: calc(var(--header-height) * 0.4);
    max-height: calc(var(--header-height) * 0.4); } }

@media (max-width: 1280px) {
  .header__info {
    height: calc(var(--header-height) * 0.655);
    max-height: calc(var(--header-height) * 0.655); }
  .header-latest__main {
    min-height: calc(var(--header-height) * 0.4);
    max-height: calc(var(--header-height) * 0.4); } }

@media (max-width: 1170px) {
  .header__info:after {
    height: calc(100% + 3rem); } }

@media (max-width: 1024px) {
  .header__info {
    transform: none;
    left: 0;
    right: auto;
    top: calc(var(--hero-height) + 2rem);
    width: 95vw;
    max-width: 95vw;
    height: calc((100vh - var(--hero-height)) * 0.9);
    max-height: calc((100vh - var(--hero-height)) * 0.9); }
  .header__info:after {
    height: calc(100% + 1rem); }
  .header-latest__main {
    min-height: calc((100vh - var(--hero-height)) * 0.7);
    max-height: calc((100vh - var(--hero-height)) * 0.7); }
  .header-latest__heading {
    font-size: 0.875rem;
    margin-bottom: 0; }
  .header-latest__title {
    font-size: 3rem; } }

@media (max-width: 850px) {
  .header__info {
    height: calc((100vh - var(--hero-height)) * 0.8);
    max-height: calc((100vh - var(--hero-height)) * 0.8); }
  .header-latest__main {
    min-height: calc((100vh - var(--hero-height)) * 0.55);
    max-height: calc((100vh - var(--hero-height)) * 0.55); }
  .header__hero-svg {
    height: 100%; }
  .header__hero-text.-center .header__hero-svg {
    height: 130%; } }

@media (max-width: 1024px) {
  .header__hero {
    height: var(--hero-height); } }

@media (max-width: 1024px) {
  .header__grid.-left {
    margin-top: calc(var(--hero-height) * 0.66 + 4px);
    width: 26%;
    height: calc(var(--info-height) + var(--hero-height) * 0.33); }
  .header__grid.-center {
    width: calc(100% - 26%* 2);
    height: 100%; } }

.info-box {
  position: relative;
  z-index: 1;
  background-color: #f8f9fa; }

.info-box__bar {
  border-top: 1px solid #232323;
  border-bottom: 1px solid #232323;
  padding: var(--bar-padding-horizontal) var(--bar-padding-side); }

.info-box__bar-title {
  font-size: 1.125rem; }

.info-box__main {
  max-width: 720px;
  margin: 0 auto;
  text-align: center;
  padding: 4.5rem 0; }

.info-box__info {
  margin-bottom: 3rem; }

.info-box__info-title {
  font-size: 2.625rem;
  font-family: "timer45";
  margin-bottom: 2.5rem; }

.info-box__info-text {
  font-size: 0.875rem;
  line-height: 1.25rem; }

.info-box__btns {
  display: flex;
  justify-content: space-evenly; }

.info-box__btns-btn {
  width: 45%; }

.info-box__btns-link {
  font-size: 1rem;
  font-family: "spacemono-bold";
  width: 100%;
  height: 3rem;
  background-color: transparent;
  border: 1px solid #0c06d4;
  color: #0c06d4; }
  @media (min-width: 1025px) {
    .info-box__btns-link:hover:not(.-solid) {
      border-color: #534FD2;
      color: #534FD2; }
    .info-box__btns-link:hover span {
      border-bottom: none; } }

.info-box__btns-link.-solid {
  background-color: #0c06d4;
  border: none;
  color: #f0efee; }
  @media (min-width: 1025px) {
    .info-box__btns-link.-solid:hover {
      background-color: #534FD2; }
    .info-box__btns-link.-solid:hover span {
      border-bottom: none; } }

.info-box__btns-link:first-child {
  margin-bottom: 1.5rem; }

@media (max-width: 767px) {
  .info-box__main {
    padding-bottom: 2rem; }
  .info-box__info {
    margin: 0 1rem 2rem 1rem; }
  .info-box__btns {
    flex-direction: column;
    align-items: center; }
  .info-box__btns-btn {
    width: 80%;
    margin-bottom: 1rem; }
  .info-box__btns-link {
    font-size: 0.875rem;
    margin-bottom: 0 !important; } }

.main {
  background-color: #f8f9fa;
  z-index: 1;
  position: relative; }

.container {
  margin: 0;
  width: 100%;
  overflow: hidden; }

.grid-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 10% auto;
  max-width: 80vw; }

.grid-container {
  transition: opacity 0.3s; }
  .grid-container.-is-reversing {
    opacity: 0; }
  .grid-container.-is-reversed {
    flex-wrap: wrap-reverse;
    flex-direction: row-reverse; }

/*
** cards
*/
:root {
  --card-size: calc(40vw - 5vw); }

@media (max-width: 1024px) {
  :root {
    --card-size: 45vw; } }

.card {
  max-width: var(--card-size);
  min-width: var(--card-size);
  margin-bottom: 6.5rem;
  border: none; }
  .card.-right {
    transform: translate3d(0, 25%, 0); }

.grid-container.-is-reversed .card.-right {
  transform: translate3d(0, 0, 0); }

.grid-container.-is-reversed .card.-left {
  transform: translate3d(0, 25%, 0); }

.card {
  transition: opacity 0.3s; }
  .card.-is-hidden {
    opacity: 0;
    height: 0;
    margin-bottom: 0;
    pointer-events: none;
    transition: opacity 0.3s; }

.card__wrapper {
  display: block;
  color: #272727; }

.card__link {
  display: block;
  position: relative; }

.card__head {
  display: flex;
  align-items: start;
  position: absolute;
  margin-top: -4rem;
  margin-left: -0.8rem;
  z-index: 3; }

.card__head-title {
  line-height: 1.2;
  padding-top: 0.8rem;
  margin-left: 1.5rem; }

.card__head-index {
  font-size: 10rem;
  line-height: 0.7;
  letter-spacing: -0.75rem;
  -webkit-text-stroke: 1.5px blue;
  -webkit-text-fill: transparent;
  color: transparent; }

.grid-container.-is-reversed .card__head.-right {
  margin-left: auto; }

.grid-container.-is-reversed .card__head.-left {
  margin-left: 0; }

.card__thumbnail {
  position: relative;
  z-index: 2;
  margin-bottom: 1.8rem;
  max-height: 26.25rem;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center; }
  .card__thumbnail-img {
    background-size: cover;
    background-position: center;
    width: 100%;
    z-index: 2;
    transition: transform .3s; }

.card__content {
  line-height: 1.5;
  width: 80%; }
  .card__content.-left {
    margin: 0 0 0 auto; }
  .card__content.-right {
    margin-left: 2px; }

.grid-container.-is-reversed .card__content.-right {
  margin: 0 0 0 auto; }

.grid-container.-is-reversed .card__content.-left {
  margin-left: 2px; }

.card__content p {
  margin-bottom: 2rem;
  position: relative;
  z-index: 2; }

.card__content-text.-date {
  padding-bottom: 2.5rem;
  font-style: italic; }

/*
** hover effect
*/
.card__container {
  position: relative; }
  .card__container:after {
    content: "";
    position: absolute;
    top: -15%;
    width: calc(80% + 10%);
    height: 115%;
    border: 1px solid transparent;
    transition: border-color 0.3s; }
    .-left .card__container:after {
      left: calc((100% - 80%) / 2); }
    .-right .card__container:after {
      left: 0; }
  .-left .card__container {
    padding-right: 10%; }
  .-right .card__container {
    padding-left: 10%; }
  @media (min-width: 1025px) {
    .card__container:hover:after {
      border-color: #0c06d4;
      transition: border-color 0.3s; }
    .card__container:hover .card__thumbnail-img {
      transform: scale(1.25);
      transition: transform .3s; } }

.grid-container.-is-reversed .card.-left .card__container {
  padding-left: 10%;
  padding-right: 0; }
  .grid-container.-is-reversed .card.-left .card__container:after {
    left: 0; }

.grid-container.-is-reversed .card.-right .card__container {
  padding-left: 0;
  padding-right: 10%; }
  .grid-container.-is-reversed .card.-right .card__container:after {
    left: calc((100% - 80%) / 2); }

/*
** load more btn
*/
.load-link {
  width: 100%;
  text-align: center;
  padding-bottom: 10%; }
  .load-link__btn {
    font-family: "spacemono-bold";
    font-size: 1.125rem;
    color: #0c06d4;
    text-decoration: underline;
    border: none;
    background-color: transparent; }
    @media (min-width: 1025px) {
      .load-link__btn:hover {
        color: #534FD2; } }

.load-link.-is-hidden {
  display: none; }

@media (max-width: 1024px) {
  .grid-container {
    max-width: 90vw; } }

@media (max-width: 850px) {
  .grid-container {
    flex-direction: column;
    max-width: 100vw;
    margin-top: 15%;
    margin-bottom: 0; }
  .card {
    max-width: 100vw;
    margin-bottom: 5rem; }
    .card:last-child {
      margin-bottom: 0; }
  .card__head {
    margin-top: -4rem; }
  .card__content {
    line-height: 1.3; }
  .card.-right,
  .grid-container.-is-reversed .card.-left {
    transform: translate3d(0, 0, 0); }
  .-left .card__container,
  .grid-container.-is-reversed .card.-right .card__container {
    padding-left: 10%;
    padding-right: 0; }
  .card__head.-left,
  .grid-container.-is-reversed .card__head.-right {
    margin-left: 0; }
  .card__content.-left,
  .grid-container.-is-reversed .card__content.-right {
    margin-left: 0; } }

@media (max-width: 550px) {
  .grid-container {
    margin-top: 20%; } }

.footer {
  width: 100%;
  height: 400px;
  display: flex;
  flex-direction: column;
  position: relative; }

@media (max-width: 850px) {
  .footer {
    height: 400px; } }

.footer__bar {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 64px;
  border-top: 1px solid #232323;
  border-bottom: 1px solid #232323;
  background-color: #f8f9fa; }
  .footer__bar-btn {
    font-size: 1rem;
    font-family: "spacemono-bold";
    width: 100%;
    height: 100%;
    border: none;
    background-color: transparent;
    display: flex;
    align-items: center;
    justify-content: center; }
  .footer__bar-btn-text {
    margin-right: 1rem; }
  .footer__bar-btn-icon {
    transition: 0.3s; }
  .footer__bar-btn:hover .footer__bar-btn-icon {
    transform: translate3d(0, -0.25rem, 0);
    transition: 0.3s; }

@media (max-width: 850px) {
  .footer__bar {
    margin-bottom: 0; } }

.footer__main {
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%; }

.footer__main-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: -2rem; }

@media (max-width: 850px) {
  .footer__main-container {
    justify-content: center; } }

.footer__main-top {
  width: 8.5rem;
  margin-bottom: calc(64px / 2); }

.footer__main-center,
.footer__main-bottom {
  text-align: center; }

.footer__main-bottom-tiny {
  font-size: 0.7rem;
  margin-top: 2rem;
  line-height: 1.5; }

.footer__main-center {
  margin-bottom: calc(64px / 2); }

.footer__main-icons {
  display: flex; }
  .footer__main-icons .footer__main-icon {
    display: flex;
    align-items: center;
    width: 2.5rem;
    height: 2.5rem; }
    .footer__main-icons .footer__main-icon:first-child {
      margin-right: 1rem; }
  .footer__main-icons .footer__main-icon-svg:hover {
    transition: 0.3s; }
  .footer__main-icons .footer__main-icon-svg:hover #ig-fill,
  .footer__main-icons .footer__main-icon-svg:hover #twitter-fill {
    fill: #0c06d4;
    transition: 0.3s; }

/*
** footer grid
*/
.footer__grids {
  width: 100%;
  height: inherit;
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  background: repeating-linear-gradient(to bottom, #232323 0 0.5px, transparent 0 30%, #232323 30% calc(30% + 0.5px)); }

.footer__grid {
  height: 100%; }
  .footer__grid.-left {
    width: 12%;
    border-right: 1px solid #232323; }
  .footer__grid.-center {
    width: calc((100% - 12%) / 2);
    border-right: 1px solid #232323; }
  .footer__grid.-right {
    width: calc((100% - 12%) / 2); }

.menu {
  position: relative;
  z-index: 2;
  background-color: #f8f9fa;
  border-top: 1px solid #232323;
  border-bottom: 1px solid #232323;
  padding: var(--bar-padding-horizontal) var(--bar-padding-side);
  display: flex;
  align-items: flex-end; }

.menu__container {
  display: flex;
  justify-content: space-between;
  width: 100%; }

.menu__title {
  font-size: 1.375rem; }

.menu__dropdown {
  padding-right: 0.5rem;
  display: flex;
  align-items: center;
  position: relative; }
  .menu__dropdown-selection {
    position: relative;
    padding: 0 0.5rem; }
  .menu__dropdown-list {
    font-family: "spacemono-regular";
    font-size: 1rem;
    color: #232323;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #f8f9fa;
    padding: 0 0.5rem;
    display: none; }
    .menu__dropdown-list.-is-active {
      display: block; }
  .menu__dropdown-btn, .menu__dropdown-choice {
    font-family: "spacemono-regular";
    font-size: 1rem;
    color: #232323;
    border: none;
    background-color: transparent;
    padding: 0; }
  .menu__dropdown-choice.-is-active {
    border-bottom: 1px solid #232323; }
  .menu__dropdown-btn:hover {
    border-bottom: 1px solid #232323;
    margin-bottom: -1px; }
  .menu__dropdown:after {
    position: absolute;
    top: calc(55% - 0.4rem);
    right: calc(calc(12% * 0.8) * 0.15);
    content: "";
    border-style: solid;
    border-width: 1px 1px 0 0;
    display: inline-block;
    width: 0.4rem;
    height: 0.4rem;
    transform: rotate(135deg); }
  .menu__dropdown.-is-active:after {
    top: calc(68% - 0.4rem);
    transform: rotate(-45deg); }

/* endinject */
/* inject:scss */
html,
body {
  font-family: "spacemono-regular";
  font-size: 1rem;
  color: #232323;
  background-color: #f8f9fa;
  max-width: 100vw;
  overflow-x: hidden; }
  @media (max-width: 550px) {
    html,
    body {
      font-size: 14px; } }

.about {
  padding-top: calc(var(--nav-height) + 4rem); }

.about {
  position: relative;
  overflow: hidden; }
  .about:before, .about:after {
    content: "";
    position: absolute;
    z-index: 0;
    width: 1px;
    height: 200vw;
    background-color: #0c06d4;
    opacity: 0.65; }
  .about:before {
    top: 0;
    left: 25%;
    transform: rotateZ(25deg);
    transform-origin: top; }
  .about:after {
    top: 15vh;
    left: 0;
    transform: rotateZ(-70deg);
    transform-origin: top; }

.about .-container {
  max-width: 851px;
  margin: 0 auto 5rem auto; }
  .about .-container:last-child {
    margin-bottom: 10rem; }
  @media (max-width: 1024px) {
    .about .-container {
      margin: 0 2rem 4rem 2rem; } }

.about h1,
.about h2,
.about h3 {
  font-family: "timer45"; }

.about h1 {
  font-size: 4.5rem; }

.about h2 {
  font-size: 2.625rem;
  margin: 5rem 0 2.5rem 0; }

.about h3 {
  font-size: 1.125rem; }

.about p {
  font-size: 0.875rem;
  line-height: 1.5rem;
  margin-bottom: 2.5em; }

.about__top h1 {
  margin-bottom: 2.5rem; }

.about__btm h2 {
  margin-bottom: 2.5rem; }

.team h2 {
  margin-bottom: 2.5rem; }

.team .team__tabs {
  margin-bottom: 3rem; }

.team .team__tabs button {
  font-family: "spacemono-regular";
  background-color: transparent;
  border: 1px solid #232323;
  font-size: 0.875rem;
  padding: 0.25rem 3rem; }
  .team .team__tabs button:not(:last-child) {
    margin-right: 1rem; }
  .team .team__tabs button.-is-active {
    font-weight: bold;
    border-color: #0c06d4;
    color: #0c06d4; }
  @media (min-width: 1025px) {
    .team .team__tabs button:hover {
      border-color: #0c06d4;
      color: #0c06d4; } }

.team .team__groups {
  position: relative; }

.team .team__group {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0; }
  .team .team__group h3 {
    margin-bottom: 2.5rem;
    font-weight: bold; }
  .team .team__group h4 {
    font-weight: bold;
    margin-bottom: 1rem; }
    .team .team__group h4:not(:first-child) {
      margin-top: 1.5rem; }
  .team .team__group > *:not(h4) {
    font-size: 1rem; }
  .team .team__group.-is-active {
    position: relative;
    opacity: 1; }

/* endinject */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiX2ZvdW5kYXRpb25zLnNjc3MiLCJmb3VuZGF0aW9ucy9fY29sb3JzLnNjc3MiLCJmb3VuZGF0aW9ucy9fZm9udHMuc2NzcyIsInV0aWxpdGllcy9fbWVkaWEtcXVyaWVzLnNjc3MiLCJmb3VuZGF0aW9ucy9fcmVzZXQuc2NzcyIsImZvdW5kYXRpb25zL192YXJpYWJsZXMuc2NzcyIsIl91dGlsaXRpZXMuc2NzcyIsIl9jb21wb25lbnRzLnNjc3MiLCJjb21wb25lbnRzL19uYXYuc2NzcyIsImNvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9faGVhZGVyLXJ3ZC5zY3NzIiwiY29tcG9uZW50cy9faW5mby1ib3guc2NzcyIsImNvbXBvbmVudHMvX2luZm8tYm94LXJ3ZC5zY3NzIiwiY29tcG9uZW50cy9fYm9keS5zY3NzIiwiY29tcG9uZW50cy9fYm9keS1yd2Quc2NzcyIsImNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9fbWVudS5zY3NzIiwiX2xheW91dHMuc2NzcyIsIl9wYWdlcy5zY3NzIiwicGFnZXMvX3NpdGUuc2NzcyIsInBhZ2VzL19hYm91dC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5UaGVtZSBOYW1lOiBBZGphY2VudCBMYW5kaW5nIFBhZ2VcbkF1dGhvcjogVmluY2UgTWluZ1B1IFNoYW8sIFdlbmppbiBMaXUsIFN1a2FueWEgQW5lamFcbkRlc2NyaXB0aW9uOiBBZGphY2VudCBMYW5kaW5nIFBhZ2UgdGhlbWVcblZlcnNpb246IDAuMC41XG4qL1xuXG5AaW1wb3J0IFwiZm91bmRhdGlvbnNcIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzXCI7XG5AaW1wb3J0IFwibGF5b3V0c1wiO1xuQGltcG9ydCBcInBhZ2VzXCI7XG4iLCIvKiBpbmplY3Q6c2NzcyAqL1xuXG5AaW1wb3J0IFwiZm91bmRhdGlvbnMvX2NvbG9ycy5zY3NzXCI7XG5cbkBpbXBvcnQgXCJmb3VuZGF0aW9ucy9fZm9udHMuc2Nzc1wiO1xuXG5AaW1wb3J0IFwiZm91bmRhdGlvbnMvX3Jlc2V0LnNjc3NcIjtcblxuQGltcG9ydCBcImZvdW5kYXRpb25zL192YXJpYWJsZXMuc2Nzc1wiO1xuXG4vKiBlbmRpbmplY3QgKi8iLCIkYy10aGVtZTogIzBjMDZkNDtcbiRjLXRoZW1lLWRhcms6ICM1MzRGRDI7XG4kYy1tYWluOiAjMjcyNzI3O1xuJGMtYm9keTogIzIzMjMyMztcbiRjLWxpZ2h0OiAjZjBlZmVlO1xuJGMtYmFja2dyb3VuZDogI2Y4ZjlmYTtcbiIsIkBpbXBvcnQgXCIuLi91dGlsaXRpZXMvbWVkaWEtcXVyaWVzLnNjc3NcIjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbioqIEZPTlQgRkFNSUxZIFNFVFVQXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwic3BhY2Vtb25vLXJlZ3VsYXJcIjtcbiAgc3JjOiB1cmwoXCIuL3B1YmxpYy9hc3NldHMvZm9udHMvU3BhY2VNb25vLVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwic3BhY2Vtb25vLWl0YWxpY1wiO1xuICBzcmM6IHVybChcIi4vcHVibGljL2Fzc2V0cy9mb250cy9TcGFjZU1vbm8tSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcInNwYWNlbW9uby1ib2xkXCI7XG4gIHNyYzogdXJsKFwiLi9wdWJsaWMvYXNzZXRzL2ZvbnRzL1NwYWNlTW9uby1Cb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcInNwYWNlbW9uby1ib2xkLWl0YWxpY1wiO1xuICBzcmM6IHVybChcIi4vcHVibGljL2Fzc2V0cy9mb250cy9TcGFjZU1vbm8tQm9sZEl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJ0aW1lcjQ1XCI7XG4gIHNyYzogdXJsKFwiLi9wdWJsaWMvYXNzZXRzL2ZvbnRzL3RpbXI0NXcud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qXG4qKiBUSEVNRSBGT05UIFNFVFVQXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vKiBsZXZlbCAxICovXG4kZi1tYWluOiBcInNwYWNlbW9uby1yZWd1bGFyXCI7XG4kZi1tYWluLWI6IFwic3BhY2Vtb25vLWJvbGRcIjtcbiRmLW1haW4taTogXCJzcGFjZW1vbm8taXRhbGljXCI7XG4kZi1zdWI6IFwidGltZXI0NVwiO1xuXG4vKiBsZXZlbCAyICovXG4kZi10aXRsZTogJGYtc3ViO1xuJGYtYm9keTogJGYtbWFpbjtcbiRmLWJvZHktaXRhbGljOiAkZi1tYWluLWk7XG4kZi1ib2R5LWJvbGQ6ICRmLW1haW4tYjtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbioqIEZPTlQgU0laRSBTRVRVUFxuKipcbioqIGZzID4gc3RhbmRzIGZvciAtLT4gZm9udCBzaXplXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4kZnMtcm9vdDogMTZweDtcbiRmcy10aXRsZTogMi42MjVyZW07XG4kZnMtc3VidGl0bGU6IDEuMTI1cmVtO1xuJGZzLWJvZHk6IDFyZW07XG5cbiRmcy1yb290LW1vYmlsZTogMTRweDtcblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbioqIEZPTlQgU1RZTEVTIFNFVFVQXG4qKlxuKiogZmMgPiBzdGFuZHMgZm9yIC0tPiBmb250IGNvbG9yXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG5AbWl4aW4gZi10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiAkZi10aXRsZTtcbiAgZm9udC1zaXplOiAkZnMtdGl0bGU7XG4gIGxpbmUtaGVpZ2h0OiAyLjI1cmVtO1xuICBjb2xvcjogJGMtbWFpbjtcbn1cbi4tZi10aXRsZSB7XG4gIEBpbmNsdWRlIGYtdGl0bGU7XG59XG5cbkBtaXhpbiBmLXN1YnRpdGxlIHtcbiAgZm9udC1mYW1pbHk6ICRmLWJvZHktYm9sZDtcbiAgZm9udC1zaXplOiAkZnMtc3VidGl0bGU7XG4gIGNvbG9yOiAkYy1tYWluO1xufVxuLi1mLXN1YnRpdGxlIHtcbiAgQGluY2x1ZGUgZi1zdWJ0aXRsZTtcbn1cblxuQG1peGluIGYtYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAkZi1ib2R5O1xuICBmb250LXNpemU6ICRmcy1ib2R5O1xuICBjb2xvcjogJGMtYm9keTtcbn1cbi4tZi1ib2R5IHtcbiAgQGluY2x1ZGUgZi1ib2R5O1xufVxuXG5AbWl4aW4gZi1ib2R5LWl0YWxpYyB7XG4gIGZvbnQtZmFtaWx5OiAkZi1ib2R5LWl0YWxpYztcbn1cbi4tZi1ib2R5Li1pdGFsaWMge1xuICBAaW5jbHVkZSBmLWJvZHktaXRhbGljO1xufVxuXG5AbWl4aW4gZi1idG4ge1xuICBmb250LXNpemU6ICRmcy1ib2R5O1xuICBmb250LWZhbWlseTogJGYtYm9keS1ib2xkO1xufVxuLi1mLWJ0biB7XG4gIEBpbmNsdWRlIGYtYnRuO1xufVxuXG5AbWl4aW4gZmMtbGlnaHQge1xuICBjb2xvcjogJGMtbGlnaHQ7XG59XG4uLWZjLWxpZ2h0IHtcbiAgQGluY2x1ZGUgZmMtbGlnaHQ7XG59XG5cbkBtaXhpbiBmYy10aGVtZSB7XG4gIGNvbG9yOiAkYy10aGVtZTtcbn1cbi4tZmMtdGhlbWUge1xuICBAaW5jbHVkZSBmYy10aGVtZTtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLypcbioqIERFRkFVTFQgRk9OVCBTVFlMRSBTRVRVUFxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuYSB7XG4gIGNvbG9yOiAkYy10aGVtZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4iLCJAbWl4aW4gbWVkaWEoJHBvaW50KSB7XG4gIEBpZiAkcG9pbnQgPT0gXCJhYm92ZS1sYXJnZVwiIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQwMXB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGlmICRwb2ludCA9PSBcImJlbG93LWxhcmdlXCIge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNDAwcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAaWYgJHBvaW50ID09IFwiYWJvdmUtbWVkaXVtXCIge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjgxcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAaWYgJHBvaW50ID09IFwiYmVsb3ctbWVkaXVtXCIge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjgwcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAaWYgJHBvaW50ID09IFwiYWJvdmUtZGVza3RvcFwiIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGlmICRwb2ludCA9PSBcImJlbG93LWRlc2t0b3BcIiB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBpZiAkcG9pbnQgPT0gXCJhYm92ZS1zbWFsbFwiIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogODUxcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAaWYgJHBvaW50ID09IFwiYmVsb3ctc21hbGxcIiB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDg1MHB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGlmICRwb2ludCA9PSBcImFib3ZlLXRhYmxldFwiIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAaWYgJHBvaW50ID09IFwiYmVsb3ctdGFibGV0XCIge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBpZiAkcG9pbnQgPT0gXCJhYm92ZS1tb2JpbGVcIiB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU1MXB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGlmICRwb2ludCA9PSBcImJlbG93LW1vYmlsZVwiIHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTUwcHgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAaWYgJHBvaW50ID09IFwiYWJvdmUtbW9iaWxlLXNtYWxsXCIge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAzNzZweCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBpZiAkcG9pbnQgPT0gXCJiZWxvdy1tb2JpbGUtc21hbGxcIiB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDM3NXB4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIGh0dHA6Ly9tZXllcndlYi5jb20vZXJpYy90b29scy9jc3MvcmVzZXQvXG4gICB2Mi4wLW1vZGlmaWVkIHwgMjAxMTAxMjZcbiAgIExpY2Vuc2U6IG5vbmUgKHB1YmxpYyBkb21haW4pXG4qL1xuXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXG5zbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxuYiwgdSwgaSwgY2VudGVyLFxuZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcbmZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXG5hcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCxcbmZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCxcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXI6IDA7XG5cdGZvbnQtc2l6ZTogMTAwJTtcblx0Zm9udDogaW5oZXJpdDtcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKiBtYWtlIHN1cmUgdG8gc2V0IHNvbWUgZm9jdXMgc3R5bGVzIGZvciBhY2Nlc3NpYmlsaXR5ICovXG46Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG59XG5cbi8qIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cbmFydGljbGUsIGFzaWRlLCBkZXRhaWxzLCBmaWdjYXB0aW9uLCBmaWd1cmUsXG5mb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24ge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuYm9keSB7XG5cdGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5vbCwgdWwge1xuXHRsaXN0LXN0eWxlOiBub25lO1xufVxuXG5ibG9ja3F1b3RlLCBxIHtcblx0cXVvdGVzOiBub25lO1xufVxuXG5ibG9ja3F1b3RlOmJlZm9yZSwgYmxvY2txdW90ZTphZnRlcixcbnE6YmVmb3JlLCBxOmFmdGVyIHtcblx0Y29udGVudDogJyc7XG5cdGNvbnRlbnQ6IG5vbmU7XG59XG5cbnRhYmxlIHtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblx0Ym9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbixcbmlucHV0W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24sXG5pbnB1dFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxudGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgNi83LzgvOSBhbmQgRmlyZWZveCAzLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxudmlkZW8ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAqZGlzcGxheTogaW5saW5lO1xuICAgICp6b29tOiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA3LzgvOSwgRmlyZWZveCAzLCBhbmQgU2FmYXJpIDQuXG4gKiBLbm93biBpc3N1ZTogbm8gSUUgNiBzdXBwb3J0LlxuICovXG5cbltoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGV4dCByZXNpemluZyBvZGRseSBpbiBJRSA2Lzcgd2hlbiBib2R5IGBmb250LXNpemVgIGlzIHNldCB1c2luZ1xuICogICAgYGVtYCB1bml0cy5cbiAqIDIuIFByZXZlbnQgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZ1xuICogICAgdXNlciB6b29tLlxuICovXG5cbmh0bWwge1xuICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBgb3V0bGluZWAgaW5jb25zaXN0ZW5jeSBiZXR3ZWVuIENocm9tZSBhbmQgb3RoZXIgYnJvd3NlcnMuXG4gKi9cblxuYTpmb2N1cyB7XG4gICAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG59XG5cbi8qKlxuICogSW1wcm92ZSByZWFkYWJpbGl0eSB3aGVuIGZvY3VzZWQgYW5kIGFsc28gbW91c2UgaG92ZXJlZCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgICBvdXRsaW5lOiAwO1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgNi83LzgvOSBhbmQgRmlyZWZveCAzLlxuICogMi4gSW1wcm92ZSBpbWFnZSBxdWFsaXR5IHdoZW4gc2NhbGVkIGluIElFIDcuXG4gKi9cblxuaW1nIHtcbiAgICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgNi83LzgvOSwgU2FmYXJpIDUsIGFuZCBPcGVyYSAxMS5cbiAqL1xuXG5maWd1cmUge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IG1hcmdpbiBkaXNwbGF5ZWQgb2RkbHkgaW4gSUUgNi83LlxuICovXG5cbmZvcm0ge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cblxuZmllbGRzZXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gICAgbWFyZ2luOiAwIDJweDtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDYvNy84LzkuXG4gKiAyLiBDb3JyZWN0IHRleHQgbm90IHdyYXBwaW5nIGluIEZpcmVmb3ggMy5cbiAqIDMuIENvcnJlY3QgYWxpZ25tZW50IGRpc3BsYXllZCBvZGRseSBpbiBJRSA2LzcuXG4gKi9cblxubGVnZW5kIHtcbiAgICBib3JkZXI6IDA7IC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDIgKi9cbiAgICAqbWFyZ2luLWxlZnQ6IC03cHg7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGZvbnQgc2l6ZSBub3QgYmVpbmcgaW5oZXJpdGVkIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gSUUgNi83LCBGaXJlZm94IDMrLCBTYWZhcmkgNSxcbiAqICAgIGFuZCBDaHJvbWUuXG4gKiAzLiBJbXByb3ZlIGFwcGVhcmFuY2UgYW5kIGNvbnNpc3RlbmN5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgICBtYXJnaW46IDA7IC8qIDIgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDMgKi9cbiAgICAqdmVydGljYWwtYWxpZ246IG1pZGRsZTsgLyogMyAqL1xufVxuXG4vKipcbiAqIEFkZHJlc3MgRmlyZWZveCAzKyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIENocm9tZSwgU2FmYXJpIDUrLCBhbmQgSUUgNisuXG4gKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3ggNCsgYW5kIE9wZXJhLlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAqIDQuIFJlbW92ZSBpbm5lciBzcGFjaW5nIGluIElFIDcgd2l0aG91dCBhZmZlY3Rpbmcgbm9ybWFsIHRleHQgaW5wdXRzLlxuICogICAgS25vd24gaXNzdWU6IGlubmVyIHNwYWNpbmcgcmVtYWlucyBpbiBJRSA2LlxuICovXG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbiAgICBjdXJzb3I6IHBvaW50ZXI7IC8qIDMgKi9cbiAgICAqb3ZlcmZsb3c6IHZpc2libGU7ICAvKiA0ICovXG59XG5cbi8qKlxuICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAqL1xuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGNvbnRlbnQtYm94IGluIElFIDgvOS5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkuXG4gKiAzLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgNy5cbiAqICAgIEtub3duIGlzc3VlOiBleGNlc3MgcGFkZGluZyByZW1haW5zIGluIElFIDYuXG4gKi9cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgcGFkZGluZzogMDsgLyogMiAqL1xuICAgICpoZWlnaHQ6IDEzcHg7IC8qIDMgKi9cbiAgICAqd2lkdGg6IDEzcHg7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lLlxuICogMi4gQWRkcmVzcyBgYm94LXNpemluZ2Agc2V0IHRvIGBib3JkZXItYm94YCBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lXG4gKiAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cbiAqL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMiAqL1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgNSBhbmQgQ2hyb21lXG4gKiBvbiBPUyBYLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDMrLlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgNi83LzgvOS5cbiAqIDIuIEltcHJvdmUgcmVhZGFiaWxpdHkgYW5kIGFsaWdubWVudCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxudGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvOyAvKiAxICovXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xuXG50YWJsZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuaHRtbCxcbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICAgIGNvbG9yOiAjMjIyO1xufVxuXG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6ICNiM2Q0ZmM7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbjo6c2VsZWN0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjYjNkNGZjO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xufVxuXG5pbWcge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbmZpZWxkc2V0IHtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbnRleHRhcmVhIHtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG4uY2hyb21lZnJhbWUge1xuICAgIG1hcmdpbjogMC4yZW0gMDtcbiAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIHBhZGRpbmc6IDAuMmVtIDA7XG59XG5cbmEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn0iLCI6cm9vdCB7XG4gIC0tYmFyLXBhZGRpbmctc2lkZTogM3JlbTtcbiAgLS1iYXItcGFkZGluZy1ob3Jpem9udGFsOiAxLjVyZW07XG4gIC0tbmF2LWhlaWdodDogODBweDtcbiAgLS1oZWFkZXItaGVpZ2h0OiA4MHZoO1xufVxuXG5AaW5jbHVkZSBtZWRpYShcImJlbG93LWxhcmdlXCIpIHtcbiAgOnJvb3Qge1xuICAgIC0taGVhZGVyLWhlaWdodDogNjV2aDtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYShcImJlbG93LW1lZGl1bVwiKSB7XG4gIDpyb290IHtcbiAgICAtLWhlYWRlci1oZWlnaHQ6IDYyLjV2aDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE3MHB4KSB7XG4gIDpyb290IHtcbiAgICAtLWhlYWRlci1oZWlnaHQ6IDU1dmg7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEoXCJiZWxvdy1kZXNrdG9wXCIpIHtcbiAgOnJvb3Qge1xuICAgIC0taGVhZGVyLWhlaWdodDogNjB2aDtcbiAgICAtLWJhci1wYWRkaW5nLXNpZGU6IDEuNXJlbTtcbiAgICAtLWJhci1wYWRkaW5nLWhvcml6b250YWw6IDAuOHJlbTtcbiAgICAtLW5hdi1oZWlnaHQ6IDY0cHg7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEoXCJiZWxvdy1kZXNrdG9wXCIpIHtcbiAgOnJvb3Qge1xuICAgIC0taGVhZGVyLWhlaWdodDogMTAwdmg7XG4gIH1cbn1cblxuJG1lbnUtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0taGVhZGVyLWhlaWdodCkpO1xuJG1lbnUtaGVpZ2h0LWRlc2t0b3A6IDVyZW07XG5cbiRmb290ZXItaGVpZ2h0OiA0MDBweDtcbiRmb290ZXItYmFyLWhlaWdodDogNjRweDtcblxuJGZvb3Rlci1oZWlnaHQtc21hbGw6IDQwMHB4OyIsIi8qIGluamVjdDpzY3NzICovXG5cbkBpbXBvcnQgXCJ1dGlsaXRpZXMvX21lZGlhLXF1cmllcy5zY3NzXCI7XG5cbi8qIGVuZGluamVjdCAqL1xuIiwiLyogaW5qZWN0OnNjc3MgKi9cblxuQGltcG9ydCBcImNvbXBvbmVudHMvX25hdi5zY3NzXCI7XG5cbkBpbXBvcnQgXCJjb21wb25lbnRzL19oZWFkZXIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2hlYWRlci1yd2Quc2Nzc1wiO1xuXG5AaW1wb3J0IFwiY29tcG9uZW50cy9faW5mby1ib3guc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2luZm8tYm94LXJ3ZC5zY3NzXCI7XG5cbkBpbXBvcnQgXCJjb21wb25lbnRzL19ib2R5LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19ib2R5LXJ3ZC5zY3NzXCI7XG5cbkBpbXBvcnQgXCJjb21wb25lbnRzL19mb290ZXIuc2Nzc1wiO1xuXG5AaW1wb3J0IFwiY29tcG9uZW50cy9fbWVudS5zY3NzXCI7XG5cbi8qIGVuZGluamVjdCAqL1xuIiwiLm5hdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZzogMCB2YXIoLS1iYXItcGFkZGluZy1zaWRlKTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgaGVpZ2h0OiB2YXIoLS1uYXYtaGVpZ2h0KTtcbiAgd2lkdGg6IDEwMHZ3O1xufVxuLm5hdi4taXMtYWJvdXQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGMtYm9keTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmFja2dyb3VuZDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4ubmF2X19pdGVtIHtcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgfVxuICAmOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbi5uYXZfX2l0ZW0tbGluayB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtZmFtaWx5OiAkZi1zdWI7XG4gIGNvbG9yOiAkYy1ib2R5O1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiYWJvdmUtZGVza3RvcFwiKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIGNvbG9yOiAkYy10aGVtZTtcbiAgICB9XG4gIH1cbn1cbi5uYXYuLWlzLWFib3V0IHtcbiAgLm5hdl9faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuLm5hdl9fbGVmdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubmF2Li1pcy1hYm91dCB7XG4gIC5uYXZfX2xlZnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4ubmF2X19sb2dvIHtcbiAgd2lkdGg6IDhyZW07XG59XG5cbkBpbmNsdWRlIG1lZGlhKFwiYmVsb3ctZGVza3RvcFwiKSB7XG4gIC5uYXZfX21haW4gc3BhbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAubmF2X19pdGVtIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4iLCIuaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xufVxuXG4vKlxuKiogaGVhZGVyIGhlcm8gdGV4dFxuKi9cbjpyb290IHtcbiAgLS1kb3Qtc2l6ZTogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSAvIDI1KTtcbiAgLS1oZXJvLWhlaWdodDogNDV2aDtcbiAgLS1pbmZvLWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLWhlcm8taGVpZ2h0KSk7XG59XG5AaW5jbHVkZSBtZWRpYShcImJlbG93LWRlc2t0b3BcIikge1xuICA6cm9vdCB7XG4gICAgLS1kb3Qtc2l6ZTogY2FsYyh2YXIoLS1oZXJvLWhlaWdodCkgLyAyMCk7XG4gIH1cbn1cbkBpbmNsdWRlIG1lZGlhKFwiYmVsb3ctZGVza3RvcFwiKSB7XG4gIDpyb290IHtcbiAgICAtLWhlcm8taGVpZ2h0OiA0MHZoO1xuICB9XG59XG5cblxuLmhlYWRlcl9faGVyby10aXRsZSB7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uaGVhZGVyX19oZXJvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi5oZWFkZXJfX2hlcm8tdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzMuMyU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbn1cbi5oZWFkZXJfX2hlcm8tc3ZnIHtcbiAgaGVpZ2h0OiA5MSU7XG4gIG1hcmdpbi10b3A6IGF1dG87XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMS44JSwgMCk7XG59XG4uaGVhZGVyX19oZXJvLXRleHQge1xuICAmLi10b3Age1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYy1ib2R5O1xuICB9XG4gICYuLWNlbnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjLWJvZHk7XG4gIH1cbiAgJi4tdG9wIC5oZWFkZXJfX2hlcm8tc3ZnIHtcbiAgICBtYXJnaW4tbGVmdDogMiU7XG4gIH1cbiAgJi4tY2VudGVyIC5oZWFkZXJfX2hlcm8tc3ZnIHtcbiAgICBoZWlnaHQ6IDEyOCU7XG4gIH1cbiAgJi4tYnRtIC5oZWFkZXJfX2hlcm8tc3ZnIHtcbiAgICBtYXJnaW4tbGVmdDogMSU7XG4gIH1cblxuICAmLi10b3A6YWZ0ZXIsXG4gICYuLWNlbnRlcjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IHZhcigtLWRvdC1zaXplKTtcbiAgICBoZWlnaHQ6IHZhcigtLWRvdC1zaXplKTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjLWJvZHk7XG4gIH1cbiAgJi4tdG9wOmFmdGVyIHtcbiAgICB0b3A6IGNhbGMoNjAlIC0gdmFyKC0tZG90LXNpemUpKTtcbiAgICBsZWZ0OiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpLyAxLjUpO1xuICB9XG4gICYuLWNlbnRlcjphZnRlciB7XG4gICAgdG9wOiBjYWxjKDY1JSAtIHZhcigtLWRvdC1zaXplKSk7XG4gICAgbGVmdDogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KS8gMik7XG4gIH1cbn1cblxuLmhlYWRlcl9faGVyby10ZXh0IHtcbiAgQGluY2x1ZGUgbWVkaWEoXCJiZWxvdy1kZXNrdG9wXCIpIHtcbiAgICAmLi10b3A6YWZ0ZXIge1xuICAgICAgbGVmdDogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KS8gMy41KTtcbiAgICB9XG4gICAgJi4tY2VudGVyOmFmdGVyIHtcbiAgICAgIGxlZnQ6IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkvIDUpO1xuICAgIH1cbiAgICAmLi1idG0ge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjLWJvZHk7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIG1lZGlhKFwiYmVsb3ctc21hbGxcIikge1xuICAgICYuLXRvcDphZnRlciB7XG4gICAgICBsZWZ0OiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpLyA0KTtcbiAgICB9XG4gICAgJi4tY2VudGVyOmFmdGVyIHtcbiAgICAgIGxlZnQ6IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkvIDYpO1xuICAgIH1cbiAgfVxufVxuXG4vKlxuKiogaGVhZGVyIGdyaWRcbiovXG4kc21hbGwtZ3JpZC13aWR0aDogMjYlO1xuJGJpZy1ncmlkLXdpZHRoOiBjYWxjKDEwMCUgLSAjeyRzbWFsbC1ncmlkLXdpZHRofSogMik7XG5cbi5oZWFkZXJfX2dyaWRzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogaW5oZXJpdDtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG4uaGVhZGVyX19ncmlkcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNDV2aDtcbiAgICBsZWZ0OiBjYWxjKC00NXZoKTtcbiAgICB3aWR0aDogMjAwdmg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGMtdGhlbWU7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIH1cbn1cbi5oZWFkZXJfX2dyaWRzIHtcbiAgQGluY2x1ZGUgbWVkaWEoXCJiZWxvdy1kZXNrdG9wXCIpIHtcbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIHRvcDogMzV2aDtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogY2FsYygtOTB2aCk7XG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXJfX2dyaWQge1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgJi4tbGVmdCB7XG4gICAgd2lkdGg6ICRiaWctZ3JpZC13aWR0aDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYy1ib2R5O1xuICB9XG4gICYuLWNlbnRlciB7XG4gICAgd2lkdGg6ICRzbWFsbC1ncmlkLXdpZHRoO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRjLWJvZHk7XG4gIH1cbiAgJi4tcmlnaHQge1xuICAgIHdpZHRoOiAkc21hbGwtZ3JpZC13aWR0aDtcbiAgfVxufVxuXG4vKlxuKiogaGVhZGVyIGluZm9cbiovXG4uaGVhZGVyX19pbmZvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogdmFyKC0tYmFyLXBhZGRpbmctc2lkZSk7XG4gIHRvcDogY2FsYygoMTAwJSAtIGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKiAwLjcyNSkpIC8gMik7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICogMC44KTtcbiAgbWF4LXdpZHRoOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICogMC44KTtcbiAgaGVpZ2h0OiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICogMC43NTUpO1xuICBtYXgtaGVpZ2h0OiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICogMC43NTUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1iYWNrZ3JvdW5kO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiYWJvdmUtZGVza3RvcFwiKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGMtdGhlbWU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTAuNXJlbSwgMC41cmVtLCAwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmhlYWRlci1sYXRlc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDJyZW0gMCAycmVtIDIuNXJlbTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGMtbWFpbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmFja2dyb3VuZDtcblxuICAuaGVhZGVyLWxhdGVzdF9fY3RhIHtcbiAgICBjb2xvcjogJGMtdGhlbWU7XG4gICAgZm9udC1mYW1pbHk6ICRmLW1haW4tYjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiYWJvdmUtZGVza3RvcFwiKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICAuaGVhZGVyLWxhdGVzdF9fY3RhIHtcbiAgICAgICAgY29sb3I6ICRjLXRoZW1lLWRhcms7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uaGVhZGVyX19pbmZvOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAtMTtcbiAgdG9wOiAycmVtO1xuICBsZWZ0OiAtMnJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGMtbWFpbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmFja2dyb3VuZDtcbn1cblxuLmhlYWRlci1sYXRlc3RfX2hlYWRpbmcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogJGZzLWJvZHk7XG4gIGNvbG9yOiAkYy1ib2R5O1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4uaGVhZGVyLWxhdGVzdF9fdGl0bGUge1xuICBmb250LWZhbWlseTogJGYtc3ViO1xuICBmb250LXNpemU6IDMuNXJlbTtcbiAgY29sb3I6ICRjLWJvZHk7XG59XG5cbi5oZWFkZXItbGF0ZXN0X190b3Age1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uaGVhZGVyLWxhdGVzdF9fbWFpbiB7XG4gIC8vIG1pbi1oZWlnaHQ6IDI0MHB4O1xuICAvLyBtYXgtaGVpZ2h0OiAyNDBweDtcbiAgbWluLWhlaWdodDogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSAqIDAuNSk7XG4gIG1heC1oZWlnaHQ6IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKiAwLjUpO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLmhlYWRlci1sYXRlc3RfX3ByZXZpZXcge1xuICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgbGVmdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbiIsIkBpbmNsdWRlIG1lZGlhKFwiYmVsb3ctbGFyZ2VcIikge1xuICAuaGVhZGVyX19pbmZvOmFmdGVyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDJyZW0pO1xuICB9XG4gIC5oZWFkZXJfX2luZm8ge1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSAqIDAuNjU1KTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICogMC42NTUpO1xuICB9XG4gIC5oZWFkZXItbGF0ZXN0X19tYWluIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICogMC40KTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICogMC40KTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYShcImJlbG93LW1lZGl1bVwiKSB7XG4gIC5oZWFkZXJfX2luZm8ge1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSAqIDAuNjU1KTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICogMC42NTUpO1xuICB9XG4gIC5oZWFkZXItbGF0ZXN0X19tYWluIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICogMC40KTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICogMC40KTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE3MHB4KSB7XG4gIC5oZWFkZXJfX2luZm86YWZ0ZXIge1xuICAgIGhlaWdodDogY2FsYygxMDAlICsgM3JlbSk7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEoXCJiZWxvdy1kZXNrdG9wXCIpIHtcbiAgLmhlYWRlcl9faW5mbyB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgdG9wOiBjYWxjKHZhcigtLWhlcm8taGVpZ2h0KSArIDJyZW0pO1xuICAgIHdpZHRoOiA5NXZ3O1xuICAgIG1heC13aWR0aDogOTV2dztcbiAgICBoZWlnaHQ6IGNhbGMoKDEwMHZoIC0gdmFyKC0taGVyby1oZWlnaHQpKSAqIDAuOSk7XG4gICAgbWF4LWhlaWdodDogY2FsYygoMTAwdmggLSB2YXIoLS1oZXJvLWhlaWdodCkpICogMC45KTtcbiAgfVxuXG4gIC5oZWFkZXJfX2luZm86YWZ0ZXIge1xuICAgIGhlaWdodDogY2FsYygxMDAlICsgMXJlbSk7XG4gIH1cblxuICAuaGVhZGVyLWxhdGVzdF9fbWFpbiB7XG4gICAgbWluLWhlaWdodDogY2FsYygoMTAwdmggLSB2YXIoLS1oZXJvLWhlaWdodCkpICogMC43KTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKCgxMDB2aCAtIHZhcigtLWhlcm8taGVpZ2h0KSkgKiAwLjcpO1xuICB9XG5cbiAgLmhlYWRlci1sYXRlc3RfX2hlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuaGVhZGVyLWxhdGVzdF9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYShcImJlbG93LXNtYWxsXCIpIHtcbiAgLmhlYWRlcl9faW5mbyB7XG4gICAgaGVpZ2h0OiBjYWxjKCgxMDB2aCAtIHZhcigtLWhlcm8taGVpZ2h0KSkgKiAwLjgpO1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoKDEwMHZoIC0gdmFyKC0taGVyby1oZWlnaHQpKSAqIDAuOCk7XG4gIH1cbiAgLmhlYWRlci1sYXRlc3RfX21haW4ge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoKDEwMHZoIC0gdmFyKC0taGVyby1oZWlnaHQpKSAqIDAuNTUpO1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoKDEwMHZoIC0gdmFyKC0taGVyby1oZWlnaHQpKSAqIDAuNTUpO1xuICB9XG5cbiAgLmhlYWRlcl9faGVyby1zdmcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICAuaGVhZGVyX19oZXJvLXRleHQuLWNlbnRlciAuaGVhZGVyX19oZXJvLXN2ZyB7XG4gICAgaGVpZ2h0OiAxMzAlO1xuICB9XG59XG5cblxuLmhlYWRlcl9faGVybyB7XG4gIEBpbmNsdWRlIG1lZGlhKFwiYmVsb3ctZGVza3RvcFwiKSB7XG4gICAgaGVpZ2h0OiB2YXIoLS1oZXJvLWhlaWdodCk7XG4gIH1cbn1cblxuLmhlYWRlcl9fZ3JpZCB7XG4gIEBpbmNsdWRlIG1lZGlhKFwiYmVsb3ctZGVza3RvcFwiKSB7XG4gICAgJi4tbGVmdCB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWhlcm8taGVpZ2h0KSAqIDAuNjYgKyA0cHgpO1xuICAgICAgd2lkdGg6ICRzbWFsbC1ncmlkLXdpZHRoO1xuICAgICAgaGVpZ2h0OiBjYWxjKHZhcigtLWluZm8taGVpZ2h0KSArIHZhcigtLWhlcm8taGVpZ2h0KSAqIDAuMzMpO1xuICAgIH1cbiAgICAmLi1jZW50ZXIge1xuICAgICAgd2lkdGg6ICRiaWctZ3JpZC13aWR0aDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoXCJiZWxvdy1tb2JpbGUtZGVza3RvcFwiKSB7XG4gICAgJi4tY2VudGVyIHtcbiAgICAgIHdpZHRoOiAkYmlnLWdyaWQtd2lkdGg7XG4gICAgICBoZWlnaHQ6IGNhbGModmFyKC0taGVyby1oZWlnaHQpICsgMnB4KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5pbmZvLWJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmFja2dyb3VuZDtcbn1cblxuLmluZm8tYm94X19iYXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJGMtYm9keTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjLWJvZHk7XG4gIHBhZGRpbmc6IHZhcigtLWJhci1wYWRkaW5nLWhvcml6b250YWwpIHZhcigtLWJhci1wYWRkaW5nLXNpZGUpO1xufVxuLmluZm8tYm94X19iYXItdGl0bGUge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuXG4uaW5mby1ib3hfX21haW4ge1xuICBtYXgtd2lkdGg6IDcyMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA0LjVyZW0gMDtcbn1cblxuLmluZm8tYm94X19pbmZvIHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cbi5pbmZvLWJveF9faW5mby10aXRsZSB7XG4gIGZvbnQtc2l6ZTogJGZzLXRpdGxlO1xuICBmb250LWZhbWlseTogJGYtc3ViO1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG4uaW5mby1ib3hfX2luZm8tdGV4dCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xufVxuXG4uaW5mby1ib3hfX2J0bnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbn1cbi5pbmZvLWJveF9fYnRucy1idG4ge1xuICB3aWR0aDogNDUlO1xufVxuLmluZm8tYm94X19idG5zLWxpbmsge1xuICBAaW5jbHVkZSBmLWJ0bjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogM3JlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjLXRoZW1lO1xuICBjb2xvcjogJGMtdGhlbWU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCJhYm92ZS1kZXNrdG9wXCIpIHtcbiAgICAmOmhvdmVyOm5vdCguLXNvbGlkKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjLXRoZW1lLWRhcms7XG4gICAgICBjb2xvcjogJGMtdGhlbWUtZGFyaztcbiAgICB9XG4gICAgJjpob3ZlciBzcGFuIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICB9XG59XG4uaW5mby1ib3hfX2J0bnMtbGluay4tc29saWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy10aGVtZTtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogJGMtbGlnaHQ7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCJhYm92ZS1kZXNrdG9wXCIpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjLXRoZW1lLWRhcms7XG4gICAgfVxuICAgICY6aG92ZXIgc3BhbiB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cbiAgfVxufVxuLmluZm8tYm94X19idG5zLWxpbms6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG4iLCJAaW5jbHVkZSBtZWRpYShcImJlbG93LXRhYmxldFwiKSB7XG4gIC5pbmZvLWJveF9fbWFpbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIH1cblxuICAuaW5mby1ib3hfX2luZm8ge1xuICAgIG1hcmdpbjogMCAxcmVtIDJyZW0gMXJlbTtcbiAgfVxuXG4gIC5pbmZvLWJveF9fYnRucyB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLmluZm8tYm94X19idG5zLWJ0biB7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgLmluZm8tYm94X19idG5zLWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIubWFpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjLWJhY2tncm91bmQ7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNvbnRhaW5lciB7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5ncmlkLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW46IDEwJSBhdXRvO1xuICBtYXgtd2lkdGg6IDgwdnc7XG59XG4uZ3JpZC1jb250YWluZXIge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG5cbiAgJi4taXMtcmV2ZXJzaW5nIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gICYuLWlzLXJldmVyc2VkIHtcbiAgICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbn1cblxuLypcbioqIGNhcmRzXG4qL1xuXG46cm9vdCB7XG4gIC0tY2FyZC1zaXplOiBjYWxjKDQwdncgLSA1dncpO1xufVxuQGluY2x1ZGUgbWVkaWEoXCJiZWxvdy1kZXNrdG9wXCIpIHtcbiAgOnJvb3Qge1xuICAgIC0tY2FyZC1zaXplOiA0NXZ3O1xuICB9XG59XG4kY2FyZC1jb250ZW50LXdpZHRoOiA4MCU7XG4kY2FyZC1pbmRleC13aWR0aDogY2FsYyh2YXIoLS1jYXJkLXNpemUpICogMC4xNSk7XG4kY2FyZC1zaWRlLW1hcmdpbjogMTAlO1xuXG4uY2FyZCB7XG4gIG1heC13aWR0aDogdmFyKC0tY2FyZC1zaXplKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1jYXJkLXNpemUpO1xuICBtYXJnaW4tYm90dG9tOiA2LjVyZW07XG4gIGJvcmRlcjogbm9uZTtcblxuICAmLi1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNSUsIDApO1xuICB9XG59XG4uZ3JpZC1jb250YWluZXIuLWlzLXJldmVyc2VkIC5jYXJkIHtcbiAgJi4tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbiAgJi4tbGVmdCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNSUsIDApO1xuICB9XG59XG4uY2FyZCB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbiAgJi4taXMtaGlkZGVuIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbiAgfVxufVxuXG4uY2FyZF9fd3JhcHBlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogJGMtbWFpbjtcbn1cblxuLmNhcmRfX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2FyZF9faGVhZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAtNHJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjhyZW07XG4gIHotaW5kZXg6IDM7XG4gIC8vIHBhZGRpbmctYm90dG9tOiAyLjUlO1xuICAvLyB3aWR0aDogJGNhcmQtY29udGVudC13aWR0aDtcbiAgLy8gJi4tbGVmdCB7XG4gIC8vICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIC8vIH1cbn1cblxuLmNhcmRfX2hlYWQtdGl0bGUge1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBwYWRkaW5nLXRvcDogMC44cmVtO1xuICBtYXJnaW4tbGVmdDogMS41cmVtO1xufVxuXG4uY2FyZF9faGVhZC1pbmRleCB7XG4gIGZvbnQtc2l6ZTogMTByZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjc7XG4gIGxldHRlci1zcGFjaW5nOiAtMC43NXJlbTtcbiAgLXdlYmtpdC10ZXh0LXN0cm9rZTogMS41cHggYmx1ZTtcbiAgLXdlYmtpdC10ZXh0LWZpbGw6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cblxuXG4uZ3JpZC1jb250YWluZXIuLWlzLXJldmVyc2VkIC5jYXJkX19oZWFkIHtcbiAgJi4tcmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG4gICYuLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cblxuLmNhcmRfX3RodW1ibmFpbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgbWFyZ2luLWJvdHRvbTogMS44cmVtO1xuICBtYXgtaGVpZ2h0OiAyNi4yNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIC8vIG1pbi1oZWlnaHQ6IDQ1dmg7XG4gIC8vIG1heC1oZWlnaHQ6IDQ1dmg7XG5cbiAgJi1pbWcge1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcbiAgfVxufVxuXG4uY2FyZF9fY29udGVudCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHdpZHRoOiAkY2FyZC1jb250ZW50LXdpZHRoO1xuXG4gICYuLWxlZnQge1xuICAgIG1hcmdpbjogMCAwIDAgYXV0bztcbiAgfVxuICAmLi1yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgfVxufVxuLmdyaWQtY29udGFpbmVyLi1pcy1yZXZlcnNlZCAuY2FyZF9fY29udGVudCB7XG4gICYuLXJpZ2h0IHtcbiAgICBtYXJnaW46IDAgMCAwIGF1dG87XG4gIH1cbiAgJi4tbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgfVxufVxuXG4uY2FyZF9fY29udGVudCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuXG4uY2FyZF9fY29udGVudC10ZXh0Li1kYXRlIHtcbiAgcGFkZGluZy1ib3R0b206IDIuNXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKlxuKiogaG92ZXIgZWZmZWN0XG4qL1xuJGhvdmVyLWJveC13aWR0aDogY2FsYygjeyRjYXJkLWNvbnRlbnQtd2lkdGh9ICsgMTAlKTtcbi5jYXJkX19jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTUlO1xuICAgIHdpZHRoOiAkaG92ZXItYm94LXdpZHRoO1xuICAgIGhlaWdodDogMTE1JTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4zcztcblxuICAgIC4tbGVmdCAmIHtcbiAgICAgIGxlZnQ6IGNhbGMoKDEwMCUgLSAjeyRjYXJkLWNvbnRlbnQtd2lkdGh9KSAvIDIpO1xuICAgIH1cbiAgICAuLXJpZ2h0ICYge1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAuLWxlZnQgJiB7XG4gICAgcGFkZGluZy1yaWdodDogJGNhcmQtc2lkZS1tYXJnaW47XG4gIH1cbiAgLi1yaWdodCAmIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjYXJkLXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCJhYm92ZS1kZXNrdG9wXCIpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjLXRoZW1lO1xuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4zcztcbiAgICAgIH1cblxuICAgICAgJiAuY2FyZF9fdGh1bWJuYWlsLWltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uZ3JpZC1jb250YWluZXIuLWlzLXJldmVyc2VkIHtcbiAgLmNhcmQuLWxlZnQgLmNhcmRfX2NvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAkY2FyZC1zaWRlLW1hcmdpbjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxuICAuY2FyZC4tcmlnaHQgLmNhcmRfX2NvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjYXJkLXNpZGUtbWFyZ2luO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBsZWZ0OiBjYWxjKCgxMDAlIC0gI3skY2FyZC1jb250ZW50LXdpZHRofSkgLyAyKTtcbiAgICB9XG4gIH1cbn1cblxuLypcbioqIGxvYWQgbW9yZSBidG5cbiovXG5cbi5sb2FkLWxpbmsge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLWJvdHRvbTogMTAlO1xuXG4gICZfX2J0biB7XG4gICAgZm9udC1mYW1pbHk6ICRmLWJvZHktYm9sZDtcbiAgICBmb250LXNpemU6ICRmcy1zdWJ0aXRsZTtcbiAgICBjb2xvcjogJGMtdGhlbWU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCJhYm92ZS1kZXNrdG9wXCIpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGMtdGhlbWUtZGFyaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmxvYWQtbGluay4taXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIkBpbmNsdWRlIG1lZGlhKFwiYmVsb3ctZGVza3RvcFwiKSB7XG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5MHZ3O1xuICB9XG5cbn1cblxuQGluY2x1ZGUgbWVkaWEoXCJiZWxvdy1zbWFsbFwiKSB7XG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtd2lkdGg6IDEwMHZ3O1xuICAgIG1hcmdpbi10b3A6IDE1JTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5jYXJkIHtcbiAgICBtYXgtd2lkdGg6IDEwMHZ3O1xuICAgIG1hcmdpbi1ib3R0b206IDVyZW07XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgLmNhcmRfX2hlYWQge1xuICAgIG1hcmdpbi10b3A6IC00cmVtO1xuICB9XG4gIC5jYXJkX19jb250ZW50IHtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICB9XG4gIC5jYXJkLi1yaWdodCxcbiAgLmdyaWQtY29udGFpbmVyLi1pcy1yZXZlcnNlZCAuY2FyZC4tbGVmdCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuICAuLWxlZnQgLmNhcmRfX2NvbnRhaW5lcixcbiAgLmdyaWQtY29udGFpbmVyLi1pcy1yZXZlcnNlZCAuY2FyZC4tcmlnaHQgLmNhcmRfX2NvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMCU7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAuY2FyZF9faGVhZC4tbGVmdCxcbiAgLmdyaWQtY29udGFpbmVyLi1pcy1yZXZlcnNlZCAuY2FyZF9faGVhZC4tcmlnaHQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5jYXJkX19jb250ZW50Li1sZWZ0LFxuICAuZ3JpZC1jb250YWluZXIuLWlzLXJldmVyc2VkIC5jYXJkX19jb250ZW50Li1yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuXG59XG5cbkBpbmNsdWRlIG1lZGlhKFwiYmVsb3ctbW9iaWxlXCIpIHtcbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiAyMCU7XG4gIH1cblxufVxuIiwiLmZvb3RlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRmb290ZXItaGVpZ2h0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZm9vdGVyIHtcbiAgQGluY2x1ZGUgbWVkaWEoXCJiZWxvdy1zbWFsbFwiKSB7XG4gICAgaGVpZ2h0OiAkZm9vdGVyLWhlaWdodC1zbWFsbDtcbiAgfVxufVxuXG4uZm9vdGVyX19iYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkZm9vdGVyLWJhci1oZWlnaHQ7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYy1ib2R5O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGMtYm9keTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmFja2dyb3VuZDtcblxuICAmLWJ0biB7XG4gICAgQGluY2x1ZGUgZi1idG47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgJi1idG4tdGV4dCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG4gICYtYnRuLWljb24ge1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG4gIH1cbiAgJi1idG46aG92ZXIgLmZvb3Rlcl9fYmFyLWJ0bi1pY29uIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjI1cmVtLCAwKTtcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICB9XG59XG4uZm9vdGVyX19iYXIge1xuICBAaW5jbHVkZSBtZWRpYShcImJlbG93LXNtYWxsXCIpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5mb290ZXJfX21haW4ge1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZm9vdGVyX19tYWluLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IC0ycmVtO1xufVxuLmZvb3Rlcl9fbWFpbi1jb250YWluZXIge1xuICBAaW5jbHVkZSBtZWRpYShcImJlbG93LXNtYWxsXCIpIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuXG4uZm9vdGVyX19tYWluLXRvcCB7XG4gIHdpZHRoOiA4LjVyZW07XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoI3skZm9vdGVyLWJhci1oZWlnaHR9IC8gMik7XG59XG5cbi5mb290ZXJfX21haW4tY2VudGVyLFxuLmZvb3Rlcl9fbWFpbi1ib3R0b20ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5mb290ZXJfX21haW4tYm90dG9tLXRpbnkge1xuICBmb250LXNpemU6IDAuN3JlbTtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmZvb3Rlcl9fbWFpbi1jZW50ZXIge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCN7JGZvb3Rlci1iYXItaGVpZ2h0fSAvIDIpO1xufVxuXG4uZm9vdGVyX19tYWluLWljb25zIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAmIC5mb290ZXJfX21haW4taWNvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAyLjVyZW07XG4gICAgaGVpZ2h0OiAyLjVyZW07XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICB9XG4gIH1cbiAgJiAuZm9vdGVyX19tYWluLWljb24tc3ZnOmhvdmVyIHtcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICB9XG4gICYgLmZvb3Rlcl9fbWFpbi1pY29uLXN2Zzpob3ZlciB7XG4gICAgJiAjaWctZmlsbCxcbiAgICAmICN0d2l0dGVyLWZpbGwge1xuICAgICAgZmlsbDogJGMtdGhlbWU7XG4gICAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgIH1cbiAgfVxufVxuXG4vKlxuKiogZm9vdGVyIGdyaWRcbiovXG4kc21hbGwtZ3JpZC13aWR0aDogMTIlO1xuJGJpZy1ncmlkLXdpZHRoOiBjYWxjKCgxMDAlIC0gI3skc21hbGwtZ3JpZC13aWR0aH0pIC8gMik7XG4kZ3V0dGVyOiAzMCU7XG5cbi5mb290ZXJfX2dyaWRzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogaW5oZXJpdDtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDA7XG4gIGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoXG4gICAgdG8gYm90dG9tLFxuICAgICRjLWJvZHkgMCAwLjVweCxcbiAgICB0cmFuc3BhcmVudCAwICRndXR0ZXIsXG4gICAgJGMtYm9keSAkZ3V0dGVyIGNhbGMoI3skZ3V0dGVyfSArIDAuNXB4KVxuICApO1xufVxuXG4uZm9vdGVyX19ncmlkIHtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gICYuLWxlZnQge1xuICAgIHdpZHRoOiAkc21hbGwtZ3JpZC13aWR0aDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYy1ib2R5O1xuICB9XG4gICYuLWNlbnRlciB7XG4gICAgd2lkdGg6ICRiaWctZ3JpZC13aWR0aDtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYy1ib2R5O1xuICB9XG4gICYuLXJpZ2h0IHtcbiAgICB3aWR0aDogJGJpZy1ncmlkLXdpZHRoO1xuICB9XG59XG4iLCIubWVudSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmFja2dyb3VuZDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjLWJvZHk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYy1ib2R5O1xuICBwYWRkaW5nOiB2YXIoLS1iYXItcGFkZGluZy1ob3Jpem9udGFsKSB2YXIoLS1iYXItcGFkZGluZy1zaWRlKTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4ubWVudV9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm1lbnVfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTtcbn1cblxuLm1lbnVfX2Ryb3Bkb3duIHtcbiAgJGRyb3Bkb3duLXNpemU6IGNhbGMoI3skc21hbGwtZ3JpZC13aWR0aH0gKiAwLjgpO1xuICAkY2hldnJvbi1zaXplOiAwLjRyZW07XG5cbiAgLy8gbWluLXdpZHRoOiAkZHJvcGRvd24tc2l6ZTtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJi1zZWxlY3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgfVxuXG4gICYtbGlzdCB7XG4gICAgQGluY2x1ZGUgZi1ib2R5O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy1iYWNrZ3JvdW5kO1xuICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAmLi1pcy1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgJi1idG4sXG4gICYtY2hvaWNlIHtcbiAgICBAaW5jbHVkZSBmLWJvZHk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAmLWNob2ljZS4taXMtYWN0aXZlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGMtYm9keTtcbiAgfVxuXG4gICYtYnRuOmhvdmVyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGMtYm9keTtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYyg1NSUgLSAjeyRjaGV2cm9uLXNpemV9KTtcbiAgICByaWdodDogY2FsYygjeyRkcm9wZG93bi1zaXplfSAqIDAuMTUpO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFweCAxcHggMCAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogJGNoZXZyb24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRjaGV2cm9uLXNpemU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbiAgfVxuICAmLi1pcy1hY3RpdmU6YWZ0ZXIge1xuICAgIHRvcDogY2FsYyg2OCUgLSAjeyRjaGV2cm9uLXNpemV9KTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB9XG59XG4iLCIiLCIvKiBpbmplY3Q6c2NzcyAqL1xuXG5AaW1wb3J0IFwicGFnZXMvX3NpdGUuc2Nzc1wiO1xuXG5AaW1wb3J0IFwicGFnZXMvX2Fib3V0LnNjc3NcIjtcblxuLyogZW5kaW5qZWN0ICovXG4iLCJodG1sLFxuYm9keSB7XG4gIEBpbmNsdWRlIGYtYm9keTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGMtYmFja2dyb3VuZDtcbiAgbWF4LXdpZHRoOiAxMDB2dztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiYmVsb3ctbW9iaWxlXCIpIHtcbiAgICBmb250LXNpemU6ICRmcy1yb290LW1vYmlsZTtcbiAgfVxufVxuIiwiLmFib3V0IHtcbiAgcGFkZGluZy10b3A6IGNhbGModmFyKC0tbmF2LWhlaWdodCkgKyA0cmVtKTtcbn1cblxuLmFib3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAyMDB2dztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYy10aGVtZTtcbiAgICBvcGFjaXR5OiAwLjY1O1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAyNSU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKDI1ZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgdG9wOiAxNXZoO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGVaKC03MGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB9XG59XG5cbi5hYm91dCAuLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogODUxcHg7XG4gIG1hcmdpbjogMCBhdXRvIDVyZW0gYXV0bztcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCJiZWxvdy1kZXNrdG9wXCIpIHtcbiAgICBtYXJnaW46IDAgMnJlbSA0cmVtIDJyZW07XG4gIH1cbn1cblxuLmFib3V0IHtcbiAgaDEsXG4gIGgyLFxuICBoMyB7XG4gICAgZm9udC1mYW1pbHk6ICRmLXN1YjtcbiAgfVxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAyLjYyNXJlbTtcbiAgICBtYXJnaW46IDVyZW0gMCAyLjVyZW0gMDtcbiAgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVlbTtcbiAgfVxufVxuXG4uYWJvdXRfX3RvcCB7XG4gIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIH1cbn1cblxuLmFib3V0X19idG0ge1xuICBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICB9XG59XG5cbi50ZWFtIHtcbiAgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgfVxuXG4gIC50ZWFtX190YWJzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICB9XG4gIC50ZWFtX190YWJzIGJ1dHRvbiB7XG4gICAgZm9udC1mYW1pbHk6ICRmLW1haW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGMtYm9keTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gM3JlbTtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgfVxuICAgICYuLWlzLWFjdGl2ZSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGMtdGhlbWU7XG4gICAgICBjb2xvcjogJGMtdGhlbWU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCJhYm92ZS1kZXNrdG9wXCIpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjLXRoZW1lO1xuICAgICAgICBjb2xvcjogJGMtdGhlbWU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRlYW1fX2dyb3VwcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLnRlYW1fX2dyb3VwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIGgzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICBoNCB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiA+ICo6bm90KGg0KSB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxuXG4gICAgJi4taXMtYWN0aXZlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0VBS0U7QUNMRixpQkFBaUI7QUVFakIseUJBQXlCO0FBQ3pCOztFQUVFO0FBQ0YseUJBQXlCO0FBRXpCLFVBQVU7RUFDUixXQUFXLEVBQUUsbUJBQW1CO0VBQ2hDLEdBQUcsRUFBRSxtREFBbUQsQ0FBQyxjQUFjO0VBQ3ZFLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFVBQVUsRUFBRSxNQUFNOztBQUVwQixVQUFVO0VBQ1IsV0FBVyxFQUFFLGtCQUFrQjtFQUMvQixHQUFHLEVBQUUsa0RBQWtELENBQUMsY0FBYztFQUN0RSxXQUFXLEVBQUUsTUFBTTtFQUNuQixVQUFVLEVBQUUsTUFBTTs7QUFFcEIsVUFBVTtFQUNSLFdBQVcsRUFBRSxnQkFBZ0I7RUFDN0IsR0FBRyxFQUFFLGdEQUFnRCxDQUFDLGNBQWM7RUFDcEUsV0FBVyxFQUFFLE1BQU07RUFDbkIsVUFBVSxFQUFFLE1BQU07O0FBRXBCLFVBQVU7RUFDUixXQUFXLEVBQUUsdUJBQXVCO0VBQ3BDLEdBQUcsRUFBRSxzREFBc0QsQ0FBQyxjQUFjO0VBQzFFLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFVBQVUsRUFBRSxN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 */
