/*!********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../node_modules/.pnpm/css-loader@6.11.0_webpack@5.91.0/node_modules/css-loader/dist/cjs.js!../node_modules/.pnpm/postcss-loader@6.2.1_webpack@5.91.0/node_modules/postcss-loader/dist/cjs.js!../node_modules/.pnpm/sass-loader@8.0.2_sass@1.76.0+webpack@5.91.0/node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./scss/application.scss ***!
  \********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

html {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*,
*:after,
*:before {
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  box-sizing: inherit;
}

* {
  margin: 0;
  letter-spacing: 0.015em;
  word-spacing: 0.001em;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

body,
html {
  -webkit-tap-highlight-color: transparent;
  margin: 0 !important;
  padding: 0 !important;
}

html,
body {
  font-size: 16px;
  line-height: 1.2;
  color: black;
  background-color: white;
}
@media screen and (min-width: 680px) {
  html,
  body {
    font-size: 16px;
  }
}

html {
  background: white;
}

a {
  color: black;
  text-decoration: none;
}
a:hover, a:hover * {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

ul,
ol {
  margin: 0;
  padding: 0;
}

ul {
  list-style-type: none;
}

img {
  width: 100%;
}

strong,
b {
  font-weight: normal;
}

.transition, .collaborators, .login, .filters, .timeline, .discussion__item, .essay__comment, .essay__bubble, .about, .tooltip svg, .tooltip, .discuss__item__footer svg, .discuss__essay .listed, .edit__button, .edit__introduction a, .menu__item, .header__rotate, .ready, .blur {
  transition-property: all;
  transition-duration: 0.15s;
  transition-timing-function: ease-in-out;
  transition-delay: 0s;
}

@font-face {
  font-family: Atak-Regular;
  src: url(../fonts/Atak-Regular.woff) format("woff"), url(../fonts/Atak-Regular.woff2) format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: auto;
}
.font-atak, .comment__button, .form__alert, .form input[type=submit], .form input[type=email],
.form input[type=password], html,
body {
  font-family: Atak-Regular, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;
}

[class*=col-],
[class*=sub-],
[class*=off-] {
  float: left;
}

.col-1 {
  width: 8.3333333333%;
}

.sub-1 {
  width: 100%;
}

.off-1 {
  margin-left: 8.3333333333%;
}

.col-2 {
  width: 16.6666666667%;
}

.sub-2 {
  width: 50%;
}

.off-2 {
  margin-left: 16.6666666667%;
}

.col-3 {
  width: 25%;
}

.sub-3 {
  width: 33.3333333333%;
}

.off-3 {
  margin-left: 25%;
}

.col-4 {
  width: 33.3333333333%;
}

.sub-4 {
  width: 25%;
}

.off-4 {
  margin-left: 33.3333333333%;
}

.col-5 {
  width: 41.6666666667%;
}

.sub-5 {
  width: 20%;
}

.off-5 {
  margin-left: 41.6666666667%;
}

.col-6, .edit__column {
  width: 50%;
}

.sub-6 {
  width: 16.6666666667%;
}

.off-6 {
  margin-left: 50%;
}

.col-7 {
  width: 58.3333333333%;
}

.sub-7 {
  width: 14.2857142857%;
}

.off-7 {
  margin-left: 58.3333333333%;
}

.col-8, .edit__introduction {
  width: 66.6666666667%;
}

.sub-8 {
  width: 12.5%;
}

.off-8 {
  margin-left: 66.6666666667%;
}

.col-9 {
  width: 75%;
}

.sub-9 {
  width: 11.1111111111%;
}

.off-9 {
  margin-left: 75%;
}

.col-10 {
  width: 83.3333333333%;
}

.sub-10 {
  width: 10%;
}

.off-10 {
  margin-left: 83.3333333333%;
}

.col-11 {
  width: 91.6666666667%;
}

.sub-11 {
  width: 9.0909090909%;
}

.off-11 {
  margin-left: 91.6666666667%;
}

.col-12 {
  width: 100%;
}

.sub-12 {
  width: 8.3333333333%;
}

.off-12 {
  margin-left: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6,
small {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

.small {
  font-size: 0.5rem;
}
@media screen and (min-width: 680px) {
  .small {
    font-size: 0.5rem;
  }
}

.h6, .essay__footnotes, .discuss__subitem__header, .discuss__item__footer, .discuss__item__header, .comment__item__header, .comment__highlighted {
  font-size: 0.75rem;
}
@media screen and (min-width: 680px) {
  .h6, .essay__footnotes, .discuss__subitem__header, .discuss__item__footer, .discuss__item__header, .comment__item__header, .comment__highlighted {
    font-size: 0.75rem;
  }
}

.h5, .form__alert, .form input[type=submit], .form input[type=email],
.form input[type=password] {
  font-size: 1rem;
}
@media screen and (min-width: 680px) {
  .h5, .form__alert, .form input[type=submit], .form input[type=email],
  .form input[type=password] {
    font-size: 1rem;
  }
}

.h4, .collaborators__title, .discussion__title, .essay__title,
.essay__subtitle, .about__inner, .comment__button, .edit {
  font-size: 1.2rem;
}
@media screen and (min-width: 680px) {
  .h4, .collaborators__title, .discussion__title, .essay__title,
  .essay__subtitle, .about__inner, .comment__button, .edit {
    font-size: 1.3rem;
  }
}

.h3 {
  font-size: 2rem;
}
@media screen and (min-width: 680px) {
  .h3 {
    font-size: 2rem;
  }
}

.h2 {
  font-size: 3rem;
}
@media screen and (min-width: 680px) {
  .h2 {
    font-size: 3rem;
  }
}

.h1 {
  font-size: 6rem;
}
@media screen and (min-width: 680px) {
  .h1 {
    font-size: 6rem;
  }
}

.h1,
.h2,
.h3,
.h4,
.collaborators__title,
.discussion__title,
.essay__title,
.essay__subtitle,
.about__inner,
.comment__button,
.edit,
.h5,
.form__alert,
.form input[type=submit],
.form input[type=email],
.form input[type=password],
.h6,
.essay__footnotes,
.discuss__subitem__header,
.discuss__item__footer,
.discuss__item__header,
.comment__item__header,
.comment__highlighted,
.small {
  line-height: 1.2;
  font-weight: normal;
}

.blur {
  filter: blur(5px);
  opacity: 0.1;
}
.blur.lazyloaded {
  filter: blur(0);
  opacity: 1;
}

html {
  background-color: #f5f5f5;
}

.upper {
  text-transform: uppercase;
}

.container {
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 20px;
  padding-left: 20px;
  min-height: calc(100vh - 77px);
}

.honey {
  position: absolute;
  left: -9999px;
}

.content {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
}
.content--edit {
  align-items: normal;
  justify-content: normal;
  flex-direction: column;
}

.left {
  flex: 1;
  border-right: 1px solid #bebebe;
  background: white;
  position: relative;
  z-index: 1;
}

.right {
  width: 180px;
  height: 100vh;
  background: #f5f5f5;
  position: sticky;
  top: 0;
  display: none;
}
@media screen and (min-width: 860px) {
  .right {
    display: block;
  }
}
@media screen and (min-width: 920px) {
  .right {
    width: 250px;
  }
}

.ready {
  transition-property: opacity;
  opacity: 0;
}

.paragraph a {
  color: #bebebe;
  word-break: break-all;
}
.no-touch .paragraph a:hover {
  color: black;
}

ol {
  list-style-position: inside;
}

.header {
  position: sticky;
  top: 0;
  z-index: 99;
}

.header__inner {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 10px;
  padding-left: 10px;
  background: #f5f5f5;
  z-index: 1;
  position: relative;
}

.header__form {
  display: none;
}

.header__title,
.header__menu,
.header__comment,
.header__content {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 10px;
  padding-left: 10px;
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #bebebe;
}

.header__title h1,
.header__title span {
  text-transform: uppercase;
  display: inline-block;
}
.header__title span:not(.header__rotate) {
  display: none;
}
.header__title > div:last-child {
  display: flex;
  align-items: center;
}
.no-touch .header__title a:hover h1 {
  display: none;
}
.no-touch .header__title a:hover span {
  display: inline-block;
}
.no-touch .header__title a:hover .header__rotate {
  transform: rotate(360deg);
}

.header__comment input {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 0px;
  padding-left: 0px;
  background: none;
  color: #bebebe;
  border: none;
  line-height: 1;
  cursor: pointer;
  outline: none;
}
.header__comment input.active {
  color: #00c896;
}
.no-touch .header__comment input:hover {
  color: black;
}

.header__over {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 10px;
  padding-left: 10px;
  position: absolute;
  width: 100%;
  background: #f5f5f5;
  justify-content: space-between;
  display: flex;
}

.header__over__inner {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 0px;
  padding-left: 0px;
  width: 100%;
  border-bottom: 1px solid #bebebe;
  max-height: calc(100vh - 77px);
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
@media screen and (min-width: 680px) {
  .header__over__inner {
    max-height: calc(100vh - 120px);
  }
}
.header__over__inner::-webkit-scrollbar {
  display: none;
}

.header__rotate {
  transition-duration: 0.5s;
  transform: rotate(0);
}

.menu__item {
  line-height: 1;
  cursor: pointer;
  color: #bebebe;
}
.menu__item:not(:first-child) {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 0px;
  margin-left: 20px;
}
.no-touch .menu__item:hover, .menu__item.active {
  color: black;
}
.menu__item--contribute {
  display: none;
}
@media screen and (min-width: 680px) {
  .menu__item--contribute {
    display: block;
  }
}

.menu__section {
  display: flex;
  justify-content: space-between;
}

.form {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.form > div {
  margin-top: 0px;
  margin-bottom: 10px;
  margin-right: 0px;
  margin-left: 0px;
  display: flex;
  flex-direction: row;
}
.form label {
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 0px;
  padding-left: 0px;
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 20px;
  margin-left: 0px;
  line-height: 1;
}
.form input[type=email],
.form input[type=password] {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 0px;
  margin-left: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 15px;
  padding-left: 15px;
  padding-top: 1px;
  padding-bottom: 2px;
  border: none;
  background: white;
  min-width: 300px;
  outline: none;
}
.form input[type=submit] {
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 0px;
  padding-left: 0px;
  border: none;
  background: none;
  color: #bebebe;
  outline: none;
  cursor: pointer;
  line-height: 1;
}
.no-touch .form input[type=submit]:hover {
  color: black;
}

.form__alert {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 0px;
  margin-left: 20px;
  color: red;
  line-height: 1;
}

.edit__introduction {
  margin-top: 0px;
  margin-bottom: 40px;
  margin-right: 0px;
  margin-left: 0px;
}
.edit__introduction a {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 5px;
  padding-left: 5px;
  background: #f5f5f5;
}
.no-touch .edit__introduction a:hover {
  background: black;
  color: white;
}

.edit__essays {
  display: flex;
}

.edit__column {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.edit__column__list {
  margin-top: 0px;
  margin-bottom: 20px;
  margin-right: 0px;
  margin-left: 0px;
  list-style-position: inside;
}
.edit__column__list li {
  font-feature-settings: "tnum" 1;
}

.edit__button {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 5px;
  padding-left: 5px;
  background: #f5f5f5;
  cursor: pointer;
  display: inline-block;
}
.no-touch .edit__button:hover {
  background: black;
  color: white;
}

.comment {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 20px;
  padding-left: 20px;
}

.comment__essay {
  float: left;
  line-height: 1.5;
}
.comment__essay > p:not(:last-of-type) {
  margin-bottom: 1.25em;
}
.comment__essay strong {
  user-select: none;
  background-image: linear-gradient(to right, #00c896 0%, #00c896 100%);
  background-position: 0 100%;
  background-repeat: repeat-x;
  background-size: 1px 4px;
}
.comment__essay strong.listed {
  background-image: linear-gradient(to right, #bebebe 0%, #bebebe 100%);
}

.comment__left {
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 0px;
  padding-left: 0px;
  float: left;
  width: calc(50% - 10px * 2);
}

.comment__right {
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 0px;
  padding-left: 0px;
  float: left;
  width: calc(50% - 10px * 4);
  position: fixed;
  height: calc(100vh - 114px);
  right: 20px;
  overflow: auto;
  display: flex;
  flex-direction: column;
}
.comment__right::-webkit-scrollbar {
  display: none;
}

.comment__form {
  float: left;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.comment__form.hidden {
  display: none;
}

.comment__form__inner {
  width: 100%;
}

.comment__item {
  border: 1px solid #00c896;
  width: 100%;
  float: left;
}
.comment__item--button {
  border: none;
  width: auto;
}
.comment__form__inner .comment__item {
  margin-top: 0px;
  margin-bottom: 20px;
  margin-right: 0px;
  margin-left: 0px;
}
.comment__item textarea {
  width: 100%;
  border: none;
  float: left;
  resize: none;
  outline: none;
}
.comment__item textarea[disabled] {
  color: black;
}
.comment__item .hidden {
  display: none;
}

.comment__button {
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 15px;
  padding-left: 15px;
  border: none;
  line-height: 1;
  flex: 0;
  background-color: #bebebe;
  outline: none;
  cursor: pointer;
}
.comment__button:not(:last-child) {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 20px;
  margin-left: 0px;
}

.comment__highlighted {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 15px;
  padding-left: 15px;
  background: #00c896;
}

.comment__item__header {
  background: #00c896;
  display: flex;
}

.comment__item__delete {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 15px;
  padding-left: 15px;
  cursor: pointer;
  background: 0;
  outline: none;
  border: none;
}

.comment__inputarea {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 15px;
  padding-left: 15px;
  float: left;
  width: 100%;
  display: flex;
  flex-direction: column;
}
.comment__inputarea > div {
  display: flex;
}
.comment__inputarea > div:not(:last-child) {
  margin-top: 0px;
  margin-bottom: 10px;
  margin-right: 0px;
  margin-left: 0px;
}
.comment__inputarea label {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 10px;
  margin-left: 0px;
  line-height: 1;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 0px;
  padding-left: 0px;
  display: flex;
  align-items: center;
}
.comment__inputarea input {
  padding-top: 3px;
  padding-bottom: 3px;
  padding-right: 15px;
  padding-left: 15px;
  border: 1px solid #bebebe;
  margin: 0;
  line-height: 1;
  flex: 1;
  outline: none;
}
.comment__inputarea input::placeholder {
  color: #bebebe;
}
.comment__inputarea textarea {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 10px;
  padding-left: 10px;
  border: 1px solid #bebebe;
}
.comment__inputarea input[type=file] {
  padding-top: 4px;
  padding-bottom: 4px;
  padding-right: 15px;
  padding-left: 15px;
  color: transparent;
  height: calc(1em + 11px);
  cursor: pointer;
}
.comment__inputarea input[type=file]::-webkit-file-upload-button {
  visibility: hidden;
  width: 0;
  margin: 0;
  padding: 0;
}
.comment__inputarea input[type=file]::before {
  content: "Add a new file…";
  color: #bebebe;
  width: 100%;
}
.comment__inputarea input[type=file].existing::before {
  content: "Add a new file and delete existing one…";
}
.comment__inputarea input[type=file].with__file {
  color: black;
  padding-left: 8px;
}
.comment__inputarea input[type=file].with__file::before {
  content: "";
}

.comment__image .label {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 10px;
  margin-left: 0px;
  line-height: 1;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 0px;
  padding-left: 0px;
}
.comment__image img {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 10px;
  margin-left: 0px;
  height: 26px;
  width: auto;
  float: left;
}

.discuss {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 20px;
  padding-left: 20px;
}

.discuss__essay {
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 0px;
  padding-left: 0px;
  float: left;
  line-height: 1.5;
  width: calc(50% - 10px * 2);
}
.discuss__essay > p:not(:last-child), .discuss__essay > figure:not(:last-child) {
  margin-bottom: 1.25em;
}
.discuss__essay .listed {
  background-image: linear-gradient(to right, #bebebe 0%, #bebebe 100%);
  background-position: 0 100%;
  background-repeat: repeat-x;
  background-size: 1px 4px;
  cursor: pointer;
}
.no-touch .discuss__essay .listed:hover, .discuss__essay .listed.active {
  background-size: 1px 1.25em;
}

.discuss__comments {
  padding-top: 20px;
  padding-bottom: 20px;
  padding-right: 0px;
  padding-left: 0px;
  float: left;
  width: calc(50% - 10px * 4);
  position: fixed;
  height: calc(100vh - 114px);
  right: 20px;
  overflow: auto;
  display: flex;
  flex-direction: column;
}
.discuss__comments::-webkit-scrollbar {
  display: none;
}

.discuss__item {
  margin-top: 0px;
  margin-bottom: 20px;
  margin-right: 0px;
  margin-left: 0px;
  border: 1px solid #bebebe;
  width: 100%;
  float: left;
  display: none;
}
.discuss__item.show {
  display: block;
}
.discuss__item .hidden {
  display: none;
}

.discuss__item__header {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 15px;
  padding-left: 15px;
  background: #bebebe;
  display: flex;
}

.discuss__item__body {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 15px;
  padding-left: 15px;
  display: flex;
  flex-direction: column;
}

.discuss__item__footer {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 15px;
  padding-left: 15px;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
}
.discuss__item__footer > div:not(:last-child) {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 10px;
  margin-left: 0px;
}
.discuss__item__footer svg {
  height: 15px;
  width: 15px;
  fill: #bebebe;
  cursor: pointer;
}
.no-touch .discuss__item__footer svg:hover {
  fill: black;
}
.discuss__item__footer .active svg {
  fill: black;
}

.discuss__subitem {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 0px;
  padding-left: 0px;
  border-bottom: 1px solid #bebebe;
}
.discuss__subitem p:not(:last-child) {
  margin-bottom: 0.6em;
}
.discuss__subitem img {
  max-width: 40%;
  width: auto;
  max-height: 150px;
  height: auto;
}

.discuss__subitem__header {
  margin-top: 0px;
  margin-bottom: 5px;
  margin-right: 0px;
  margin-left: 0px;
}

.discuss__form__item {
  margin-top: 0px;
  margin-bottom: 20px;
  margin-right: 0px;
  margin-left: 0px;
  width: 100%;
  float: left;
}
.discuss__form__item--button {
  border: none;
  width: auto;
}
.discuss__form__item textarea {
  width: 100%;
  border: none;
  float: left;
  resize: none;
  outline: none;
  padding: 0;
}
.discuss__form__item textarea[disabled] {
  color: black;
}

.discuss__inputarea {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 15px;
  padding-left: 15px;
  float: left;
  width: 100%;
  display: flex;
  flex-direction: column;
}
.discuss__inputarea > div {
  display: flex;
}
.discuss__inputarea > div:not(:last-child) {
  margin-top: 0px;
  margin-bottom: 10px;
  margin-right: 0px;
  margin-left: 0px;
}
.discuss__inputarea label {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 10px;
  margin-left: 0px;
  line-height: 1;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 0px;
  padding-left: 0px;
  display: flex;
  align-items: center;
}
.discuss__inputarea input {
  padding-top: 3px;
  padding-bottom: 3px;
  padding-right: 15px;
  padding-left: 15px;
  border: 1px solid #bebebe;
  margin: 0;
  line-height: 1;
  flex: 1;
  outline: none;
}
.discuss__inputarea input::placeholder {
  color: #bebebe;
}
.discuss__inputarea textarea {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 10px;
  padding-left: 10px;
  border: 1px solid #bebebe;
}
.discuss__inputarea input[type=file] {
  padding-top: 4px;
  padding-bottom: 4px;
  padding-right: 15px;
  padding-left: 15px;
  color: transparent;
  height: calc(1em + 11px);
  cursor: pointer;
}
.discuss__inputarea input[type=file]::-webkit-file-upload-button {
  visibility: hidden;
  width: 0;
  margin: 0;
  padding: 0;
}
.discuss__inputarea input[type=file]::before {
  content: "Add a new file…";
  color: #bebebe;
  width: 100%;
}
.discuss__inputarea input[type=file].existing::before {
  content: "Add a new file and delete existing one…";
}
.discuss__inputarea input[type=file].with__file {
  color: black;
  padding-left: 8px;
}
.discuss__inputarea input[type=file].with__file::before {
  content: "";
}

.tooltip {
  position: fixed;
  background: #00c896;
  padding: 4px;
  min-width: 50px;
  display: flex;
  justify-content: center;
  transform: translate(calc(-50% + 5px), calc(-100% - 15px));
  filter: drop-shadow(0px 0px 2px rgba(0, 0, 0, 0.5));
  transition-property: opacity;
  z-index: 99;
}
.tooltip:after {
  content: "";
  background: #00c896;
  height: 10px;
  width: 10px;
  position: absolute;
  bottom: -5px;
  transform: rotate(45deg);
  z-index: -1;
}
.tooltip.hidden {
  opacity: 0;
  pointer-events: none;
}
.tooltip > div {
  padding: 6px 10px;
  cursor: pointer;
  display: flex;
  align-items: center;
}
.tooltip > div:not(:last-child) {
  border-right: 1px solid rgba(0, 0, 0, 0.5);
}
.no-touch .tooltip > div:hover svg {
  fill: white;
}
.tooltip svg {
  height: 15px;
  width: 15px;
  fill: black;
}

.minimap {
  width: calc(100vw - 180px);
  position: fixed;
  top: 0;
  right: 0;
  transform-origin: top right;
  z-index: 0;
  background: white;
  cursor: pointer;
  display: none;
}
@media screen and (min-width: 860px) {
  .minimap {
    display: block;
  }
}
@media screen and (min-width: 920px) {
  .minimap {
    width: calc(100vw - 250px);
  }
}

.minimap__inner {
  pointer-events: none;
  user-select: none;
}

.minimap__hover {
  width: 100%;
  position: absolute;
  top: 0;
  height: calc(100vh - 77px);
  background: black;
  z-index: 99;
  opacity: 0.04;
  pointer-events: none;
}

.about {
  transform: translateY(-100%);
  opacity: 0;
}
.about.open {
  transform: translateY(0);
  opacity: 1;
}

.about__inner {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 10px;
  padding-left: 10px;
  display: flex;
  flex-direction: column;
  line-height: 1.25;
}
.about__inner p:not(:last-child) {
  margin-bottom: 1.2em;
}

.essay {
  padding-top: 12px;
  padding-bottom: 12px;
  padding-right: 12px;
  padding-left: 12px;
  display: flex;
}
@media screen and (min-width: 680px) {
  .essay {
    padding-top: 20px;
    padding-bottom: 20px;
    padding-right: 20px;
    padding-left: 20px;
  }
}

.essay__left {
  width: 40px;
}
@media screen and (min-width: 680px) {
  .essay__left {
    width: 80px;
  }
}

.essay__center {
  flex: 1;
  line-height: 1.25;
  display: flex;
  flex-direction: column;
}

.essay__header {
  margin-bottom: 1.2em;
}

.essay__collaborators {
  margin-top: 1.2em;
  text-decoration: underline;
}

.essay__subtitle {
  color: #bebebe;
}

.essay__paragraph {
  width: 100%;
}
@media screen and (min-width: 680px) {
  .essay__paragraph {
    width: calc(100% - 80px);
  }
}
@media screen and (min-width: 1080px) {
  .essay__paragraph {
    width: 66.6666666667%;
  }
}
.essay__paragraph:not(:last-child) {
  margin-bottom: 1.2em;
}
.essay__paragraph figure {
  margin-top: 1.2em;
}
.essay__paragraph figure:not(:last-child) {
  margin-bottom: 1.2em;
}

.essay__bubble {
  width: 0.75em;
  height: 0.75em;
  display: inline-block;
  background: #bebebe;
  border-radius: 0.5em;
  margin-right: 3px;
  cursor: pointer;
}
.no-touch .essay__bubble:hover, .essay__bubble.active, .no-touch .essay__sidenote:hover + .essay__bubble {
  background: rgba(var(--user), 1);
}

.essay__comment.active, .no-touch .essay__bubble:hover + .essay__comment, .no-touch .essay__sidenote:hover + .essay__bubble + .essay__comment {
  background: rgba(var(--user), 0.25);
}

.essay__sidenote {
  height: 1.5em;
  width: 1.5em;
  display: inline-block;
  background-color: #bebebe;
  border-radius: 0.4em;
  position: absolute;
  left: calc((54px - 1.5em) / 2);
  margin-top: -0.15em;
  border: 1px solid white;
  cursor: pointer;
  padding: 0.25em;
  background-color: rgba(var(--user), 1);
}
@media screen and (min-width: 680px) {
  .essay__sidenote {
    height: 1.75em;
    width: 1.75em;
    border-radius: 0.5em;
    left: calc((100px - 1.75em) / 2);
    margin-top: -0.25em;
  }
}
.no-touch .essay__sidenote:hover {
  z-index: 1;
}
.essay__sidenote--text {
  background-image: url(../images/text.svg);
}
.essay__sidenote--image {
  background-image: url(../images/image.svg);
}
.essay__sidenote--media {
  background-image: url(../images/media.svg);
}

.footnote {
  -webkit-font-feature-settings: "numr" 1;
  font-feature-settings: "numr" 1;
}
.essay__footnotes .footnote {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 10px;
  margin-left: 0px;
}

.essay__footnotes {
  margin-top: 40px;
  margin-bottom: 0px;
  margin-right: 0px;
  margin-left: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 0px;
  padding-left: 20px;
  width: 100%;
}
@media screen and (min-width: 680px) {
  .essay__footnotes {
    margin-top: 80px;
    margin-bottom: 0px;
    margin-right: 0px;
    margin-left: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    padding-right: 0px;
    padding-left: 40px;
    width: calc(100% - 80px);
  }
}
@media screen and (min-width: 1080px) {
  .essay__footnotes {
    width: 66.6666666667%;
  }
}
.essay__footnotes > p:not(:last-child) {
  margin-bottom: 1.2em;
}

.discussion {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 0px;
  padding-left: 0px;
  display: none;
  flex-direction: column;
  margin: 1.2em 0;
}
@media screen and (min-width: 680px) {
  .discussion {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 20px;
    padding-left: 20px;
    margin: 1.2em -80px 1.2em 80px;
  }
}
@media screen and (min-width: 1080px) {
  .discussion {
    margin: 1.2em calc(-25% + 40px) 1.2em calc(25% - 40px);
  }
}
.discussion.last {
  display: flex;
}

.discussion__item {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 12px;
  padding-left: 12px;
  display: flex;
  flex-direction: column;
  background: #f5f5f5;
}
@media screen and (min-width: 680px) {
  .discussion__item {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 20px;
    padding-left: 20px;
  }
}
.discussion__item:not(:last-child) {
  margin-top: 0px;
  margin-bottom: 10px;
  margin-right: 0px;
  margin-left: 0px;
}
.discussion__item.hidden {
  opacity: 0.25;
  -webkit-filter: grayscale(1);
  filter: grayscale(1);
}

.discussion__collaborator {
  margin-top: 1.2em;
  text-decoration: underline;
  color: rgba(var(--user), 1);
}

.discussion__date {
  margin-bottom: 1.2em;
}

.discussion__text p:not(:last-child),
.discussion__text figure:not(:last-child) {
  margin-bottom: 1.2em;
}
.discussion__text figure {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 0px;
  padding-left: 40px;
  display: flex;
  justify-content: flex-start;
}
.discussion__text img {
  width: 100%;
  border: 1px solid;
  float: left;
}

.discussion__image {
  flex-direction: column;
  display: flex;
  align-items: flex-start;
}
.discussion__image img {
  width: 100%;
  border: 1px solid rgba(var(--user), 1);
  float: left;
}
.discussion__image img:not(:last-child) {
  margin-bottom: 0.6em;
}

.discussion__media {
  flex-direction: column;
  display: flex;
  align-items: flex-start;
}
.discussion__media iframe {
  width: 100%;
  float: left;
  border: 1px solid rgba(var(--user), 1);
}
.discussion__media iframe.video {
  height: calc((100vw - 64px) * 0.5625);
}
@media screen and (min-width: 680px) {
  .discussion__media iframe.video {
    height: calc((100vw - 180px) * 0.5625);
  }
}
@media screen and (min-width: 860px) {
  .discussion__media iframe.video {
    height: calc((100vw - 400px) * 0.5625);
  }
}
@media screen and (min-width: 920px) {
  .discussion__media iframe.video {
    height: calc((100vw - 470px) * 0.5625);
  }
}
@media screen and (min-width: 1080px) {
  .discussion__media iframe.video {
    height: calc((100vw - 370px) * 0.6667 * 0.5625);
  }
}
.discussion__media iframe:not(:last-child) {
  margin-bottom: 0.6em;
}

.timeline {
  transform: translateY(-100%);
  display: none;
}
@media screen and (min-width: 680px) {
  .timeline {
    display: flex;
  }
}
.timeline.open {
  transform: translateY(0);
}

.timeline__inner {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 10px;
  padding-left: 10px;
  display: flex;
  flex-direction: column;
  line-height: 1.25;
}

.timeline__item {
  cursor: pointer;
}
.timeline__item:before {
  content: "";
  width: calc(0.75em - 1px);
  height: calc(0.75em - 1px);
  display: inline-block;
  border-radius: 0.5em;
  margin-right: 5px;
  border: 1px solid;
}
.no-touch .timeline__item:hover:before {
  background: black;
}

.timeline__item__title {
  text-decoration: underline;
}

.timeline__span {
  color: rgba(var(--user), 1);
}

.filters {
  transform: translateY(-100%);
  display: none;
}
@media screen and (min-width: 680px) {
  .filters {
    display: flex;
  }
}
.filters.open {
  transform: translateY(0);
}

.filters__inner {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 10px;
  padding-left: 10px;
  display: flex;
  flex-direction: row;
  line-height: 1.25;
}

.filters__column {
  width: 50%;
  display: flex;
}
.filters__column:first-of-type {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 20px;
  padding-left: 0px;
  border-right: 1px solid #bebebe;
}
.filters__column:last-of-type {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 0px;
  padding-left: 20px;
}
.filters__column > div {
  width: 50%;
}

.filters__item {
  cursor: pointer;
}
.filters__item:before {
  content: "";
  width: calc(0.75em - 1px);
  height: calc(0.75em - 1px);
  display: inline-block;
  border-radius: 0.5em;
  margin-right: 10px;
  border: 1px solid;
}
.no-touch .filters__item:hover:before, .filters__item.active:before {
  background: black;
}
.filters__column:first-child .filters__item {
  color: rgba(var(--user), 1);
}
.no-touch .filters__column:first-child .filters__item:hover:before, .filters__column:first-child .filters__item.active:before {
  background: rgba(var(--user), 1);
}

.filters__reset {
  display: none;
  cursor: pointer;
  color: #bebebe;
}
.filters__reset.active {
  display: block;
}
.filters__reset:hover {
  color: black;
}

.login {
  transform: translateY(-100%);
  display: none;
}
@media screen and (min-width: 680px) {
  .login {
    display: flex;
  }
}
.login.open {
  transform: translateY(0);
}

.login__inner {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 10px;
  padding-left: 10px;
  display: flex;
  flex-direction: column;
  line-height: 1.25;
}

.collaborators {
  transform: translateY(-100%);
  opacity: 0;
}
.collaborators.open {
  transform: translateY(0);
  opacity: 1;
}

.collaborators__inner {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 10px;
  padding-left: 10px;
  display: flex;
  flex-direction: column;
  line-height: 1.25;
}
.collaborators__inner p:not(:last-child) {
  margin-bottom: 1.2em;
}

.collaborators__title {
  cursor: pointer;
}
.collaborators__title::before {
  margin-top: 0px;
  margin-bottom: 0px;
  margin-right: 20px;
  margin-left: 0px;
  content: "";
  width: 0.75em;
  height: 0.75em;
  display: inline-block;
  border: 1px solid rgba(var(--user), 1);
  border-radius: 0.5em;
  line-height: 1;
  margin-bottom: -1px;
}
.no-touch .collaborators__title:hover::before, .collaborators__title.active::before {
  background: rgba(var(--user), 1);
}

.collaborators__text {
  padding-top: 10px;
  padding-bottom: 20px;
  padding-right: 0px;
  padding-left: 0px;
  padding-left: calc(24px + 0.75em);
  width: 100%;
  display: none;
}
@media screen and (min-width: 680px) {
  .collaborators__text {
    width: 66.667%;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiLi9jc3MvYnVuZGxlLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSxnQkFBZ0I7QUNBaEI7QUFFQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtBRERGOztBQ0lBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFO0FESEY7O0FDTUE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0FESkY7O0FDT0E7K0VBQUE7QUFHQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7RUFDQTtBRE5GOztBQ1NBOzs7RUFBQTtBQUtBO0VBQ0U7RUFDQTtBRFBGOztBQ1VBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFO0FEVEY7O0FDWUE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0VBQ0E7QURWRjs7QUNhQTs7RUFBQTtBQUlBOztFQUVFO0FEWEY7O0FDY0E7OztFQUFBO0FBS0E7OztFQUdFO0VBQ0E7QURaRjs7QUNlQTs7RUFBQTtBQUlBO0VBQ0U7QURiRjs7QUNnQkE7OztFQUFBO0FBS0E7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7QURkRjs7QUNpQkE7RUFDRTtBRGRGOztBQ2lCQTtFQUNFO0FEZEY7O0FDaUJBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFO0FEaEJGOztBQ21CQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBOzs7OztFQUtFO0VBQ0E7RUFDQTtFQUNBO0FEbEJGOztBQ3FCQTs7O0VBQUE7QUFLQTtRQUNRO0VBQ047QURuQkY7O0FDc0JBOzs7RUFBQTtBQUtBO1NBQ1M7RUFDUDtBRHBCRjs7QUN1QkE7O0VBQUE7QUFJQTs7OztFQUlFO0FEckJGOztBQ3dCQTs7RUFBQTtBQUlBOzs7O0VBSUU7RUFDQTtBRHRCRjs7QUN5QkE7O0VBQUE7QUFJQTs7OztFQUlFO0FEdkJGOztBQzBCQTs7RUFBQTtBQUlBO0VBQ0U7QUR4QkY7O0FDMkJBOzs7OztFQUFBO0FBT0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUR6QkY7O0FDNEJBOztFQUFBO0FBSUE7RUFDRTtBRDFCRjs7QUM2QkE7O0VBQUE7QUFJQTtFQUNFO0FEM0JGOztBQzhCQTs7O0VBQUE7QUFLQTs7RUFFRTtFQUNBO0FENUJGOztBQytCQTs7RUFBQTtBQUlBOztFQUVFO0FEN0JGOztBQ2dDQTs7O0VBQUE7QUFLQTtFQUNFO0VBQ0E7QUQ5QkY7O0FDaUNBOztFQUFBO0FBSUE7RUFDRTtBRC9CRjs7QUNrQ0E7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0FEaENGOztBQ21DQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRTtBRGxDRjs7QUNxQ0E7O0VBQUE7QUFJQTtFQUNFO0FEbkNGOztBQ3NDQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRTtBRHJDRjs7QUN3Q0E7O0VBQUE7QUFJQTtFQUNFO0FEdENGOztBRTdSQTtFQUNFO0VBQ0E7RUFDQTtBRmdTRjs7QUU3UkE7OztFQUdFO0VBQ0E7RUFDQTtBRmdTRjs7QUU3UkE7RUFDRTtFQUNBO0VBQ0E7RUFHRTtFQUlBO0FGMlJKOztBRXZSQTs7RUFFRTtFQUNBO0VBQ0E7QUYwUkY7O0FFOVFBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0FGaVJGO0FHNVVFO0VEc0RGOztJQVNJO0VGa1JGO0FBQ0Y7O0FFNVFBO0VBQ0U7QUYrUUY7O0FFNVFBO0VBQ0U7RUFDQTtBRitRRjtBRTdRRTtFQUVFO0VBQ0E7RUFDQTtBRjhRSjs7QUUxUUE7O0VBRUU7RUFDQTtBRjZRRjs7QUUxUUE7RUFDRTtBRjZRRjs7QUUxUUE7RUFDRTtBRjZRRjs7QUUxUUE7O0VBRUU7QUY2UUY7O0FFMVBBO0VBTkUsd0JFZjRCO0VGZ0I1QiwwQkVmNEI7RUZnQjVCLHVDRWYwQjtFRmdCMUIsb0JFZnlCO0FKbVIzQjs7QUs1WEk7RUFDRTtFQUNBO0VBRUE7RUFDQTtFQUNBO0FMOFhOO0FLeFhFOzs7RUFDRTtBTDRYSjs7QU0zWEE7OztFQUdFO0FOOFhGOztBTTFYRTtFQWxCQTtBTmdaRjs7QU0zWEU7RUFqQkE7QU5nWkY7O0FNNVhFO0VBaEJBO0FOZ1pGOztBTXRZRTtFQWxCQTtBTjRaRjs7QU12WUU7RUFqQkE7QU40WkY7O0FNeFlFO0VBaEJBO0FONFpGOztBTWxaRTtFQWxCQTtBTndhRjs7QU1uWkU7RUFqQkE7QU53YUY7O0FNcFpFO0VBaEJBO0FOd2FGOztBTTlaRTtFQWxCQTtBTm9iRjs7QU0vWkU7RUFqQkE7QU5vYkY7O0FNaGFFO0VBaEJBO0FOb2JGOztBTTFhRTtFQWxCQTtBTmdjRjs7QU0zYUU7RUFqQkE7QU5nY0Y7O0FNNWFFO0VBaEJBO0FOZ2NGOztBTXRiRTtFQWxCQTtBTjRjRjs7QU12YkU7RUFqQkE7QU40Y0Y7O0FNeGJFO0VBaEJBO0FONGNGOztBTWxjRTtFQWxCQTtBTndkRjs7QU1uY0U7RUFqQkE7QU53ZEY7O0FNcGNFO0VBaEJBO0FOd2RGOztBTTljRTtFQWxCQTtBTm9lRjs7QU0vY0U7RUFqQkE7QU5vZUY7O0FNaGRFO0VBaEJBO0FOb2VGOztBTTFkRTtFQWxCQTtBTmdmRjs7QU0zZEU7RUFqQkE7QU5nZkY7O0FNNWRFO0VBaEJBO0FOZ2ZGOztBTXRlRTtFQWxCQTtBTjRmRjs7QU12ZUU7RUFqQkE7QU40ZkY7O0FNeGVFO0VBaEJBO0FONGZGOztBTWxmRTtFQWxCQTtBTndnQkY7O0FNbmZFO0VBakJBO0FOd2dCRjs7QU1wZkU7RUFoQkE7QU53Z0JGOztBTTlmRTtFQWxCQTtBTm9oQkY7O0FNL2ZFO0VBakJBO0FOb2hCRjs7QU1oZ0JFO0VBaEJBO0FOb2hCRjs7QU9qaUJBOzs7Ozs7O0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQb2lCRjs7QU9qaUJBO0VBQ0U7QVBvaUJGO0FHbmpCRTtFSWNGO0lBSUk7RVBxaUJGO0FBQ0Y7O0FPbGlCQTtFQUNFO0FQcWlCRjtBRzVqQkU7RUlzQkY7SUFJSTtFUHNpQkY7QUFDRjs7QU9uaUJBOztFQUNFO0FQdWlCRjtBR3RrQkU7RUk4QkY7O0lBSUk7RVB5aUJGO0FBQ0Y7O0FPdGlCQTs7RUFDRTtBUDBpQkY7QUdqbEJFO0VJc0NGOztJQUlJO0VQNGlCRjtBQUNGOztBT3ppQkE7RUFDRTtBUDRpQkY7QUczbEJFO0VJOENGO0lBSUk7RVA2aUJGO0FBQ0Y7O0FPMWlCQTtFQUNFO0FQNmlCRjtBR3BtQkU7RUlzREY7SUFJSTtFUDhpQkY7QUFDRjs7QU8zaUJBO0VBQ0U7QVA4aUJGO0FHN21CRTtFSThERjtJQUlJO0VQK2lCRjtBQUNGOztBT3hpQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQU9FO0VBQ0E7QVA0akJGOztBUWxwQkE7RUFFRTtFQUNBO0FSb3BCRjtBUWxwQkU7RUFDRTtFQUNBO0FSb3BCSjs7QVFocEJBO0VBQ0U7QVJtcEJGOztBUWhwQkE7RUFDRTtBUm1wQkY7O0FRaHBCQTtFQ1pJO0VBQ0E7RUFDQTtFQUNBO0VEV0Y7QVJzcEJGOztBUW5wQkE7RUFDRTtFQUNBO0FSc3BCRjs7QVFucEJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVJzcEJGO0FRcHBCRTtFQUNFO0VBQ0E7RUFDQTtBUnNwQko7O0FRbHBCQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVJxcEJGOztBUWxwQkE7RUFDRSxZSjRFaUI7RUkzRWpCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVJxcEJGO0FHenNCRTtFSzhDRjtJQVNJO0VSc3BCRjtBQUNGO0FHOXNCRTtFSzhDRjtJQWFJLFlKK0RZO0VKd2xCZDtBQUNGOztBUXBwQkE7RUFFRTtFQUNBO0FSc3BCRjs7QVFucEJBO0VBQ0U7RUFDQTtBUnNwQkY7QVFwcEJFO0VBQ0U7QVJzcEJKOztBUWxwQkE7RUFDRTtBUnFwQkY7O0FVMXVCQTtFQUNFO0VBQ0E7RUFDQTtBVjZ1QkY7O0FVMXVCQTtFRFFJO0VBQ0E7RUFDQTtFQUNBO0VDVEY7RUFDQTtFQUNBO0FWZ3ZCRjs7QVU3dUJBO0VBQ0U7QVZndkJGOztBVTd1QkE7Ozs7RURSSTtFQUNBO0VBQ0E7RUFDQTtFQ1VGO0VBQ0E7RUFDQTtBVm12QkY7O0FVL3VCRTs7RUFFRTtFQUNBO0FWa3ZCSjtBVS91QkU7RUFDRTtBVml2Qko7QVU5dUJFO0VBQ0U7RUFDQTtBVmd2Qko7QVU1dUJJO0VBQ0U7QVY4dUJOO0FVM3VCSTtFQUNFO0FWNnVCTjtBVTF1Qkk7RUFDRTtBVjR1Qk47O0FVdHVCRTtFRGxERTtFQUNBO0VBQ0E7RUFDQTtFQ2lEQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVY0dUJKO0FVMXVCSTtFQUNFO0FWNHVCTjtBVXp1Qkk7RUFDRTtBVjJ1Qk47O0FVdHVCQTtFRGhFSTtFQUNBO0VBQ0E7RUFDQTtFQytERjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FWNHVCRjs7QVV6dUJBO0VEekVJO0VBQ0E7RUFDQTtFQUNBO0VDd0VGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVYrdUJGO0FHdDBCRTtFT2lGRjtJQVNJO0VWZ3ZCRjtBQUNGO0FVOXVCRTtFQUNFO0FWZ3ZCSjs7QVU1dUJBO0VBRUU7RUFDQTtBVjh1QkY7O0FXejFCQTtFQUVFO0VBQ0E7RUFDQTtBWDIxQkY7QVd6MUJFO0VGa0JFO0VBQ0E7RUFDQTtFQUNBO0FUMDBCSjtBVzMxQkU7RUFFRTtBWDQxQko7QVd6MUJFO0VBQ0U7QVgyMUJKO0FHcjJCRTtFUVNBO0lBSUk7RVg0MUJKO0FBQ0Y7O0FXeDFCQTtFQUNFO0VBQ0E7QVgyMUJGOztBWXIzQkE7RUFDRTtFQUNBO0VBQ0E7QVp3M0JGO0FZdDNCRTtFSG1CRTtFQUNBO0VBQ0E7RUFDQTtFR3BCQTtFQUNBO0FaMjNCSjtBWXgzQkU7RUhHRTtFQUNBO0VBQ0E7RUFDQTtFQU9BO0VBQ0E7RUFDQTtFQUNBO0VHYkE7QVpnNEJKO0FZNzNCRTs7RUhSRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VHS0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FabzRCSjtBWWo0QkU7RUhoQkU7RUFDQTtFQUNBO0VBQ0E7RUdnQkE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FacTRCSjtBWW40Qkk7RUFDRTtBWnE0Qk47O0FZaDRCQTtFSHRCSTtFQUNBO0VBQ0E7RUFDQTtFR3NCRjtFQUNBO0FacTRCRjs7QWFuN0JBO0VKb0JJO0VBQ0E7RUFDQTtFQUNBO0FUbTZCSjtBYXQ3QkU7RUpNRTtFQUNBO0VBQ0E7RUFDQTtFSU5BO0FiMDdCSjtBYXg3Qkk7RUFDRTtFQUNBO0FiMDdCTjs7QWFyN0JBO0VBQ0U7QWJ3N0JGOztBYXI3QkE7RUFFRTtFQUNBO0VBQ0E7QWJ1N0JGOztBYXA3QkE7RUpQSTtFQUNBO0VBQ0E7RUFDQTtFSU1GO0FiMDdCRjtBYXg3QkU7RUFDRTtBYjA3Qko7O0FhdDdCQTtFSjFCSTtFQUNBO0VBQ0E7RUFDQTtFSTBCRjtFQUNBO0VBQ0E7QWIyN0JGO0FhejdCRTtFQUNFO0VBQ0E7QWIyN0JKOztBYzUrQkE7RUxjSTtFQUNBO0VBQ0E7RUFDQTtBVGsrQko7O0FjLytCQTtFQUNFO0VBQ0E7QWRrL0JGO0FjaC9CRTtFQUNFO0Fkay9CSjtBYy8rQkU7RUFDRTtFQUNBO0VBS0E7RUFDQTtFQUNBO0FkNitCSjtBYzMrQkk7RUFDRTtBZDYrQk47O0FjcCtCQTtFTG5CSTtFQUNBO0VBQ0E7RUFDQTtFS2tCRjtFQUNBO0FkMCtCRjs7QWN2K0JBO0VMekJJO0VBQ0E7RUFDQTtFQUNBO0VLd0JGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWQ2K0JGO0FjMytCRTtFQUNFO0FkNitCSjs7QWN6K0JBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWQ0K0JGO0FjMStCRTtFQUNFO0FkNCtCSjs7QWN4K0JBO0VBQ0U7QWQyK0JGOztBY3grQkE7RUFDRTtFQUNBO0VBQ0E7QWQyK0JGO0FjeitCRTtFQUNFO0VBQ0E7QWQyK0JKO0FjeCtCRTtFTHhERTtFQUNBO0VBQ0E7RUFDQTtBVG1pQ0o7QWMxK0JFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZDQrQko7QWMxK0JJO0VBQ0U7QWQ0K0JOO0FjeCtCRTtFQUNFO0FkMCtCSjs7QWN0K0JBO0VMdkZJO0VBQ0E7RUFDQTtFQUNBO0VLdUZGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZDIrQkY7QWN6K0JFO0VMdkZFO0VBQ0E7RUFDQTtFQUNBO0FUbWtDSjs7QWMxK0JBO0VMdEdJO0VBQ0E7RUFDQTtFQUNBO0VLc0dGO0FkKytCRjs7QWM1K0JBO0VBRUU7RUFDQTtBZDgrQkY7O0FjMytCQTtFTGxISTtFQUNBO0VBQ0E7RUFDQTtFS2lIRjtFQUNBO0VBQ0E7RUFDQTtBZGkvQkY7O0FjOStCQTtFTDFISTtFQUNBO0VBQ0E7RUFDQTtFS3lIRjtFQUNBO0VBQ0E7RUFDQTtBZG8vQkY7QWNsL0JFO0VBQ0U7QWRvL0JKO0FjbC9CSTtFTDFIQTtFQUNBO0VBQ0E7RUFDQTtBVCttQ0o7QWNuL0JFO0VML0hFO0VBQ0E7RUFDQTtFQUNBO0VLOEhBO0VMM0lBO0VBQ0E7RUFDQTtFQUNBO0VLMElBO0VBQ0E7QWQyL0JKO0FjeC9CRTtFTGpKRTtFQUNBO0VBQ0E7RUFDQTtFS2dKQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FkNi9CSjtBYzMvQkk7RUFDRTtBZDYvQk47QWN6L0JFO0VMbktFO0VBQ0E7RUFDQTtFQUNBO0VLa0tBO0FkOC9CSjtBYzMvQkU7RUxuS0U7RUFDQTtFQUNBO0VBQ0E7RUtrS0E7RUFDQTtFQUNBO0FkZ2dDSjtBYzkvQkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBZGdnQ047QWM3L0JJO0VBQ0U7RUFDQTtFQUNBO0FkKy9CTjtBYzUvQkk7RUFDRTtBZDgvQk47QWMzL0JJO0VBQ0U7RUFDQTtBZDYvQk47QWMzL0JNO0VBQ0U7QWQ2L0JSOztBY3QvQkU7RUw1TEU7RUFDQTtFQUNBO0VBQ0E7RUsyTEE7RUx4TUE7RUFDQTtFQUNBO0VBQ0E7QVRxc0NKO0FjNS9CRTtFTGxNRTtFQUNBO0VBQ0E7RUFDQTtFS2lNQTtFQUNBO0VBQ0E7QWRpZ0NKOztBZS90Q0E7RU5jSTtFQUNBO0VBQ0E7RUFDQTtBVHF0Q0o7O0FlbHVDQTtFTlVJO0VBQ0E7RUFDQTtFQUNBO0VNWEY7RUFDQTtFQUNBO0Fmd3VDRjtBZXR1Q0U7RUFFRTtBZnV1Q0o7QWVwdUNFO0VBRUU7RUFLQTtFQUNBO0VBQ0E7RUFDQTtBZml1Q0o7QWUvdENJO0VBRUU7QWZndUNOOztBZTN0Q0E7RU5wQkk7RUFDQTtFQUNBO0VBQ0E7RU1tQkY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZml1Q0Y7QWUvdENFO0VBQ0U7QWZpdUNKOztBZTd0Q0E7RU4xQkk7RUFDQTtFQUNBO0VBQ0E7RU15QkY7RUFDQTtFQUNBO0VBQ0E7QWZtdUNGO0FlanVDRTtFQUNFO0FmbXVDSjtBZWh1Q0U7RUFDRTtBZmt1Q0o7O0FlOXRDQTtFTnBESTtFQUNBO0VBQ0E7RUFDQTtFTW9ERjtFQUNBO0FmbXVDRjs7QWVodUNBO0VOM0RJO0VBQ0E7RUFDQTtFQUNBO0VNMERGO0VBQ0E7QWZzdUNGOztBZW51Q0E7RU5qRUk7RUFDQTtFQUNBO0VBQ0E7RU1pRUY7RUFDQTtFQUNBO0VBQ0E7QWZ3dUNGO0FldHVDRTtFTi9ERTtFQUNBO0VBQ0E7RUFDQTtBVHd5Q0o7QWV4dUNFO0VBRUU7RUFDQTtFQUNBO0VBQ0E7QWZ5dUNKO0FldnVDSTtFQUNFO0FmeXVDTjtBZXJ1Q0U7RUFDRTtBZnV1Q0o7O0FlbnVDQTtFTjlGSTtFQUNBO0VBQ0E7RUFDQTtFTTZGRjtBZnl1Q0Y7QWV2dUNFO0VBQ0U7QWZ5dUNKO0FldHVDRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0Fmd3VDSjs7QWVwdUNBO0VOcEdJO0VBQ0E7RUFDQTtFQUNBO0FUNDBDSjs7QWV0dUNBO0VOekdJO0VBQ0E7RUFDQTtFQUNBO0VNd0dGO0VBQ0E7QWY0dUNGO0FlMXVDRTtFQUNFO0VBQ0E7QWY0dUNKO0FlenVDRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZjJ1Q0o7QWV6dUNJO0VBQ0U7QWYydUNOOztBZXR1Q0E7RU4zSUk7RUFDQTtFQUNBO0VBQ0E7RU0wSUY7RUFDQTtFQUNBO0VBQ0E7QWY0dUNGO0FlMXVDRTtFQUNFO0FmNHVDSjtBZTF1Q0k7RU4zSUE7RUFDQTtFQUNBO0VBQ0E7QVR3M0NKO0FlM3VDRTtFTmhKRTtFQUNBO0VBQ0E7RUFDQTtFTStJQTtFTjVKQTtFQUNBO0VBQ0E7RUFDQTtFTTJKQTtFQUNBO0FmbXZDSjtBZWh2Q0U7RU5sS0U7RUFDQTtFQUNBO0VBQ0E7RU1pS0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZnF2Q0o7QWVudkNJO0VBQ0U7QWZxdkNOO0FlanZDRTtFTnBMRTtFQUNBO0VBQ0E7RUFDQTtFTW1MQTtBZnN2Q0o7QWVudkNFO0VOcExFO0VBQ0E7RUFDQTtFQUNBO0VNbUxBO0VBQ0E7RUFDQTtBZnd2Q0o7QWV0dkNJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWZ3dkNOO0FlcnZDSTtFQUNFO0VBQ0E7RUFDQTtBZnV2Q047QWVwdkNJO0VBQ0U7QWZzdkNOO0FlbnZDSTtFQUNFO0VBQ0E7QWZxdkNOO0FlbnZDTTtFQUNFO0FmcXZDUjs7QWdCbjlDQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQnE5Q0Y7QWdCbjlDRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCcTlDSjtBZ0JsOUNFO0VBQ0U7RUFDQTtBaEJvOUNKO0FnQmo5Q0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBaEJtOUNKO0FnQmo5Q0k7RUFDRTtBaEJtOUNOO0FnQmg5Q0k7RUFDRTtBaEJrOUNOO0FnQjk4Q0U7RUFFRTtFQUNBO0VBQ0E7QWhCKzhDSjs7QWlCLy9DQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakJrZ0RGO0FHcmdERTtFY05GO0lBWUk7RWpCbWdERjtBQUNGO0FHMWdERTtFY05GO0lBZ0JJO0VqQm9nREY7QUFDRjs7QWlCamdEQTtFQUNFO0VBQ0E7QWpCb2dERjs7QWlCamdEQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpCb2dERjs7QWtCcmlEQTtFQUVFO0VBQ0E7QWxCdWlERjtBa0JyaURFO0VBQ0U7RUFDQTtBbEJ1aURKOztBa0JuaURBO0VUR0k7RUFDQTtFQUNBO0VBQ0E7RVNIRjtFQUNBO0VBQ0E7QWxCd2lERjtBa0J0aURFO0VBQ0Usb0JWbkJVO0FSMmpEZDs7QW1CM2pEQTtFVlNJO0VBQ0E7RUFDQTtFQUNBO0VVVkY7QW5CaWtERjtBRzdqREU7RWdCTkY7SVZTSTtJQUNBO0lBQ0E7SUFDQTtFVDhqREY7QUFDRjs7QW1CbGtEQTtFQUNFO0FuQnFrREY7QUd6a0RFO0VnQkdGO0lBSUk7RW5Cc2tERjtBQUNGOztBbUJua0RBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5Cc2tERjs7QW1CbmtEQTtFQUNFLG9CWHpCWTtBUitsRGQ7O0FtQjlqREE7RUFDRSxpQlhsQ1k7RVdtQ1o7QW5CaWtERjs7QW1COWpEQTtFQUNFO0FuQmlrREY7O0FtQjlqREE7RWJuQ0U7QU5xbURGO0FHdG1ERTtFZ0JvQ0Y7SUFJSTtFbkJra0RGO0FBQ0Y7QUczbURFO0VnQm9DRjtJYm5DRTtFTjhtREE7QUFDRjtBbUJqa0RFO0VBQ0Usb0JYdERVO0FSeW5EZDtBbUJoa0RFO0VBQ0UsaUJYMURVO0FSNG5EZDtBbUJoa0RJO0VBQ0Usb0JYN0RRO0FSK25EZDs7QW1CN2pEQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQitqREY7QW1CN2pERTtFQUdFO0FuQjZqREo7O0FtQnRqREU7RUFHRTtBbkJ1akRKOztBbUJuakRBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQnNqREY7QUd6cERFO0VnQnVGRjtJQWVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RW5CdWpERjtBQUNGO0FtQnJqREU7RUFDRTtBbkJ1akRKO0FtQnBqREU7RUFDRTtBbkJzakRKO0FtQm5qREU7RUFDRTtBbkJxakRKO0FtQmxqREU7RUFDRTtBbkJvakRKOztBbUJoakRBO0VBQ0U7RUFDUTtBbkJtakRWO0FtQmpqREU7RVZoSEU7RUFDQTtFQUNBO0VBQ0E7QVRvcURKOztBbUJsakRBO0VWckhJO0VBQ0E7RUFDQTtFQUNBO0VBSEE7RUFDQTtFQUNBO0VBQ0E7RUhwQkY7QU5vc0RGO0FHcnNERTtFZ0J1SUY7SVZySEk7SUFDQTtJQUNBO0lBQ0E7SUFIQTtJQUNBO0lBQ0E7SUFDQTtJVTJIQTtFbkJpa0RGO0FBQ0Y7QUdsdERFO0VnQnVJRjtJYnRJRTtFTnF0REE7QUFDRjtBbUJoa0RFO0VBQ0Usb0JYOUpVO0FSZ3VEZDs7QW9CaHVEQTtFWGNJO0VBQ0E7RUFDQTtFQUNBO0VXZkY7RUFDQTtFQUNBO0FwQnN1REY7QUdwdURFO0VpQk5GO0lYY0k7SUFDQTtJQUNBO0lBQ0E7SVdUQTtFcEIwdURGO0FBQ0Y7QUc3dURFO0VpQk5GO0lBWUk7RXBCMnVERjtBQUNGO0FvQnp1REU7RUFDRTtBcEIydURKOztBb0J2dURBO0VYTkk7RUFDQTtFQUNBO0VBQ0E7RVdNRjtFQUNBO0VBQ0E7QXBCNHVERjtBRy92REU7RWlCY0Y7SVhOSTtJQUNBO0lBQ0E7SUFDQTtFVDJ2REY7QUFDRjtBb0I5dURFO0VYUEU7RUFDQTtFQUNBO0VBQ0E7QVR3dkRKO0FvQmh2REU7RUFDRTtFQUNBO0VBQ0E7QXBCa3ZESjs7QW9CMXVEQTtFQUNFLGlCWi9DWTtFWWdEWjtFQUNBO0FwQjZ1REY7O0FvQjF1REE7RUFDRSxvQlpyRFk7QVJreURkOztBb0J6dURFOztFQUVFLG9CWjNEVTtBUnV5RGQ7QW9CenVERTtFWHRDRTtFQUNBO0VBQ0E7RUFDQTtFV3FDQTtFQUNBO0FwQjh1REo7QW9CM3VERTtFQUtFO0VBQ0E7RUFDQTtBcEJ5dURKOztBb0JydURBO0VBQ0U7RUFDQTtFQUNBO0FwQnd1REY7QW9CdHVERTtFQUtFO0VBQ0E7RUFDQTtBcEJvdURKO0FvQmx1REk7RUFDRTtBcEJvdUROOztBb0IvdERBO0VBQ0U7RUFDQTtFQUNBO0FwQmt1REY7QW9CaHVERTtFQUNFO0VBQ0E7RUFDQTtBcEJrdURKO0FvQmh1REk7RUFDRTtBcEJrdUROO0FHMTBERTtFaUJ1R0U7SUFJSTtFcEJtdUROO0FBQ0Y7QUcvMERFO0VpQnVHRTtJQVFJO0VwQm91RE47QUFDRjtBR3AxREU7RWlCdUdFO0lBWUk7RXBCcXVETjtBQUNGO0FHejFERTtFaUJ1R0U7SUFnQkk7RXBCc3VETjtBQUNGO0FvQm51REk7RUFDRTtBcEJxdUROOztBcUJ2MkRBO0VBRUU7RUFDQTtBckJ5MkRGO0FHdDJERTtFa0JORjtJQU1JO0VyQjAyREY7QUFDRjtBcUJ4MkRFO0VBQ0U7QXJCMDJESjs7QXFCdDJEQTtFWkFJO0VBQ0E7RUFDQTtFQUNBO0VZREY7RUFDQTtFQUNBO0FyQjQyREY7O0FxQnoyREE7RUFDRTtBckI0MkRGO0FxQjEyREU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckI0MkRKO0FxQnoyREU7RUFDRTtBckIyMkRKOztBcUJ2MkRBO0VBQ0U7QXJCMDJERjs7QXFCdjJEQTtFQUNFO0FyQjAyREY7O0FzQnQ1REE7RUFFRTtFQUNBO0F0Qnc1REY7QUdyNURFO0VtQk5GO0lBTUk7RXRCeTVERjtBQUNGO0FzQnY1REU7RUFDRTtBdEJ5NURKOztBc0JyNURBO0ViQUk7RUFDQTtFQUNBO0VBQ0E7RWFERjtFQUNBO0VBQ0E7QXRCMjVERjs7QXNCeDVEQTtFQUNFO0VBQ0E7QXRCMjVERjtBc0J6NURFO0ViREU7RUFDQTtFQUNBO0VBQ0E7RWFBQTtBdEI4NURKO0FzQjM1REU7RWJORTtFQUNBO0VBQ0E7RUFDQTtBVG82REo7QXNCNzVERTtFQUNFO0F0Qis1REo7O0FzQjM1REE7RUFDRTtBdEI4NURGO0FzQjU1REU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEI4NURKO0FzQjM1REU7RUFFRTtBdEI0NURKO0FzQno1REU7RUFDRTtBdEIyNURKO0FzQno1REk7RUFFRTtBdEIwNUROOztBc0JyNURBO0VBQ0U7RUFDQTtFQUNBO0F0Qnc1REY7QXNCdDVERTtFQUNFO0F0Qnc1REo7QXNCcjVERTtFQUNFO0F0QnU1REo7O0F1QnArREE7RUFFRTtFQUNBO0F2QnMrREY7QUduK0RFO0VvQk5GO0lBTUk7RXZCdStERjtBQUNGO0F1QnIrREU7RUFDRTtBdkJ1K0RKOztBdUJuK0RBO0VkQUk7RUFDQTtFQUNBO0VBQ0E7RWNERjtFQUNBO0VBQ0E7QXZCeStERjs7QXdCMy9EQTtFQUVFO0VBQ0E7QXhCNi9ERjtBd0IzL0RFO0VBQ0U7RUFDQTtBeEI2L0RKOztBd0J6L0RBO0VmR0k7RUFDQTtFQUNBO0VBQ0E7RWVKRjtFQUNBO0VBQ0E7QXhCKy9ERjtBd0I3L0RFO0VBQ0Usb0JoQmxCVTtBUmloRWQ7O0F3QjMvREE7RUFFRTtBeEI2L0RGO0F3QjMvREU7RWZGRTtFQUNBO0VBQ0E7RUFDQTtFZUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCZ2dFSjtBd0I3L0RFO0VBRUU7QXhCOC9ESjs7QXdCMS9EQTtFZnBCSTtFQUNBO0VBQ0E7RUFDQTtFZW1CRjtFQUNBO0VBQ0E7QXhCZ2dFRjtBRzFpRUU7RXFCc0NGO0lBT0k7RXhCaWdFRjtBQUNGLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zY3NzL2FwcGxpY2F0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fbGliL19ub3JtYWxpemUuc2NzcyIsIndlYnBhY2s6Ly8vLi9zY3NzL19wYXJ0aWFscy9fYmFzZS5zY3NzIiwid2VicGFjazovLy8uL3Njc3MvX3BhcnRpYWxzL19tZWRpYXF1ZXJpZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9zY3NzL2NvbmZpZy5zY3NzIiwid2VicGFjazovLy8uL3Njc3MvX3BhcnRpYWxzL19mb250cy5zY3NzIiwid2VicGFjazovLy8uL3Njc3MvX3BhcnRpYWxzL19ncmlkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fcGFydGlhbHMvX3R5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9zY3NzL19tb2R1bGVzL2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9zY3NzL19wYXJ0aWFscy9fbWFyZ2lucy5zY3NzIiwid2VicGFjazovLy8uL3Njc3MvX21vZHVsZXMvaGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fbW9kdWxlcy9tZW51LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fbW9kdWxlcy9mb3JtLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fbW9kdWxlcy9lZGl0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fbW9kdWxlcy9jb21tZW50LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fbW9kdWxlcy9kaXNjdXNzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fbW9kdWxlcy90b29sdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fbW9kdWxlcy9taW5pbWFwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fbW9kdWxlcy9hYm91dC5zY3NzIiwid2VicGFjazovLy8uL3Njc3MvX21vZHVsZXMvZXNzYXkuc2NzcyIsIndlYnBhY2s6Ly8vLi9zY3NzL19tb2R1bGVzL2Rpc2N1c3Npb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9zY3NzL19tb2R1bGVzL3RpbWVsaW5lLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fbW9kdWxlcy9maWx0ZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vc2Nzcy9fbW9kdWxlcy9sb2dpbi5zY3NzIiwid2VicGFjazovLy8uL3Njc3MvX21vZHVsZXMvY29sbGFib3JhdG9ycy5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1zdWJtaXRdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmh0bWwge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKixcbio6YWZ0ZXIsXG4qOmJlZm9yZSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogaW5oZXJpdDtcbiAgLW1vei1ib3gtc2l6aW5nOiBpbmhlcml0O1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG4qIHtcbiAgbWFyZ2luOiAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTVlbTtcbiAgd29yZC1zcGFjaW5nOiAwLjAwMWVtO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuYm9keSxcbmh0bWwge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG5odG1sLFxuYm9keSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgY29sb3I6IGJsYWNrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4MHB4KSB7XG4gIGh0bWwsXG4gIGJvZHkge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuXG5odG1sIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG59XG5cbmEge1xuICBjb2xvcjogYmxhY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbmE6aG92ZXIsIGE6aG92ZXIgKiB7XG4gIGNvbG9yOiBibGFjaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnVsLFxub2wge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbnVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5pbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi50cmFuc2l0aW9uLCAuY29sbGFib3JhdG9ycywgLmxvZ2luLCAuZmlsdGVycywgLnRpbWVsaW5lLCAuZGlzY3Vzc2lvbl9faXRlbSwgLmVzc2F5X19jb21tZW50LCAuZXNzYXlfX2J1YmJsZSwgLmFib3V0LCAudG9vbHRpcCBzdmcsIC50b29sdGlwLCAuZGlzY3Vzc19faXRlbV9fZm9vdGVyIHN2ZywgLmRpc2N1c3NfX2Vzc2F5IC5saXN0ZWQsIC5lZGl0X19idXR0b24sIC5lZGl0X19pbnRyb2R1Y3Rpb24gYSwgLm1lbnVfX2l0ZW0sIC5oZWFkZXJfX3JvdGF0ZSwgLnJlYWR5LCAuYmx1ciB7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGFsbDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogQXRhay1SZWd1bGFyO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0F0YWstUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0F0YWstUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IGF1dG87XG59XG4uZm9udC1hdGFrLCAuY29tbWVudF9fYnV0dG9uLCAuZm9ybV9fYWxlcnQsIC5mb3JtIGlucHV0W3R5cGU9c3VibWl0XSwgLmZvcm0gaW5wdXRbdHlwZT1lbWFpbF0sXG4uZm9ybSBpbnB1dFt0eXBlPXBhc3N3b3JkXSwgaHRtbCxcbmJvZHkge1xuICBmb250LWZhbWlseTogQXRhay1SZWd1bGFyLCBIZWx2ZXRpY2EgTmV1ZSwgSGVsdmV0aWNhLCBBcmlhbCwgTHVjaWRhIEdyYW5kZSwgc2Fucy1zZXJpZjtcbn1cblxuW2NsYXNzKj1jb2wtXSxcbltjbGFzcyo9c3ViLV0sXG5bY2xhc3MqPW9mZi1dIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5jb2wtMSB7XG4gIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xufVxuXG4uc3ViLTEge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm9mZi0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG59XG5cbi5jb2wtMiB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbn1cblxuLnN1Yi0yIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLm9mZi0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uY29sLTMge1xuICB3aWR0aDogMjUlO1xufVxuXG4uc3ViLTMge1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5vZmYtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG59XG5cbi5jb2wtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnN1Yi00IHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLm9mZi00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xufVxuXG4uY29sLTUge1xuICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG59XG5cbi5zdWItNSB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbi5vZmYtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbn1cblxuLmNvbC02LCAuZWRpdF9fY29sdW1uIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnN1Yi02IHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4ub2ZmLTYge1xuICBtYXJnaW4tbGVmdDogNTAlO1xufVxuXG4uY29sLTcge1xuICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG59XG5cbi5zdWItNyB7XG4gIHdpZHRoOiAxNC4yODU3MTQyODU3JTtcbn1cblxuLm9mZi03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xufVxuXG4uY29sLTgsIC5lZGl0X19pbnRyb2R1Y3Rpb24ge1xuICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG59XG5cbi5zdWItOCB7XG4gIHdpZHRoOiAxMi41JTtcbn1cblxuLm9mZi04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xufVxuXG4uY29sLTkge1xuICB3aWR0aDogNzUlO1xufVxuXG4uc3ViLTkge1xuICB3aWR0aDogMTEuMTExMTExMTExMSU7XG59XG5cbi5vZmYtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7XG59XG5cbi5jb2wtMTAge1xuICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG59XG5cbi5zdWItMTAge1xuICB3aWR0aDogMTAlO1xufVxuXG4ub2ZmLTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xufVxuXG4uY29sLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xufVxuXG4uc3ViLTExIHtcbiAgd2lkdGg6IDkuMDkwOTA5MDkwOSU7XG59XG5cbi5vZmYtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG59XG5cbi5jb2wtMTIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnN1Yi0xMiB7XG4gIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xufVxuXG4ub2ZmLTEyIHtcbiAgbWFyZ2luLWxlZnQ6IDEwMCU7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnNtYWxsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBmb250LXN0eWxlOiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC41cmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjgwcHgpIHtcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuNXJlbTtcbiAgfVxufVxuXG4uaDYsIC5lc3NheV9fZm9vdG5vdGVzLCAuZGlzY3Vzc19fc3ViaXRlbV9faGVhZGVyLCAuZGlzY3Vzc19faXRlbV9fZm9vdGVyLCAuZGlzY3Vzc19faXRlbV9faGVhZGVyLCAuY29tbWVudF9faXRlbV9faGVhZGVyLCAuY29tbWVudF9faGlnaGxpZ2h0ZWQge1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2ODBweCkge1xuICAuaDYsIC5lc3NheV9fZm9vdG5vdGVzLCAuZGlzY3Vzc19fc3ViaXRlbV9faGVhZGVyLCAuZGlzY3Vzc19faXRlbV9fZm9vdGVyLCAuZGlzY3Vzc19faXRlbV9faGVhZGVyLCAuY29tbWVudF9faXRlbV9faGVhZGVyLCAuY29tbWVudF9faGlnaGxpZ2h0ZWQge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgfVxufVxuXG4uaDUsIC5mb3JtX19hbGVydCwgLmZvcm0gaW5wdXRbdHlwZT1zdWJtaXRdLCAuZm9ybSBpbnB1dFt0eXBlPWVtYWlsXSxcbi5mb3JtIGlucHV0W3R5cGU9cGFzc3dvcmRdIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjgwcHgpIHtcbiAgLmg1LCAuZm9ybV9fYWxlcnQsIC5mb3JtIGlucHV0W3R5cGU9c3VibWl0XSwgLmZvcm0gaW5wdXRbdHlwZT1lbWFpbF0sXG4gIC5mb3JtIGlucHV0W3R5cGU9cGFzc3dvcmRdIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cblxuLmg0LCAuY29sbGFib3JhdG9yc19fdGl0bGUsIC5kaXNjdXNzaW9uX190aXRsZSwgLmVzc2F5X190aXRsZSxcbi5lc3NheV9fc3VidGl0bGUsIC5hYm91dF9faW5uZXIsIC5jb21tZW50X19idXR0b24sIC5lZGl0IHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2ODBweCkge1xuICAuaDQsIC5jb2xsYWJvcmF0b3JzX190aXRsZSwgLmRpc2N1c3Npb25fX3RpdGxlLCAuZXNzYXlfX3RpdGxlLFxuICAuZXNzYXlfX3N1YnRpdGxlLCAuYWJvdXRfX2lubmVyLCAuY29tbWVudF9fYnV0dG9uLCAuZWRpdCB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gIH1cbn1cblxuLmgzIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjgwcHgpIHtcbiAgLmgzIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cblxuLmgyIHtcbiAgZm9udC1zaXplOiAzcmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjgwcHgpIHtcbiAgLmgyIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cblxuLmgxIHtcbiAgZm9udC1zaXplOiA2cmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjgwcHgpIHtcbiAgLmgxIHtcbiAgICBmb250LXNpemU6IDZyZW07XG4gIH1cbn1cblxuLmgxLFxuLmgyLFxuLmgzLFxuLmg0LFxuLmNvbGxhYm9yYXRvcnNfX3RpdGxlLFxuLmRpc2N1c3Npb25fX3RpdGxlLFxuLmVzc2F5X190aXRsZSxcbi5lc3NheV9fc3VidGl0bGUsXG4uYWJvdXRfX2lubmVyLFxuLmNvbW1lbnRfX2J1dHRvbixcbi5lZGl0LFxuLmg1LFxuLmZvcm1fX2FsZXJ0LFxuLmZvcm0gaW5wdXRbdHlwZT1zdWJtaXRdLFxuLmZvcm0gaW5wdXRbdHlwZT1lbWFpbF0sXG4uZm9ybSBpbnB1dFt0eXBlPXBhc3N3b3JkXSxcbi5oNixcbi5lc3NheV9fZm9vdG5vdGVzLFxuLmRpc2N1c3NfX3N1Yml0ZW1fX2hlYWRlcixcbi5kaXNjdXNzX19pdGVtX19mb290ZXIsXG4uZGlzY3Vzc19faXRlbV9faGVhZGVyLFxuLmNvbW1lbnRfX2l0ZW1fX2hlYWRlcixcbi5jb21tZW50X19oaWdobGlnaHRlZCxcbi5zbWFsbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5ibHVyIHtcbiAgZmlsdGVyOiBibHVyKDVweCk7XG4gIG9wYWNpdHk6IDAuMTtcbn1cbi5ibHVyLmxhenlsb2FkZWQge1xuICBmaWx0ZXI6IGJsdXIoMCk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbmh0bWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xufVxuXG4udXBwZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA3N3B4KTtcbn1cblxuLmhvbmV5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtOTk5OXB4O1xufVxuXG4uY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4uY29udGVudC0tZWRpdCB7XG4gIGFsaWduLWl0ZW1zOiBub3JtYWw7XG4gIGp1c3RpZnktY29udGVudDogbm9ybWFsO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4ubGVmdCB7XG4gIGZsZXg6IDE7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNiZWJlYmU7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5yaWdodCB7XG4gIHdpZHRoOiAxODBweDtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODYwcHgpIHtcbiAgLnJpZ2h0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTIwcHgpIHtcbiAgLnJpZ2h0IHtcbiAgICB3aWR0aDogMjUwcHg7XG4gIH1cbn1cblxuLnJlYWR5IHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnBhcmFncmFwaCBhIHtcbiAgY29sb3I6ICNiZWJlYmU7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbn1cbi5uby10b3VjaCAucGFyYWdyYXBoIGE6aG92ZXIge1xuICBjb2xvcjogYmxhY2s7XG59XG5cbm9sIHtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xufVxuXG4uaGVhZGVyIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTtcbn1cblxuLmhlYWRlcl9faW5uZXIge1xuICBwYWRkaW5nLXRvcDogMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhlYWRlcl9fZm9ybSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oZWFkZXJfX3RpdGxlLFxuLmhlYWRlcl9fbWVudSxcbi5oZWFkZXJfX2NvbW1lbnQsXG4uaGVhZGVyX19jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiZWJlYmU7XG59XG5cbi5oZWFkZXJfX3RpdGxlIGgxLFxuLmhlYWRlcl9fdGl0bGUgc3BhbiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5oZWFkZXJfX3RpdGxlIHNwYW46bm90KC5oZWFkZXJfX3JvdGF0ZSkge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmhlYWRlcl9fdGl0bGUgPiBkaXY6bGFzdC1jaGlsZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ubm8tdG91Y2ggLmhlYWRlcl9fdGl0bGUgYTpob3ZlciBoMSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubm8tdG91Y2ggLmhlYWRlcl9fdGl0bGUgYTpob3ZlciBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLm5vLXRvdWNoIC5oZWFkZXJfX3RpdGxlIGE6aG92ZXIgLmhlYWRlcl9fcm90YXRlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbn1cblxuLmhlYWRlcl9fY29tbWVudCBpbnB1dCB7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjYmViZWJlO1xuICBib3JkZXI6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uaGVhZGVyX19jb21tZW50IGlucHV0LmFjdGl2ZSB7XG4gIGNvbG9yOiAjMDBjODk2O1xufVxuLm5vLXRvdWNoIC5oZWFkZXJfX2NvbW1lbnQgaW5wdXQ6aG92ZXIge1xuICBjb2xvcjogYmxhY2s7XG59XG5cbi5oZWFkZXJfX292ZXIge1xuICBwYWRkaW5nLXRvcDogMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLmhlYWRlcl9fb3Zlcl9faW5uZXIge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JlYmViZTtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDc3cHgpO1xuICBvdmVyZmxvdzogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjgwcHgpIHtcbiAgLmhlYWRlcl9fb3Zlcl9faW5uZXIge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMjBweCk7XG4gIH1cbn1cbi5oZWFkZXJfX292ZXJfX2lubmVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oZWFkZXJfX3JvdGF0ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xufVxuXG4ubWVudV9faXRlbSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjYmViZWJlO1xufVxuLm1lbnVfX2l0ZW06bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xufVxuLm5vLXRvdWNoIC5tZW51X19pdGVtOmhvdmVyLCAubWVudV9faXRlbS5hY3RpdmUge1xuICBjb2xvcjogYmxhY2s7XG59XG4ubWVudV9faXRlbS0tY29udHJpYnV0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2ODBweCkge1xuICAubWVudV9faXRlbS0tY29udHJpYnV0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLm1lbnVfX3NlY3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4uZm9ybSA+IGRpdiB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4uZm9ybSBsYWJlbCB7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLmZvcm0gaW5wdXRbdHlwZT1lbWFpbF0sXG4uZm9ybSBpbnB1dFt0eXBlPXBhc3N3b3JkXSB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBwYWRkaW5nLXRvcDogMXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMnB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBtaW4td2lkdGg6IDMwMHB4O1xuICBvdXRsaW5lOiBub25lO1xufVxuLmZvcm0gaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgcGFkZGluZy10b3A6IDVweDtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogI2JlYmViZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5uby10b3VjaCAuZm9ybSBpbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIge1xuICBjb2xvcjogYmxhY2s7XG59XG5cbi5mb3JtX19hbGVydCB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIGNvbG9yOiByZWQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZWRpdF9faW50cm9kdWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogMHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbn1cbi5lZGl0X19pbnRyb2R1Y3Rpb24gYSB7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIGJhY2tncm91bmQ6ICNmNWY1ZjU7XG59XG4ubm8tdG91Y2ggLmVkaXRfX2ludHJvZHVjdGlvbiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmVkaXRfX2Vzc2F5cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5lZGl0X19jb2x1bW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLmVkaXRfX2NvbHVtbl9fbGlzdCB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbn1cbi5lZGl0X19jb2x1bW5fX2xpc3QgbGkge1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwidG51bVwiIDE7XG59XG5cbi5lZGl0X19idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5uby10b3VjaCAuZWRpdF9fYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmNvbW1lbnQge1xuICBwYWRkaW5nLXRvcDogMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG5cbi5jb21tZW50X19lc3NheSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuLmNvbW1lbnRfX2Vzc2F5ID4gcDpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07XG59XG4uY29tbWVudF9fZXNzYXkgc3Ryb25nIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzAwYzg5NiAwJSwgIzAwYzg5NiAxMDAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtc2l6ZTogMXB4IDRweDtcbn1cbi5jb21tZW50X19lc3NheSBzdHJvbmcubGlzdGVkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYmViZWJlIDAlLCAjYmViZWJlIDEwMCUpO1xufVxuXG4uY29tbWVudF9fbGVmdCB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHggKiAyKTtcbn1cblxuLmNvbW1lbnRfX3JpZ2h0IHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCAqIDQpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDExNHB4KTtcbiAgcmlnaHQ6IDIwcHg7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLmNvbW1lbnRfX3JpZ2h0Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb21tZW50X19mb3JtIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cbi5jb21tZW50X19mb3JtLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb21tZW50X19mb3JtX19pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29tbWVudF9faXRlbSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMGM4OTY7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbn1cbi5jb21tZW50X19pdGVtLS1idXR0b24ge1xuICBib3JkZXI6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmNvbW1lbnRfX2Zvcm1fX2lubmVyIC5jb21tZW50X19pdGVtIHtcbiAgbWFyZ2luLXRvcDogMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbn1cbi5jb21tZW50X19pdGVtIHRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHJlc2l6ZTogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5jb21tZW50X19pdGVtIHRleHRhcmVhW2Rpc2FibGVkXSB7XG4gIGNvbG9yOiBibGFjaztcbn1cbi5jb21tZW50X19pdGVtIC5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY29tbWVudF9fYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IDVweDtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmbGV4OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmViZWJlO1xuICBvdXRsaW5lOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY29tbWVudF9fYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tbGVmdDogMHB4O1xufVxuXG4uY29tbWVudF9faGlnaGxpZ2h0ZWQge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgYmFja2dyb3VuZDogIzAwYzg5Njtcbn1cblxuLmNvbW1lbnRfX2l0ZW1fX2hlYWRlciB7XG4gIGJhY2tncm91bmQ6ICMwMGM4OTY7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5jb21tZW50X19pdGVtX19kZWxldGUge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiAwO1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5jb21tZW50X19pbnB1dGFyZWEge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLmNvbW1lbnRfX2lucHV0YXJlYSA+IGRpdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uY29tbWVudF9faW5wdXRhcmVhID4gZGl2Om5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xuICBtYXJnaW4tbGVmdDogMHB4O1xufVxuLmNvbW1lbnRfX2lucHV0YXJlYSBsYWJlbCB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmNvbW1lbnRfX2lucHV0YXJlYSBpbnB1dCB7XG4gIHBhZGRpbmctdG9wOiAzcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2JlYmViZTtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZmxleDogMTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5jb21tZW50X19pbnB1dGFyZWEgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNiZWJlYmU7XG59XG4uY29tbWVudF9faW5wdXRhcmVhIHRleHRhcmVhIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZWJlYmU7XG59XG4uY29tbWVudF9faW5wdXRhcmVhIGlucHV0W3R5cGU9ZmlsZV0ge1xuICBwYWRkaW5nLXRvcDogNHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgaGVpZ2h0OiBjYWxjKDFlbSArIDExcHgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY29tbWVudF9faW5wdXRhcmVhIGlucHV0W3R5cGU9ZmlsZV06Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmNvbW1lbnRfX2lucHV0YXJlYSBpbnB1dFt0eXBlPWZpbGVdOjpiZWZvcmUge1xuICBjb250ZW50OiBcIkFkZCBhIG5ldyBmaWxl4oCmXCI7XG4gIGNvbG9yOiAjYmViZWJlO1xuICB3aWR0aDogMTAwJTtcbn1cbi5jb21tZW50X19pbnB1dGFyZWEgaW5wdXRbdHlwZT1maWxlXS5leGlzdGluZzo6YmVmb3JlIHtcbiAgY29udGVudDogXCJBZGQgYSBuZXcgZmlsZSBhbmQgZGVsZXRlIGV4aXN0aW5nIG9uZeKAplwiO1xufVxuLmNvbW1lbnRfX2lucHV0YXJlYSBpbnB1dFt0eXBlPWZpbGVdLndpdGhfX2ZpbGUge1xuICBjb2xvcjogYmxhY2s7XG4gIHBhZGRpbmctbGVmdDogOHB4O1xufVxuLmNvbW1lbnRfX2lucHV0YXJlYSBpbnB1dFt0eXBlPWZpbGVdLndpdGhfX2ZpbGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5jb21tZW50X19pbWFnZSAubGFiZWwge1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZy10b3A6IDVweDtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbn1cbi5jb21tZW50X19pbWFnZSBpbWcge1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICBoZWlnaHQ6IDI2cHg7XG4gIHdpZHRoOiBhdXRvO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmRpc2N1c3Mge1xuICBwYWRkaW5nLXRvcDogMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG5cbi5kaXNjdXNzX19lc3NheSB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHggKiAyKTtcbn1cbi5kaXNjdXNzX19lc3NheSA+IHA6bm90KDpsYXN0LWNoaWxkKSwgLmRpc2N1c3NfX2Vzc2F5ID4gZmlndXJlOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07XG59XG4uZGlzY3Vzc19fZXNzYXkgLmxpc3RlZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgI2JlYmViZSAwJSwgI2JlYmViZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtc2l6ZTogMXB4IDRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm5vLXRvdWNoIC5kaXNjdXNzX19lc3NheSAubGlzdGVkOmhvdmVyLCAuZGlzY3Vzc19fZXNzYXkgLmxpc3RlZC5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLXNpemU6IDFweCAxLjI1ZW07XG59XG5cbi5kaXNjdXNzX19jb21tZW50cyB7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHggKiA0KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMTRweCk7XG4gIHJpZ2h0OiAyMHB4O1xuICBvdmVyZmxvdzogYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5kaXNjdXNzX19jb21tZW50czo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZGlzY3Vzc19faXRlbSB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNiZWJlYmU7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5kaXNjdXNzX19pdGVtLnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5kaXNjdXNzX19pdGVtIC5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZGlzY3Vzc19faXRlbV9faGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIGJhY2tncm91bmQ6ICNiZWJlYmU7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5kaXNjdXNzX19pdGVtX19ib2R5IHtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uZGlzY3Vzc19faXRlbV9fZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5kaXNjdXNzX19pdGVtX19mb290ZXIgPiBkaXY6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG59XG4uZGlzY3Vzc19faXRlbV9fZm9vdGVyIHN2ZyB7XG4gIGhlaWdodDogMTVweDtcbiAgd2lkdGg6IDE1cHg7XG4gIGZpbGw6ICNiZWJlYmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5uby10b3VjaCAuZGlzY3Vzc19faXRlbV9fZm9vdGVyIHN2Zzpob3ZlciB7XG4gIGZpbGw6IGJsYWNrO1xufVxuLmRpc2N1c3NfX2l0ZW1fX2Zvb3RlciAuYWN0aXZlIHN2ZyB7XG4gIGZpbGw6IGJsYWNrO1xufVxuXG4uZGlzY3Vzc19fc3ViaXRlbSB7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiZWJlYmU7XG59XG4uZGlzY3Vzc19fc3ViaXRlbSBwOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbn1cbi5kaXNjdXNzX19zdWJpdGVtIGltZyB7XG4gIG1heC13aWR0aDogNDAlO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LWhlaWdodDogMTUwcHg7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmRpc2N1c3NfX3N1Yml0ZW1fX2hlYWRlciB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbn1cblxuLmRpc2N1c3NfX2Zvcm1fX2l0ZW0ge1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xuICBtYXJnaW4tbGVmdDogMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uZGlzY3Vzc19fZm9ybV9faXRlbS0tYnV0dG9uIHtcbiAgYm9yZGVyOiBub25lO1xuICB3aWR0aDogYXV0bztcbn1cbi5kaXNjdXNzX19mb3JtX19pdGVtIHRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHJlc2l6ZTogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cbi5kaXNjdXNzX19mb3JtX19pdGVtIHRleHRhcmVhW2Rpc2FibGVkXSB7XG4gIGNvbG9yOiBibGFjaztcbn1cblxuLmRpc2N1c3NfX2lucHV0YXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4uZGlzY3Vzc19faW5wdXRhcmVhID4gZGl2IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5kaXNjdXNzX19pbnB1dGFyZWEgPiBkaXY6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG59XG4uZGlzY3Vzc19faW5wdXRhcmVhIGxhYmVsIHtcbiAgbWFyZ2luLXRvcDogMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZGlzY3Vzc19faW5wdXRhcmVhIGlucHV0IHtcbiAgcGFkZGluZy10b3A6IDNweDtcbiAgcGFkZGluZy1ib3R0b206IDNweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjYmViZWJlO1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmbGV4OiAxO1xuICBvdXRsaW5lOiBub25lO1xufVxuLmRpc2N1c3NfX2lucHV0YXJlYSBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2JlYmViZTtcbn1cbi5kaXNjdXNzX19pbnB1dGFyZWEgdGV4dGFyZWEge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2JlYmViZTtcbn1cbi5kaXNjdXNzX19pbnB1dGFyZWEgaW5wdXRbdHlwZT1maWxlXSB7XG4gIHBhZGRpbmctdG9wOiA0cHg7XG4gIHBhZGRpbmctYm90dG9tOiA0cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBoZWlnaHQ6IGNhbGMoMWVtICsgMTFweCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kaXNjdXNzX19pbnB1dGFyZWEgaW5wdXRbdHlwZT1maWxlXTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uZGlzY3Vzc19faW5wdXRhcmVhIGlucHV0W3R5cGU9ZmlsZV06OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiQWRkIGEgbmV3IGZpbGXigKZcIjtcbiAgY29sb3I6ICNiZWJlYmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmRpc2N1c3NfX2lucHV0YXJlYSBpbnB1dFt0eXBlPWZpbGVdLmV4aXN0aW5nOjpiZWZvcmUge1xuICBjb250ZW50OiBcIkFkZCBhIG5ldyBmaWxlIGFuZCBkZWxldGUgZXhpc3Rpbmcgb25l4oCmXCI7XG59XG4uZGlzY3Vzc19faW5wdXRhcmVhIGlucHV0W3R5cGU9ZmlsZV0ud2l0aF9fZmlsZSB7XG4gIGNvbG9yOiBibGFjaztcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG59XG4uZGlzY3Vzc19faW5wdXRhcmVhIGlucHV0W3R5cGU9ZmlsZV0ud2l0aF9fZmlsZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJhY2tncm91bmQ6ICMwMGM4OTY7XG4gIHBhZGRpbmc6IDRweDtcbiAgbWluLXdpZHRoOiA1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoY2FsYygtNTAlICsgNXB4KSwgY2FsYygtMTAwJSAtIDE1cHgpKTtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwcHggMHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNSkpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB6LWluZGV4OiA5OTtcbn1cbi50b29sdGlwOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogIzAwYzg5NjtcbiAgaGVpZ2h0OiAxMHB4O1xuICB3aWR0aDogMTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC01cHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgei1pbmRleDogLTE7XG59XG4udG9vbHRpcC5oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi50b29sdGlwID4gZGl2IHtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi50b29sdGlwID4gZGl2Om5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG4ubm8tdG91Y2ggLnRvb2x0aXAgPiBkaXY6aG92ZXIgc3ZnIHtcbiAgZmlsbDogd2hpdGU7XG59XG4udG9vbHRpcCBzdmcge1xuICBoZWlnaHQ6IDE1cHg7XG4gIHdpZHRoOiAxNXB4O1xuICBmaWxsOiBibGFjaztcbn1cblxuLm1pbmltYXAge1xuICB3aWR0aDogY2FsYygxMDB2dyAtIDE4MHB4KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgcmlnaHQ7XG4gIHotaW5kZXg6IDA7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NjBweCkge1xuICAubWluaW1hcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkyMHB4KSB7XG4gIC5taW5pbWFwIHtcbiAgICB3aWR0aDogY2FsYygxMDB2dyAtIDI1MHB4KTtcbiAgfVxufVxuXG4ubWluaW1hcF9faW5uZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5taW5pbWFwX19ob3ZlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNzdweCk7XG4gIGJhY2tncm91bmQ6IGJsYWNrO1xuICB6LWluZGV4OiA5OTtcbiAgb3BhY2l0eTogMC4wNDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5hYm91dCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIG9wYWNpdHk6IDA7XG59XG4uYWJvdXQub3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmFib3V0X19pbm5lciB7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG4uYWJvdXRfX2lubmVyIHA6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDEuMmVtO1xufVxuXG4uZXNzYXkge1xuICBwYWRkaW5nLXRvcDogMTJweDtcbiAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgZGlzcGxheTogZmxleDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4MHB4KSB7XG4gIC5lc3NheSB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIH1cbn1cblxuLmVzc2F5X19sZWZ0IHtcbiAgd2lkdGg6IDQwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2ODBweCkge1xuICAuZXNzYXlfX2xlZnQge1xuICAgIHdpZHRoOiA4MHB4O1xuICB9XG59XG5cbi5lc3NheV9fY2VudGVyIHtcbiAgZmxleDogMTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5lc3NheV9faGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yZW07XG59XG5cbi5lc3NheV9fY29sbGFib3JhdG9ycyB7XG4gIG1hcmdpbi10b3A6IDEuMmVtO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmVzc2F5X19zdWJ0aXRsZSB7XG4gIGNvbG9yOiAjYmViZWJlO1xufVxuXG4uZXNzYXlfX3BhcmFncmFwaCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjgwcHgpIHtcbiAgLmVzc2F5X19wYXJhZ3JhcGgge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA4MHB4KSB7XG4gIC5lc3NheV9fcGFyYWdyYXBoIHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbn1cbi5lc3NheV9fcGFyYWdyYXBoOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAxLjJlbTtcbn1cbi5lc3NheV9fcGFyYWdyYXBoIGZpZ3VyZSB7XG4gIG1hcmdpbi10b3A6IDEuMmVtO1xufVxuLmVzc2F5X19wYXJhZ3JhcGggZmlndXJlOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAxLjJlbTtcbn1cblxuLmVzc2F5X19idWJibGUge1xuICB3aWR0aDogMC43NWVtO1xuICBoZWlnaHQ6IDAuNzVlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjYmViZWJlO1xuICBib3JkZXItcmFkaXVzOiAwLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5uby10b3VjaCAuZXNzYXlfX2J1YmJsZTpob3ZlciwgLmVzc2F5X19idWJibGUuYWN0aXZlLCAubm8tdG91Y2ggLmVzc2F5X19zaWRlbm90ZTpob3ZlciArIC5lc3NheV9fYnViYmxlIHtcbiAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS11c2VyKSwgMSk7XG59XG5cbi5lc3NheV9fY29tbWVudC5hY3RpdmUsIC5uby10b3VjaCAuZXNzYXlfX2J1YmJsZTpob3ZlciArIC5lc3NheV9fY29tbWVudCwgLm5vLXRvdWNoIC5lc3NheV9fc2lkZW5vdGU6aG92ZXIgKyAuZXNzYXlfX2J1YmJsZSArIC5lc3NheV9fY29tbWVudCB7XG4gIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tdXNlciksIDAuMjUpO1xufVxuXG4uZXNzYXlfX3NpZGVub3RlIHtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgd2lkdGg6IDEuNWVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZWJlYmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuNGVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGNhbGMoKDU0cHggLSAxLjVlbSkgLyAyKTtcbiAgbWFyZ2luLXRvcDogLTAuMTVlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMC4yNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXVzZXIpLCAxKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4MHB4KSB7XG4gIC5lc3NheV9fc2lkZW5vdGUge1xuICAgIGhlaWdodDogMS43NWVtO1xuICAgIHdpZHRoOiAxLjc1ZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC41ZW07XG4gICAgbGVmdDogY2FsYygoMTAwcHggLSAxLjc1ZW0pIC8gMik7XG4gICAgbWFyZ2luLXRvcDogLTAuMjVlbTtcbiAgfVxufVxuLm5vLXRvdWNoIC5lc3NheV9fc2lkZW5vdGU6aG92ZXIge1xuICB6LWluZGV4OiAxO1xufVxuLmVzc2F5X19zaWRlbm90ZS0tdGV4dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL3N2Zy90ZXh0LnN2Z1wiKTtcbn1cbi5lc3NheV9fc2lkZW5vdGUtLWltYWdlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vc3ZnL2ltYWdlLnN2Z1wiKTtcbn1cbi5lc3NheV9fc2lkZW5vdGUtLW1lZGlhIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vc3ZnL21lZGlhLnN2Z1wiKTtcbn1cblxuLmZvb3Rub3RlIHtcbiAgLXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6IFwibnVtclwiIDE7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJudW1yXCIgMTtcbn1cbi5lc3NheV9fZm9vdG5vdGVzIC5mb290bm90ZSB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG59XG5cbi5lc3NheV9fZm9vdG5vdGVzIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjgwcHgpIHtcbiAgLmVzc2F5X19mb290bm90ZXMge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgcGFkZGluZy10b3A6IDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDgwcHgpIHtcbiAgLmVzc2F5X19mb290bm90ZXMge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxufVxuLmVzc2F5X19mb290bm90ZXMgPiBwOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAxLjJlbTtcbn1cblxuLmRpc2N1c3Npb24ge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbjogMS4yZW0gMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4MHB4KSB7XG4gIC5kaXNjdXNzaW9uIHtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBtYXJnaW46IDEuMmVtIC04MHB4IDEuMmVtIDgwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwODBweCkge1xuICAuZGlzY3Vzc2lvbiB7XG4gICAgbWFyZ2luOiAxLjJlbSBjYWxjKC0yNSUgKyA0MHB4KSAxLjJlbSBjYWxjKDI1JSAtIDQwcHgpO1xuICB9XG59XG4uZGlzY3Vzc2lvbi5sYXN0IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLmRpc2N1c3Npb25fX2l0ZW0ge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4MHB4KSB7XG4gIC5kaXNjdXNzaW9uX19pdGVtIHtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgfVxufVxuLmRpc2N1c3Npb25fX2l0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG59XG4uZGlzY3Vzc2lvbl9faXRlbS5oaWRkZW4ge1xuICBvcGFjaXR5OiAwLjI1O1xuICAtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDEpO1xuICBmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcbn1cblxuLmRpc2N1c3Npb25fX2NvbGxhYm9yYXRvciB7XG4gIG1hcmdpbi10b3A6IDEuMmVtO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgY29sb3I6IHJnYmEodmFyKC0tdXNlciksIDEpO1xufVxuXG4uZGlzY3Vzc2lvbl9fZGF0ZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuMmVtO1xufVxuXG4uZGlzY3Vzc2lvbl9fdGV4dCBwOm5vdCg6bGFzdC1jaGlsZCksXG4uZGlzY3Vzc2lvbl9fdGV4dCBmaWd1cmU6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDEuMmVtO1xufVxuLmRpc2N1c3Npb25fX3RleHQgZmlndXJlIHtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5kaXNjdXNzaW9uX190ZXh0IGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5kaXNjdXNzaW9uX19pbWFnZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLmRpc2N1c3Npb25fX2ltYWdlIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXVzZXIpLCAxKTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uZGlzY3Vzc2lvbl9faW1hZ2UgaW1nOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbn1cblxuLmRpc2N1c3Npb25fX21lZGlhIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4uZGlzY3Vzc2lvbl9fbWVkaWEgaWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKHZhcigtLXVzZXIpLCAxKTtcbn1cbi5kaXNjdXNzaW9uX19tZWRpYSBpZnJhbWUudmlkZW8ge1xuICBoZWlnaHQ6IGNhbGMoKDEwMHZ3IC0gNjRweCkgKiAwLjU2MjUpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjgwcHgpIHtcbiAgLmRpc2N1c3Npb25fX21lZGlhIGlmcmFtZS52aWRlbyB7XG4gICAgaGVpZ2h0OiBjYWxjKCgxMDB2dyAtIDE4MHB4KSAqIDAuNTYyNSk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg2MHB4KSB7XG4gIC5kaXNjdXNzaW9uX19tZWRpYSBpZnJhbWUudmlkZW8ge1xuICAgIGhlaWdodDogY2FsYygoMTAwdncgLSA0MDBweCkgKiAwLjU2MjUpO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MjBweCkge1xuICAuZGlzY3Vzc2lvbl9fbWVkaWEgaWZyYW1lLnZpZGVvIHtcbiAgICBoZWlnaHQ6IGNhbGMoKDEwMHZ3IC0gNDcwcHgpICogMC41NjI1KTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA4MHB4KSB7XG4gIC5kaXNjdXNzaW9uX19tZWRpYSBpZnJhbWUudmlkZW8ge1xuICAgIGhlaWdodDogY2FsYygoMTAwdncgLSAzNzBweCkgKiAwLjY2NjcgKiAwLjU2MjUpO1xuICB9XG59XG4uZGlzY3Vzc2lvbl9fbWVkaWEgaWZyYW1lOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbn1cblxuLnRpbWVsaW5lIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY4MHB4KSB7XG4gIC50aW1lbGluZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuLnRpbWVsaW5lLm9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi50aW1lbGluZV9faW5uZXIge1xuICBwYWRkaW5nLXRvcDogMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4udGltZWxpbmVfX2l0ZW0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4udGltZWxpbmVfX2l0ZW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IGNhbGMoMC43NWVtIC0gMXB4KTtcbiAgaGVpZ2h0OiBjYWxjKDAuNzVlbSAtIDFweCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogMC41ZW07XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZDtcbn1cbi5uby10b3VjaCAudGltZWxpbmVfX2l0ZW06aG92ZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG59XG5cbi50aW1lbGluZV9faXRlbV9fdGl0bGUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnRpbWVsaW5lX19zcGFuIHtcbiAgY29sb3I6IHJnYmEodmFyKC0tdXNlciksIDEpO1xufVxuXG4uZmlsdGVycyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2ODBweCkge1xuICAuZmlsdGVycyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuLmZpbHRlcnMub3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLmZpbHRlcnNfX2lubmVyIHtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cblxuLmZpbHRlcnNfX2NvbHVtbiB7XG4gIHdpZHRoOiA1MCU7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uZmlsdGVyc19fY29sdW1uOmZpcnN0LW9mLXR5cGUge1xuICBwYWRkaW5nLXRvcDogMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2JlYmViZTtcbn1cbi5maWx0ZXJzX19jb2x1bW46bGFzdC1vZi10eXBlIHtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG4uZmlsdGVyc19fY29sdW1uID4gZGl2IHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLmZpbHRlcnNfX2l0ZW0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uZmlsdGVyc19faXRlbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogY2FsYygwLjc1ZW0gLSAxcHgpO1xuICBoZWlnaHQ6IGNhbGMoMC43NWVtIC0gMXB4KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAwLjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZDtcbn1cbi5uby10b3VjaCAuZmlsdGVyc19faXRlbTpob3ZlcjpiZWZvcmUsIC5maWx0ZXJzX19pdGVtLmFjdGl2ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbn1cbi5maWx0ZXJzX19jb2x1bW46Zmlyc3QtY2hpbGQgLmZpbHRlcnNfX2l0ZW0ge1xuICBjb2xvcjogcmdiYSh2YXIoLS11c2VyKSwgMSk7XG59XG4ubm8tdG91Y2ggLmZpbHRlcnNfX2NvbHVtbjpmaXJzdC1jaGlsZCAuZmlsdGVyc19faXRlbTpob3ZlcjpiZWZvcmUsIC5maWx0ZXJzX19jb2x1bW46Zmlyc3QtY2hpbGQgLmZpbHRlcnNfX2l0ZW0uYWN0aXZlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tdXNlciksIDEpO1xufVxuXG4uZmlsdGVyc19fcmVzZXQge1xuICBkaXNwbGF5OiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjYmViZWJlO1xufVxuLmZpbHRlcnNfX3Jlc2V0LmFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmZpbHRlcnNfX3Jlc2V0OmhvdmVyIHtcbiAgY29sb3I6IGJsYWNrO1xufVxuXG4ubG9naW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjgwcHgpIHtcbiAgLmxvZ2luIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG4ubG9naW4ub3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLmxvZ2luX19pbm5lciB7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG5cbi5jb2xsYWJvcmF0b3JzIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgb3BhY2l0eTogMDtcbn1cbi5jb2xsYWJvcmF0b3JzLm9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5jb2xsYWJvcmF0b3JzX19pbm5lciB7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG4uY29sbGFib3JhdG9yc19faW5uZXIgcDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yZW07XG59XG5cbi5jb2xsYWJvcmF0b3JzX190aXRsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5jb2xsYWJvcmF0b3JzX190aXRsZTo6YmVmb3JlIHtcbiAgbWFyZ2luLXRvcDogMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDAuNzVlbTtcbiAgaGVpZ2h0OiAwLjc1ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS11c2VyKSwgMSk7XG4gIGJvcmRlci1yYWRpdXM6IDAuNWVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbn1cbi5uby10b3VjaCAuY29sbGFib3JhdG9yc19fdGl0bGU6aG92ZXI6OmJlZm9yZSwgLmNvbGxhYm9yYXRvcnNfX3RpdGxlLmFjdGl2ZTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS11c2VyKSwgMSk7XG59XG5cbi5jb2xsYWJvcmF0b3JzX190ZXh0IHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gIHBhZGRpbmctbGVmdDogMHB4O1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMjRweCArIDAuNzVlbSk7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjgwcHgpIHtcbiAgLmNvbGxhYm9yYXRvcnNfX3RleHQge1xuICAgIHdpZHRoOiA2Ni42NjclO1xuICB9XG59IiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLy8gSU5JVElBVEUgQkFTSUMgQ0xBU1NFU1xuXG5AZnVuY3Rpb24gdGV4dCgkc2l6ZSwgJHR5cGU6IGRlZmF1bHQpIHtcbiAgQHJldHVybiBtYXAtZ2V0KG1hcC1nZXQoJHRleHRzLCAkc2l6ZSksICR0eXBlKTtcbn1cblxuQGZ1bmN0aW9uIGxpbmUoJHNpemUpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRsaW5lcywgJHNpemUpO1xufVxuXG5AZnVuY3Rpb24gY29sb3IoJHR5cGUpIHtcbiAgQHJldHVybiBtYXAtZ2V0KCRjb2xvcnMsICR0eXBlKTtcbn1cblxuLy8gQk9SREVSLUJPWCwgUkVTRVRcblxuaHRtbCB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLFxuKjphZnRlcixcbio6YmVmb3JlIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBpbmhlcml0O1xuICAtbW96LWJveC1zaXppbmc6IGluaGVyaXQ7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbioge1xuICBtYXJnaW46IDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxNWVtO1xuICB3b3JkLXNwYWNpbmc6IDAuMDAxZW07XG5cbiAgQGlmICRmb250LXNtb290aGluZy1tb3o9PXRydWUge1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIH1cblxuICBAaWYgJGZvbnQtc21vb3RoaW5nLXdlYmtpdD09dHJ1ZSB7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIH1cbn1cblxuYm9keSxcbmh0bWwge1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4vLyBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fIC8vXG5cbi8vIFRZUEUgU0laRVxuXG5AZnVuY3Rpb24gZ2V0LXZ3KCR0YXJnZXQpIHtcbiAgJHZ3LWNvbnRleHQ6ICgkdmlld3BvcnQtd2lkdGgtcHggKiAwLjAxKSAqIDFweDtcbiAgQHJldHVybiAoJHRhcmdldCAvICR2dy1jb250ZXh0KSAqIDF2dztcbn1cblxuaHRtbCxcbmJvZHkge1xuICBmb250LXNpemU6IHRleHQoZGVmYXVsdCwgc20pO1xuICBsaW5lLWhlaWdodDogbGluZShkZWZhdWx0KTtcbiAgY29sb3I6IGNvbG9yKHRleHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihiYWNrZ3JvdW5kKTtcbiAgQGV4dGVuZCAuZm9udC0jeyRtYWluLWZvbnR9O1xuXG4gIEBpbmNsdWRlIG1xKHNtKSB7XG4gICAgZm9udC1zaXplOiB0ZXh0KGRlZmF1bHQsIGRlZmF1bHQpO1xuICAgIEBpZiAkaXMtZ2xvYmFsLXZpZXdwb3J0LXRleHQ9PXRydWUge1xuICAgICAgZm9udC1zaXplOiBnZXQtdncodGV4dChkZWZhdWx0LCBkZWZhdWx0KSk7XG4gICAgfVxuICB9XG59XG5cbmh0bWwge1xuICBiYWNrZ3JvdW5kOiBjb2xvcihiYWNrZ3JvdW5kKTtcbn1cblxuYSB7XG4gIGNvbG9yOiBjb2xvcihsaW5rKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIsXG4gICY6aG92ZXIgKiB7XG4gICAgY29sb3I6IGNvbG9yKGhvdmVyKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbnVsLFxub2wge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbnVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG5pbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi8vIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18gLy9cblxuLy8gVFJBTlNJVElPTlNcblxuQG1peGluIHRyYW5zaXRpb24oXG4gICRwcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHktZGVmYXVsdCxcbiAgJGR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbi1kZWZhdWx0LFxuICAkdGltaW5nOiAkdHJhbnNpdGlvbi10aW1pbmctZGVmYXVsdCxcbiAgJGRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheS1kZWZhdWx0XG4pIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHByb3BlcnR5O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5cbi50cmFuc2l0aW9uIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbn1cbiIsIi8vIFNDUkVFTiBTSVpFUyAtIEJyZWFrcG9pbnRzIGZvciBtZWRpYXF1ZXJpZXNcblxuQG1peGluIG1xKCRtcS1icmVha3BvaW50LCAkbXEtYnJlYWtwb2ludHM6ICRicmVha3BvaW50cykge1xuICBAaWYgbWFwLWhhcy1rZXkoJG1xLWJyZWFrcG9pbnRzLCAkbXEtYnJlYWtwb2ludCkge1xuICAgICRtcS1icmVha3BvaW50OiBtYXAtZ2V0KCRtcS1icmVha3BvaW50cywgJG1xLWJyZWFrcG9pbnQpO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICN7JG1xLWJyZWFrcG9pbnR9KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIENPTkZJR1VSQVRFIERPQ1VNRU5UXG5cbi8vIEZPTlQgU0VUVElOR1NcblxuLy8gRm9udCBzaXplcyAtIGNhbiBiZSBhbnkgdW5pdFxuJHRleHRzOiAoXG4gIGRlZmF1bHQ6IChcbiAgICBkZWZhdWx0OiAxNnB4LFxuICAgIHNtOiAxNnB4XG4gICksXG4gIHh4czogKFxuICAgIGRlZmF1bHQ6IDAuNXJlbSxcbiAgICBzbTogMC41cmVtXG4gICksXG4gIHhzOiAoXG4gICAgZGVmYXVsdDogMC43NXJlbSxcbiAgICBzbTogMC43NXJlbVxuICApLFxuICBzbTogKFxuICAgIGRlZmF1bHQ6IDFyZW0sXG4gICAgc206IDFyZW1cbiAgKSxcbiAgbWQ6IChcbiAgICBkZWZhdWx0OiAxLjNyZW0sXG4gICAgc206IDEuMnJlbVxuICApLFxuICBsZzogKFxuICAgIGRlZmF1bHQ6IDJyZW0sXG4gICAgc206IDJyZW1cbiAgKSxcbiAgeGw6IChcbiAgICBkZWZhdWx0OiAzcmVtLFxuICAgIHNtOiAzcmVtXG4gICksXG4gIHh4bDogKFxuICAgIGRlZmF1bHQ6IDZyZW0sXG4gICAgc206IDZyZW1cbiAgKVxuKTtcblxuLy8gTGluZSBoZWlnaHQgLSByZWFsdGl2ZSB0byBmb250LXNpemVcbiRsaW5lczogKFxuICBkZWZhdWx0OiAxLjIsXG4gIHh4czogMSxcbiAgeHM6IDEuMTI1LFxuICBzbTogMS4yNSxcbiAgbWQ6IDEuMzc1LFxuICBsZzogMS41LFxuICB4bDogMixcbiAgeHhsOiAzXG4pO1xuXG4kZm9udC1zbW9vdGhpbmctbW96OiB0cnVlO1xuJGZvbnQtc21vb3RoaW5nLXdlYmtpdDogdHJ1ZTtcblxuLy8gVmlld3BvcnQgdmFsdWVzXG4kaXMtZ2xvYmFsLXZpZXdwb3J0LXRleHQ6IGZhbHNlO1xuJHZpZXdwb3J0LXdpZHRoLXB4OiAxMjgwO1xuXG4vLyBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fIC8vXG5cbi8vIEZPTlRTXG5cbiRtYWluLWZvbnQ6IGF0YWs7XG4kZm9udHM6IChcbiAgYXRhazogKFxuICAgIG5hbWU6IEF0YWstUmVndWxhcixcbiAgICBmYWxsYmFjazogXCJIZWx2ZXRpY2EgTmV1ZSwgSGVsdmV0aWNhLCBBcmlhbCwgTHVjaWRhIEdyYW5kZSwgc2Fucy1zZXJpZlwiLFxuICAgIHVybDogXCIuLi9mb250cy9BdGFrLVJlZ3VsYXJcIixcbiAgICB3ZWlnaHQ6IG5vcm1hbCxcbiAgICBzdHlsZTogbm9ybWFsLFxuICAgIGRpc3BsYXk6IGF1dG9cbiAgKVxuKTtcblxuLy8gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAvL1xuXG4vLyBMQVlPVVRcblxuJG51bWJlci1vZi1jb2x1bW5zOiAxMjtcblxuJGlzLWdsb2JhbC12aWV3cG9ydC1zaXplczogZmFsc2U7XG4kYmFzZS1zcGFjZTogMTBweDtcblxuLy8gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAvL1xuXG4vLyBDT0xPUlNcblxuJGNvbG9yczogKFxuICB0ZXh0OiBibGFjayxcbiAgbGluazogYmxhY2ssXG4gIGhvdmVyOiBibGFjayxcbiAgYmFja2dyb3VuZDogd2hpdGUsXG4gIGdyZXk6ICNmNWY1ZjUsXG4gIGJvcmRlcjogI2JlYmViZSxcbiAgZXJyb3I6ICNmZmU1ZTUsXG4gIGdyZWVuOiAjMDBjODk2LFxuICBkaXNjdXNzLXRleHQ6ICMwMGM4OTYsXG4gIGRpc2N1c3MtaW1hZ2U6ICNlZTgyZWUsXG4gIGRpc2N1c3MtbWVkaWE6ICNmZjAwMDBcbik7XG5cbi8vIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18gLy9cblxuLy8gVFJBTlNJVElPTlxuXG4kdHJhbnNpdGlvbi1wcm9wZXJ0eS1kZWZhdWx0OiBhbGw7XG4kdHJhbnNpdGlvbi1kdXJhdGlvbi1kZWZhdWx0OiAwLjE1cztcbiR0cmFuc2l0aW9uLXRpbWluZy1kZWZhdWx0OiBlYXNlLWluLW91dDtcbiR0cmFuc2l0aW9uLWRlbGF5LWRlZmF1bHQ6IDBzO1xuXG4vLyBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fIC8vXG5cbi8vIEJSRUFLUE9JTlRTXG5cbiRicmVha3BvaW50czogKFxuICB4czogMHB4LFxuICBzbTogNjgwcHgsXG4gIG1kOiA4NjBweCxcbiAgbGc6IDkyMHB4LFxuICB4bDogMTA4MHB4LFxuICB4eGw6IDE4MDBweFxuKTtcblxuLy8gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAvL1xuXG4vLyBGUkVFIENPTkZJR1xuXG4kbWluaW1hcC13aWR0aDogMjUwcHg7XG4kbWluaW1hcC13aWR0aC1zbTogMTgwcHg7XG4iLCIvLyBJTklUSUFURSBGT05UU1xuXG5AZWFjaCAkaSwgJGZvbnQtcHJvcGVydGllcyBpbiAkZm9udHMge1xuICBAaWYgKG1hcC1nZXQoJGZvbnQtcHJvcGVydGllcywgdXJsKSAhPSAnJykge1xuICAgIEBmb250LWZhY2Uge1xuICAgICAgZm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtcHJvcGVydGllcywgbmFtZSk7XG4gICAgICBzcmM6IHVybChtYXAtZ2V0KCRmb250LXByb3BlcnRpZXMsIHVybCkrJy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybChtYXAtZ2V0KCRmb250LXByb3BlcnRpZXMsIHVybCkrJy53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCRmb250LXByb3BlcnRpZXMsIHdlaWdodCk7XG4gICAgICBmb250LXN0eWxlOiBtYXAtZ2V0KCRmb250LXByb3BlcnRpZXMsIHN0eWxlKTtcbiAgICAgIGZvbnQtZGlzcGxheTogbWFwLWdldCgkZm9udC1wcm9wZXJ0aWVzLCBkaXNwbGF5KTtcbiAgICB9XG4gIH1cbn1cblxuQGVhY2ggJGksICRmb250LXByb3BlcnRpZXMgaW4gJGZvbnRzIHtcbiAgLmZvbnQtI3skaX0ge1xuICAgIGZvbnQtZmFtaWx5OiBtYXAtZ2V0KCRmb250LXByb3BlcnRpZXMsIG5hbWUpLFxuICAgICAgdW5xdW90ZShtYXAtZ2V0KCRmb250LXByb3BlcnRpZXMsIGZhbGxiYWNrKSk7XG4gIH1cbn1cbiIsIi8vIElOSVRJQVRFIEdSSURcblxuLy8gQ09MVU1OUywgU1VCRElWSVNJT05TLCBMRUZUIE9GRlNFVFxuXG4kc2luZ2xlLWNvbHVtbjogMTAwIC8gJG51bWJlci1vZi1jb2x1bW5zO1xuXG5AbWl4aW4gY29sdW1uKCRwcm9wZXJ0eSkge1xuICB3aWR0aDogcGVyY2VudGFnZSgkc2luZ2xlLWNvbHVtbiAqICRwcm9wZXJ0eSAvIDEwMCk7XG59XG5cbkBtaXhpbiBzdWJkaXZpc2lvbigkcHJvcGVydHkpIHtcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoMTAwIC8gJHByb3BlcnR5KSAvIDEwMDtcbn1cblxuQG1peGluIG9mZnNldGNvbCgkcHJvcGVydHkpIHtcbiAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoJHNpbmdsZS1jb2x1bW4gKiAkcHJvcGVydHkgLyAxMDApO1xufVxuXG5bY2xhc3MqPSdjb2wtJ10sXG5bY2xhc3MqPSdzdWItJ10sXG5bY2xhc3MqPSdvZmYtJ10ge1xuICBmbG9hdDogbGVmdDtcbn1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbnVtYmVyLW9mLWNvbHVtbnMge1xuICAuY29sLSN7JGl9IHtcbiAgICBAaW5jbHVkZSBjb2x1bW4oJGkpO1xuICB9XG4gIC5zdWItI3skaX0ge1xuICAgIEBpbmNsdWRlIHN1YmRpdmlzaW9uKCRpKTtcbiAgfVxuICAub2ZmLSN7JGl9IHtcbiAgICBAaW5jbHVkZSBvZmZzZXRjb2woJGkpO1xuICB9XG59XG4iLCIvLyBJTklUSUFURSBUWVBFIFNJWkVTXG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnNtYWxsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBmb250LXN0eWxlOiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogdGV4dCh4eHMsIHNtKTtcblxuICBAaW5jbHVkZSBtcShzbSkge1xuICAgIGZvbnQtc2l6ZTogdGV4dCh4eHMsIGRlZmF1bHQpO1xuICB9XG59XG5cbi5oNiB7XG4gIGZvbnQtc2l6ZTogdGV4dCh4cywgc20pO1xuXG4gIEBpbmNsdWRlIG1xKHNtKSB7XG4gICAgZm9udC1zaXplOiB0ZXh0KHhzLCBkZWZhdWx0KTtcbiAgfVxufVxuXG4uaDUge1xuICBmb250LXNpemU6IHRleHQoc20sIHNtKTtcblxuICBAaW5jbHVkZSBtcShzbSkge1xuICAgIGZvbnQtc2l6ZTogdGV4dChzbSwgZGVmYXVsdCk7XG4gIH1cbn1cblxuLmg0IHtcbiAgZm9udC1zaXplOiB0ZXh0KG1kLCBzbSk7XG5cbiAgQGluY2x1ZGUgbXEoc20pIHtcbiAgICBmb250LXNpemU6IHRleHQobWQsIGRlZmF1bHQpO1xuICB9XG59XG5cbi5oMyB7XG4gIGZvbnQtc2l6ZTogdGV4dChsZywgc20pO1xuXG4gIEBpbmNsdWRlIG1xKHNtKSB7XG4gICAgZm9udC1zaXplOiB0ZXh0KGxnLCBkZWZhdWx0KTtcbiAgfVxufVxuXG4uaDIge1xuICBmb250LXNpemU6IHRleHQoeGwsIHNtKTtcblxuICBAaW5jbHVkZSBtcShzbSkge1xuICAgIGZvbnQtc2l6ZTogdGV4dCh4bCwgZGVmYXVsdCk7XG4gIH1cbn1cblxuLmgxIHtcbiAgZm9udC1zaXplOiB0ZXh0KHh4bCwgc20pO1xuXG4gIEBpbmNsdWRlIG1xKHNtKSB7XG4gICAgZm9udC1zaXplOiB0ZXh0KHh4bCwgZGVmYXVsdCk7XG4gIH1cbn1cblxuLy8gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXyAvL1xuXG4vLyBJTklUSUFURSBMSU5FIEhFSUdIVFxuXG4uaDEsXG4uaDIsXG4uaDMsXG4uaDQsXG4uaDUsXG4uaDYsXG4uc21hbGwge1xuICBsaW5lLWhlaWdodDogbGluZShkZWZhdWx0KTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbiIsIiRsaW5lLWhlaWdodDogbGluZShkZWZhdWx0KSAqIDFlbTtcblxuLmJsdXIge1xuICBAZXh0ZW5kIC50cmFuc2l0aW9uO1xuICBmaWx0ZXI6IGJsdXIoNXB4KTtcbiAgb3BhY2l0eTogMC4xO1xuXG4gICYubGF6eWxvYWRlZCB7XG4gICAgZmlsdGVyOiBibHVyKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuaHRtbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGdyZXkpO1xufVxuXG4udXBwZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgcGFkZGluZygyKTtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDc3cHgpO1xufVxuXG4uaG9uZXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC05OTk5cHg7XG59XG5cbi5jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAmLS1lZGl0IHtcbiAgICBhbGlnbi1pdGVtczogbm9ybWFsO1xuICAgIGp1c3RpZnktY29udGVudDogbm9ybWFsO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cblxuLmxlZnQge1xuICBmbGV4OiAxO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBjb2xvcihib3JkZXIpO1xuICBiYWNrZ3JvdW5kOiBjb2xvcihiYWNrZ3JvdW5kKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuXG4ucmlnaHQge1xuICB3aWR0aDogJG1pbmltYXAtd2lkdGgtc207XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQ6IGNvbG9yKGdyZXkpO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQGluY2x1ZGUgbXEobWQpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKGxnKSB7XG4gICAgd2lkdGg6ICRtaW5pbWFwLXdpZHRoO1xuICB9XG59XG5cbi5yZWFkeSB7XG4gIEBleHRlbmQgLnRyYW5zaXRpb247XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5wYXJhZ3JhcGggYSB7XG4gIGNvbG9yOiBjb2xvcihib3JkZXIpO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG5cbiAgLm5vLXRvdWNoICY6aG92ZXIge1xuICAgIGNvbG9yOiBibGFjaztcbiAgfVxufVxuXG5vbCB7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbn1cbiIsIi8vIC8vIElOSVRJQVRFIE1BUkdJTlMgQU5EIFBBRERJTkdcblxuQG1peGluIHByb3BlcnR5KCRwcm9wZXJ0eSwgJHZhbHVlcykge1xuICAkdG9wOiAkcHJvcGVydHkgKyAnLXRvcCc7XG4gICRib3R0b206ICRwcm9wZXJ0eSArICctYm90dG9tJztcbiAgJHJpZ2h0OiAkcHJvcGVydHkgKyAnLXJpZ2h0JztcbiAgJGxlZnQ6ICRwcm9wZXJ0eSArICctbGVmdCc7XG5cbiAgQGlmIGxlbmd0aCgkdmFsdWVzKSA9PSAxIHtcbiAgICAjeyR0b3B9OiBudGgoJHZhbHVlcywgMSkgKiAkYmFzZS1zcGFjZTtcbiAgICAjeyRib3R0b219OiBudGgoJHZhbHVlcywgMSkgKiAkYmFzZS1zcGFjZTtcbiAgICAjeyRyaWdodH06IG50aCgkdmFsdWVzLCAxKSAqICRiYXNlLXNwYWNlO1xuICAgICN7JGxlZnR9OiBudGgoJHZhbHVlcywgMSkgKiAkYmFzZS1zcGFjZTtcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHZhbHVlcykgPT0gMiB7XG4gICAgI3skdG9wfTogbnRoKCR2YWx1ZXMsIDEpICogJGJhc2Utc3BhY2U7XG4gICAgI3skYm90dG9tfTogbnRoKCR2YWx1ZXMsIDEpICogJGJhc2Utc3BhY2U7XG4gICAgI3skcmlnaHR9OiBudGgoJHZhbHVlcywgMikgKiAkYmFzZS1zcGFjZTtcbiAgICAjeyRsZWZ0fTogbnRoKCR2YWx1ZXMsIDIpICogJGJhc2Utc3BhY2U7XG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCR2YWx1ZXMpID09IDMge1xuICAgICN7JHRvcH06IG50aCgkdmFsdWVzLCAxKSAqICRiYXNlLXNwYWNlO1xuICAgICN7JGJvdHRvbX06IG50aCgkdmFsdWVzLCAzKSAqICRiYXNlLXNwYWNlO1xuICAgICN7JHJpZ2h0fTogbnRoKCR2YWx1ZXMsIDIpICogJGJhc2Utc3BhY2U7XG4gICAgI3skbGVmdH06IG50aCgkdmFsdWVzLCAyKSAqICRiYXNlLXNwYWNlO1xuICB9IEBlbHNlIGlmIGxlbmd0aCgkdmFsdWVzKSA9PSA0IHtcbiAgICAjeyR0b3B9OiBudGgoJHZhbHVlcywgMSkgKiAkYmFzZS1zcGFjZTtcbiAgICAjeyRib3R0b219OiBudGgoJHZhbHVlcywgMykgKiAkYmFzZS1zcGFjZTtcbiAgICAjeyRyaWdodH06IG50aCgkdmFsdWVzLCAyKSAqICRiYXNlLXNwYWNlO1xuICAgICN7JGxlZnR9OiBudGgoJHZhbHVlcywgNCkgKiAkYmFzZS1zcGFjZTtcbiAgfVxufVxuXG5AbWl4aW4gbWFyZ2luLWVtKCR2YWx1ZXMpIHtcbiAgQGlmIGxlbmd0aCgkdmFsdWVzKSA9PSAxIHtcbiAgICBtYXJnaW4tdG9wOiBudGgoJHZhbHVlcywgMSkgKiAxZW07XG4gICAgbWFyZ2luLWJvdHRvbTogbnRoKCR2YWx1ZXMsIDEpICogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogbnRoKCR2YWx1ZXMsIDEpICogMWVtO1xuICAgIG1hcmdpbi1sZWZ0OiBudGgoJHZhbHVlcywgMSkgKiAxZW07XG4gIH0gQGVsc2UgaWYgbGVuZ3RoKCR2YWx1ZXMpID09IDIge1xuICAgIG1hcmdpbi10b3A6IG50aCgkdmFsdWVzLCAxKSAqIDFlbTtcbiAgICBtYXJnaW4tYm90dG9tOiBudGgoJHZhbHVlcywgMSkgKiAxZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBudGgoJHZhbHVlcywgMikgKiAxZW07XG4gICAgbWFyZ2luLWxlZnQ6IG50aCgkdmFsdWVzLCAyKSAqIDFlbTtcbiAgfSBAZWxzZSBpZiBsZW5ndGgoJHZhbHVlcykgPT0gMyB7XG4gICAgbWFyZ2luLXRvcDogbnRoKCR2YWx1ZXMsIDEpICogMWVtO1xuICAgIG1hcmdpbi1ib3R0b206IG50aCgkdmFsdWVzLCAzKSAqIDFlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IG50aCgkdmFsdWVzLCAyKSAqIDFlbTtcbiAgICBtYXJnaW4tbGVmdDogbnRoKCR2YWx1ZXMsIDIpICogMWVtO1xuICB9IEBlbHNlIGlmIGxlbmd0aCgkdmFsdWVzKSA9PSA0IHtcbiAgICBtYXJnaW4tdG9wOiBudGgoJHZhbHVlcywgMSkgKiAxZW07XG4gICAgbWFyZ2luLWJvdHRvbTogbnRoKCR2YWx1ZXMsIDMpICogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogbnRoKCR2YWx1ZXMsIDIpICogMWVtO1xuICAgIG1hcmdpbi1sZWZ0OiBudGgoJHZhbHVlcywgNCkgKiAxZW07XG4gIH1cbn1cblxuQG1peGluIHBhZGRpbmcoJHZhbHVlcykge1xuICBAaW5jbHVkZSBwcm9wZXJ0eShwYWRkaW5nLCAkdmFsdWVzKTtcbn1cblxuQG1peGluIG1hcmdpbigkdmFsdWVzKSB7XG4gIEBpbmNsdWRlIHByb3BlcnR5KG1hcmdpbiwgJHZhbHVlcyk7XG59XG4iLCIuaGVhZGVyIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiA5OTtcbn1cblxuLmhlYWRlcl9faW5uZXIge1xuICBAaW5jbHVkZSBwYWRkaW5nKDAgMSk7XG4gIGJhY2tncm91bmQ6IGNvbG9yKGdyZXkpO1xuICB6LWluZGV4OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oZWFkZXJfX2Zvcm0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaGVhZGVyX190aXRsZSxcbi5oZWFkZXJfX21lbnUsXG4uaGVhZGVyX19jb21tZW50LFxuLmhlYWRlcl9fY29udGVudCB7XG4gIEBpbmNsdWRlIHBhZGRpbmcoMSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGNvbG9yKGJvcmRlcik7XG59XG5cbi5oZWFkZXJfX3RpdGxlIHtcbiAgaDEsXG4gIHNwYW4ge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgc3Bhbjpub3QoLmhlYWRlcl9fcm90YXRlKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLm5vLXRvdWNoICYgYTpob3ZlciB7XG4gICAgaDEge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuaGVhZGVyX19yb3RhdGUge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB9XG4gIH1cbn1cblxuLmhlYWRlcl9fY29tbWVudCB7XG4gIGlucHV0IHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDApO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6IGNvbG9yKGJvcmRlcik7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgY29sb3I6IGNvbG9yKGdyZWVuKTtcbiAgICB9XG5cbiAgICAubm8tdG91Y2ggJjpob3ZlciB7XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXJfX292ZXIge1xuICBAaW5jbHVkZSBwYWRkaW5nKDAgMSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IGNvbG9yKGdyZXkpO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5oZWFkZXJfX292ZXJfX2lubmVyIHtcbiAgQGluY2x1ZGUgcGFkZGluZygxIDApO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGNvbG9yKGJvcmRlcik7XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSA3N3B4KTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICBAaW5jbHVkZSBtcShzbSkge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMjBweCk7XG4gIH1cblxuICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGVhZGVyX19yb3RhdGUge1xuICBAZXh0ZW5kIC50cmFuc2l0aW9uO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbn1cbiIsIi5tZW51X19pdGVtIHtcbiAgQGV4dGVuZCAudHJhbnNpdGlvbjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IGNvbG9yKGJvcmRlcik7XG5cbiAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKDAgMCAwIDIpO1xuICB9XG5cbiAgLm5vLXRvdWNoICY6aG92ZXIsXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gIH1cblxuICAmLS1jb250cmlidXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgbXEoc20pIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4ubWVudV9fc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbiIsIi5mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgJiA+IGRpdiB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKDAgMCAxIDApO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDAuNSAwKTtcbiAgICBAaW5jbHVkZSBtYXJnaW4oMCAyIDAgMCk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XG4gICAgQGV4dGVuZCAuZm9udC1hdGFrLCAuaDU7XG4gICAgQGluY2x1ZGUgbWFyZ2luKDApO1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoMCAxLjUpO1xuICAgIHBhZGRpbmctdG9wOiAxcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDJweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgbWluLXdpZHRoOiAzMDBweDtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgQGV4dGVuZCAuZm9udC1hdGFrLCAuaDU7XG4gICAgQGluY2x1ZGUgcGFkZGluZygwLjUgMCk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6IGNvbG9yKGJvcmRlcik7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAubm8tdG91Y2ggJjpob3ZlciB7XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtX19hbGVydCB7XG4gIEBpbmNsdWRlIG1hcmdpbigwIDAgMCAyKTtcbiAgQGV4dGVuZCAuZm9udC1hdGFrLCAuaDU7XG4gIGNvbG9yOiByZWQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuIiwiLmVkaXQge1xuICBAZXh0ZW5kIC5oNDtcbn1cblxuLmVkaXRfX2ludHJvZHVjdGlvbiB7XG4gIEBleHRlbmQgLmNvbC04O1xuICBAaW5jbHVkZSBtYXJnaW4oMCAwIDQgMCk7XG5cbiAgYSB7XG4gICAgQGV4dGVuZCAudHJhbnNpdGlvbjtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDAgMC41KTtcbiAgICBiYWNrZ3JvdW5kOiBjb2xvcihncmV5KTtcblxuICAgIC5uby10b3VjaCAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cbiAgfVxufVxuXG4uZWRpdF9fZXNzYXlzIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLmVkaXRfX2NvbHVtbiB7XG4gIEBleHRlbmQgLmNvbC02O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLmVkaXRfX2NvbHVtbl9fbGlzdCB7XG4gIEBpbmNsdWRlIG1hcmdpbigwIDAgMiAwKTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuXG4gIGxpIHtcbiAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwidG51bVwiIDE7XG4gIH1cbn1cblxuLmVkaXRfX2J1dHRvbiB7XG4gIEBleHRlbmQgLnRyYW5zaXRpb247XG4gIEBpbmNsdWRlIHBhZGRpbmcoMCAwLjUpO1xuICBiYWNrZ3JvdW5kOiBjb2xvcihncmV5KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgLm5vLXRvdWNoICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgfVxufVxuIiwiLmNvbW1lbnQge1xuICBAaW5jbHVkZSBwYWRkaW5nKDAgMik7XG59XG5cbi5jb21tZW50X19lc3NheSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaW5lLWhlaWdodDogMS41O1xuXG4gICYgPiBwOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNWVtO1xuICB9XG5cbiAgc3Ryb25nIHtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICB0byByaWdodCxcbiAgICAgIGNvbG9yKGdyZWVuKSAwJSxcbiAgICAgIGNvbG9yKGdyZWVuKSAxMDAlXG4gICAgKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMXB4IDRweDtcblxuICAgICYubGlzdGVkIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgdG8gcmlnaHQsXG4gICAgICAgIGNvbG9yKGJvcmRlcikgMCUsXG4gICAgICAgIGNvbG9yKGJvcmRlcikgMTAwJVxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cblxuLmNvbW1lbnRfX2xlZnQge1xuICBAaW5jbHVkZSBwYWRkaW5nKDIgMCk7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogY2FsYyg1MCUgLSAjeyRiYXNlLXNwYWNlfSAqIDIpO1xufVxuXG4uY29tbWVudF9fcmlnaHQge1xuICBAaW5jbHVkZSBwYWRkaW5nKDIgMCk7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogY2FsYyg1MCUgLSAjeyRiYXNlLXNwYWNlfSAqIDQpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDExNHB4KTtcbiAgcmlnaHQ6ICRiYXNlLXNwYWNlICogMjtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNvbW1lbnRfX2Zvcm0ge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXG4gICYuaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb21tZW50X19mb3JtX19pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29tbWVudF9faXRlbSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGdyZWVuKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuXG4gICYtLWJ1dHRvbiB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLmNvbW1lbnRfX2Zvcm1fX2lubmVyICYge1xuICAgIEBpbmNsdWRlIG1hcmdpbigwIDAgMiAwKTtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcmVzaXplOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgLmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29tbWVudF9fYnV0dG9uIHtcbiAgQGV4dGVuZCAuZm9udC1hdGFrLCAuaDQ7XG4gIEBpbmNsdWRlIHBhZGRpbmcoMC41IDEuNSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZsZXg6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJvcmRlcik7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIEBpbmNsdWRlIG1hcmdpbigwIDIgMCAwKTtcbiAgfVxufVxuXG4uY29tbWVudF9faGlnaGxpZ2h0ZWQge1xuICBAZXh0ZW5kIC5oNjtcbiAgQGluY2x1ZGUgcGFkZGluZygxIDEuNSk7XG4gIGJhY2tncm91bmQ6IGNvbG9yKGdyZWVuKTtcbn1cblxuLmNvbW1lbnRfX2l0ZW1fX2hlYWRlciB7XG4gIEBleHRlbmQgLmg2O1xuICBiYWNrZ3JvdW5kOiBjb2xvcihncmVlbik7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5jb21tZW50X19pdGVtX19kZWxldGUge1xuICBAaW5jbHVkZSBwYWRkaW5nKDEgMS41KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiAwO1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5jb21tZW50X19pbnB1dGFyZWEge1xuICBAaW5jbHVkZSBwYWRkaW5nKDEgMS41KTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICYgPiBkaXYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgQGluY2x1ZGUgbWFyZ2luKDAgMCAxIDApO1xuICAgIH1cbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBtYXJnaW4oMCAxIDAgMCk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgQGluY2x1ZGUgcGFkZGluZygwLjUgMCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoMC4zIDEuNSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgY29sb3IoYm9yZGVyKTtcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZmxleDogMTtcbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IGNvbG9yKGJvcmRlcik7XG4gICAgfVxuICB9XG5cbiAgdGV4dGFyZWEge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoMSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgY29sb3IoYm9yZGVyKTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDAuNCAxLjUpO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBoZWlnaHQ6IGNhbGMoMWVtICsgMTFweCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIkFkZCBhIG5ldyBmaWxl4oCmXCI7XG4gICAgICBjb2xvcjogY29sb3IoYm9yZGVyKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYuZXhpc3Rpbmc6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIkFkZCBhIG5ldyBmaWxlIGFuZCBkZWxldGUgZXhpc3Rpbmcgb25l4oCmXCI7XG4gICAgfVxuXG4gICAgJi53aXRoX19maWxlIHtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY29tbWVudF9faW1hZ2Uge1xuICAubGFiZWwge1xuICAgIEBpbmNsdWRlIG1hcmdpbigwIDEgMCAwKTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDAuNSAwKTtcbiAgfVxuXG4gIGltZyB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKDAgMSAwIDApO1xuICAgIGhlaWdodDogMjZweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuIiwiLmRpc2N1c3Mge1xuICBAaW5jbHVkZSBwYWRkaW5nKDAgMik7XG59XG5cbi5kaXNjdXNzX19lc3NheSB7XG4gIEBpbmNsdWRlIHBhZGRpbmcoMiAwKTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHdpZHRoOiBjYWxjKDUwJSAtICN7JGJhc2Utc3BhY2V9ICogMik7XG5cbiAgJiA+IHA6bm90KDpsYXN0LWNoaWxkKSxcbiAgJiA+IGZpZ3VyZTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07XG4gIH1cblxuICAubGlzdGVkIHtcbiAgICBAZXh0ZW5kIC50cmFuc2l0aW9uO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChcbiAgICAgIHRvIHJpZ2h0LFxuICAgICAgY29sb3IoYm9yZGVyKSAwJSxcbiAgICAgIGNvbG9yKGJvcmRlcikgMTAwJVxuICAgICk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDFweCA0cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgLm5vLXRvdWNoICY6aG92ZXIsXG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxcHggMS4yNWVtO1xuICAgIH1cbiAgfVxufVxuXG4uZGlzY3Vzc19fY29tbWVudHMge1xuICBAaW5jbHVkZSBwYWRkaW5nKDIgMCk7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogY2FsYyg1MCUgLSAjeyRiYXNlLXNwYWNlfSAqIDQpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDExNHB4KTtcbiAgcmlnaHQ6ICRiYXNlLXNwYWNlICogMjtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmRpc2N1c3NfX2l0ZW0ge1xuICBAaW5jbHVkZSBtYXJnaW4oMCAwIDIgMCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGJvcmRlcik7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLnNob3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uZGlzY3Vzc19faXRlbV9faGVhZGVyIHtcbiAgQGluY2x1ZGUgcGFkZGluZygxIDEuNSk7XG4gIEBleHRlbmQgLmg2O1xuICBiYWNrZ3JvdW5kOiBjb2xvcihib3JkZXIpO1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uZGlzY3Vzc19faXRlbV9fYm9keSB7XG4gIEBpbmNsdWRlIHBhZGRpbmcoMCAxLjUpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uZGlzY3Vzc19faXRlbV9fZm9vdGVyIHtcbiAgQGluY2x1ZGUgcGFkZGluZygxIDEuNSk7XG4gIEBleHRlbmQgLmg2O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgJiA+IGRpdjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBAaW5jbHVkZSBtYXJnaW4oMCAxIDAgMCk7XG4gIH1cblxuICBzdmcge1xuICAgIEBleHRlbmQgLnRyYW5zaXRpb247XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGZpbGw6IGNvbG9yKGJvcmRlcik7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgLm5vLXRvdWNoICY6aG92ZXIge1xuICAgICAgZmlsbDogYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgLmFjdGl2ZSBzdmcge1xuICAgIGZpbGw6IGJsYWNrO1xuICB9XG59XG5cbi5kaXNjdXNzX19zdWJpdGVtIHtcbiAgQGluY2x1ZGUgcGFkZGluZygxIDApO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgY29sb3IoYm9yZGVyKTtcblxuICBwOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodCAvIDI7XG4gIH1cblxuICBpbWcge1xuICAgIG1heC13aWR0aDogNDAlO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDE1MHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4uZGlzY3Vzc19fc3ViaXRlbV9faGVhZGVyIHtcbiAgQGV4dGVuZCAuaDY7XG4gIEBpbmNsdWRlIG1hcmdpbigwIDAgMC41IDApO1xufVxuXG4uZGlzY3Vzc19fZm9ybV9faXRlbSB7XG4gIEBpbmNsdWRlIG1hcmdpbigwIDAgMiAwKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuXG4gICYtLWJ1dHRvbiB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgdGV4dGFyZWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICByZXNpemU6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgIH1cbiAgfVxufVxuXG4uZGlzY3Vzc19faW5wdXRhcmVhIHtcbiAgQGluY2x1ZGUgcGFkZGluZygxIDEuNSk7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAmID4gZGl2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIEBpbmNsdWRlIG1hcmdpbigwIDAgMSAwKTtcbiAgICB9XG4gIH1cblxuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKDAgMSAwIDApO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoMC41IDApO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDAuMyAxLjUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGJvcmRlcik7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZsZXg6IDE7XG4gICAgb3V0bGluZTogbm9uZTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiBjb2xvcihib3JkZXIpO1xuICAgIH1cbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDEpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGNvbG9yKGJvcmRlcik7XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZygwLjQgMS41KTtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgaGVpZ2h0OiBjYWxjKDFlbSArIDExcHgpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJBZGQgYSBuZXcgZmlsZeKAplwiO1xuICAgICAgY29sb3I6IGNvbG9yKGJvcmRlcik7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmLmV4aXN0aW5nOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJBZGQgYSBuZXcgZmlsZSBhbmQgZGVsZXRlIGV4aXN0aW5nIG9uZeKAplwiO1xuICAgIH1cblxuICAgICYud2l0aF9fZmlsZSB7XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDhweDtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi50b29sdGlwIHtcbiAgQGV4dGVuZCAudHJhbnNpdGlvbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBiYWNrZ3JvdW5kOiBjb2xvcihncmVlbik7XG4gIHBhZGRpbmc6IDRweDtcbiAgbWluLXdpZHRoOiA1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoY2FsYygtNTAlICsgNXB4KSwgY2FsYygtMTAwJSAtIDE1cHgpKTtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwcHggMHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNSkpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB6LWluZGV4OiA5OTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQ6IGNvbG9yKGdyZWVuKTtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTVweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgei1pbmRleDogLTE7XG4gIH1cblxuICAmLmhpZGRlbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICYgPiBkaXYge1xuICAgIHBhZGRpbmc6IDZweCAxMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIH1cblxuICAgIC5uby10b3VjaCAmOmhvdmVyIHN2ZyB7XG4gICAgICBmaWxsOiB3aGl0ZTtcbiAgICB9XG4gIH1cblxuICAmIHN2ZyB7XG4gICAgQGV4dGVuZCAudHJhbnNpdGlvbjtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgZmlsbDogYmxhY2s7XG4gIH1cbn1cbiIsIi5taW5pbWFwIHtcbiAgd2lkdGg6IGNhbGMoMTAwdncgLSAjeyRtaW5pbWFwLXdpZHRoLXNtfSk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIHJpZ2h0O1xuICB6LWluZGV4OiAwO1xuICBiYWNrZ3JvdW5kOiBjb2xvcihiYWNrZ3JvdW5kKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBpbmNsdWRlIG1xKG1kKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBAaW5jbHVkZSBtcShsZykge1xuICAgIHdpZHRoOiBjYWxjKDEwMHZ3IC0gI3skbWluaW1hcC13aWR0aH0pO1xuICB9XG59XG5cbi5taW5pbWFwX19pbm5lciB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLm1pbmltYXBfX2hvdmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA3N3B4KTtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG4gIHotaW5kZXg6IDk5O1xuICBvcGFjaXR5OiAwLjA0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiIsIi5hYm91dCB7XG4gIEBleHRlbmQgLnRyYW5zaXRpb247XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJi5vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uYWJvdXRfX2lubmVyIHtcbiAgQGV4dGVuZCAuaDQ7XG4gIEBpbmNsdWRlIHBhZGRpbmcoMCAxKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG5cbiAgcDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQ7XG4gIH1cbn1cbiIsIi5lc3NheSB7XG4gIEBpbmNsdWRlIHBhZGRpbmcoMS4yKTtcbiAgZGlzcGxheTogZmxleDtcblxuICBAaW5jbHVkZSBtcShzbSkge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoMik7XG4gIH1cbn1cblxuLmVzc2F5X19sZWZ0IHtcbiAgd2lkdGg6IDQwcHg7XG5cbiAgQGluY2x1ZGUgbXEoc20pIHtcbiAgICB3aWR0aDogODBweDtcbiAgfVxufVxuXG4uZXNzYXlfX2NlbnRlciB7XG4gIGZsZXg6IDE7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uZXNzYXlfX2hlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodDtcbn1cblxuLmVzc2F5X190aXRsZSxcbi5lc3NheV9fc3VidGl0bGUge1xuICBAZXh0ZW5kIC5oNDtcbn1cblxuLmVzc2F5X19jb2xsYWJvcmF0b3JzIHtcbiAgbWFyZ2luLXRvcDogJGxpbmUtaGVpZ2h0O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmVzc2F5X19zdWJ0aXRsZSB7XG4gIGNvbG9yOiBjb2xvcihib3JkZXIpO1xufVxuXG4uZXNzYXlfX3BhcmFncmFwaCB7XG4gIEBpbmNsdWRlIGNvbHVtbigxMik7XG5cbiAgQGluY2x1ZGUgbXEoc20pIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gODBweCk7XG4gIH1cblxuICBAaW5jbHVkZSBtcSh4bCkge1xuICAgIEBpbmNsdWRlIGNvbHVtbig4KTtcbiAgfVxuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgJiBmaWd1cmUge1xuICAgIG1hcmdpbi10b3A6ICRsaW5lLWhlaWdodDtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi5lc3NheV9fYnViYmxlIHtcbiAgQGV4dGVuZCAudHJhbnNpdGlvbjtcbiAgd2lkdGg6IDAuNzVlbTtcbiAgaGVpZ2h0OiAwLjc1ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogY29sb3IoYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogMC41ZW07XG4gIG1hcmdpbi1yaWdodDogM3B4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLm5vLXRvdWNoICY6aG92ZXIsXG4gICYuYWN0aXZlLFxuICAubm8tdG91Y2ggLmVzc2F5X19zaWRlbm90ZTpob3ZlciArICYge1xuICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tdXNlciksIDEpO1xuICB9XG59XG5cbi5lc3NheV9fY29tbWVudCB7XG4gIEBleHRlbmQgLnRyYW5zaXRpb247XG5cbiAgJi5hY3RpdmUsXG4gIC5uby10b3VjaCAuZXNzYXlfX2J1YmJsZTpob3ZlciArICYsXG4gIC5uby10b3VjaCAuZXNzYXlfX3NpZGVub3RlOmhvdmVyICsgLmVzc2F5X19idWJibGUgKyAmIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLXVzZXIpLCAwLjI1KTtcbiAgfVxufVxuXG4uZXNzYXlfX3NpZGVub3RlIHtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgd2lkdGg6IDEuNWVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKGJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IDAuNGVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGNhbGMoKDU0cHggLSAxLjVlbSkgLyAyKTtcbiAgbWFyZ2luLXRvcDogLTAuMTVlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMC4yNWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXVzZXIpLCAxKTtcblxuICBAaW5jbHVkZSBtcShzbSkge1xuICAgIGhlaWdodDogMS43NWVtO1xuICAgIHdpZHRoOiAxLjc1ZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC41ZW07XG4gICAgbGVmdDogY2FsYygoMTAwcHggLSAxLjc1ZW0pIC8gMik7XG4gICAgbWFyZ2luLXRvcDogLTAuMjVlbTtcbiAgfVxuXG4gIC5uby10b3VjaCAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgJi0tdGV4dCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vc3ZnL3RleHQuc3ZnXCIpO1xuICB9XG5cbiAgJi0taW1hZ2Uge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL3N2Zy9pbWFnZS5zdmdcIik7XG4gIH1cblxuICAmLS1tZWRpYSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vc3ZnL21lZGlhLnN2Z1wiKTtcbiAgfVxufVxuXG4uZm9vdG5vdGUge1xuICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJudW1yXCIgMTtcbiAgICAgICAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwibnVtclwiIDE7XG5cbiAgLmVzc2F5X19mb290bm90ZXMgJiB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKDAgMSAwIDApO1xuICB9XG59XG5cbi5lc3NheV9fZm9vdG5vdGVzIHtcbiAgQGluY2x1ZGUgbWFyZ2luKDQgMCAwIDApO1xuICBAaW5jbHVkZSBwYWRkaW5nKDAgMCAwIDIpO1xuICBAaW5jbHVkZSBjb2x1bW4oMTIpO1xuICBAZXh0ZW5kIC5oNjtcblxuICBAaW5jbHVkZSBtcShzbSkge1xuICAgIEBpbmNsdWRlIG1hcmdpbig4IDAgMCAwKTtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDAgMCAwIDQpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKHhsKSB7XG4gICAgQGluY2x1ZGUgY29sdW1uKDgpO1xuICB9XG5cbiAgJiA+IHA6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0O1xuICB9XG59XG4iLCIuZGlzY3Vzc2lvbiB7XG4gIEBpbmNsdWRlIHBhZGRpbmcoMSAwKTtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luOiAkbGluZS1oZWlnaHQgMDtcblxuICBAaW5jbHVkZSBtcShzbSkge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoMSAyKTtcbiAgICBtYXJnaW46ICRsaW5lLWhlaWdodCAtODBweCAkbGluZS1oZWlnaHQgODBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1xKHhsKSB7XG4gICAgbWFyZ2luOiAkbGluZS1oZWlnaHQgY2FsYygtMjUlICsgNDBweCkgJGxpbmUtaGVpZ2h0IGNhbGMoMjUlIC0gNDBweCk7XG4gIH1cblxuICAmLmxhc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuLmRpc2N1c3Npb25fX2l0ZW0ge1xuICBAZXh0ZW5kIC50cmFuc2l0aW9uO1xuICBAaW5jbHVkZSBwYWRkaW5nKDEgMS4yKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYmFja2dyb3VuZDogY29sb3IoZ3JleSk7XG5cbiAgQGluY2x1ZGUgbXEoc20pIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDEgMik7XG4gIH1cblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIEBpbmNsdWRlIG1hcmdpbigwIDAgMSAwKTtcbiAgfVxuXG4gICYuaGlkZGVuIHtcbiAgICBvcGFjaXR5OiAwLjI1O1xuICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gIH1cbn1cblxuLmRpc2N1c3Npb25fX3RpdGxlIHtcbiAgQGV4dGVuZCAuaDQ7XG59XG5cbi5kaXNjdXNzaW9uX19jb2xsYWJvcmF0b3Ige1xuICBtYXJnaW4tdG9wOiAkbGluZS1oZWlnaHQ7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjb2xvcjogcmdiYSh2YXIoLS11c2VyKSwgMSk7XG59XG5cbi5kaXNjdXNzaW9uX19kYXRlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0O1xufVxuXG4uZGlzY3Vzc2lvbl9fdGV4dCB7XG4gIHA6bm90KDpsYXN0LWNoaWxkKSxcbiAgZmlndXJlOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodDtcbiAgfVxuXG4gIGZpZ3VyZSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZygwIDAgMCA0KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gbWF4LXdpZHRoOiAxMDAlO1xuICAgIC8vIHdpZHRoOiBhdXRvO1xuICAgIC8vIG1heC1oZWlnaHQ6IDMwdnc7XG4gICAgLy8gaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi5kaXNjdXNzaW9uX19pbWFnZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gIGltZyB7XG4gICAgLy8gbWF4LXdpZHRoOiAxMDAlO1xuICAgIC8vIHdpZHRoOiBhdXRvO1xuICAgIC8vIG1heC1oZWlnaHQ6IDQwdnc7XG4gICAgLy8gaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEodmFyKC0tdXNlciksIDEpO1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodCAvIDI7XG4gICAgfVxuICB9XG59XG5cbi5kaXNjdXNzaW9uX19tZWRpYSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gIGlmcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS11c2VyKSwgMSk7XG5cbiAgICAmLnZpZGVvIHtcbiAgICAgIGhlaWdodDogY2FsYygoMTAwdncgLSA2NHB4KSAqIDAuNTYyNSk7XG5cbiAgICAgIEBpbmNsdWRlIG1xKHNtKSB7XG4gICAgICAgIGhlaWdodDogY2FsYygoMTAwdncgLSAxODBweCkgKiAwLjU2MjUpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtcShtZCkge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoKDEwMHZ3IC0gNDAwcHgpICogMC41NjI1KTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbXEobGcpIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKCgxMDB2dyAtIDQ3MHB4KSAqIDAuNTYyNSk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1xKHhsKSB7XG4gICAgICAgIGhlaWdodDogY2FsYygoMTAwdncgLSAzNzBweCkgKiAwLjY2NjcgKiAwLjU2MjUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQgLyAyO1xuICAgIH1cbiAgfVxufVxuIiwiLnRpbWVsaW5lIHtcbiAgQGV4dGVuZCAudHJhbnNpdGlvbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBtcShzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAmLm9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4udGltZWxpbmVfX2lubmVyIHtcbiAgQGluY2x1ZGUgcGFkZGluZygwIDEpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cblxuLnRpbWVsaW5lX19pdGVtIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiBjYWxjKDAuNzVlbSAtIDFweCk7XG4gICAgaGVpZ2h0OiBjYWxjKDAuNzVlbSAtIDFweCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNWVtO1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICB9XG5cbiAgLm5vLXRvdWNoICY6aG92ZXI6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgfVxufVxuXG4udGltZWxpbmVfX2l0ZW1fX3RpdGxlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi50aW1lbGluZV9fc3BhbiB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLXVzZXIpLCAxKTtcbn1cbiIsIi5maWx0ZXJzIHtcbiAgQGV4dGVuZCAudHJhbnNpdGlvbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBtcShzbSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAmLm9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4uZmlsdGVyc19faW5uZXIge1xuICBAaW5jbHVkZSBwYWRkaW5nKDAgMSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4uZmlsdGVyc19fY29sdW1uIHtcbiAgd2lkdGg6IDUwJTtcbiAgZGlzcGxheTogZmxleDtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoMCAyIDAgMCk7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgY29sb3IoYm9yZGVyKTtcbiAgfVxuXG4gICY6bGFzdC1vZi10eXBlIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKDAgMCAwIDIpO1xuICB9XG5cbiAgJiA+IGRpdiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG4uZmlsdGVyc19faXRlbSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogY2FsYygwLjc1ZW0gLSAxcHgpO1xuICAgIGhlaWdodDogY2FsYygwLjc1ZW0gLSAxcHgpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiAwLjVlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gIH1cblxuICAubm8tdG91Y2ggJjpob3ZlcjpiZWZvcmUsXG4gICYuYWN0aXZlOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogYmxhY2s7XG4gIH1cblxuICAuZmlsdGVyc19fY29sdW1uOmZpcnN0LWNoaWxkICYge1xuICAgIGNvbG9yOiByZ2JhKHZhcigtLXVzZXIpLCAxKTtcblxuICAgIC5uby10b3VjaCAmOmhvdmVyOmJlZm9yZSxcbiAgICAmLmFjdGl2ZTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS11c2VyKSwgMSk7XG4gICAgfVxuICB9XG59XG5cbi5maWx0ZXJzX19yZXNldCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IGNvbG9yKGJvcmRlcik7XG5cbiAgJi5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IGJsYWNrO1xuICB9XG59XG4iLCIubG9naW4ge1xuICBAZXh0ZW5kIC50cmFuc2l0aW9uO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBpbmNsdWRlIG1xKHNtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gICYub3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbi5sb2dpbl9faW5uZXIge1xuICBAaW5jbHVkZSBwYWRkaW5nKDAgMSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuIiwiLmNvbGxhYm9yYXRvcnMge1xuICBAZXh0ZW5kIC50cmFuc2l0aW9uO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICBvcGFjaXR5OiAwO1xuXG4gICYub3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNvbGxhYm9yYXRvcnNfX2lubmVyIHtcbiAgQGluY2x1ZGUgcGFkZGluZygwIDEpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBsaW5lLWhlaWdodDogMS4yNTtcblxuICBwOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodDtcbiAgfVxufVxuXG4uY29sbGFib3JhdG9yc19fdGl0bGUge1xuICBAZXh0ZW5kIC5oNDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKDAgMiAwIDApO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDAuNzVlbTtcbiAgICBoZWlnaHQ6IDAuNzVlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSh2YXIoLS11c2VyKSwgMSk7XG4gICAgYm9yZGVyLXJhZGl1czogMC41ZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgfVxuXG4gIC5uby10b3VjaCAmOmhvdmVyOjpiZWZvcmUsXG4gICYuYWN0aXZlOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tdXNlciksIDEpO1xuICB9XG59XG5cbi5jb2xsYWJvcmF0b3JzX190ZXh0IHtcbiAgQGluY2x1ZGUgcGFkZGluZygxIDAgMiAwKTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDI0cHggKyAwLjc1ZW0pO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogbm9uZTtcblxuICBAaW5jbHVkZSBtcShzbSkge1xuICAgIHdpZHRoOiA2Ni42NjclO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/