/*! Spectre.css v0.5.9 | MIT License | github.com/picturepan2/spectre */
/* Manually forked from Normalize.css */
/* normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
/* Document
   ========================================================================== */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */
}

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

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * 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
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8 (removed).
 */
/**
 * 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. (removed)
 * 2. Correct the odd `em` font sizing in all browsers.
 */
/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0;
}

/**
 * Modify default styling of address.
 */
address {
  font-style: normal;
}

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. (removed)
 */
/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * 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,
pre,
samp {
  font-family: "SF Mono", "Segoe UI Mono", "Roboto Mono", Menlo, Courier, monospace;
  /* 1 (changed) */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-. (Removed)
 */
/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
  font-weight: 400;
  /* (added) */
}

/**
 * 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
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

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

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 (changed) */
  font-size: inherit;
  /* 1 (changed) */
  line-height: inherit;
  /* 1 (changed) */
  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;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * 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 (removed).
 */
/**
 * Change the border, margin, and padding in all browsers (opinionated) (changed).
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/**
 * 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 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
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 and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[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 IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}

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

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

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

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

html {
  box-sizing: border-box;
  font-size: 20px;
  line-height: 1.5;
  -webkit-tap-highlight-color: transparent;
}

body {
  background: #fff;
  color: #3b4351;
  font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
  font-size: 0.8rem;
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
}

a {
  color: #5755d9;
  outline: none;
  text-decoration: none;
}

a:focus {
  box-shadow: 0 0 0 0.1rem rgba(87, 85, 217, 0.2);
}

a:focus, a:hover, a:active, a.active {
  color: #302ecd;
  text-decoration: underline;
}

a:visited {
  color: #807fe2;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: inherit;
  font-weight: 500;
  line-height: 1.2;
  margin-bottom: .5em;
  margin-top: 0;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-weight: 500;
}

h1,
.h1 {
  font-size: 2rem;
}

h2,
.h2 {
  font-size: 1.6rem;
}

h3,
.h3 {
  font-size: 1.4rem;
}

h4,
.h4 {
  font-size: 1.2rem;
}

h5,
.h5 {
  font-size: 1rem;
}

h6,
.h6 {
  font-size: .8rem;
}

p {
  margin: 0 0 1.2rem;
}

a,
ins,
u {
  text-decoration-skip: ink edges;
}

abbr[title] {
  border-bottom: 0.05rem dotted;
  cursor: help;
  text-decoration: none;
}

kbd {
  border-radius: 0.1rem;
  line-height: 1.25;
  padding: .1rem .2rem;
  background: #303742;
  color: #fff;
  font-size: 0.7rem;
}

mark {
  background: #ffe9b3;
  color: #3b4351;
  border-bottom: 0.05rem solid #ffd367;
  border-radius: 0.1rem;
  padding: 0.05rem 0.1rem 0;
}

blockquote {
  border-left: 0.1rem solid #dadee4;
  margin-left: 0;
  padding: 0.4rem 0.8rem;
}

blockquote p:last-child {
  margin-bottom: 0;
}

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

ul ul,
ul ol,
ol ul,
ol ol {
  margin: 0.8rem 0 0.8rem 0.8rem;
}

ul li,
ol li {
  margin-top: 0.4rem;
}

ul {
  list-style: disc inside;
}

ul ul {
  list-style-type: circle;
}

ol {
  list-style: decimal inside;
}

ol ol {
  list-style-type: lower-alpha;
}

dl dt {
  font-weight: bold;
}

dl dd {
  margin: 0.4rem 0 0.8rem 0;
}

html:lang(zh),
html:lang(zh-Hans),
.lang-zh,
.lang-zh-hans {
  font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", sans-serif;
}

html:lang(zh-Hant),
.lang-zh-hant {
  font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang TC", "Hiragino Sans CNS", "Microsoft JhengHei", "Helvetica Neue", sans-serif;
}

html:lang(ja),
.lang-ja {
  font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Sans", "Hiragino Kaku Gothic Pro", "Yu Gothic", YuGothic, Meiryo, "Helvetica Neue", sans-serif;
}

html:lang(ko),
.lang-ko {
  font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Malgun Gothic", "Helvetica Neue", sans-serif;
}

:lang(zh) ins,
:lang(zh) u,
:lang(ja) ins,
:lang(ja) u,
.lang-cjk ins,
.lang-cjk u {
  border-bottom: 0.05rem solid;
  text-decoration: none;
}

:lang(zh) del + del,
:lang(zh) del + s,
:lang(zh) ins + ins,
:lang(zh) ins + u,
:lang(zh) s + del,
:lang(zh) s + s,
:lang(zh) u + ins,
:lang(zh) u + u,
:lang(ja) del + del,
:lang(ja) del + s,
:lang(ja) ins + ins,
:lang(ja) ins + u,
:lang(ja) s + del,
:lang(ja) s + s,
:lang(ja) u + ins,
:lang(ja) u + u,
.lang-cjk del + del,
.lang-cjk del + s,
.lang-cjk ins + ins,
.lang-cjk ins + u,
.lang-cjk s + del,
.lang-cjk s + s,
.lang-cjk u + ins,
.lang-cjk u + u {
  margin-left: .125em;
}

.table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  text-align: left;
}

.table.table-striped tbody tr:nth-of-type(odd) {
  background: #f7f8f9;
}

.table tbody tr.active, .table.table-striped tbody tr.active {
  background: #eef0f3;
}

.table.table-hover tbody tr:hover {
  background: #eef0f3;
}

.table.table-scroll {
  display: block;
  overflow-x: auto;
  padding-bottom: .75rem;
  white-space: nowrap;
}

.table td,
.table th {
  border-bottom: 0.05rem solid #dadee4;
  padding: 0.6rem 0.4rem;
}

.table th {
  border-bottom-width: 0.1rem;
}

.btn {
  appearance: none;
  background: #fff;
  border: 0.05rem solid #5755d9;
  border-radius: 0.1rem;
  color: #5755d9;
  cursor: pointer;
  display: inline-block;
  font-size: 0.8rem;
  height: 1.8rem;
  line-height: 1.2rem;
  outline: none;
  padding: 0.25rem 0.4rem;
  text-align: center;
  text-decoration: none;
  transition: background .2s, border .2s, box-shadow .2s, color .2s;
  user-select: none;
  vertical-align: middle;
  white-space: nowrap;
}

.btn:focus {
  box-shadow: 0 0 0 0.1rem rgba(87, 85, 217, 0.2);
}

.btn:focus, .btn:hover {
  background: #f1f1fc;
  border-color: #4b48d6;
  text-decoration: none;
}

.btn:active, .btn.active {
  background: #4b48d6;
  border-color: #3634d2;
  color: #fff;
  text-decoration: none;
}

.btn:active.loading::after, .btn.active.loading::after {
  border-bottom-color: #fff;
  border-left-color: #fff;
}

.btn[disabled], .btn:disabled, .btn.disabled {
  cursor: default;
  opacity: .5;
  pointer-events: none;
}

.btn.btn-primary {
  background: #5755d9;
  border-color: #4b48d6;
  color: #fff;
}

.btn.btn-primary:focus, .btn.btn-primary:hover {
  background: #4240d4;
  border-color: #3634d2;
  color: #fff;
}

.btn.btn-primary:active, .btn.btn-primary.active {
  background: #3a38d2;
  border-color: #302ecd;
  color: #fff;
}

.btn.btn-primary.loading::after {
  border-bottom-color: #fff;
  border-left-color: #fff;
}

.btn.btn-success {
  background: #32b643;
  border-color: #2faa3f;
  color: #fff;
}

.btn.btn-success:focus {
  box-shadow: 0 0 0 0.1rem rgba(50, 182, 67, 0.2);
}

.btn.btn-success:focus, .btn.btn-success:hover {
  background: #30ae40;
  border-color: #2da23c;
  color: #fff;
}

.btn.btn-success:active, .btn.btn-success.active {
  background: #2a9a39;
  border-color: #278e34;
  color: #fff;
}

.btn.btn-success.loading::after {
  border-bottom-color: #fff;
  border-left-color: #fff;
}

.btn.btn-error {
  background: #e85600;
  border-color: #d95000;
  color: #fff;
}

.btn.btn-error:focus {
  box-shadow: 0 0 0 0.1rem rgba(232, 86, 0, 0.2);
}

.btn.btn-error:focus, .btn.btn-error:hover {
  background: #de5200;
  border-color: #cf4d00;
  color: #fff;
}

.btn.btn-error:active, .btn.btn-error.active {
  background: #c44900;
  border-color: #b54300;
  color: #fff;
}

.btn.btn-error.loading::after {
  border-bottom-color: #fff;
  border-left-color: #fff;
}

.btn.btn-link {
  background: transparent;
  border-color: transparent;
  color: #5755d9;
}

.btn.btn-link:focus, .btn.btn-link:hover, .btn.btn-link:active, .btn.btn-link.active {
  color: #302ecd;
}

.btn.btn-sm {
  font-size: 0.7rem;
  height: 1.4rem;
  padding: 0.05rem 0.3rem;
}

.btn.btn-lg {
  font-size: 0.9rem;
  height: 2rem;
  padding: 0.35rem 0.6rem;
}

.btn.btn-block {
  display: block;
  width: 100%;
}

.btn.btn-action {
  width: 1.8rem;
  padding-left: 0;
  padding-right: 0;
}

.btn.btn-action.btn-sm {
  width: 1.4rem;
}

.btn.btn-action.btn-lg {
  width: 2rem;
}

.btn.btn-clear {
  background: transparent;
  border: 0;
  color: currentColor;
  height: 1rem;
  line-height: 0.8rem;
  margin-left: 0.2rem;
  margin-right: -2px;
  opacity: 1;
  padding: 0.1rem;
  text-decoration: none;
  width: 1rem;
}

.btn.btn-clear:focus, .btn.btn-clear:hover {
  background: rgba(247, 248, 249, 0.5);
  opacity: .95;
}

.btn.btn-clear::before {
  content: "\2715";
}

.btn-group {
  display: inline-flex;
  flex-wrap: wrap;
}

.btn-group .btn {
  flex: 1 0 auto;
}

.btn-group .btn:first-child:not(:last-child) {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.btn-group .btn:not(:first-child):not(:last-child) {
  border-radius: 0;
  margin-left: -0.05rem;
}

.btn-group .btn:last-child:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
  margin-left: -0.05rem;
}

.btn-group .btn:focus, .btn-group .btn:hover, .btn-group .btn:active, .btn-group .btn.active {
  z-index: 1;
}

.btn-group.btn-group-block {
  display: flex;
}

.btn-group.btn-group-block .btn {
  flex: 1 0 0;
}

.form-group:not(:last-child) {
  margin-bottom: 0.4rem;
}

fieldset {
  margin-bottom: 0.8rem;
}

legend {
  font-size: 0.9rem;
  font-weight: 500;
  margin-bottom: 0.8rem;
}

.form-label {
  display: block;
  line-height: 1.2rem;
  padding: 0.3rem 0;
}

.form-label.label-sm {
  font-size: 0.7rem;
  padding: 0.1rem 0;
}

.form-label.label-lg {
  font-size: 0.9rem;
  padding: 0.4rem 0;
}

.form-input {
  appearance: none;
  background: #fff;
  background-image: none;
  border: 0.05rem solid #bcc3ce;
  border-radius: 0.1rem;
  color: #3b4351;
  display: block;
  font-size: 0.8rem;
  height: 1.8rem;
  line-height: 1.2rem;
  max-width: 100%;
  outline: none;
  padding: 0.25rem 0.4rem;
  position: relative;
  transition: background .2s, border .2s, box-shadow .2s, color .2s;
  width: 100%;
}

.form-input:focus {
  box-shadow: 0 0 0 0.1rem rgba(87, 85, 217, 0.2);
  border-color: #5755d9;
}

.form-input::placeholder {
  color: #bcc3ce;
}

.form-input.input-sm {
  font-size: 0.7rem;
  height: 1.4rem;
  padding: 0.05rem 0.3rem;
}

.form-input.input-lg {
  font-size: 0.9rem;
  height: 2rem;
  padding: 0.35rem 0.6rem;
}

.form-input.input-inline {
  display: inline-block;
  vertical-align: middle;
  width: auto;
}

.form-input[type="file"] {
  height: auto;
}

textarea.form-input, textarea.form-input.input-lg, textarea.form-input.input-sm {
  height: auto;
}

.form-input-hint {
  color: #bcc3ce;
  font-size: 0.7rem;
  margin-top: 0.2rem;
}

.has-success .form-input-hint,
.is-success + .form-input-hint {
  color: #32b643;
}

.has-error .form-input-hint,
.is-error + .form-input-hint {
  color: #e85600;
}

.form-select {
  appearance: none;
  border: 0.05rem solid #bcc3ce;
  border-radius: 0.1rem;
  color: inherit;
  font-size: 0.8rem;
  height: 1.8rem;
  line-height: 1.2rem;
  outline: none;
  padding: 0.25rem 0.4rem;
  vertical-align: middle;
  width: 100%;
  background: #fff;
}

.form-select:focus {
  box-shadow: 0 0 0 0.1rem rgba(87, 85, 217, 0.2);
  border-color: #5755d9;
}

.form-select::-ms-expand {
  display: none;
}

.form-select.select-sm {
  font-size: 0.7rem;
  height: 1.4rem;
  padding: 0.05rem 1.1rem 0.05rem 0.3rem;
}

.form-select.select-lg {
  font-size: 0.9rem;
  height: 2rem;
  padding: 0.35rem 1.4rem 0.35rem 0.6rem;
}

.form-select[size], .form-select[multiple] {
  height: auto;
  padding: 0.25rem 0.4rem;
}

.form-select[size] option, .form-select[multiple] option {
  padding: 0.1rem 0.2rem;
}

.form-select:not([multiple]):not([size]) {
  background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%204%205'%3E%3Cpath%20fill='%23667189'%20d='M2%200L0%202h4zm0%205L0%203h4z'/%3E%3C/svg%3E") no-repeat right 0.35rem center/0.4rem 0.5rem;
  padding-right: 1.2rem;
}

.has-icon-left,
.has-icon-right {
  position: relative;
}

.has-icon-left .form-icon,
.has-icon-right .form-icon {
  height: 0.8rem;
  margin: 0 0.25rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 0.8rem;
  z-index: 2;
}

.has-icon-left .form-icon {
  left: 0.05rem;
}

.has-icon-left .form-input {
  padding-left: 1.3rem;
}

.has-icon-right .form-icon {
  right: 0.05rem;
}

.has-icon-right .form-input {
  padding-right: 1.3rem;
}

.form-checkbox,
.form-radio,
.form-switch {
  display: block;
  line-height: 1.2rem;
  margin: 0.2rem 0;
  min-height: 1.4rem;
  padding: 0.1rem 0.4rem 0.1rem 1.2rem;
  position: relative;
}

.form-checkbox input,
.form-radio input,
.form-switch input {
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  position: absolute;
  width: 1px;
}

.form-checkbox input:focus + .form-icon,
.form-radio input:focus + .form-icon,
.form-switch input:focus + .form-icon {
  box-shadow: 0 0 0 0.1rem rgba(87, 85, 217, 0.2);
  border-color: #5755d9;
}

.form-checkbox input:checked + .form-icon,
.form-radio input:checked + .form-icon,
.form-switch input:checked + .form-icon {
  background: #5755d9;
  border-color: #5755d9;
}

.form-checkbox .form-icon,
.form-radio .form-icon,
.form-switch .form-icon {
  border: 0.05rem solid #bcc3ce;
  cursor: pointer;
  display: inline-block;
  position: absolute;
  transition: background .2s, border .2s, box-shadow .2s, color .2s;
}

.form-checkbox.input-sm,
.form-radio.input-sm,
.form-switch.input-sm {
  font-size: 0.7rem;
  margin: 0;
}

.form-checkbox.input-lg,
.form-radio.input-lg,
.form-switch.input-lg {
  font-size: 0.9rem;
  margin: 0.3rem 0;
}

.form-checkbox .form-icon,
.form-radio .form-icon {
  background: #fff;
  height: 0.8rem;
  left: 0;
  top: 0.3rem;
  width: 0.8rem;
}

.form-checkbox input:active + .form-icon,
.form-radio input:active + .form-icon {
  background: #eef0f3;
}

.form-checkbox .form-icon {
  border-radius: 0.1rem;
}

.form-checkbox input:checked + .form-icon::before {
  background-clip: padding-box;
  border: 0.1rem solid #fff;
  border-left-width: 0;
  border-top-width: 0;
  content: "";
  height: 9px;
  left: 50%;
  margin-left: -3px;
  margin-top: -6px;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 6px;
}

.form-checkbox input:indeterminate + .form-icon {
  background: #5755d9;
  border-color: #5755d9;
}

.form-checkbox input:indeterminate + .form-icon::before {
  background: #fff;
  content: "";
  height: 2px;
  left: 50%;
  margin-left: -5px;
  margin-top: -1px;
  position: absolute;
  top: 50%;
  width: 10px;
}

.form-radio .form-icon {
  border-radius: 50%;
}

.form-radio input:checked + .form-icon::before {
  background: #fff;
  border-radius: 50%;
  content: "";
  height: 6px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 6px;
}

.form-switch {
  padding-left: 2rem;
}

.form-switch .form-icon {
  background: #bcc3ce;
  background-clip: padding-box;
  border-radius: 0.45rem;
  height: 0.9rem;
  left: 0;
  top: 0.25rem;
  width: 1.6rem;
}

.form-switch .form-icon::before {
  background: #fff;
  border-radius: 50%;
  content: "";
  display: block;
  height: 0.8rem;
  left: 0;
  position: absolute;
  top: 0;
  transition: background .2s, border .2s, box-shadow .2s, color .2s, left .2s;
  width: 0.8rem;
}

.form-switch input:checked + .form-icon::before {
  left: 14px;
}

.form-switch input:active + .form-icon::before {
  background: #f7f8f9;
}

.input-group {
  display: flex;
}

.input-group .input-group-addon {
  background: #f7f8f9;
  border: 0.05rem solid #bcc3ce;
  border-radius: 0.1rem;
  line-height: 1.2rem;
  padding: 0.25rem 0.4rem;
  white-space: nowrap;
}

.input-group .input-group-addon.addon-sm {
  font-size: 0.7rem;
  padding: 0.05rem 0.3rem;
}

.input-group .input-group-addon.addon-lg {
  font-size: 0.9rem;
  padding: 0.35rem 0.6rem;
}

.input-group .form-input,
.input-group .form-select {
  flex: 1 1 auto;
  width: 1%;
}

.input-group .input-group-btn {
  z-index: 1;
}

.input-group .form-input:first-child:not(:last-child),
.input-group .form-select:first-child:not(:last-child),
.input-group .input-group-addon:first-child:not(:last-child),
.input-group .input-group-btn:first-child:not(:last-child) {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}

.input-group .form-input:not(:first-child):not(:last-child),
.input-group .form-select:not(:first-child):not(:last-child),
.input-group .input-group-addon:not(:first-child):not(:last-child),
.input-group .input-group-btn:not(:first-child):not(:last-child) {
  border-radius: 0;
  margin-left: -0.05rem;
}

.input-group .form-input:last-child:not(:first-child),
.input-group .form-select:last-child:not(:first-child),
.input-group .input-group-addon:last-child:not(:first-child),
.input-group .input-group-btn:last-child:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
  margin-left: -0.05rem;
}

.input-group .form-input:focus,
.input-group .form-select:focus,
.input-group .input-group-addon:focus,
.input-group .input-group-btn:focus {
  z-index: 2;
}

.input-group .form-select {
  width: auto;
}

.input-group.input-inline {
  display: inline-flex;
}

.has-success .form-input, .form-input.is-success, .has-success
.form-select,
.form-select.is-success {
  background: #f9fdfa;
  border-color: #32b643;
}

.has-success .form-input:focus, .form-input.is-success:focus, .has-success
.form-select:focus,
.form-select.is-success:focus {
  box-shadow: 0 0 0 0.1rem rgba(50, 182, 67, 0.2);
}

.has-error .form-input, .form-input.is-error, .has-error
.form-select,
.form-select.is-error {
  background: #fffaf7;
  border-color: #e85600;
}

.has-error .form-input:focus, .form-input.is-error:focus, .has-error
.form-select:focus,
.form-select.is-error:focus {
  box-shadow: 0 0 0 0.1rem rgba(232, 86, 0, 0.2);
}

.has-error .form-checkbox .form-icon, .form-checkbox.is-error .form-icon, .has-error
.form-radio .form-icon,
.form-radio.is-error .form-icon, .has-error
.form-switch .form-icon,
.form-switch.is-error .form-icon {
  border-color: #e85600;
}

.has-error .form-checkbox input:checked + .form-icon, .form-checkbox.is-error input:checked + .form-icon, .has-error
.form-radio input:checked + .form-icon,
.form-radio.is-error input:checked + .form-icon, .has-error
.form-switch input:checked + .form-icon,
.form-switch.is-error input:checked + .form-icon {
  background: #e85600;
  border-color: #e85600;
}

.has-error .form-checkbox input:focus + .form-icon, .form-checkbox.is-error input:focus + .form-icon, .has-error
.form-radio input:focus + .form-icon,
.form-radio.is-error input:focus + .form-icon, .has-error
.form-switch input:focus + .form-icon,
.form-switch.is-error input:focus + .form-icon {
  box-shadow: 0 0 0 0.1rem rgba(232, 86, 0, 0.2);
  border-color: #e85600;
}

.has-error .form-checkbox input:indeterminate + .form-icon, .form-checkbox.is-error input:indeterminate + .form-icon {
  background: #e85600;
  border-color: #e85600;
}

.form-input:not(:placeholder-shown):invalid {
  border-color: #e85600;
}

.form-input:not(:placeholder-shown):invalid:focus {
  box-shadow: 0 0 0 0.1rem rgba(232, 86, 0, 0.2);
  background: #fffaf7;
}

.form-input:not(:placeholder-shown):invalid + .form-input-hint {
  color: #e85600;
}

.form-input:disabled, .form-input.disabled,
.form-select:disabled,
.form-select.disabled {
  background-color: #eef0f3;
  cursor: not-allowed;
  opacity: .5;
}

.form-input[readonly] {
  background-color: #f7f8f9;
}

input:disabled + .form-icon, input.disabled + .form-icon {
  background: #eef0f3;
  cursor: not-allowed;
  opacity: .5;
}

.form-switch input:disabled + .form-icon::before, .form-switch input.disabled + .form-icon::before {
  background: #fff;
}

.form-horizontal {
  padding: 0.4rem 0;
}

.form-horizontal .form-group {
  display: flex;
  flex-wrap: wrap;
}

.form-inline {
  display: inline-block;
}

.label {
  border-radius: 0.1rem;
  line-height: 1.25;
  padding: .1rem .2rem;
  background: #eef0f3;
  color: #455060;
  display: inline-block;
}

.label.label-rounded {
  border-radius: 5rem;
  padding-left: .4rem;
  padding-right: .4rem;
}

.label.label-primary {
  background: #5755d9;
  color: #fff;
}

.label.label-secondary {
  background: #f1f1fc;
  color: #5755d9;
}

.label.label-success {
  background: #32b643;
  color: #fff;
}

.label.label-warning {
  background: #ffb700;
  color: #fff;
}

.label.label-error {
  background: #e85600;
  color: #fff;
}

code {
  border-radius: 0.1rem;
  line-height: 1.25;
  padding: .1rem .2rem;
  background: #fcf2f2;
  color: #d73e48;
  font-size: 85%;
}

.code {
  border-radius: 0.1rem;
  color: #3b4351;
  position: relative;
}

.code::before {
  color: #bcc3ce;
  content: attr(data-lang);
  font-size: 0.7rem;
  position: absolute;
  right: 0.4rem;
  top: 0.1rem;
}

.code code {
  background: #f7f8f9;
  color: inherit;
  display: block;
  line-height: 1.5;
  overflow-x: auto;
  padding: 1rem;
  width: 100%;
}

.img-responsive {
  display: block;
  height: auto;
  max-width: 100%;
}

.img-fit-cover {
  object-fit: cover;
}

.img-fit-contain {
  object-fit: contain;
}

.video-responsive {
  display: block;
  overflow: hidden;
  padding: 0;
  position: relative;
  width: 100%;
}

.video-responsive::before {
  content: "";
  display: block;
  padding-bottom: 56.25%;
}

.video-responsive iframe,
.video-responsive object,
.video-responsive embed {
  border: 0;
  bottom: 0;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

video.video-responsive {
  height: auto;
  max-width: 100%;
}

video.video-responsive::before {
  content: none;
}

.video-responsive-4-3::before {
  padding-bottom: 75%;
}

.video-responsive-1-1::before {
  padding-bottom: 100%;
}

.figure {
  margin: 0 0 0.4rem 0;
}

.figure .figure-caption {
  color: #66758c;
  margin-top: 0.4rem;
}

.container {
  margin-left: auto;
  margin-right: auto;
  padding-left: 0.4rem;
  padding-right: 0.4rem;
  width: 100%;
}

.container.grid-xl {
  max-width: 1296px;
}

.container.grid-lg {
  max-width: 976px;
}

.container.grid-md {
  max-width: 856px;
}

.container.grid-sm {
  max-width: 616px;
}

.container.grid-xs {
  max-width: 496px;
}

.show-xs,
.show-sm,
.show-md,
.show-lg,
.show-xl {
  display: none !important;
}

.cols,
.columns {
  display: flex;
  flex-wrap: wrap;
  margin-left: -0.4rem;
  margin-right: -0.4rem;
}

.cols.col-gapless,
.columns.col-gapless {
  margin-left: 0;
  margin-right: 0;
}

.cols.col-gapless > .column,
.columns.col-gapless > .column {
  padding-left: 0;
  padding-right: 0;
}

.cols.col-oneline,
.columns.col-oneline {
  flex-wrap: nowrap;
  overflow-x: auto;
}

[class~="col-"],
.column {
  flex: 1;
  max-width: 100%;
  padding-left: 0.4rem;
  padding-right: 0.4rem;
}

[class~="col-"].col-12, [class~="col-"].col-11, [class~="col-"].col-10, [class~="col-"].col-9, [class~="col-"].col-8, [class~="col-"].col-7, [class~="col-"].col-6, [class~="col-"].col-5, [class~="col-"].col-4, [class~="col-"].col-3, [class~="col-"].col-2, [class~="col-"].col-1, [class~="col-"].col-auto,
.column.col-12,
.column.col-11,
.column.col-10,
.column.col-9,
.column.col-8,
.column.col-7,
.column.col-6,
.column.col-5,
.column.col-4,
.column.col-3,
.column.col-2,
.column.col-1,
.column.col-auto {
  flex: none;
}

.col-12 {
  width: 100%;
}

.col-11 {
  width: 91.66666667%;
}

.col-10 {
  width: 83.33333333%;
}

.col-9 {
  width: 75%;
}

.col-8 {
  width: 66.66666667%;
}

.col-7 {
  width: 58.33333333%;
}

.col-6 {
  width: 50%;
}

.col-5 {
  width: 41.66666667%;
}

.col-4 {
  width: 33.33333333%;
}

.col-3 {
  width: 25%;
}

.col-2 {
  width: 16.66666667%;
}

.col-1 {
  width: 8.33333333%;
}

.col-auto {
  flex: 0 0 auto;
  max-width: none;
  width: auto;
}

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

.col-ml-auto {
  margin-left: auto;
}

.col-mr-auto {
  margin-right: auto;
}

@media (max-width: 1280px) {
  .col-xl-12,
  .col-xl-11,
  .col-xl-10,
  .col-xl-9,
  .col-xl-8,
  .col-xl-7,
  .col-xl-6,
  .col-xl-5,
  .col-xl-4,
  .col-xl-3,
  .col-xl-2,
  .col-xl-1,
  .col-xl-auto {
    flex: none;
  }
  .col-xl-12 {
    width: 100%;
  }
  .col-xl-11 {
    width: 91.66666667%;
  }
  .col-xl-10 {
    width: 83.33333333%;
  }
  .col-xl-9 {
    width: 75%;
  }
  .col-xl-8 {
    width: 66.66666667%;
  }
  .col-xl-7 {
    width: 58.33333333%;
  }
  .col-xl-6 {
    width: 50%;
  }
  .col-xl-5 {
    width: 41.66666667%;
  }
  .col-xl-4 {
    width: 33.33333333%;
  }
  .col-xl-3 {
    width: 25%;
  }
  .col-xl-2 {
    width: 16.66666667%;
  }
  .col-xl-1 {
    width: 8.33333333%;
  }
  .col-xl-auto {
    width: auto;
  }
  .hide-xl {
    display: none !important;
  }
  .show-xl {
    display: block !important;
  }
}

@media (max-width: 960px) {
  .col-lg-12,
  .col-lg-11,
  .col-lg-10,
  .col-lg-9,
  .col-lg-8,
  .col-lg-7,
  .col-lg-6,
  .col-lg-5,
  .col-lg-4,
  .col-lg-3,
  .col-lg-2,
  .col-lg-1,
  .col-lg-auto {
    flex: none;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-11 {
    width: 91.66666667%;
  }
  .col-lg-10 {
    width: 83.33333333%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-8 {
    width: 66.66666667%;
  }
  .col-lg-7 {
    width: 58.33333333%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-5 {
    width: 41.66666667%;
  }
  .col-lg-4 {
    width: 33.33333333%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-2 {
    width: 16.66666667%;
  }
  .col-lg-1 {
    width: 8.33333333%;
  }
  .col-lg-auto {
    width: auto;
  }
  .hide-lg {
    display: none !important;
  }
  .show-lg {
    display: block !important;
  }
}

@media (max-width: 840px) {
  .col-md-12,
  .col-md-11,
  .col-md-10,
  .col-md-9,
  .col-md-8,
  .col-md-7,
  .col-md-6,
  .col-md-5,
  .col-md-4,
  .col-md-3,
  .col-md-2,
  .col-md-1,
  .col-md-auto {
    flex: none;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-md-1 {
    width: 8.33333333%;
  }
  .col-md-auto {
    width: auto;
  }
  .hide-md {
    display: none !important;
  }
  .show-md {
    display: block !important;
  }
}

@media (max-width: 600px) {
  .col-sm-12,
  .col-sm-11,
  .col-sm-10,
  .col-sm-9,
  .col-sm-8,
  .col-sm-7,
  .col-sm-6,
  .col-sm-5,
  .col-sm-4,
  .col-sm-3,
  .col-sm-2,
  .col-sm-1,
  .col-sm-auto {
    flex: none;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  .col-sm-1 {
    width: 8.33333333%;
  }
  .col-sm-auto {
    width: auto;
  }
  .hide-sm {
    display: none !important;
  }
  .show-sm {
    display: block !important;
  }
}

@media (max-width: 480px) {
  .col-xs-12,
  .col-xs-11,
  .col-xs-10,
  .col-xs-9,
  .col-xs-8,
  .col-xs-7,
  .col-xs-6,
  .col-xs-5,
  .col-xs-4,
  .col-xs-3,
  .col-xs-2,
  .col-xs-1,
  .col-xs-auto {
    flex: none;
  }
  .col-xs-12 {
    width: 100%;
  }
  .col-xs-11 {
    width: 91.66666667%;
  }
  .col-xs-10 {
    width: 83.33333333%;
  }
  .col-xs-9 {
    width: 75%;
  }
  .col-xs-8 {
    width: 66.66666667%;
  }
  .col-xs-7 {
    width: 58.33333333%;
  }
  .col-xs-6 {
    width: 50%;
  }
  .col-xs-5 {
    width: 41.66666667%;
  }
  .col-xs-4 {
    width: 33.33333333%;
  }
  .col-xs-3 {
    width: 25%;
  }
  .col-xs-2 {
    width: 16.66666667%;
  }
  .col-xs-1 {
    width: 8.33333333%;
  }
  .col-xs-auto {
    width: auto;
  }
  .hide-xs {
    display: none !important;
  }
  .show-xs {
    display: block !important;
  }
}

.hero {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding-bottom: 4rem;
  padding-top: 4rem;
}

.hero.hero-sm {
  padding-bottom: 2rem;
  padding-top: 2rem;
}

.hero.hero-lg {
  padding-bottom: 8rem;
  padding-top: 8rem;
}

.hero .hero-body {
  padding: 0.4rem;
}

.navbar {
  align-items: stretch;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.navbar .navbar-section {
  align-items: center;
  display: flex;
  flex: 1 0 0;
}

.navbar .navbar-section:not(:first-child):last-child {
  justify-content: flex-end;
}

.navbar .navbar-center {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
}

.navbar .navbar-brand {
  font-size: 0.9rem;
  text-decoration: none;
}

.accordion input:checked ~ .accordion-header > .icon:first-child, .accordion[open] .accordion-header > .icon:first-child {
  transform: rotate(90deg);
}

.accordion input:checked ~ .accordion-body, .accordion[open] .accordion-body {
  max-height: 50rem;
}

.accordion .accordion-header {
  display: block;
  padding: 0.2rem 0.4rem;
}

.accordion .accordion-header .icon {
  transition: transform .25s;
}

.accordion .accordion-body {
  margin-bottom: 0.4rem;
  max-height: 0;
  overflow: hidden;
  transition: max-height .25s;
}

summary.accordion-header::-webkit-details-marker {
  display: none;
}

.avatar {
  font-size: 0.8rem;
  height: 1.6rem;
  width: 1.6rem;
  background: #5755d9;
  border-radius: 50%;
  color: rgba(255, 255, 255, 0.85);
  display: inline-block;
  font-weight: 300;
  line-height: 1.25;
  margin: 0;
  position: relative;
  vertical-align: middle;
}

.avatar.avatar-xs {
  font-size: 0.4rem;
  height: 0.8rem;
  width: 0.8rem;
}

.avatar.avatar-sm {
  font-size: 0.6rem;
  height: 1.2rem;
  width: 1.2rem;
}

.avatar.avatar-lg {
  font-size: 1.2rem;
  height: 2.4rem;
  width: 2.4rem;
}

.avatar.avatar-xl {
  font-size: 1.6rem;
  height: 3.2rem;
  width: 3.2rem;
}

.avatar img {
  border-radius: 50%;
  height: 100%;
  position: relative;
  width: 100%;
  z-index: 1;
}

.avatar .avatar-icon,
.avatar .avatar-presence {
  background: #fff;
  bottom: 14.64%;
  height: 50%;
  padding: 0.1rem;
  position: absolute;
  right: 14.64%;
  transform: translate(50%, 50%);
  width: 50%;
  z-index: 2;
}

.avatar .avatar-presence {
  background: #bcc3ce;
  box-shadow: 0 0 0 0.1rem #fff;
  border-radius: 50%;
  height: .5em;
  width: .5em;
}

.avatar .avatar-presence.online {
  background: #32b643;
}

.avatar .avatar-presence.busy {
  background: #e85600;
}

.avatar .avatar-presence.away {
  background: #ffb700;
}

.avatar[data-initial]::before {
  color: currentColor;
  content: attr(data-initial);
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}

.badge {
  position: relative;
  white-space: nowrap;
}

.badge[data-badge]::after, .badge:not([data-badge])::after {
  background: #5755d9;
  background-clip: padding-box;
  border-radius: .5rem;
  box-shadow: 0 0 0 0.1rem #fff;
  color: #fff;
  content: attr(data-badge);
  display: inline-block;
  transform: translate(-0.05rem, -0.5rem);
}

.badge[data-badge]::after {
  font-size: 0.7rem;
  height: .9rem;
  line-height: 1;
  min-width: .9rem;
  padding: .1rem .2rem;
  text-align: center;
  white-space: nowrap;
}

.badge:not([data-badge])::after, .badge[data-badge=""]::after {
  height: 6px;
  min-width: 6px;
  padding: 0;
  width: 6px;
}

.badge.btn::after {
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%, -50%);
}

.badge.avatar::after {
  position: absolute;
  top: 14.64%;
  right: 14.64%;
  transform: translate(50%, -50%);
  z-index: 100;
}

.breadcrumb {
  list-style: none;
  margin: 0.2rem 0;
  padding: 0.2rem 0;
}

.breadcrumb .breadcrumb-item {
  color: #66758c;
  display: inline-block;
  margin: 0;
  padding: 0.2rem 0;
}

.breadcrumb .breadcrumb-item:not(:last-child) {
  margin-right: 0.2rem;
}

.breadcrumb .breadcrumb-item:not(:last-child) a {
  color: #66758c;
}

.breadcrumb .breadcrumb-item:not(:first-child)::before {
  color: #66758c;
  content: "/";
  padding-right: 0.4rem;
}

.bar {
  background: #eef0f3;
  border-radius: 0.1rem;
  display: flex;
  flex-wrap: nowrap;
  height: 0.8rem;
  width: 100%;
}

.bar.bar-sm {
  height: 0.2rem;
}

.bar .bar-item {
  background: #5755d9;
  color: #fff;
  display: block;
  font-size: 0.7rem;
  flex-shrink: 0;
  line-height: 0.8rem;
  height: 100%;
  position: relative;
  text-align: center;
  width: 0;
}

.bar .bar-item:first-child {
  border-bottom-left-radius: 0.1rem;
  border-top-left-radius: 0.1rem;
}

.bar .bar-item:last-child {
  border-bottom-right-radius: 0.1rem;
  border-top-right-radius: 0.1rem;
  flex-shrink: 1;
}

.bar-slider {
  height: 0.1rem;
  margin: 0.4rem 0;
  position: relative;
}

.bar-slider .bar-item {
  left: 0;
  padding: 0;
  position: absolute;
}

.bar-slider .bar-item:not(:last-child):first-child {
  background: #eef0f3;
  z-index: 1;
}

.bar-slider .bar-slider-btn {
  background: #5755d9;
  border: 0;
  border-radius: 50%;
  height: 0.6rem;
  padding: 0;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(50%, -50%);
  width: 0.6rem;
}

.bar-slider .bar-slider-btn:active {
  box-shadow: 0 0 0 0.1rem #5755d9;
}

.card {
  background: #fff;
  border: 0.05rem solid #dadee4;
  border-radius: 0.1rem;
  display: flex;
  flex-direction: column;
}

.card .card-header,
.card .card-body,
.card .card-footer {
  padding: 0.8rem;
  padding-bottom: 0;
}

.card .card-header:last-child,
.card .card-body:last-child,
.card .card-footer:last-child {
  padding-bottom: 0.8rem;
}

.card .card-body {
  flex: 1 1 auto;
}

.card .card-image {
  padding-top: 0.8rem;
}

.card .card-image:first-child {
  padding-top: 0;
}

.card .card-image:first-child img {
  border-top-left-radius: 0.1rem;
  border-top-right-radius: 0.1rem;
}

.card .card-image:last-child img {
  border-bottom-left-radius: 0.1rem;
  border-bottom-right-radius: 0.1rem;
}

.chip {
  align-items: center;
  background: #eef0f3;
  border-radius: 5rem;
  display: inline-flex;
  font-size: 90%;
  height: 1.2rem;
  line-height: 0.8rem;
  margin: 0.1rem;
  max-width: 320px;
  overflow: hidden;
  padding: 0.2rem 0.4rem;
  text-decoration: none;
  text-overflow: ellipsis;
  vertical-align: middle;
  white-space: nowrap;
}

.chip.active {
  background: #5755d9;
  color: #fff;
}

.chip .avatar {
  margin-left: -0.4rem;
  margin-right: 0.2rem;
}

.chip .btn-clear {
  border-radius: 50%;
  transform: scale(0.75);
}

.dropdown {
  display: inline-block;
  position: relative;
}

.dropdown .menu {
  animation: slide-down .15s ease 1;
  display: none;
  left: 0;
  max-height: 50vh;
  overflow-y: auto;
  position: absolute;
  top: 100%;
}

.dropdown.dropdown-right .menu {
  left: auto;
  right: 0;
}

.dropdown.active .menu,
.dropdown .dropdown-toggle:focus + .menu,
.dropdown .menu:hover {
  display: block;
}

.dropdown .btn-group .dropdown-toggle:nth-last-child(2) {
  border-bottom-right-radius: 0.1rem;
  border-top-right-radius: 0.1rem;
}

.empty {
  background: #f7f8f9;
  border-radius: 0.1rem;
  color: #66758c;
  text-align: center;
  padding: 3.2rem 1.6rem;
}

.empty .empty-icon {
  margin-bottom: 0.8rem;
}

.empty .empty-title,
.empty .empty-subtitle {
  margin: 0.4rem auto;
}

.empty .empty-action {
  margin-top: 0.8rem;
}

.menu {
  box-shadow: 0 0.05rem 0.2rem rgba(48, 55, 66, 0.3);
  background: #fff;
  border-radius: 0.1rem;
  list-style: none;
  margin: 0;
  min-width: 180px;
  padding: 0.4rem;
  transform: translateY(0.2rem);
  z-index: 300;
}

.menu.menu-nav {
  background: transparent;
  box-shadow: none;
}

.menu .menu-item {
  margin-top: 0;
  padding: 0 0.4rem;
  position: relative;
  text-decoration: none;
}

.menu .menu-item > a {
  border-radius: 0.1rem;
  color: inherit;
  display: block;
  margin: 0 -0.4rem;
  padding: 0.2rem 0.4rem;
  text-decoration: none;
}

.menu .menu-item > a:focus, .menu .menu-item > a:hover {
  background: #f1f1fc;
  color: #5755d9;
}

.menu .menu-item > a:active, .menu .menu-item > a.active {
  background: #f1f1fc;
  color: #5755d9;
}

.menu .menu-item .form-checkbox,
.menu .menu-item .form-radio,
.menu .menu-item .form-switch {
  margin: 0.1rem 0;
}

.menu .menu-item + .menu-item {
  margin-top: 0.2rem;
}

.menu .menu-badge {
  align-items: center;
  display: flex;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
}

.menu .menu-badge .label {
  margin-right: 0.4rem;
}

.modal {
  align-items: center;
  bottom: 0;
  display: none;
  justify-content: center;
  left: 0;
  opacity: 0;
  overflow: hidden;
  padding: 0.4rem;
  position: fixed;
  right: 0;
  top: 0;
}

.modal:target, .modal.active {
  display: flex;
  opacity: 1;
  z-index: 400;
}

.modal:target .modal-overlay, .modal.active .modal-overlay {
  background: rgba(247, 248, 249, 0.75);
  bottom: 0;
  cursor: default;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.modal:target .modal-container, .modal.active .modal-container {
  animation: slide-down .2s ease 1;
  z-index: 1;
}

.modal.modal-sm .modal-container {
  max-width: 320px;
  padding: 0 0.4rem;
}

.modal.modal-lg .modal-overlay {
  background: #fff;
}

.modal.modal-lg .modal-container {
  box-shadow: none;
  max-width: 960px;
}

.modal-container {
  box-shadow: 0 0.2rem 0.5rem rgba(48, 55, 66, 0.3);
  background: #fff;
  border-radius: 0.1rem;
  display: flex;
  flex-direction: column;
  max-height: 75vh;
  max-width: 640px;
  padding: 0 0.8rem;
  width: 100%;
}

.modal-container.modal-fullheight {
  max-height: 100vh;
}

.modal-container .modal-header {
  color: #303742;
  padding: 0.8rem;
}

.modal-container .modal-body {
  overflow-y: auto;
  padding: 0.8rem;
  position: relative;
}

.modal-container .modal-footer {
  padding: 0.8rem;
  text-align: right;
}

.nav {
  display: flex;
  flex-direction: column;
  list-style: none;
  margin: 0.2rem 0;
}

.nav .nav-item a {
  color: #66758c;
  padding: 0.2rem 0.4rem;
  text-decoration: none;
}

.nav .nav-item a:focus, .nav .nav-item a:hover {
  color: #5755d9;
}

.nav .nav-item.active > a {
  color: #505c6e;
  font-weight: bold;
}

.nav .nav-item.active > a:focus, .nav .nav-item.active > a:hover {
  color: #5755d9;
}

.nav .nav {
  margin-bottom: 0.4rem;
  margin-left: 0.8rem;
}

.pagination {
  display: flex;
  list-style: none;
  margin: 0.2rem 0;
  padding: 0.2rem 0;
}

.pagination .page-item {
  margin: 0.2rem 0.05rem;
}

.pagination .page-item span {
  display: inline-block;
  padding: 0.2rem 0.2rem;
}

.pagination .page-item a {
  border-radius: 0.1rem;
  display: inline-block;
  padding: 0.2rem 0.4rem;
  text-decoration: none;
}

.pagination .page-item a:focus, .pagination .page-item a:hover {
  color: #5755d9;
}

.pagination .page-item.disabled a {
  cursor: default;
  opacity: .5;
  pointer-events: none;
}

.pagination .page-item.active a {
  background: #5755d9;
  color: #fff;
}

.pagination .page-item.page-prev, .pagination .page-item.page-next {
  flex: 1 0 50%;
}

.pagination .page-item.page-next {
  text-align: right;
}

.pagination .page-item .page-item-title {
  margin: 0;
}

.pagination .page-item .page-item-subtitle {
  margin: 0;
  opacity: .5;
}

.panel {
  border: 0.05rem solid #dadee4;
  border-radius: 0.1rem;
  display: flex;
  flex-direction: column;
}

.panel .panel-header,
.panel .panel-footer {
  flex: 0 0 auto;
  padding: 0.8rem;
}

.panel .panel-nav {
  flex: 0 0 auto;
}

.panel .panel-body {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 0 0.8rem;
}

.popover {
  display: inline-block;
  position: relative;
}

.popover .popover-container {
  left: 50%;
  opacity: 0;
  padding: 0.4rem;
  position: absolute;
  top: 0;
  transform: translate(-50%, -50%) scale(0);
  transition: transform .2s;
  width: 320px;
  z-index: 300;
}

.popover *:focus + .popover-container,
.popover:hover .popover-container {
  display: block;
  opacity: 1;
  transform: translate(-50%, -100%) scale(1);
}

.popover.popover-right .popover-container {
  left: 100%;
  top: 50%;
}

.popover.popover-right *:focus + .popover-container,
.popover.popover-right:hover .popover-container {
  transform: translate(0, -50%) scale(1);
}

.popover.popover-bottom .popover-container {
  left: 50%;
  top: 100%;
}

.popover.popover-bottom *:focus + .popover-container,
.popover.popover-bottom:hover .popover-container {
  transform: translate(-50%, 0) scale(1);
}

.popover.popover-left .popover-container {
  left: 0;
  top: 50%;
}

.popover.popover-left *:focus + .popover-container,
.popover.popover-left:hover .popover-container {
  transform: translate(-100%, -50%) scale(1);
}

.popover .card {
  box-shadow: 0 0.2rem 0.5rem rgba(48, 55, 66, 0.3);
  border: 0;
}

.step {
  display: flex;
  flex-wrap: nowrap;
  list-style: none;
  margin: 0.2rem 0;
  width: 100%;
}

.step .step-item {
  flex: 1 1 0;
  margin-top: 0;
  min-height: 1rem;
  text-align: center;
  position: relative;
}

.step .step-item:not(:first-child)::before {
  background: #5755d9;
  content: "";
  height: 2px;
  left: -50%;
  position: absolute;
  top: 9px;
  width: 100%;
}

.step .step-item a {
  color: #5755d9;
  display: inline-block;
  padding: 20px 10px 0;
  text-decoration: none;
}

.step .step-item a::before {
  background: #5755d9;
  border: 0.1rem solid #fff;
  border-radius: 50%;
  content: "";
  display: block;
  height: 0.6rem;
  left: 50%;
  position: absolute;
  top: 0.2rem;
  transform: translateX(-50%);
  width: 0.6rem;
  z-index: 1;
}

.step .step-item.active a::before {
  background: #fff;
  border: 0.1rem solid #5755d9;
}

.step .step-item.active ~ .step-item::before {
  background: #dadee4;
}

.step .step-item.active ~ .step-item a {
  color: #bcc3ce;
}

.step .step-item.active ~ .step-item a::before {
  background: #dadee4;
}

.tab {
  align-items: center;
  border-bottom: 0.05rem solid #dadee4;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0.2rem 0 0.15rem 0;
}

.tab .tab-item {
  margin-top: 0;
}

.tab .tab-item a {
  border-bottom: 0.1rem solid transparent;
  color: inherit;
  display: block;
  margin: 0 0.4rem 0 0;
  padding: 0.4rem 0.2rem 0.3rem 0.2rem;
  text-decoration: none;
}

.tab .tab-item a:focus, .tab .tab-item a:hover {
  color: #5755d9;
}

.tab .tab-item.active a,
.tab .tab-item a.active {
  border-bottom-color: #5755d9;
  color: #5755d9;
}

.tab .tab-item.tab-action {
  flex: 1 0 auto;
  text-align: right;
}

.tab .tab-item .btn-clear {
  margin-top: -0.2rem;
}

.tab.tab-block .tab-item {
  flex: 1 0 0;
  text-align: center;
}

.tab.tab-block .tab-item a {
  margin: 0;
}

.tab.tab-block .tab-item .badge[data-badge]::after {
  position: absolute;
  right: 0.1rem;
  top: 0.1rem;
  transform: translate(0, 0);
}

.tab:not(.tab-block) .badge {
  padding-right: 0;
}

.tile {
  align-content: space-between;
  align-items: flex-start;
  display: flex;
}

.tile .tile-icon,
.tile .tile-action {
  flex: 0 0 auto;
}

.tile .tile-content {
  flex: 1 1 auto;
}

.tile .tile-content:not(:first-child) {
  padding-left: 0.4rem;
}

.tile .tile-content:not(:last-child) {
  padding-right: 0.4rem;
}

.tile .tile-title,
.tile .tile-subtitle {
  line-height: 1.2rem;
}

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

.tile.tile-centered .tile-content {
  overflow: hidden;
}

.tile.tile-centered .tile-title,
.tile.tile-centered .tile-subtitle {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-bottom: 0;
}

.toast {
  background: rgba(48, 55, 66, 0.95);
  border-color: #303742;
  border: 0.05rem solid #303742;
  border-radius: 0.1rem;
  color: #fff;
  display: block;
  padding: 0.4rem;
  width: 100%;
}

.toast.toast-primary {
  background: rgba(87, 85, 217, 0.95);
  border-color: #5755d9;
}

.toast.toast-success {
  background: rgba(50, 182, 67, 0.95);
  border-color: #32b643;
}

.toast.toast-warning {
  background: rgba(255, 183, 0, 0.95);
  border-color: #ffb700;
}

.toast.toast-error {
  background: rgba(232, 86, 0, 0.95);
  border-color: #e85600;
}

.toast a {
  color: #fff;
  text-decoration: underline;
}

.toast a:focus, .toast a:hover, .toast a:active, .toast a.active {
  opacity: .75;
}

.toast .btn-clear {
  margin: 0.1rem;
}

.toast p:last-child {
  margin-bottom: 0;
}

.tooltip {
  position: relative;
}

.tooltip::after {
  background: rgba(48, 55, 66, 0.95);
  border-radius: 0.1rem;
  bottom: 100%;
  color: #fff;
  content: attr(data-tooltip);
  display: block;
  font-size: 0.7rem;
  left: 50%;
  max-width: 320px;
  opacity: 0;
  overflow: hidden;
  padding: 0.2rem 0.4rem;
  pointer-events: none;
  position: absolute;
  text-overflow: ellipsis;
  transform: translate(-50%, 0.4rem);
  transition: opacity .2s, transform .2s;
  white-space: pre;
  z-index: 300;
}

.tooltip:focus::after, .tooltip:hover::after {
  opacity: 1;
  transform: translate(-50%, -0.2rem);
}

.tooltip[disabled], .tooltip.disabled {
  pointer-events: auto;
}

.tooltip.tooltip-right::after {
  bottom: 50%;
  left: 100%;
  transform: translate(-0.2rem, 50%);
}

.tooltip.tooltip-right:focus::after, .tooltip.tooltip-right:hover::after {
  transform: translate(0.2rem, 50%);
}

.tooltip.tooltip-bottom::after {
  bottom: auto;
  top: 100%;
  transform: translate(-50%, -0.4rem);
}

.tooltip.tooltip-bottom:focus::after, .tooltip.tooltip-bottom:hover::after {
  transform: translate(-50%, 0.2rem);
}

.tooltip.tooltip-left::after {
  bottom: 50%;
  left: auto;
  right: 100%;
  transform: translate(0.4rem, 50%);
}

.tooltip.tooltip-left:focus::after, .tooltip.tooltip-left:hover::after {
  transform: translate(-0.2rem, 50%);
}

@keyframes loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes slide-down {
  0% {
    opacity: 0;
    transform: translateY(-1.6rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.text-primary {
  color: #5755d9 !important;
}

a.text-primary:focus, a.text-primary:hover {
  color: #4240d4;
}

a.text-primary:visited {
  color: #6c6ade;
}

.text-secondary {
  color: #e5e5f9 !important;
}

a.text-secondary:focus, a.text-secondary:hover {
  color: #d1d0f4;
}

a.text-secondary:visited {
  color: #fafafe;
}

.text-gray {
  color: #bcc3ce !important;
}

a.text-gray:focus, a.text-gray:hover {
  color: #adb6c4;
}

a.text-gray:visited {
  color: #cbd0d9;
}

.text-light {
  color: #fff !important;
}

a.text-light:focus, a.text-light:hover {
  color: #f2f2f2;
}

a.text-light:visited {
  color: white;
}

.text-dark {
  color: #3b4351 !important;
}

a.text-dark:focus, a.text-dark:hover {
  color: #303742;
}

a.text-dark:visited {
  color: #455060;
}

.text-success {
  color: #32b643 !important;
}

a.text-success:focus, a.text-success:hover {
  color: #2da23c;
}

a.text-success:visited {
  color: #39c94b;
}

.text-warning {
  color: #ffb700 !important;
}

a.text-warning:focus, a.text-warning:hover {
  color: #e6a500;
}

a.text-warning:visited {
  color: #ffbe1a;
}

.text-error {
  color: #e85600 !important;
}

a.text-error:focus, a.text-error:hover {
  color: #cf4d00;
}

a.text-error:visited {
  color: #ff6003;
}

.bg-primary {
  background: #5755d9 !important;
  color: #fff;
}

.bg-secondary {
  background: #f1f1fc !important;
}

.bg-dark {
  background: #303742 !important;
  color: #fff;
}

.bg-gray {
  background: #f7f8f9 !important;
}

.bg-success {
  background: #32b643 !important;
  color: #fff;
}

.bg-warning {
  background: #ffb700 !important;
  color: #fff;
}

.bg-error {
  background: #e85600 !important;
  color: #fff;
}

.c-hand {
  cursor: pointer;
}

.c-move {
  cursor: move;
}

.c-zoom-in {
  cursor: zoom-in;
}

.c-zoom-out {
  cursor: zoom-out;
}

.c-not-allowed {
  cursor: not-allowed;
}

.c-auto {
  cursor: auto;
}

.d-block {
  display: block;
}

.d-inline {
  display: inline;
}

.d-inline-block {
  display: inline-block;
}

.d-flex {
  display: flex;
}

.d-inline-flex {
  display: inline-flex;
}

.d-none,
.d-hide {
  display: none !important;
}

.d-visible {
  visibility: visible;
}

.d-invisible {
  visibility: hidden;
}

.text-hide {
  background: transparent;
  border: 0;
  color: transparent;
  font-size: 0;
  line-height: 0;
  text-shadow: none;
}

.text-assistive {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.divider,
.divider-vert {
  display: block;
  position: relative;
}

.divider[data-content]::after,
.divider-vert[data-content]::after {
  background: #fff;
  color: #bcc3ce;
  content: attr(data-content);
  display: inline-block;
  font-size: 0.7rem;
  padding: 0 0.4rem;
  transform: translateY(-0.65rem);
}

.divider {
  border-top: 0.05rem solid #f1f3f5;
  height: 0.05rem;
  margin: 0.4rem 0;
}

.divider[data-content] {
  margin: 0.8rem 0;
}

.divider-vert {
  display: block;
  padding: 0.8rem;
}

.divider-vert::before {
  border-left: 0.05rem solid #dadee4;
  bottom: 0.4rem;
  content: "";
  display: block;
  left: 50%;
  position: absolute;
  top: 0.4rem;
  transform: translateX(-50%);
}

.divider-vert[data-content]::after {
  left: 50%;
  padding: 0.2rem 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.loading {
  color: transparent !important;
  min-height: 0.8rem;
  pointer-events: none;
  position: relative;
}

.loading::after {
  animation: loading 500ms infinite linear;
  background: transparent;
  border: 0.1rem solid #5755d9;
  border-radius: 50%;
  border-right-color: transparent;
  border-top-color: transparent;
  content: "";
  display: block;
  height: 0.8rem;
  left: 50%;
  margin-left: -0.4rem;
  margin-top: -0.4rem;
  opacity: 1;
  padding: 0;
  position: absolute;
  top: 50%;
  width: 0.8rem;
  z-index: 1;
}

.loading.loading-lg {
  min-height: 2rem;
}

.loading.loading-lg::after {
  height: 1.6rem;
  margin-left: -0.8rem;
  margin-top: -0.8rem;
  width: 1.6rem;
}

.clearfix::after {
  clear: both;
  content: "";
  display: table;
}

.float-left {
  float: left !important;
}

.float-right {
  float: right !important;
}

.p-relative {
  position: relative !important;
}

.p-absolute {
  position: absolute !important;
}

.p-fixed {
  position: fixed !important;
}

.p-sticky {
  position: sticky !important;
}

.p-centered {
  display: block;
  float: none;
  margin-left: auto;
  margin-right: auto;
}

.flex-centered {
  align-items: center;
  display: flex;
  justify-content: center;
}

.m-0 {
  margin: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.ml-0 {
  margin-left: 0 !important;
}

.mr-0 {
  margin-right: 0 !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mx-0 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.my-0 {
  margin-bottom: 0 !important;
  margin-top: 0 !important;
}

.m-1 {
  margin: 0.2rem !important;
}

.mb-1 {
  margin-bottom: 0.2rem !important;
}

.ml-1 {
  margin-left: 0.2rem !important;
}

.mr-1 {
  margin-right: 0.2rem !important;
}

.mt-1 {
  margin-top: 0.2rem !important;
}

.mx-1 {
  margin-left: 0.2rem !important;
  margin-right: 0.2rem !important;
}

.my-1 {
  margin-bottom: 0.2rem !important;
  margin-top: 0.2rem !important;
}

.m-2 {
  margin: 0.4rem !important;
}

.mb-2 {
  margin-bottom: 0.4rem !important;
}

.ml-2 {
  margin-left: 0.4rem !important;
}

.mr-2 {
  margin-right: 0.4rem !important;
}

.mt-2 {
  margin-top: 0.4rem !important;
}

.mx-2 {
  margin-left: 0.4rem !important;
  margin-right: 0.4rem !important;
}

.my-2 {
  margin-bottom: 0.4rem !important;
  margin-top: 0.4rem !important;
}

.p-0 {
  padding: 0 !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pl-0 {
  padding-left: 0 !important;
}

.pr-0 {
  padding-right: 0 !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.px-0 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.py-0 {
  padding-bottom: 0 !important;
  padding-top: 0 !important;
}

.p-1 {
  padding: 0.2rem !important;
}

.pb-1 {
  padding-bottom: 0.2rem !important;
}

.pl-1 {
  padding-left: 0.2rem !important;
}

.pr-1 {
  padding-right: 0.2rem !important;
}

.pt-1 {
  padding-top: 0.2rem !important;
}

.px-1 {
  padding-left: 0.2rem !important;
  padding-right: 0.2rem !important;
}

.py-1 {
  padding-bottom: 0.2rem !important;
  padding-top: 0.2rem !important;
}

.p-2 {
  padding: 0.4rem !important;
}

.pb-2 {
  padding-bottom: 0.4rem !important;
}

.pl-2 {
  padding-left: 0.4rem !important;
}

.pr-2 {
  padding-right: 0.4rem !important;
}

.pt-2 {
  padding-top: 0.4rem !important;
}

.px-2 {
  padding-left: 0.4rem !important;
  padding-right: 0.4rem !important;
}

.py-2 {
  padding-bottom: 0.4rem !important;
  padding-top: 0.4rem !important;
}

.s-rounded {
  border-radius: 0.1rem;
}

.s-circle {
  border-radius: 50%;
}

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

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

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

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

.text-lowercase {
  text-transform: lowercase;
}

.text-uppercase {
  text-transform: uppercase;
}

.text-capitalize {
  text-transform: capitalize;
}

.text-normal {
  font-weight: normal;
}

.text-bold {
  font-weight: bold;
}

.text-italic {
  font-style: italic;
}

.text-large {
  font-size: 1.2em;
}

.text-small {
  font-size: .9em;
}

.text-tiny {
  font-size: .8em;
}

.text-muted {
  opacity: .8;
}

.text-ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-clip {
  overflow: hidden;
  text-overflow: clip;
  white-space: nowrap;
}

.text-break {
  hyphens: auto;
  word-break: break-word;
  word-wrap: break-word;
}

/*! Spectre.css Experimentals v0.5.9 | MIT License | github.com/picturepan2/spectre */
.form-autocomplete {
  position: relative;
}

.form-autocomplete .form-autocomplete-input {
  align-content: flex-start;
  display: flex;
  flex-wrap: wrap;
  height: auto;
  min-height: 1.6rem;
  padding: 0.1rem;
}

.form-autocomplete .form-autocomplete-input.is-focused {
  box-shadow: 0 0 0 0.1rem rgba(87, 85, 217, 0.2);
  border-color: #5755d9;
}

.form-autocomplete .form-autocomplete-input .form-input {
  border-color: transparent;
  box-shadow: none;
  display: inline-block;
  flex: 1 0 auto;
  height: 1.2rem;
  line-height: 0.8rem;
  margin: 0.1rem;
  width: auto;
}

.form-autocomplete .menu {
  left: 0;
  position: absolute;
  top: 100%;
  width: 100%;
}

.form-autocomplete.autocomplete-oneline .form-autocomplete-input {
  flex-wrap: nowrap;
  overflow-x: auto;
}

.form-autocomplete.autocomplete-oneline .chip {
  flex: 1 0 auto;
}

.calendar {
  border: 0.05rem solid #dadee4;
  border-radius: 0.1rem;
  display: block;
  min-width: 280px;
}

.calendar .calendar-nav {
  align-items: center;
  background: #f7f8f9;
  border-top-left-radius: 0.1rem;
  border-top-right-radius: 0.1rem;
  display: flex;
  font-size: 0.9rem;
  padding: 0.4rem;
}

.calendar .calendar-header,
.calendar .calendar-body {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0.4rem 0;
}

.calendar .calendar-header .calendar-date,
.calendar .calendar-body .calendar-date {
  flex: 0 0 14.28%;
  max-width: 14.28%;
}

.calendar .calendar-header {
  background: #f7f8f9;
  border-bottom: 0.05rem solid #dadee4;
  color: #bcc3ce;
  font-size: 0.7rem;
  text-align: center;
}

.calendar .calendar-body {
  color: #66758c;
}

.calendar .calendar-date {
  border: 0;
  padding: 0.2rem;
}

.calendar .calendar-date .date-item {
  appearance: none;
  background: transparent;
  border: 0.05rem solid transparent;
  border-radius: 50%;
  color: #66758c;
  cursor: pointer;
  font-size: 0.7rem;
  height: 1.4rem;
  line-height: 1rem;
  outline: none;
  padding: 0.1rem;
  position: relative;
  text-align: center;
  text-decoration: none;
  transition: background .2s, border .2s, box-shadow .2s, color .2s;
  vertical-align: middle;
  white-space: nowrap;
  width: 1.4rem;
}

.calendar .calendar-date .date-item.date-today {
  border-color: #e5e5f9;
  color: #5755d9;
}

.calendar .calendar-date .date-item:focus {
  box-shadow: 0 0 0 0.1rem rgba(87, 85, 217, 0.2);
}

.calendar .calendar-date .date-item:focus, .calendar .calendar-date .date-item:hover {
  background: #fefeff;
  border-color: #e5e5f9;
  color: #5755d9;
  text-decoration: none;
}

.calendar .calendar-date .date-item:active, .calendar .calendar-date .date-item.active {
  background: #4b48d6;
  border-color: #3634d2;
  color: #fff;
}

.calendar .calendar-date .date-item.badge::after {
  position: absolute;
  top: 3px;
  right: 3px;
  transform: translate(50%, -50%);
}

.calendar .calendar-date .date-item:disabled, .calendar .calendar-date .date-item.disabled,
.calendar .calendar-date .calendar-event:disabled,
.calendar .calendar-date .calendar-event.disabled {
  cursor: default;
  opacity: .25;
  pointer-events: none;
}

.calendar .calendar-date.prev-month .date-item,
.calendar .calendar-date.prev-month .calendar-event, .calendar .calendar-date.next-month .date-item,
.calendar .calendar-date.next-month .calendar-event {
  opacity: .25;
}

.calendar .calendar-range {
  position: relative;
}

.calendar .calendar-range::before {
  background: #f1f1fc;
  content: "";
  height: 1.4rem;
  left: 0;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.calendar .calendar-range.range-start::before {
  left: 50%;
}

.calendar .calendar-range.range-end::before {
  right: 50%;
}

.calendar .calendar-range.range-start .date-item, .calendar .calendar-range.range-end .date-item {
  background: #4b48d6;
  border-color: #3634d2;
  color: #fff;
}

.calendar .calendar-range .date-item {
  color: #5755d9;
}

.calendar.calendar-lg .calendar-body {
  padding: 0;
}

.calendar.calendar-lg .calendar-body .calendar-date {
  border-bottom: 0.05rem solid #dadee4;
  border-right: 0.05rem solid #dadee4;
  display: flex;
  flex-direction: column;
  height: 5.5rem;
  padding: 0;
}

.calendar.calendar-lg .calendar-body .calendar-date:nth-child(7n) {
  border-right: 0;
}

.calendar.calendar-lg .calendar-body .calendar-date:nth-last-child(-n+7) {
  border-bottom: 0;
}

.calendar.calendar-lg .date-item {
  align-self: flex-end;
  height: 1.4rem;
  margin-right: 0.2rem;
  margin-top: 0.2rem;
}

.calendar.calendar-lg .calendar-range::before {
  top: 19px;
}

.calendar.calendar-lg .calendar-range.range-start::before {
  left: auto;
  width: 19px;
}

.calendar.calendar-lg .calendar-range.range-end::before {
  right: 19px;
}

.calendar.calendar-lg .calendar-events {
  flex-grow: 1;
  line-height: 1;
  overflow-y: auto;
  padding: 0.2rem;
}

.calendar.calendar-lg .calendar-event {
  border-radius: 0.1rem;
  font-size: 0.7rem;
  display: block;
  margin: 0.1rem auto;
  overflow: hidden;
  padding: 3px 4px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.carousel .carousel-locator:nth-of-type(1):checked ~ .carousel-container .carousel-item:nth-of-type(1), .carousel .carousel-locator:nth-of-type(2):checked ~ .carousel-container .carousel-item:nth-of-type(2), .carousel .carousel-locator:nth-of-type(3):checked ~ .carousel-container .carousel-item:nth-of-type(3), .carousel .carousel-locator:nth-of-type(4):checked ~ .carousel-container .carousel-item:nth-of-type(4), .carousel .carousel-locator:nth-of-type(5):checked ~ .carousel-container .carousel-item:nth-of-type(5), .carousel .carousel-locator:nth-of-type(6):checked ~ .carousel-container .carousel-item:nth-of-type(6), .carousel .carousel-locator:nth-of-type(7):checked ~ .carousel-container .carousel-item:nth-of-type(7), .carousel .carousel-locator:nth-of-type(8):checked ~ .carousel-container .carousel-item:nth-of-type(8) {
  animation: carousel-slidein .75s ease-in-out 1;
  opacity: 1;
  z-index: 100;
}

.carousel .carousel-locator:nth-of-type(1):checked ~ .carousel-nav .nav-item:nth-of-type(1), .carousel .carousel-locator:nth-of-type(2):checked ~ .carousel-nav .nav-item:nth-of-type(2), .carousel .carousel-locator:nth-of-type(3):checked ~ .carousel-nav .nav-item:nth-of-type(3), .carousel .carousel-locator:nth-of-type(4):checked ~ .carousel-nav .nav-item:nth-of-type(4), .carousel .carousel-locator:nth-of-type(5):checked ~ .carousel-nav .nav-item:nth-of-type(5), .carousel .carousel-locator:nth-of-type(6):checked ~ .carousel-nav .nav-item:nth-of-type(6), .carousel .carousel-locator:nth-of-type(7):checked ~ .carousel-nav .nav-item:nth-of-type(7), .carousel .carousel-locator:nth-of-type(8):checked ~ .carousel-nav .nav-item:nth-of-type(8) {
  color: #f7f8f9;
}

.carousel {
  background: #f7f8f9;
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  -webkit-overflow-scrolling: touch;
  z-index: 1;
}

.carousel .carousel-container {
  height: 100%;
  left: 0;
  position: relative;
}

.carousel .carousel-container::before {
  content: "";
  display: block;
  padding-bottom: 56.25%;
}

.carousel .carousel-container .carousel-item {
  animation: carousel-slideout 1s ease-in-out 1;
  height: 100%;
  left: 0;
  margin: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.carousel .carousel-container .carousel-item:hover .item-prev,
.carousel .carousel-container .carousel-item:hover .item-next {
  opacity: 1;
}

.carousel .carousel-container .item-prev,
.carousel .carousel-container .item-next {
  background: rgba(247, 248, 249, 0.25);
  border-color: rgba(247, 248, 249, 0.5);
  color: #f7f8f9;
  opacity: 0;
  position: absolute;
  top: 50%;
  transition: all .4s;
  transform: translateY(-50%);
  z-index: 100;
}

.carousel .carousel-container .item-prev {
  left: 1rem;
}

.carousel .carousel-container .item-next {
  right: 1rem;
}

.carousel .carousel-nav {
  bottom: 0.4rem;
  display: flex;
  justify-content: center;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 10rem;
  z-index: 100;
}

.carousel .carousel-nav .nav-item {
  color: rgba(247, 248, 249, 0.5);
  display: block;
  flex: 1 0 auto;
  height: 1.6rem;
  margin: 0.2rem;
  max-width: 2.5rem;
  position: relative;
}

.carousel .carousel-nav .nav-item::before {
  background: currentColor;
  content: "";
  display: block;
  height: 0.1rem;
  position: absolute;
  top: .5rem;
  width: 100%;
}

@keyframes carousel-slidein {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes carousel-slideout {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 1;
    transform: translateX(-50%);
  }
}

.comparison-slider {
  height: 50vh;
  overflow: hidden;
  position: relative;
  width: 100%;
  -webkit-overflow-scrolling: touch;
}

.comparison-slider .comparison-before,
.comparison-slider .comparison-after {
  height: 100%;
  left: 0;
  margin: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
}

.comparison-slider .comparison-before img,
.comparison-slider .comparison-after img {
  height: 100%;
  object-fit: cover;
  object-position: left center;
  position: absolute;
  width: 100%;
}

.comparison-slider .comparison-before {
  width: 100%;
  z-index: 1;
}

.comparison-slider .comparison-before .comparison-label {
  right: 0.8rem;
}

.comparison-slider .comparison-after {
  max-width: 100%;
  min-width: 0;
  z-index: 2;
}

.comparison-slider .comparison-after::before {
  background: transparent;
  content: "";
  cursor: default;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0.8rem;
  top: 0;
  z-index: 1;
}

.comparison-slider .comparison-after::after {
  background: currentColor;
  border-radius: 50%;
  box-shadow: 0 -5px, 0 5px;
  color: #fff;
  content: "";
  height: 3px;
  pointer-events: none;
  position: absolute;
  right: 0.4rem;
  top: 50%;
  transform: translate(50%, -50%);
  width: 3px;
}

.comparison-slider .comparison-after .comparison-label {
  left: 0.8rem;
}

.comparison-slider .comparison-resizer {
  animation: first-run 1.5s 1 ease-in-out;
  cursor: ew-resize;
  height: 0.8rem;
  left: 0;
  max-width: 100%;
  min-width: 0.8rem;
  opacity: 0;
  outline: none;
  position: relative;
  resize: horizontal;
  top: 50%;
  transform: translateY(-50%) scaleY(30);
  width: 0;
}

.comparison-slider .comparison-label {
  background: rgba(48, 55, 66, 0.5);
  bottom: 0.8rem;
  color: #fff;
  padding: 0.2rem 0.4rem;
  position: absolute;
  user-select: none;
}

@keyframes first-run {
  0% {
    width: 0;
  }
  25% {
    width: 2.4rem;
  }
  50% {
    width: 0.8rem;
  }
  75% {
    width: 1.2rem;
  }
  100% {
    width: 0;
  }
}

.filter .filter-tag#tag-0:checked ~ .filter-nav .chip[for="tag-0"], .filter .filter-tag#tag-1:checked ~ .filter-nav .chip[for="tag-1"], .filter .filter-tag#tag-2:checked ~ .filter-nav .chip[for="tag-2"], .filter .filter-tag#tag-3:checked ~ .filter-nav .chip[for="tag-3"], .filter .filter-tag#tag-4:checked ~ .filter-nav .chip[for="tag-4"], .filter .filter-tag#tag-5:checked ~ .filter-nav .chip[for="tag-5"], .filter .filter-tag#tag-6:checked ~ .filter-nav .chip[for="tag-6"], .filter .filter-tag#tag-7:checked ~ .filter-nav .chip[for="tag-7"], .filter .filter-tag#tag-8:checked ~ .filter-nav .chip[for="tag-8"] {
  background: #5755d9;
  color: #fff;
}

.filter .filter-tag#tag-1:checked ~ .filter-body .filter-item:not([data-tag~="tag-1"]), .filter .filter-tag#tag-2:checked ~ .filter-body .filter-item:not([data-tag~="tag-2"]), .filter .filter-tag#tag-3:checked ~ .filter-body .filter-item:not([data-tag~="tag-3"]), .filter .filter-tag#tag-4:checked ~ .filter-body .filter-item:not([data-tag~="tag-4"]), .filter .filter-tag#tag-5:checked ~ .filter-body .filter-item:not([data-tag~="tag-5"]), .filter .filter-tag#tag-6:checked ~ .filter-body .filter-item:not([data-tag~="tag-6"]), .filter .filter-tag#tag-7:checked ~ .filter-body .filter-item:not([data-tag~="tag-7"]), .filter .filter-tag#tag-8:checked ~ .filter-body .filter-item:not([data-tag~="tag-8"]) {
  display: none;
}

.filter .filter-nav {
  margin: 0.4rem 0;
}

.filter .filter-body {
  display: flex;
  flex-wrap: wrap;
}

.meter {
  appearance: none;
  background: #f7f8f9;
  border: 0;
  border-radius: 0.1rem;
  display: block;
  width: 100%;
  height: 0.8rem;
}

.meter::-webkit-meter-inner-element {
  display: block;
}

.meter::-webkit-meter-bar, .meter::-webkit-meter-optimum-value, .meter::-webkit-meter-suboptimum-value, .meter::-webkit-meter-even-less-good-value {
  border-radius: 0.1rem;
}

.meter::-webkit-meter-bar {
  background: #f7f8f9;
}

.meter::-webkit-meter-optimum-value {
  background: #32b643;
}

.meter::-webkit-meter-suboptimum-value {
  background: #ffb700;
}

.meter::-webkit-meter-even-less-good-value {
  background: #e85600;
}

.meter::-moz-meter-bar, .meter:-moz-meter-optimum, .meter:-moz-meter-sub-optimum, .meter:-moz-meter-sub-sub-optimum {
  border-radius: 0.1rem;
}

.meter:-moz-meter-optimum::-moz-meter-bar {
  background: #32b643;
}

.meter:-moz-meter-sub-optimum::-moz-meter-bar {
  background: #ffb700;
}

.meter:-moz-meter-sub-sub-optimum::-moz-meter-bar {
  background: #e85600;
}

.off-canvas {
  display: flex;
  flex-flow: nowrap;
  height: 100%;
  position: relative;
  width: 100%;
}

.off-canvas .off-canvas-toggle {
  display: block;
  position: absolute;
  top: 0.4rem;
  transition: none;
  z-index: 1;
  left: 0.4rem;
}

.off-canvas .off-canvas-sidebar {
  background: #f7f8f9;
  bottom: 0;
  min-width: 10rem;
  overflow-y: auto;
  position: fixed;
  top: 0;
  transition: transform .25s;
  z-index: 200;
  left: 0;
  transform: translateX(-100%);
}

.off-canvas .off-canvas-content {
  flex: 1 1 auto;
  height: 100%;
  padding: 0.4rem 0.4rem 0.4rem 4rem;
}

.off-canvas .off-canvas-overlay {
  background: rgba(48, 55, 66, 0.1);
  border-color: transparent;
  border-radius: 0;
  bottom: 0;
  display: none;
  height: 100%;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  width: 100%;
}

.off-canvas .off-canvas-sidebar:target, .off-canvas .off-canvas-sidebar.active {
  transform: translateX(0);
}

.off-canvas .off-canvas-sidebar:target ~ .off-canvas-overlay,
.off-canvas .off-canvas-sidebar.active ~ .off-canvas-overlay {
  display: block;
  z-index: 100;
}

@media (min-width: 960px) {
  .off-canvas.off-canvas-sidebar-show .off-canvas-toggle {
    display: none;
  }
  .off-canvas.off-canvas-sidebar-show .off-canvas-sidebar {
    flex: 0 0 auto;
    position: relative;
    transform: none;
  }
  .off-canvas.off-canvas-sidebar-show .off-canvas-overlay {
    display: none !important;
  }
}

.parallax {
  display: block;
  height: auto;
  position: relative;
  width: auto;
}

.parallax .parallax-content {
  box-shadow: 0 1rem 2.1rem rgba(48, 55, 66, 0.3);
  height: auto;
  transform: perspective(1000px);
  transform-style: preserve-3d;
  transition: all .4s ease;
  width: 100%;
}

.parallax .parallax-content::before {
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.parallax .parallax-front {
  align-items: center;
  color: #fff;
  display: flex;
  height: 100%;
  justify-content: center;
  left: 0;
  position: absolute;
  text-align: center;
  text-shadow: 0 0 20px rgba(48, 55, 66, 0.75);
  top: 0;
  transform: translateZ(50px) scale(0.95);
  transition: transform .4s;
  width: 100%;
  z-index: 1;
}

.parallax .parallax-top-left {
  height: 50%;
  outline: none;
  position: absolute;
  width: 50%;
  z-index: 100;
  left: 0;
  top: 0;
}

.parallax .parallax-top-left:focus ~ .parallax-content,
.parallax .parallax-top-left:hover ~ .parallax-content {
  transform: perspective(1000px) rotateX(3deg) rotateY(-3deg);
}

.parallax .parallax-top-left:focus ~ .parallax-content::before,
.parallax .parallax-top-left:hover ~ .parallax-content::before {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.35) 0%, transparent 50%);
}

.parallax .parallax-top-left:focus ~ .parallax-content .parallax-front,
.parallax .parallax-top-left:hover ~ .parallax-content .parallax-front {
  transform: translate3d(4.5px, 4.5px, 50px) scale(0.95);
}

.parallax .parallax-top-right {
  height: 50%;
  outline: none;
  position: absolute;
  width: 50%;
  z-index: 100;
  right: 0;
  top: 0;
}

.parallax .parallax-top-right:focus ~ .parallax-content,
.parallax .parallax-top-right:hover ~ .parallax-content {
  transform: perspective(1000px) rotateX(3deg) rotateY(3deg);
}

.parallax .parallax-top-right:focus ~ .parallax-content::before,
.parallax .parallax-top-right:hover ~ .parallax-content::before {
  background: linear-gradient(-135deg, rgba(255, 255, 255, 0.35) 0%, transparent 50%);
}

.parallax .parallax-top-right:focus ~ .parallax-content .parallax-front,
.parallax .parallax-top-right:hover ~ .parallax-content .parallax-front {
  transform: translate3d(-4.5px, 4.5px, 50px) scale(0.95);
}

.parallax .parallax-bottom-left {
  height: 50%;
  outline: none;
  position: absolute;
  width: 50%;
  z-index: 100;
  bottom: 0;
  left: 0;
}

.parallax .parallax-bottom-left:focus ~ .parallax-content,
.parallax .parallax-bottom-left:hover ~ .parallax-content {
  transform: perspective(1000px) rotateX(-3deg) rotateY(-3deg);
}

.parallax .parallax-bottom-left:focus ~ .parallax-content::before,
.parallax .parallax-bottom-left:hover ~ .parallax-content::before {
  background: linear-gradient(45deg, rgba(255, 255, 255, 0.35) 0%, transparent 50%);
}

.parallax .parallax-bottom-left:focus ~ .parallax-content .parallax-front,
.parallax .parallax-bottom-left:hover ~ .parallax-content .parallax-front {
  transform: translate3d(4.5px, -4.5px, 50px) scale(0.95);
}

.parallax .parallax-bottom-right {
  height: 50%;
  outline: none;
  position: absolute;
  width: 50%;
  z-index: 100;
  bottom: 0;
  right: 0;
}

.parallax .parallax-bottom-right:focus ~ .parallax-content,
.parallax .parallax-bottom-right:hover ~ .parallax-content {
  transform: perspective(1000px) rotateX(-3deg) rotateY(3deg);
}

.parallax .parallax-bottom-right:focus ~ .parallax-content::before,
.parallax .parallax-bottom-right:hover ~ .parallax-content::before {
  background: linear-gradient(-45deg, rgba(255, 255, 255, 0.35) 0%, transparent 50%);
}

.parallax .parallax-bottom-right:focus ~ .parallax-content .parallax-front,
.parallax .parallax-bottom-right:hover ~ .parallax-content .parallax-front {
  transform: translate3d(-4.5px, -4.5px, 50px) scale(0.95);
}

.progress {
  appearance: none;
  background: #eef0f3;
  border: 0;
  border-radius: 0.1rem;
  color: #5755d9;
  height: 0.2rem;
  position: relative;
  width: 100%;
}

.progress::-webkit-progress-bar {
  background: transparent;
  border-radius: 0.1rem;
}

.progress::-webkit-progress-value {
  background: #5755d9;
  border-radius: 0.1rem;
}

.progress::-moz-progress-bar {
  background: #5755d9;
  border-radius: 0.1rem;
}

.progress:indeterminate {
  animation: progress-indeterminate 1.5s linear infinite;
  background: #eef0f3 linear-gradient(to right, #5755d9 30%, #eef0f3 30%) top left/150% 150% no-repeat;
}

.progress:indeterminate::-moz-progress-bar {
  background: transparent;
}

@keyframes progress-indeterminate {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}

.slider {
  appearance: none;
  background: transparent;
  display: block;
  width: 100%;
  height: 1.2rem;
}

.slider:focus {
  box-shadow: 0 0 0 0.1rem rgba(87, 85, 217, 0.2);
  outline: none;
}

.slider.tooltip:not([data-tooltip])::after {
  content: attr(value);
}

.slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  background: #5755d9;
  border: 0;
  border-radius: 50%;
  height: 0.6rem;
  margin-top: -0.25rem;
  transition: transform .2s;
  width: 0.6rem;
}

.slider::-moz-range-thumb {
  background: #5755d9;
  border: 0;
  border-radius: 50%;
  height: 0.6rem;
  transition: transform .2s;
  width: 0.6rem;
}

.slider::-ms-thumb {
  background: #5755d9;
  border: 0;
  border-radius: 50%;
  height: 0.6rem;
  transition: transform .2s;
  width: 0.6rem;
}

.slider:active::-webkit-slider-thumb {
  transform: scale(1.25);
}

.slider:active::-moz-range-thumb {
  transform: scale(1.25);
}

.slider:active::-ms-thumb {
  transform: scale(1.25);
}

.slider:disabled::-webkit-slider-thumb, .slider.disabled::-webkit-slider-thumb {
  background: #f7f8f9;
  transform: scale(1);
}

.slider:disabled::-moz-range-thumb, .slider.disabled::-moz-range-thumb {
  background: #f7f8f9;
  transform: scale(1);
}

.slider:disabled::-ms-thumb, .slider.disabled::-ms-thumb {
  background: #f7f8f9;
  transform: scale(1);
}

.slider::-webkit-slider-runnable-track {
  background: #eef0f3;
  border-radius: 0.1rem;
  height: 0.1rem;
  width: 100%;
}

.slider::-moz-range-track {
  background: #eef0f3;
  border-radius: 0.1rem;
  height: 0.1rem;
  width: 100%;
}

.slider::-ms-track {
  background: #eef0f3;
  border-radius: 0.1rem;
  height: 0.1rem;
  width: 100%;
}

.slider::-ms-fill-lower {
  background: #5755d9;
}

.timeline .timeline-item {
  display: flex;
  margin-bottom: 1.2rem;
  position: relative;
}

.timeline .timeline-item::before {
  background: #dadee4;
  content: "";
  height: 100%;
  left: 11px;
  position: absolute;
  top: 1.2rem;
  width: 2px;
}

.timeline .timeline-item .timeline-left {
  flex: 0 0 auto;
}

.timeline .timeline-item .timeline-content {
  flex: 1 1 auto;
  padding: 2px 0 2px 0.8rem;
}

.timeline .timeline-item .timeline-icon {
  align-items: center;
  border-radius: 50%;
  color: #fff;
  display: flex;
  height: 1.2rem;
  justify-content: center;
  text-align: center;
  width: 1.2rem;
}

.timeline .timeline-item .timeline-icon::before {
  border: 0.1rem solid #5755d9;
  border-radius: 50%;
  content: "";
  display: block;
  height: 0.4rem;
  left: 0.4rem;
  position: absolute;
  top: 0.4rem;
  width: 0.4rem;
}

.timeline .timeline-item .timeline-icon.icon-lg {
  background: #5755d9;
  line-height: 1.2rem;
}

.timeline .timeline-item .timeline-icon.icon-lg::before {
  content: none;
}

.viewer-360 {
  align-items: center;
  display: flex;
  flex-direction: column;
}

.viewer-360 .viewer-slider[max='36'][value='1'] + .viewer-image {
  background-position-y: 0%;
}

.viewer-360 .viewer-slider[max='36'][value='2'] + .viewer-image {
  background-position-y: 2.85714%;
}

.viewer-360 .viewer-slider[max='36'][value='3'] + .viewer-image {
  background-position-y: 5.71429%;
}

.viewer-360 .viewer-slider[max='36'][value='4'] + .viewer-image {
  background-position-y: 8.57143%;
}

.viewer-360 .viewer-slider[max='36'][value='5'] + .viewer-image {
  background-position-y: 11.42857%;
}

.viewer-360 .viewer-slider[max='36'][value='6'] + .viewer-image {
  background-position-y: 14.28571%;
}

.viewer-360 .viewer-slider[max='36'][value='7'] + .viewer-image {
  background-position-y: 17.14286%;
}

.viewer-360 .viewer-slider[max='36'][value='8'] + .viewer-image {
  background-position-y: 20%;
}

.viewer-360 .viewer-slider[max='36'][value='9'] + .viewer-image {
  background-position-y: 22.85714%;
}

.viewer-360 .viewer-slider[max='36'][value='10'] + .viewer-image {
  background-position-y: 25.71429%;
}

.viewer-360 .viewer-slider[max='36'][value='11'] + .viewer-image {
  background-position-y: 28.57143%;
}

.viewer-360 .viewer-slider[max='36'][value='12'] + .viewer-image {
  background-position-y: 31.42857%;
}

.viewer-360 .viewer-slider[max='36'][value='13'] + .viewer-image {
  background-position-y: 34.28571%;
}

.viewer-360 .viewer-slider[max='36'][value='14'] + .viewer-image {
  background-position-y: 37.14286%;
}

.viewer-360 .viewer-slider[max='36'][value='15'] + .viewer-image {
  background-position-y: 40%;
}

.viewer-360 .viewer-slider[max='36'][value='16'] + .viewer-image {
  background-position-y: 42.85714%;
}

.viewer-360 .viewer-slider[max='36'][value='17'] + .viewer-image {
  background-position-y: 45.71429%;
}

.viewer-360 .viewer-slider[max='36'][value='18'] + .viewer-image {
  background-position-y: 48.57143%;
}

.viewer-360 .viewer-slider[max='36'][value='19'] + .viewer-image {
  background-position-y: 51.42857%;
}

.viewer-360 .viewer-slider[max='36'][value='20'] + .viewer-image {
  background-position-y: 54.28571%;
}

.viewer-360 .viewer-slider[max='36'][value='21'] + .viewer-image {
  background-position-y: 57.14286%;
}

.viewer-360 .viewer-slider[max='36'][value='22'] + .viewer-image {
  background-position-y: 60%;
}

.viewer-360 .viewer-slider[max='36'][value='23'] + .viewer-image {
  background-position-y: 62.85714%;
}

.viewer-360 .viewer-slider[max='36'][value='24'] + .viewer-image {
  background-position-y: 65.71429%;
}

.viewer-360 .viewer-slider[max='36'][value='25'] + .viewer-image {
  background-position-y: 68.57143%;
}

.viewer-360 .viewer-slider[max='36'][value='26'] + .viewer-image {
  background-position-y: 71.42857%;
}

.viewer-360 .viewer-slider[max='36'][value='27'] + .viewer-image {
  background-position-y: 74.28571%;
}

.viewer-360 .viewer-slider[max='36'][value='28'] + .viewer-image {
  background-position-y: 77.14286%;
}

.viewer-360 .viewer-slider[max='36'][value='29'] + .viewer-image {
  background-position-y: 80%;
}

.viewer-360 .viewer-slider[max='36'][value='30'] + .viewer-image {
  background-position-y: 82.85714%;
}

.viewer-360 .viewer-slider[max='36'][value='31'] + .viewer-image {
  background-position-y: 85.71429%;
}

.viewer-360 .viewer-slider[max='36'][value='32'] + .viewer-image {
  background-position-y: 88.57143%;
}

.viewer-360 .viewer-slider[max='36'][value='33'] + .viewer-image {
  background-position-y: 91.42857%;
}

.viewer-360 .viewer-slider[max='36'][value='34'] + .viewer-image {
  background-position-y: 94.28571%;
}

.viewer-360 .viewer-slider[max='36'][value='35'] + .viewer-image {
  background-position-y: 97.14286%;
}

.viewer-360 .viewer-slider[max='36'][value='36'] + .viewer-image {
  background-position-y: 100%;
}

.viewer-360 .viewer-slider {
  cursor: ew-resize;
  margin: 1rem;
  order: 2;
  width: 60%;
}

.viewer-360 .viewer-image {
  background-position-y: 0;
  background-repeat: no-repeat;
  background-size: 100%;
  max-width: 100%;
  order: 1;
}

/* Define the "system" font family */
@font-face {
  font-family: system;
  font-style: normal;
  font-weight: 400;
  src: local(".SFNSText"), local(".HelveticaNeueDeskInterface"), local(".LucidaGrandeUI"), local("Ubuntu"), local("Segoe UI"), local("Roboto"), local("DroidSans"), local("Tahoma");
}

body {
  font-family: "system",-apple-system, BlinkMacSystemFont,sans-serif !important;
}

/****** LOGIN ******/
.login-container {
  padding: 30px;
  max-width: 350px;
  width: 100% !important;
  background-color: #F7F7F7;
  margin: 100px auto;
  border-radius: 2px;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
  overflow: hidden;
  font-family: system-ui;
}

.login-container h1 {
  text-align: center;
  font-size: 1.8em;
  font-family: system-ui;
}

.login-container input[type=submit] {
  width: 100%;
  display: block;
  margin-bottom: 10px;
  position: relative;
}

.login-container input[type=text], input[type=password] {
  height: 44px;
  font-size: 16px;
  width: 100%;
  margin-bottom: 10px;
  -webkit-appearance: none;
  background: #fff;
  border: 1px solid #d9d9d9;
  border-top: 1px solid #c0c0c0;
  /* border-radius: 2px; */
  padding: 0 8px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
}

.login-container input[type=text]:hover, input[type=password]:hover {
  border: 1px solid #b9b9b9;
  border-top: 1px solid #a0a0a0;
  -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}

.login-submit {
  /* border: 1px solid #3079ed; */
  border: 0px;
  color: #fff;
  text-shadow: 0 1px rgba(0, 0, 0, 0.1);
  background-color: #4d90fe;
  padding: 17px 0px;
  font-family: system-ui;
  font-size: 14px;
  /* background-image: -webkit-gradient(linear, 0 0, 0 100%,   from(#4d90fe), to(#4787ed)); */
}

.login-submit:hover {
  /* border: 1px solid #2f5bb7; */
  border: 0px;
  text-shadow: 0 1px rgba(0, 0, 0, 0.3);
  background-color: #357ae8;
  /* background-image: -webkit-gradient(linear, 0 0, 0 100%,   from(#4d90fe), to(#357ae8)); */
}

.login-container a {
  text-decoration: none;
  color: #666;
  font-weight: 400;
  text-align: center;
  display: inline-block;
  opacity: 0.6;
  transition: opacity ease 0.5s;
}

.login-help {
  font-size: 12px;
}

.scrollbox {
  overflow: auto;
  position: relative;
  height: 100%;
  background: linear-gradient(white 30%, rgba(255, 255, 255, 0)), linear-gradient(rgba(255, 255, 255, 0), white 70%) 0 100%, radial-gradient(50% 0, farthest-side, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)), radial-gradient(50% 100%, farthest-side, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) 0 100%;
  background: linear-gradient(white 30%, rgba(255, 255, 255, 0)), linear-gradient(rgba(255, 255, 255, 0), white 70%) 0 100%, radial-gradient(farthest-side at 50% 0, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 50% 100%, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) 0 100%;
  background-repeat: no-repeat;
  background-color: white;
  background-size: 100% 40px, 100% 40px, 100% 14px, 100% 14px;
  /* Opera doesn't support this in the shorthand */
  background-attachment: local, local, scroll, scroll;
}

.timeline-play-icon {
  width: 66%;
  position: absolute;
  top: 50%;
  left: 55%;
  transform: translate(-50%, -50%);
}

.card {
  word-wrap: break-word;
}

.content {
  word-break: break-all;
}

.timeline-marker {
  z-index: 9999;
}

.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
}

.content {
  max-width: 960px;
  margin: 0 auto;
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9zcGVjdHJlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX25vcm1hbGl6ZS5zY3NzIiwid2VicGFjazovLy9hcHAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9taXhpbnMvX3NoYWRvdy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL190eXBvZ3JhcGh5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvbWl4aW5zL19sYWJlbC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL19hc2lhbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL190YWJsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL21peGlucy9fYnV0dG9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX2xhYmVscy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL19jb2Rlcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL19tZWRpYS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL19sYXlvdXQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9faGVyby5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL19uYXZiYXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fYWNjb3JkaW9ucy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL19hdmF0YXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvbWl4aW5zL19hdmF0YXIuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fYmFkZ2VzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX2JyZWFkY3J1bWJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX2JhcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fY2FyZHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fY2hpcHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fZHJvcGRvd25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX2VtcHR5LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX21lbnVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX21vZGFscy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL19uYXZzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fcGFuZWxzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX3BvcG92ZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX3N0ZXBzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX3RhYnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fdGlsZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9taXhpbnMvX3RleHQuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fdG9hc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvbWl4aW5zL190b2FzdC5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL190b29sdGlwcy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL19hbmltYXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvbWl4aW5zL19jb2xvci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL3V0aWxpdGllcy9fY3Vyc29ycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL3V0aWxpdGllcy9fZGlzcGxheS5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL3V0aWxpdGllcy9fZGl2aWRlci5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL3V0aWxpdGllcy9fbG9hZGluZy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL21peGlucy9fY2xlYXJmaXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy91dGlsaXRpZXMvX3Bvc2l0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvbWl4aW5zL19wb3NpdGlvbi5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL3V0aWxpdGllcy9fc2hhcGVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvdXRpbGl0aWVzL190ZXh0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvc3BlY3RyZS1leHAuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fYXV0b2NvbXBsZXRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX2NhbGVuZGFycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL19jYXJvdXNlbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fY29tcGFyaXNvbi1zbGlkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX2ZpbHRlcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fbWV0ZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4uLy4uL25vZGVfbW9kdWxlcy9zcGVjdHJlLmNzcy9zcmMvX29mZi1jYW52YXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fcGFyYWxsYXguc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fcHJvZ3Jlc3Muc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fc2xpZGVycy5zY3NzIiwid2VicGFjazovLy8uLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL190aW1lbGluZXMuc2NzcyIsIndlYnBhY2s6Ly8vLi4vLi4vbm9kZV9tb2R1bGVzL3NwZWN0cmUuY3NzL3NyYy9fdmlld2VyLTM2MC5zY3NzIiwid2VicGFjazovLy9jb21wb25lbnRzL2ZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vL2NvbXBvbmVudHMvbG9naW4uc2NzcyIsIndlYnBhY2s6Ly8vY29tcG9uZW50cy9zY3JvbGxib3gtc2hhZG93LnNjc3MiLCJ3ZWJwYWNrOi8vL2NvbXBvbmVudHMvdGltZWxpbmUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQTtBQ0pBO0FBQ0E7QUFFQTs7Ozs7RUNLRTtBREVGOytFQ0ErRTtBREcvRTtFQUNFLHVCQUF1QjtFQUFFO0VBQ3pCLDBCQUEwQjtFQUFFO0VBQzVCLDhCQUE4QjtFQUFFO0FDR2xDOztBREFBOytFQ0crRTtBREEvRTs7RUNHRTtBRENGO0VBQ0UsU0FBUztBQ0NYOztBREVBOztFQ0VFO0FERUY7Ozs7OztFQU1FLGNBQWM7QUNBaEI7O0FER0E7OztFQ0VFO0FER0Y7RUFDRSxjQUFjO0VBQ2QsZ0JBQWdCO0FDRGxCOztBRElBOytFQ0QrRTtBREkvRTs7O0VDQUU7QURLRjs7O0VBRU87RUFDTCxjQUFjO0FDRmhCOztBREtBOztFQ0RFO0FES0Y7OztFQ0RFO0FETUY7RUFDRSx1QkFBdUI7RUFBRTtFQUN6QixTQUFTO0VBQUU7RUFDWCxpQkFBaUI7RUFBRTtBQ0RyQjs7QURJQTs7O0VDQ0U7QURJRjsrRUNGK0U7QURLL0U7OztFQ0RFO0FETUY7RUFDRSw2QkFBNkI7RUFBRTtFQUMvQixxQ0FBcUM7RUFBRTtBQ0Z6Qzs7QURLQTs7O0VDQUU7QURLRjs7RUFFRSxnQkFBZ0I7QUNIbEI7O0FETUE7O0VDRkU7QURNRjtFQUNFLGtCQUFrQjtBQ0pwQjs7QURPQTs7O0VDRkU7QURPRjs7RUNKRTtBRFFGOztFQUVFLG9CQUFvQjtBQ050Qjs7QURTQTs7RUNMRTtBREFGOztFQVdFLG1CQUFtQjtBQ1ByQjs7QURVQTs7O0VDTEU7QURVRjs7OztFQUlFLGlGRXpHcUY7RUZ5R3JEO0VBQ2hDLGNBQWM7RUFBRTtBQ05sQjs7QURTQTs7RUNMRTtBRFNGO0VBQ0Usa0JBQWtCO0FDUHBCOztBRFVBOztFQ05FO0FEVUY7O0VDUEU7QURXRjtFQUNFLGNBQWM7RUFDZCxnQkFBZ0I7RUFBRTtBQ1JwQjs7QURXQTs7O0VDTkU7QURXRjs7RUFFRSxjQUFjO0VBQ2QsY0FBYztFQUNkLGtCQUFrQjtFQUNsQix3QkFBd0I7QUNUMUI7O0FEWUE7RUFDRSxlQUFlO0FDVGpCOztBRFlBO0VBQ0UsV0FBVztBQ1RiOztBRFlBOytFQ1QrRTtBRFkvRTs7RUNURTtBRGFGOztFQUVFLHFCQUFxQjtBQ1h2Qjs7QURjQTs7RUNWRTtBRGNGO0VBQ0UsYUFBYTtFQUNiLFNBQVM7QUNaWDs7QURlQTs7RUNYRTtBRGVGO0VBQ0Usa0JBQWtCO0FDYnBCOztBRGdCQTs7RUNaRTtBRGdCRjtFQUNFLGdCQUFnQjtBQ2RsQjs7QURpQkE7K0VDZCtFO0FEaUIvRTs7O0VDYkU7QURrQkY7Ozs7O0VBS0Usb0JBQW9CO0VBQUU7RUFDdEIsa0JBQWtCO0VBQUU7RUFDcEIsb0JBQW9CO0VBQUU7RUFDdEIsU0FBUztFQUFFO0FDWmI7O0FEZUE7OztFQ1ZFO0FEZUY7O0VBQ1E7RUFDTixpQkFBaUI7QUNabkI7O0FEZUE7OztFQ1ZFO0FEZUY7O0VBQ1M7RUFDUCxvQkFBb0I7QUNadEI7O0FEZUE7Ozs7RUNURTtBRGVGOzs7O0VBSUUsMEJBQTBCO0VBQUU7QUNaOUI7O0FEZUE7O0VDWEU7QURlRjs7OztFQUlFLGtCQUFrQjtFQUNsQixVQUFVO0FDYlo7O0FEZ0JBOztFQ1pFO0FEaUJGOztFQ2RFO0FEa0JGO0VBQ0UsU0FBUztFQUNULFNBQVM7RUFDVCxVQUFVO0FDaEJaOztBRG1CQTs7Ozs7RUNaRTtBRG1CRjtFQUNFLHNCQUFzQjtFQUFFO0VBQ3hCLGNBQWM7RUFBRTtFQUNoQixjQUFjO0VBQUU7RUFDaEIsZUFBZTtFQUFFO0VBQ2pCLFVBQVU7RUFBRTtFQUNaLG1CQUFtQjtFQUFFO0FDWHZCOztBRGNBOzs7RUNURTtBRGNGO0VBQ0UscUJBQXFCO0VBQUU7RUFDdkIsd0JBQXdCO0VBQUU7QUNWNUI7O0FEYUE7O0VDVEU7QURhRjtFQUNFLGNBQWM7QUNYaEI7O0FEY0E7OztFQ1RFO0FBQ0Y7O0VEZUUsc0JBQXNCO0VBQUU7RUFDeEIsVUFBVTtFQUFFO0FDVmQ7O0FEYUE7O0VDVEU7QUFDRjs7RURjRSxZQUFZO0FDWGQ7O0FEY0E7OztFQ1RFO0FBQ0Y7RURjRSw2QkFBNkI7RUFBRTtFQUMvQixvQkFBb0I7RUFBRTtBQ1Z4Qjs7QURhQTs7RUNURTtBQUNGOztFRGNFLHdCQUF3QjtBQ1gxQjs7QURjQTs7O0VDVEU7QURjRjtFQUNFLDBCQUEwQjtFQUFFO0VBQzVCLGFBQWE7RUFBRTtBQ1ZqQjs7QURhQTsrRUNWK0U7QURhL0U7OztFQ1RFO0FEY0Y7O0VBRUUsY0FBYztBQ1poQjs7QURlQTs7RUNYRTtBRGVGO0VBQ0Usa0JBQWtCO0VBQ2xCLGFBQWE7QUNiZjs7QURnQkE7K0VDYitFO0FEZ0IvRTs7RUNiRTtBRGlCRjtFQUNFLHFCQUFxQjtBQ2Z2Qjs7QURrQkE7O0VDZEU7QURrQkY7RUFDRSxhQUFhO0FDaEJmOztBRG1CQTsrRUNoQitFO0FEbUIvRTs7RUNoQkU7QUFDRjtFRG9CRSxhQUFhO0FDbEJmOztBRXphQTs7O0VBR0UsbUJBQW1CO0FGNGFyQjs7QURuYUE7RUdMRSxzQkFBc0I7RUFDdEIsZUQ2RG1CO0VDNURuQixnQkQ2RG9CO0VDNURwQix3Q0FBd0M7QUY0YTFDOztBRDdaQTtFR1hFLGdCRENnQjtFQ0FoQixjRHFCd0M7RUNwQnhDLDJHRDZCaUQ7RUM1QmpELGlCRHNEZTtFQ3JEZixrQkFBa0I7RUFDbEIsa0NBQWtDO0FGNGFwQzs7QURqV0E7RUd2RUUsY0RqQnFCO0VDa0JyQixhQUFhO0VBQ2IscUJBQXFCO0FGNGF2Qjs7QUUvYUE7RUNyQkUsK0NGS3FCO0FEbWN2Qjs7QUVuYkE7RUFhSSxjREdzQztFQ0Z0QywwQkFBMEI7QUYwYTlCOztBRXhiQTtFQWtCSSxjRER3QztBRDJhNUM7O0FJamRBOzs7Ozs7RUFNRSxjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLGdCQUFnQjtFQUNoQixtQkFBbUI7RUFDbkIsYUFBYTtBSm9kZjs7QUlsZEE7Ozs7OztFQU1FLGdCQUFnQjtBSnFkbEI7O0FJbmRBOztFQUVFLGVBQWU7QUpzZGpCOztBSXBkQTs7RUFFRSxpQkFBaUI7QUp1ZG5COztBSXJkQTs7RUFFRSxpQkFBaUI7QUp3ZG5COztBSXRkQTs7RUFFRSxpQkFBaUI7QUp5ZG5COztBSXZkQTs7RUFFRSxlQUFlO0FKMGRqQjs7QUl4ZEE7O0VBRUUsZ0JBQWdCO0FKMmRsQjs7QUl2ZEE7RUFDRSxrQkgwQmtCO0FEZ2NwQjs7QUl0ZEE7OztFQUdFLCtCQUErQjtBSnlkakM7O0FJdGRBO0VBQ0UsNkJBQW1DO0VBQ25DLFlBQVk7RUFDWixxQkFBcUI7QUp5ZHZCOztBSXRkQTtFQy9ERSxxQkpxRFk7RUlwRFosaUJBQWlCO0VBQ2pCLG9CQUFvQjtFQUlwQixtQkpPa0I7RUlObEIsV0pPZ0I7RUdvRGhCLGlCSEtrQjtBRHVkcEI7O0FJemRBO0VDL0RFLG1CSjJCdUI7RUkxQnZCLGNKNEJ3QztFR29DeEMsb0NBQTBEO0VBQzFELHFCSG5CWTtFR29CWix5QkFBMEI7QUo2ZDVCOztBSXpkQTtFQUNFLGlDSDNEc0M7RUc0RHRDLGNBQWM7RUFDZCxzQkh2Qlk7QURtZmQ7O0FJL2RBO0VBTUksZ0JBQWdCO0FKNmRwQjs7QUl4ZEE7O0VBRUUsOEJIakNZO0VHa0NaLFVBQVU7QUoyZFo7O0FJOWRBOzs7O0VBT0ksOEJIdENVO0FEb2dCZDs7QUlyZUE7O0VBV0ksa0JINUNVO0FEMmdCZDs7QUkzZEE7RUFDRSx1QkFBdUI7QUo4ZHpCOztBSS9kQTtFQUlJLHVCQUF1QjtBSitkM0I7O0FJM2RBO0VBQ0UsMEJBQTBCO0FKOGQ1Qjs7QUkvZEE7RUFJSSw0QkFBNEI7QUorZGhDOztBSTNkQTtFQUVJLGlCQUFpQjtBSjZkckI7O0FJL2RBO0VBS0kseUJBQTJCO0FKOGQvQjs7QU0zbEJBOzs7O0VBSUUsaUtMeUNpRDtBRHFqQm5EOztBTTNsQkE7O0VBRUUscUtMb0NpRDtBRDBqQm5EOztBTTNsQkE7O0VBRUUsdUxMK0JpRDtBRCtqQm5EOztBTTNsQkE7O0VBRUUsNEhMMEJpRDtBRG9rQm5EOztBTTNsQkE7Ozs7OztFQUtJLDRCQUFrQztFQUNsQyxxQkFBcUI7QU4rbEJ6Qjs7QU1ybUJBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpQkksbUJBQW1CO0FOK21CdkI7O0FPdHBCQTtFQUNFLHlCQUF5QjtFQUN6QixpQkFBaUI7RUFDakIsV0FBVztFQUlULGdCQUFnQjtBUHNwQnBCOztBTzdwQkE7RUFhUSxtQk5VNEI7QUQwb0JwQzs7QU9qcUJBO0VBdUJVLG1CTkMyQjtBRDZvQnJDOztBT3JxQkE7RUFpQ1UsbUJOVDJCO0FEaXBCckM7O0FPenFCQTtFQXlDSSxjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLHNCQUFzQjtFQUN0QixtQkFBbUI7QVBvb0J2Qjs7QU9ockJBOztFQWlESSxvQ043Qm9DO0VNOEJwQyxzQk5NVTtBRDhuQmQ7O0FPdHJCQTtFQXFESSwyQk5DVTtBRG9vQmQ7O0FRMXJCQTtFQUNFLGdCQUFnQjtFQUNoQixnQlBhZ0I7RU9aaEIsNkJQR3FCO0VPRnJCLHFCUGtEWTtFT2pEWixjUENxQjtFT0FyQixlQUFlO0VBQ2YscUJBQXFCO0VBQ3JCLGlCUCtEZTtFTzlEZixjUHNEYTtFT3JEYixtQlBnRWtCO0VPL0RsQixhQUFhO0VBQ2IsdUJQNENZO0VPM0NaLGtCQUFrQjtFQUNsQixxQkFBcUI7RUFDckIsaUVBQWlFO0VBQ2pFLGlCQUFpQjtFQUNqQixzQkFBc0I7RUFDdEIsbUJBQW1CO0FSNnJCckI7O0FRL3NCQTtFTENFLCtDRktxQjtBRDZzQnZCOztBUW50QkE7RUF3QkksbUJQZjRDO0VPZ0I1QyxxQlBsQjJDO0VPbUIzQyxxQkFBcUI7QVIrckJ6Qjs7QVF6dEJBO0VBOEJJLG1CUHZCMkM7RU93QjNDLHFCQUE2QztFQUM3QyxXUGpCYztFT2tCZCxxQkFBcUI7QVIrckJ6Qjs7QVFodUJBO0VBb0NRLHlCUHJCVTtFT3NCVix1QlB0QlU7QURzdEJsQjs7QVFydUJBO0VBNENJLGVBQWU7RUFDZixXQUFXO0VBQ1gsb0JBQW9CO0FSNnJCeEI7O0FRM3VCQTtFQW1ESSxtQlA3Q21CO0VPOENuQixxQlA3QzJDO0VPOEMzQyxXUHRDYztBRGt1QmxCOztBUWp2QkE7RUF3RE0sbUJBQTJDO0VBQzNDLHFCQUE2QztFQUM3QyxXUDNDWTtBRHd1QmxCOztBUXZ2QkE7RUE4RE0sbUJBQTJDO0VBQzNDLHFCQUE2QztFQUM3QyxXUGpEWTtBRDh1QmxCOztBUTd2QkE7RUFvRVEseUJQckRVO0VPc0RWLHVCUHREVTtBRG12QmxCOztBUWx3QkE7RUNDRSxtQlIyQnFCO0VRMUJyQixxQkFBZ0M7RUFDaEMsV1JZZ0I7QUR5dkJsQjs7QVNwd0JFO0VOSEEsK0NGMkJxQjtBRGd2QnZCOztBU3J3QkU7RUFFRSxtQkFBOEI7RUFDOUIscUJBQWdDO0VBQ2hDLFdSSWM7QURtd0JsQjs7QVNyd0JFO0VBRUUsbUJBQThCO0VBQzlCLHFCQUFpQztFQUNqQyxXUkZjO0FEeXdCbEI7O0FTcHdCSTtFQUNFLHlCUk5ZO0VRT1osdUJSUFk7QUQ4d0JsQjs7QVE3eEJBO0VDQ0UsbUJSNkJtQjtFUTVCbkIscUJBQWdDO0VBQ2hDLFdSWWdCO0FEb3hCbEI7O0FTL3hCRTtFTkhBLDhDRjZCbUI7QUR5d0JyQjs7QVNoeUJFO0VBRUUsbUJBQThCO0VBQzlCLHFCQUFnQztFQUNoQyxXUkljO0FEOHhCbEI7O0FTaHlCRTtFQUVFLG1CQUE4QjtFQUM5QixxQkFBaUM7RUFDakMsV1JGYztBRG95QmxCOztBUy94Qkk7RUFDRSx5QlJOWTtFUU9aLHVCUlBZO0FEeXlCbEI7O0FReHpCQTtFQXFGSSx1QkFBdUI7RUFDdkIseUJBQXlCO0VBQ3pCLGNQakZtQjtBRHd6QnZCOztBUTl6QkE7RUE0Rk0sY1B0RG9DO0FENHhCMUM7O0FRbDBCQTtFQWtHSSxpQlAxQmdCO0VPMkJoQixjUHRDVztFT3VDWCx1QlBiZ0M7QURpdkJwQzs7QVF4MEJBO0VBd0dJLGlCUC9CZ0I7RU9nQ2hCLFlQekNVO0VPMENWLHVCUGxCZ0M7QURzdkJwQzs7QVE5MEJBO0VBK0dJLGNBQWM7RUFDZCxXQUFXO0FSbXVCZjs7QVFuMUJBO0VBcUhJLGFQdERXO0VPdURYLGVBQWU7RUFDZixnQkFBZ0I7QVJrdUJwQjs7QVF6MUJBO0VBMEhNLGFQN0RTO0FEZ3lCZjs7QVE3MUJBO0VBOEhNLFdQOURRO0FEaXlCZDs7QVFqMkJBO0VBb0lJLHVCQUF1QjtFQUN2QixTQUFTO0VBQ1QsbUJBQW1CO0VBQ25CLFlQNUVTO0VPNkVULG1CUDlFVTtFTytFVixtQlBsRlU7RU9tRlYsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixlUHRGVTtFT3VGVixxQkFBcUI7RUFDckIsV1BuRlM7QURvekJiOztBUS8yQkE7RUFrSk0sb0NQM0g4QjtFTzRIOUIsWUFBWTtBUml1QmxCOztBUXAzQkE7RUF1Sk0sZ0JBQWdCO0FSaXVCdEI7O0FRM3RCQTtFQUNFLG9CQUFvQjtFQUNwQixlQUFlO0FSOHRCakI7O0FRaHVCQTtFQUtJLGNBQWM7QVIrdEJsQjs7QVFwdUJBO0VBT00sNkJBQTZCO0VBQzdCLDBCQUEwQjtBUml1QmhDOztBUXp1QkE7RUFXTSxnQkFBZ0I7RUFDaEIscUJQcEhTO0FEczFCZjs7QVE5dUJBO0VBZU0sNEJBQTRCO0VBQzVCLHlCQUF5QjtFQUN6QixxQlB6SFM7QUQ0MUJmOztBUXB2QkE7RUF1Qk0sVVByRU07QURzeUJaOztBUXh2QkE7RUE0QkksYUFBYTtBUmd1QmpCOztBUTV2QkE7RUErQk0sV0FBVztBUml1QmpCOztBVTc1QkE7RUFFSSxxQlRzRFU7QUR5MkJkOztBRGhuQkE7RVcxU0UscUJUbURZO0FEMjJCZDs7QUR2bUJBO0VXblRFLGlCVDhEa0I7RVM3RGxCLGdCQUFnQjtFQUNoQixxQlQ2Q1k7QURpM0JkOztBVTE1QkE7RUFDRSxjQUFjO0VBQ2QsbUJUdURrQjtFU3REbEIsaUJBQTZDO0FWNjVCL0M7O0FVaDZCQTtFQU1JLGlCVGlEZ0I7RVNoRGhCLGlCQUFnRDtBVjg1QnBEOztBVXI2QkE7RUFXSSxpQlQ2Q2dCO0VTNUNoQixpQkFBZ0Q7QVY4NUJwRDs7QVV6NUJBO0VBQ0UsZ0JBQWdCO0VBQ2hCLGdCVHJCZ0I7RVNzQmhCLHNCQUFzQjtFQUN0Qiw2QlRqQjRDO0VTa0I1QyxxQlRlWTtFU2RaLGNUSndDO0VTS3hDLGNBQWM7RUFDZCxpQlQ2QmU7RVM1QmYsY1RvQmE7RVNuQmIsbUJUOEJrQjtFUzdCbEIsZUFBZTtFQUNmLGFBQWE7RUFDYix1QlRTWTtFU1JaLGtCQUFrQjtFQUNsQixpRUFBaUU7RUFDakUsV0FBVztBVjQ1QmI7O0FVNTZCQTtFUGpDRSwrQ0ZLcUI7RVMrQ25CLHFCVC9DbUI7QUQ2OEJ2Qjs7QVVqN0JBO0VBc0JJLGNUeENrQztBRHU4QnRDOztBVXI3QkE7RUEyQkksaUJUV2dCO0VTVmhCLGNURFc7RVNFWCx1QlR3QmdDO0FEczRCcEM7O0FVMzdCQTtFQWlDSSxpQlRNZ0I7RVNMaEIsWVRKVTtFU0tWLHVCVG1CZ0M7QUQyNEJwQzs7QVVqOEJBO0VBdUNJLHFCQUFxQjtFQUNyQixzQkFBc0I7RUFDdEIsV0FBVztBVjg1QmY7O0FVdjhCQTtFQThDSSxZQUFZO0FWNjVCaEI7O0FVeDVCQTtFQUlJLFlBQVk7QVZ3NUJoQjs7QVVuNUJBO0VBQ0UsY1QvRW9DO0VTZ0ZwQyxpQlR4QmtCO0VTeUJsQixrQlQxQ1k7QURnOEJkOztBVXA1QkU7O0VBRUUsY1R6RW1CO0FEZytCdkI7O0FVcDVCRTs7RUFFRSxjVDVFaUI7QURtK0JyQjs7QVVsNUJBO0VBQ0UsZ0JBQWdCO0VBQ2hCLDZCVDVGNEM7RVM2RjVDLHFCVDVEWTtFUzZEWixjQUFjO0VBQ2QsaUJUN0NlO0VTOENmLGNUdERhO0VTdURiLG1CVDVDa0I7RVM2Q2xCLGFBQWE7RUFDYix1QlRoRVk7RVNpRVosc0JBQXNCO0VBQ3RCLFdBQVc7RUFDWCxnQlQ1R2dCO0FEaWdDbEI7O0FVajZCQTtFUDlHRSwrQ0ZLcUI7RVN3SG5CLHFCVHhIbUI7QUQrZ0N2Qjs7QVV0NkJBO0VBa0JJLGFBQWE7QVZ3NUJqQjs7QVUxNkJBO0VBdUJJLGlCVDlEZ0I7RVMrRGhCLGNUMUVXO0VTMkVYLHNDVGpEZ0M7QUR3OEJwQzs7QVVoN0JBO0VBNkJJLGlCVG5FZ0I7RVNvRWhCLFlUN0VVO0VTOEVWLHNDVHREZ0M7QUQ2OEJwQzs7QVV0N0JBO0VBcUNJLFlBQVk7RUFDWix1QlQ3RlU7QURrL0JkOztBVTM3QkE7RUF5Q00sc0JUakdRO0FEdS9CZDs7QVUvN0JBO0VBNkNJLDBQQUFvUTtFQUNwUSxxQkFBc0Q7QVZzNUIxRDs7QVVqNUJBOztFQUVFLGtCQUFrQjtBVm81QnBCOztBVXQ1QkE7O0VBS0ksY1QzRXFCO0VTNEVyQixpQlQvRWtFO0VTZ0ZsRSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLDJCQUEyQjtFQUMzQixhVGhGcUI7RVNpRnJCLFVUOURRO0FEbzlCWjs7QVVsNUJBO0VBRUksYVQ5SFc7QURraENmOztBVXQ1QkE7RUFNSSxvQkFBeUQ7QVZvNUI3RDs7QVVoNUJBO0VBRUksY1R4SVc7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Qix5QkFBeUI7RUFDekIscUJUdFdTO0FEMHZDZjs7QVVuOEJBOzs7O0VBa0RNLFVUL1NNO0FEdXNDWjs7QVUxOEJBO0VBdURJLFdBQVc7QVZ1NUJmOztBVTk4QkE7RUEyREksb0JBQW9CO0FWdTVCeEI7O0FVaDVCRTs7O0VBRUUsbUJBQXdDO0VBQ3hDLHFCVHJabUI7QUR5eUN2Qjs7QVV2NUJFOzs7RVA3YUEsK0NGMkJxQjtBRCt5Q3ZCOztBVXA1QkU7OztFQUVFLG1CQUFzQztFQUN0QyxxQlQ1WmlCO0FEb3pDckI7O0FVMzVCRTs7O0VQdGJBLDhDRjZCbUI7QUQwekNyQjs7QVVwNUJFOzs7OztFQUdJLHFCVHphZTtBRGswQ3JCOztBVTU1QkU7Ozs7O0VBUU0sbUJUOWFhO0VTK2FiLHFCVC9hYTtBRDIwQ3JCOztBVXI2QkU7Ozs7O0VQbmNBLDhDRjZCbUI7RVNvYmIscUJUcGJhO0FEbzFDckI7O0FVejVCRTtFQUlNLG1CVC9iYTtFU2djYixxQlRoY2E7QUR5MUNyQjs7QVVsNUJBO0VBR00scUJUMWNlO0FENjFDckI7O0FVdDVCQTtFUHBlRSw4Q0Y2Qm1CO0VTNmNiLG1CQUFzQztBVnE1QjlDOztBVTM1QkE7RUFVUSxjVGpkYTtBRHMyQ3JCOztBVTk0QkE7OztFQUlJLHlCVGxlaUM7RVNtZWpDLG1CQUFtQjtFQUNuQixXQUFXO0FWZzVCZjs7QVU1NEJBO0VBRUkseUJUM2VnQztBRHkzQ3BDOztBVTE0QkE7RUFJTSxtQlRsZitCO0VTbWYvQixtQkFBbUI7RUFDbkIsV0FBVztBVjA0QmpCOztBVXI0QkE7RUFLUSxnQlR2Z0JVO0FEMjRDbEI7O0FVNzNCQTtFQUNFLGlCQUEwQjtBVmc0QjVCOztBVWo0QkE7RUFJSSxhQUFhO0VBQ2IsZUFBZTtBVmk0Qm5COztBVTUzQkE7RUFDRSxxQkFBcUI7QVYrM0J2Qjs7QVd2NkNBO0VOQ0UscUJKcURZO0VJcERaLGlCQUFpQjtFQUNqQixvQkFBb0I7RUFJcEIsbUJKaUJtQztFSWhCbkMsY01Ob0Q7RUFDcEQscUJBQXFCO0FYNjZDdkI7O0FXaDdDQTtFQU9JLG1CQUFtQjtFQUNuQixtQkFBbUI7RUFDbkIsb0JBQW9CO0FYNjZDeEI7O0FXdDdDQTtFTk9FLG1CSkRxQjtFSUVyQixXSk9nQjtBRDQ2Q2xCOztBVzM3Q0E7RU5PRSxtQkpFOEM7RUlEOUMsY0pGcUI7QUQwN0N2Qjs7QVdoOENBO0VOT0UsbUJKcUJxQjtFSXBCckIsV0pPZ0I7QURzN0NsQjs7QVdyOENBO0VOT0UsbUJKc0JxQjtFSXJCckIsV0pPZ0I7QUQyN0NsQjs7QVcxOENBO0VOT0UsbUJKdUJtQjtFSXRCbkIsV0pPZ0I7QURnOENsQjs7QVkvOENBO0VQQ0UscUJKcURZO0VJcERaLGlCQUFpQjtFQUNqQixvQkFBb0I7RUFJcEIsbUJPTCtEO0VQTS9ELGNKeUJrQjtFVzlCbEIsY0FBYztBWnE5Q2hCOztBWWw5Q0E7RUFDRSxxQlgrQ1k7RVc5Q1osY1g0QndDO0VXM0J4QyxrQkFBa0I7QVpxOUNwQjs7QVl4OUNBO0VBTUksY1hJa0M7RVdIbEMsd0JBQXdCO0VBQ3hCLGlCWDBEZ0I7RVd6RGhCLGtCQUFrQjtFQUNsQixhWHdDVTtFV3ZDVixXWHFDVTtBRGk3Q2Q7O0FZaitDQTtFQWVJLG1CWEVnQztFV0RoQyxjQUFjO0VBQ2QsY0FBYztFQUNkLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsYUFBYTtFQUNiLFdBQVc7QVpzOUNmOztBYWgvQ0E7RUFDRSxjQUFjO0VBQ2QsWUFBWTtFQUNaLGVBQWU7QWJtL0NqQjs7QWE5K0NBO0VBQ0UsaUJBQWlCO0FiaS9DbkI7O0FhOStDQTtFQUNFLG1CQUFtQjtBYmkvQ3JCOztBYTcrQ0E7RUFDRSxjQUFjO0VBQ2QsZ0JBQWdCO0VBQ2hCLFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsV0FBVztBYmcvQ2I7O0Fhci9DQTtFQU9JLFdBQVc7RUFDWCxjQUFjO0VBQ2Qsc0JBQXNCO0Fiay9DMUI7O0FhMy9DQTs7O0VBZUksU0FBUztFQUNULFNBQVM7RUFDVCxZQUFZO0VBQ1osT0FBTztFQUNQLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsTUFBTTtFQUNOLFdBQVc7QWJrL0NmOztBYTkr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QjtBckJvdUVwQjs7QXFCdnVFQTtFQU1JLGNwQldzQztFb0JWdEMscUJBQXFCO0VBQ3JCLFNBQVM7RUFDVCxpQkFBa0I7QXJCcXVFdEI7O0FxQjl1RUE7RUFZTSxvQnBCMkNRO0FEMnJFZDs7QXFCbHZFQTtFQWVRLGNwQkVrQztBRHF1RTFDOztBcUJ0dkVBO0VBcUJRLGNwQkprQztFb0JLbEMsWUFBWTtFQUNaLHFCcEJpQ007QURvc0VkOztBc0I1dkVBO0VBQ0UsbUJyQnVCbUM7RXFCdEJuQyxxQnJCb0RZO0VxQm5EWixhQUFhO0VBQ2IsaUJBQWlCO0VBQ2pCLGNyQnFEWTtFcUJwRFosV0FBVztBdEIrdkViOztBc0Jyd0VBO0VBU0ksY3JCOENVO0FEa3RFZDs7QXNCendFQTtFQWNJLG1CckJSbUI7RXFCU25CLFdyQkFjO0VxQkNkLGNBQWM7RUFDZCxpQnJCdURnQjtFcUJ0RGhCLGNBQWM7RUFDZCxtQnJCdUNVO0VxQnRDVixZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixRQUFRO0F0Qit2RVo7O0FzQnR4RUE7RUEwQk0saUNyQjRCUTtFcUIzQlIsOEJyQjJCUTtBRHF1RWQ7O0FzQjN4RUE7RUE4Qk0sa0NyQndCUTtFcUJ2QlIsK0JyQnVCUTtFcUJ0QlIsY0FBYztBdEJpd0VwQjs7QXNCM3ZFQTtFQUNFLGNyQmVZO0VxQmRaLGdCQUF5QjtFQUN6QixrQkFBa0I7QXRCOHZFcEI7O0FzQmp3RUE7RUFNSSxPQUFPO0VBQ1AsVUFBVTtFQUNWLGtCQUFrQjtBdEIrdkV0Qjs7QXNCdndFQTtFQVVNLG1CckJ4QitCO0VxQnlCL0IsVXJCOERNO0FEbXNFWjs7QXNCNXdFQTtFQWdCSSxtQnJCaERtQjtFcUJpRG5CLFNBQVM7RUFDVCxrQkFBa0I7RUFDbEIsY3JCQVU7RXFCQ1YsVUFBVTtFQUNWLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsUUFBUTtFQUNSLCtCQUErQjtFQUMvQixhckJOVTtBRHN3RWQ7O0FzQnp4RUE7RUE0Qk0sZ0NyQjVEaUI7QUQ2ekV2Qjs7QXVCbjBFQTtFQUNFLGdCdEJjZ0I7RXNCYmhCLDZCdEJrQnNDO0VzQmpCdEMscUJ0Qm1EWTtFc0JsRFosYUFBYTtFQUNiLHNCQUFzQjtBdkJzMEV4Qjs7QXVCMzBFQTs7O0VBVUksZXRCZ0RVO0VzQi9DVixpQkFBaUI7QXZCdTBFckI7O0F1QmwxRUE7OztFQWNNLHNCdEI0Q1E7QUQ4eEVkOztBdUJ4MUVBO0VBbUJJLGNBQWM7QXZCeTBFbEI7O0F1QjUxRUE7RUF1QkksbUJ0Qm1DVTtBRHN5RWQ7O0F1QmgyRUE7RUEwQk0sY0FBYztBdkIwMEVwQjs7QXVCcDJFQTtFQTZCUSw4QnRCeUJNO0VzQnhCTiwrQnRCd0JNO0FEbXpFZDs7QXVCejJFQTtFQW9DUSxpQ3RCa0JNO0VzQmpCTixrQ3RCaUJNO0FEd3pFZDs7QXdCOTJFQTtFQUNFLG1CQUFtQjtFQUNuQixtQnZCc0JtQztFdUJyQm5DLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsY0FBYztFQUNkLGN2QnNEYTtFdUJyRGIsbUJ2Qm1EWTtFdUJsRFosY3ZCOENZO0V1QjdDWixnQnZCc0ZzQjtFdUJyRnRCLGdCQUFnQjtFQUNoQixzQnZCNkNZO0V1QjVDWixxQkFBcUI7RUFDckIsdUJBQXVCO0VBQ3ZCLHNCQUFzQjtFQUN0QixtQkFBbUI7QXhCaTNFckI7O0F3Qmg0RUE7RUFrQkksbUJ2QlptQjtFdUJhbkIsV3ZCSmM7QURzM0VsQjs7QXdCcjRFQTtFQXVCSSxvQnZCaUNVO0V1QmhDVixvQnZCK0JVO0FEbTFFZDs7QXdCMTRFQTtFQTRCSSxrQkFBa0I7RUFDbEIsc0JBQXFCO0F4QmszRXpCOztBeUIvNEVBO0VBQ0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtBekJrNUVwQjs7QXlCcDVFQTtFQUtJLGlDQUFpQztFQUNqQyxhQUFhO0VBQ2IsT0FBTztFQUNQLGdCQUFnQjtFQUNoQixnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLFNBQVM7QXpCbTVFYjs7QXlCOTVFQTtFQWdCTSxVQUFVO0VBQ1YsUUFBUTtBekJrNUVkOztBeUJuNkVBOzs7RUF3QkksY0FBYztBekJpNUVsQjs7QXlCejZFQTtFQThCTSxrQ3hCd0JRO0V3QnZCUiwrQnhCdUJRO0FEdzNFZDs7QTBCOTZFQTtFQUNFLG1CekJzQmtDO0V5QnJCbEMscUJ6Qm9EWTtFeUJuRFosY3pCY3dDO0V5QmJ4QyxrQkFBa0I7RUFDbEIsc0J6QnlEYTtBRHczRWY7O0EwQnQ3RUE7RUFRSSxxQnpCa0RVO0FEZzRFZDs7QTBCMTdFQTs7RUFhSSxtQkFBNEI7QTFCazdFaEM7O0EwQi83RUE7RUFpQkksa0J6QnlDVTtBRHk0RWQ7O0EyQm44RUE7RXhCTUUsa0RGUWtCO0UwQlpsQixnQjFCYWdCO0UwQlpoQixxQjFCbURZO0UwQmxEWixnQkFBZ0I7RUFDaEIsU0FBUztFQUNULGdCMUJ3RnNCO0UwQnZGdEIsZTFCaURZO0UwQmhEWiw2QkFBeUM7RUFDekMsWTFCeUdZO0FENjFFZDs7QTJCLzhFQTtFQVlJLHVCQUF1QjtFQUN2QixnQkFBZ0I7QTNCdThFcEI7O0EyQnA5RUE7RUFpQkksYUFBYTtFQUNiLGlCMUJzQ1U7RTBCckNWLGtCQUFrQjtFQUNsQixxQkFBcUI7QTNCdThFekI7O0EyQjM5RUE7RUF1Qk0scUIxQitCUTtFMEI5QlIsY0FBYztFQUNkLGNBQWM7RUFDZCxpQjFCOEJRO0UwQjdCUixzQjFCNkJRO0UwQjVCUixxQkFBcUI7QTNCdzhFM0I7O0EyQnArRUE7RUErQlEsbUIxQnRCd0M7RTBCdUJ4QyxjMUIxQmU7QURtK0V2Qjs7QTJCeitFQTtFQW9DUSxtQjFCM0J3QztFMEI0QnhDLGMxQi9CZTtBRHcrRXZCOztBMkI5K0VBOzs7RUE0Q00sZ0JBQWlCO0EzQnc4RXZCOztBMkJwL0VBO0VBZ0RNLGtCMUJPUTtBRGk4RWQ7O0EyQngvRUE7RUFxREksbUJBQW1CO0VBQ25CLGFBQWE7RUFDYixZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixNQUFNO0EzQnU4RVY7O0EyQmpnRkE7RUE2RE0sb0IxQkxRO0FENjhFZDs7QTRCcmdGQTtFQUNFLG1CQUFtQjtFQUNuQixTQUFTO0VBQ1QsYUFBYTtFQUNiLHVCQUF1QjtFQUN2QixPQUFPO0VBQ1AsVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixlM0JnRFk7RTJCL0NaLGVBQWU7RUFDZixRQUFRO0VBQ1IsTUFBTTtBNUJ3Z0ZSOztBNEJuaEZBO0VBZUksYUFBYTtFQUNiLFVBQVU7RUFDVixZM0JrR1U7QURzNkVkOztBNEJ6aEZBO0VBb0JNLHFDM0JHOEI7RTJCRjlCLFNBQVM7RUFDVCxlQUFlO0VBQ2YsY0FBYztFQUNkLE9BQU87RUFDUCxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLE1BQU07QTVCeWdGWjs7QTRCcGlGQTtFQStCTSxnQ0FBZ0M7RUFDaEMsVTNCK0VNO0FEMDdFWjs7QTRCemlGQTtFQXNDTSxnQjNCeURrQjtFMkJ4RGxCLGlCM0JpQlE7QURzL0VkOztBNEI5aUZBO0VBNkNNLGdCM0I5Qlk7QURtaUZsQjs7QTRCbGpGQTtFQWlETSxnQkFBZ0I7RUFDaEIsZ0IzQitDa0I7QURzOUV4Qjs7QTRCaGdGQTtFekJqREUsaURGUWtCO0UyQjJDbEIsZ0IzQjFDZ0I7RTJCMkNoQixxQjNCSlk7RTJCS1osYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixnQkFBZ0I7RUFDaEIsZ0IzQmtDc0I7RTJCakN0QixpQjNCTFk7RTJCTVosV0FBVztBNUJtZ0ZiOztBNEI1Z0ZBO0VBWUksaUJBQWlCO0E1Qm9nRnJCOztBNEJoaEZBO0VBZ0JJLGMzQnpEZ0I7RTJCMERoQixlM0JkVTtBRGtoRmQ7O0E0QnJoRkE7RUFxQkksZ0JBQWdCO0VBQ2hCLGUzQm5CVTtFMkJvQlYsa0JBQWtCO0E1Qm9nRnRCOztBNEIzaEZBO0VBMkJJLGUzQnhCVTtFMkJ5QlYsaUJBQWlCO0E1Qm9nRnJCOztBNkJ2bEZBO0VBQ0UsYUFBYTtFQUNiLHNCQUFzQjtFQUN0QixnQkFBZ0I7RUFDaEIsZ0JBQWlCO0E3QjBsRm5COztBNkI5bEZBO0VBUU0sYzVCU29DO0U0QlJwQyxzQjVCK0NRO0U0QjlDUixxQkFBcUI7QTdCMGxGM0I7O0E2QnBtRkE7RUFhUSxjNUJQZTtBRGttRnZCOztBNkJ4bUZBO0VBa0JRLGNBQW9DO0VBQ3BDLGlCQUFpQjtBN0IwbEZ6Qjs7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ejZGQTtFQ0NFLGtDckNha0I7RXFDWmxCLHFCckNZa0I7RW9DWmxCLDZCcENZa0I7RW9DWGxCLHFCcENtRFk7RW9DbERaLFdwQ1dnQjtFb0NWaEIsY0FBYztFQUNkLGVwQ2tEWTtFb0NqRFosV0FBVztBckM2NkZiOztBcUNwN0ZBO0VDQ0UsbUNyQ0txQjtFcUNKckIscUJyQ0lxQjtBRG03RnZCOztBcUN6N0ZBO0VDQ0UsbUNyQzJCcUI7RXFDMUJyQixxQnJDMEJxQjtBRGs2RnZCOztBcUM5N0ZBO0VDQ0UsbUNyQzRCcUI7RXFDM0JyQixxQnJDMkJxQjtBRHM2RnZCOztBcUNuOEZBO0VDQ0Usa0NyQzZCbUI7RXFDNUJuQixxQnJDNEJtQjtBRDA2RnJCOztBcUN4OEZBO0VBMEJJLFdwQ1hjO0VvQ1lkLDBCQUEwQjtBckNrN0Y5Qjs7QXFDNzhGQTtFQWlDTSxZQUFZO0FyQ2c3RmxCOztBcUNqOUZBO0VBc0NJLGNwQ2dCVTtBRCs1RmQ7O0FxQ3I5RkE7RUEyQ00sZ0JBQWdCO0FyQzg2RnRCOztBdUN6OUZBO0VBQ0Usa0JBQWtCO0F2QzQ5RnBCOztBdUM3OUZBO0VBR0ksa0N0Q1dnQjtFc0NWaEIscUJ0Q2tEVTtFc0NqRFYsWUFBWTtFQUNaLFd0Q1NjO0VzQ1JkLDJCQUEyQjtFQUMzQixjQUFjO0VBQ2QsaUJ0QytEZ0I7RXNDOURoQixTQUFTO0VBQ1QsZ0J0Q29Gb0I7RXNDbkZwQixVQUFVO0VBQ1YsZ0JBQWdCO0VBQ2hCLHNCdEMwQ1U7RXNDekNWLG9CQUFvQjtFQUNwQixrQkFBa0I7RUFDbEIsdUJBQXVCO0VBQ3ZCLGtDQUFtQztFQUNuQyxzQ0FBc0M7RUFDdEMsZ0JBQWdCO0VBQ2hCLFl0QzZGVTtBRGk0RmQ7O0F1Q24vRkE7RUEwQk0sVUFBVTtFQUNWLG1DQUFvQztBdkM2OUYxQzs7QXVDeC9GQTtFQWdDSSxvQkFBb0I7QXZDNDlGeEI7O0F1QzUvRkE7RUFxQ00sV0FBVztFQUNYLFVBQVU7RUFDVixrQ0FBbUM7QXZDMjlGekM7O0F1Q2xnR0E7RUE0Q1EsaUNBQWtDO0F2QzA5RjFDOztBdUN0Z0dBO0VB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QXFEM3ZIQTtFQWtFUSxxQnBEeEQyQztFb0R5RDNDLGNwRDdEZTtBRDB2SHZCOztBcURod0hBO0VsRENFLCtDRktxQjtBRDh2SHZCOztBcURwd0hBO0VBNEVRLG1CcERqRTZDO0VvRGtFN0MscUJwRG5FMkM7RW9Eb0UzQyxjcER4RWU7RW9EeUVmLHFCQUFxQjtBckQ0ckg3Qjs7QXFEM3dIQTtFQW1GUSxtQnBENUV1QztFb0Q2RXZDLHFCQUE2QztFQUM3QyxXcER0RVU7QURrd0hsQjs7QXFEanhIQTtFQTJGVSxrQkFBa0I7RUFDbEIsUUFBUTtFQUNSLFVBQVU7RUFDViwrQkFBK0I7QXJEMHJIekM7O0FxRHh4SEE7OztFQXVHUSxlQUFlO0VBQ2YsWUFBWTtFQUNaLG9CQUFvQjtBckR1ckg1Qjs7QXFEaHlIQTs7O0VBaUhRLFlBQVk7QXJEcXJIcEI7O0FxRHR5SEE7RUF1SEksa0JBQWtCO0FyRG1ySHRCOztBcUQxeUhBO0VBMEhNLG1CcERqSDBDO0VvRGtIMUMsV0FBVztFQUNYLGNwRC9EUztFb0RnRVQsT0FBTztFQUNQLGtCQUFrQjtFQUNsQixRQUFRO0VBQ1IsUUFBUTtFQUNSLDJCQUEyQjtBckRvckhqQzs7QXFEcnpIQTtFQXFJUSxTQUFTO0FyRG9ySGpCOztBcUR6ekhBO0VBMElRLFVBQVU7QXJEbXJIbEI7O0FxRDd6SEE7RUFpSlEsbUJwRDFJdUM7RW9EMkl2QyxxQkFBNkM7RUFDN0MsV3BEcElVO0FEb3pIbEI7O0FxRG4wSEE7RUF3Sk0sY3BEbEppQjtBRGkwSHZCOztBcUR2MEhBO0VBK0pNLFVBQVU7QXJENHFIaEI7O0FxRDMwSEE7RUFrS1Esb0NwRDlJZ0M7RW9EK0loQyxtQ3BEL0lnQztFb0RnSmhDLGFBQWE7RUFDYixzQkFBc0I7RUFDdEIsY0FBYztFQUNkLFVBQVU7QXJENnFIbEI7O0FxRHAxSEE7RUEwS1UsZUFBZTtBckQ4cUh6Qjs7QXFEeDFIQTtFQTZLVSxnQkFBZ0I7QXJEK3FIMUI7O0FxRDUxSEE7RUFtTE0sb0JBQW9CO0VBQ3BCLGNwRHZIUztFb0R3SFQsb0JwRDlIUTtFb0QrSFIs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O0E3RDA3SWpCOztBNkRuOElBO0VBY00sb0JBQW9CO0E3RHk3STFCOztBNkR2OElBO0VBb0JJLHdCQUF3QjtFQUN4QixtQjVEaEJtQjtFNERpQm5CLFNBQVM7RUFDVCxrQkFBa0I7RUFDbEIsYzVEZ0NVO0U0RC9CVixvQkFBb0M7RUFDcEMseUJBQXlCO0VBQ3pCLGE1RDZCVTtBRDA1SWQ7O0E2RGw5SUE7RUE4QkksbUI1RHpCbUI7RTREMEJuQixTQUFTO0VBQ1Qsa0JBQWtCO0VBQ2xCLGM1RHVCVTtFNER0QlYseUJBQXlCO0VBQ3pCLGE1RHFCVTtBRG02SWQ7O0E2RDM5SUE7RUFzQ0ksbUI1RGpDbUI7RTREa0NuQixTQUFTO0VBQ1Qsa0JBQWtCO0VBQ2xCLGM1RGVVO0U0RGRWLHlCQUF5QjtFQUN6QixhNURhVTtBRDQ2SWQ7O0E2RHArSUE7RUFnRE0sc0JBQXNCO0E3RHc3STVCOztBNkR4K0lBO0VBbURNLHNCQUFzQjtBN0R5N0k1Qjs7QTZENStJQTtFQXNETSxzQkFBc0I7QTdEMDdJNUI7O0E2RGgvSUE7RUE2RE0sbUI1RDVDc0M7RTRENkN0QyxtQkFBbUI7QTdEdTdJekI7O0E2RHIvSUE7RUFpRU0sbUI1RGhEc0M7RTREaUR0QyxtQkFBbUI7QTdEdzdJekI7O0E2RDEvSUE7RUFxRU0sbUI1RHBEc0M7RTREcUR0QyxtQkFBbUI7QTdEeTdJekI7O0E2RC8vSUE7RUE0RUksbUI1RHJEaUM7RTREc0RqQyxxQjVEeEJVO0U0RHlCVixjNUR6QlU7RTREMEJWLFdBQVc7QTdEdTdJZjs7QTZEdGdKQTtFQWtGSSxtQjVEM0RpQztFNEQ0RGpDLHFCNUQ5QlU7RTREK0JWLGM1RC9CVTtFNERnQ1YsV0FBVztBN0R3N0lmOztBNkQ3Z0pBO0VBd0ZJLG1CNURqRWlDO0U0RGtFakMscUI1RHBDVTtFNERxQ1YsYzVEckNVO0U0RHNDVixXQUFXO0E3RHk3SWY7O0E2RHBoSkE7RUE4RkksbUI1RHpGbUI7QURtaEp2Qjs7QThEemhKQTtFQUVJLGFBQWE7RUFDYixxQjdEeURXO0U2RHhEWCxrQkFBa0I7QTlEMmhKdEI7O0E4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LDZSQU9xRjtFQUNyRixpU0FPd0Y7RUFDeEYsNEJBQTRCO0VBQzVCLHVCQUF1QjtFQUN2QiwyREFBMkQ7RUFFM0Q7RUFDQSxtREFBbUQ7QWxFMDBKckQ7O0FtRXAySkE7RUFDRSxVQUFVO0VBQ1Ysa0JBQWtCO0VBQ2xCLFFBQVE7RUFDUixTQUFTO0VBQ1QsZ0NBQWdDO0FuRXUySmxDOztBdUIzMkpBO0U0Q1FFLHFCQUFxQjtBbkV1Mkp2Qjs7QW1FcDJKQTtFQUNFLHFCQUFvQjtBbkV1Mkp0Qjs7QW1FcDJKQTtFQUNFLGFBQWE7QW5FdTJKZjs7QUF4MkpBO0VBQ0Usd0JBQXdCO0VBQ3hCLGdCQUFnQjtFQUNoQixNQUFNO0FBMjJKUjs7QW1FbDNKQTtFbkVXRSxnQkFBZ0I7RUFDaEIsY0FBYztBQTIySmhCIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBWYXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuXG4vKiEgU3BlY3RyZS5jc3MgdiN7JHZlcnNpb259IHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL3BpY3R1cmVwYW4yL3NwZWN0cmUgKi9cbi8vIFJlc2V0IGFuZCBkZXBlbmRlbmNpZXNcbkBpbXBvcnQgXCJub3JtYWxpemVcIjtcbkBpbXBvcnQgXCJiYXNlXCI7XG5cbi8vIEVsZW1lbnRzXG5AaW1wb3J0IFwidHlwb2dyYXBoeVwiO1xuQGltcG9ydCBcImFzaWFuXCI7XG5AaW1wb3J0IFwidGFibGVzXCI7XG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwibGFiZWxzXCI7XG5AaW1wb3J0IFwiY29kZXNcIjtcbkBpbXBvcnQgXCJtZWRpYVwiO1xuXG4vLyBMYXlvdXRcbkBpbXBvcnQgXCJsYXlvdXRcIjtcbkBpbXBvcnQgXCJoZXJvXCI7XG5AaW1wb3J0IFwibmF2YmFyXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJhY2NvcmRpb25zXCI7XG5AaW1wb3J0IFwiYXZhdGFyc1wiO1xuQGltcG9ydCBcImJhZGdlc1wiO1xuQGltcG9ydCBcImJyZWFkY3J1bWJzXCI7XG5AaW1wb3J0IFwiYmFyc1wiO1xuQGltcG9ydCBcImNhcmRzXCI7XG5AaW1wb3J0IFwiY2hpcHNcIjtcbkBpbXBvcnQgXCJkcm9wZG93bnNcIjtcbkBpbXBvcnQgXCJlbXB0eVwiO1xuQGltcG9ydCBcIm1lbnVzXCI7XG5AaW1wb3J0IFwibW9kYWxzXCI7XG5AaW1wb3J0IFwibmF2c1wiO1xuQGltcG9ydCBcInBhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJwYW5lbHNcIjtcbkBpbXBvcnQgXCJwb3BvdmVyc1wiO1xuQGltcG9ydCBcInN0ZXBzXCI7XG5AaW1wb3J0IFwidGFic1wiO1xuQGltcG9ydCBcInRpbGVzXCI7XG5AaW1wb3J0IFwidG9hc3RzXCI7XG5AaW1wb3J0IFwidG9vbHRpcHNcIjtcblxuLy8gVXRpbGl0eSBjbGFzc2VzXG5AaW1wb3J0IFwiYW5pbWF0aW9uc1wiO1xuQGltcG9ydCBcInV0aWxpdGllc1wiO1xuIiwiLyogTWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyAqL1xuLyogbm9ybWFsaXplLmNzcyB2NS4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5tYWluIHsgLyogMSAqL1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDggKHJlbW92ZWQpLlxuICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy4gKHJlbW92ZWQpXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwO1xufVxuXG4vKipcbiAqIE1vZGlmeSBkZWZhdWx0IHN0eWxpbmcgb2YgYWRkcmVzcy5cbiAqL1xuXG5hZGRyZXNzIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuIChyZW1vdmVkKVxuICovXG5cbi8qKlxuICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkbW9uby1mb250LWZhbWlseTsgLyogMSAoY2hhbmdlZCkgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gKi9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS4gKFJlbW92ZWQpXG4gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBmb250LXdlaWdodDogNDAwOyAvKiAoYWRkZWQpICovXG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyoqXG4gKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKGNoYW5nZWQpICovXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgLyogMSAoY2hhbmdlZCkgKi9cbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IC8qIDEgKGNoYW5nZWQpICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZSAocmVtb3ZlZCkuXG4gKi9cblxuXG4vKipcbiAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpIChjaGFuZ2VkKS5cbiAqL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMsIC8qIDEgKi9cbm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4vKiBTY3JpcHRpbmdcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogSGlkZGVuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvL0BpbXBvcnQgJy4vY29tcG9uZW50cy9mb250cyc7XG4vL0BpbXBvcnQgJy4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9idWxtYS9idWxtYSc7XG5cbi8vdGltZWxpbmVcbi8vQGltcG9ydCAnLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2J1bG1hLXRpbWVsaW5lL3NyYy9zYXNzL2luZGV4JztcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL3NwZWN0cmVcIjtcbkBpbXBvcnQgXCIuLi8uLi9ub2RlX21vZHVsZXMvc3BlY3RyZS5jc3Mvc3JjL3NwZWN0cmUtZXhwXCI7XG5cblxuQGltcG9ydCBcImNvbXBvbmVudHMvZm9udHNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2xvZ2luXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9zY3JvbGxib3gtc2hhZG93XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy90aW1lbGluZVwiO1xuXG5AaW1wb3J0IFwiLi4vLi4vbm9kZV9tb2R1bGVzL3BseXIvZGlzdC9wbHlyLmNzc1wiO1xuXG4uc3RpY2t5e1xuICBwb3NpdGlvbjogLXdlYmtpdC1zdGlja3k7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbn1cblxuLmNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDk2MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuXG4iLCIvLyBDb3JlIHZhcmlhYmxlc1xuJHZlcnNpb246IFwiMC41LjlcIjtcblxuLy8gQ29yZSBmZWF0dXJlc1xuJHJ0bDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIENvcmUgY29sb3JzXG4kcHJpbWFyeS1jb2xvcjogIzU3NTVkOSAhZGVmYXVsdDtcbiRwcmltYXJ5LWNvbG9yLWRhcms6IGRhcmtlbigkcHJpbWFyeS1jb2xvciwgMyUpICFkZWZhdWx0O1xuJHByaW1hcnktY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDMlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3I6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDM3LjUlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3ItZGFyazogZGFya2VuKCRzZWNvbmRhcnktY29sb3IsIDMlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJHNlY29uZGFyeS1jb2xvciwgMyUpICFkZWZhdWx0O1xuXG4vLyBHcmF5IGNvbG9yc1xuJGRhcmstY29sb3I6ICMzMDM3NDIgIWRlZmF1bHQ7XG4kbGlnaHQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS1jb2xvcjogbGlnaHRlbigkZGFyay1jb2xvciwgNTUlKSAhZGVmYXVsdDtcbiRncmF5LWNvbG9yLWRhcms6IGRhcmtlbigkZ3JheS1jb2xvciwgMzAlKSAhZGVmYXVsdDtcbiRncmF5LWNvbG9yLWxpZ2h0OiBsaWdodGVuKCRncmF5LWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG4kYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRkYXJrLWNvbG9yLCA2NSUpICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvci1kYXJrOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJGJvcmRlci1jb2xvciwgOCUpICFkZWZhdWx0O1xuJGJnLWNvbG9yOiBsaWdodGVuKCRkYXJrLWNvbG9yLCA3NSUpICFkZWZhdWx0O1xuJGJnLWNvbG9yLWRhcms6IGRhcmtlbigkYmctY29sb3IsIDMlKSAhZGVmYXVsdDtcbiRiZy1jb2xvci1saWdodDogJGxpZ2h0LWNvbG9yICFkZWZhdWx0O1xuXG4vLyBDb250cm9sIGNvbG9yc1xuJHN1Y2Nlc3MtY29sb3I6ICMzMmI2NDMgIWRlZmF1bHQ7XG4kd2FybmluZy1jb2xvcjogI2ZmYjcwMCAhZGVmYXVsdDtcbiRlcnJvci1jb2xvcjogI2U4NTYwMCAhZGVmYXVsdDtcblxuLy8gT3RoZXIgY29sb3JzXG4kY29kZS1jb2xvcjogI2Q3M2U0OCAhZGVmYXVsdDtcbiRoaWdobGlnaHQtY29sb3I6ICNmZmU5YjMgIWRlZmF1bHQ7XG4kYm9keS1iZzogJGJnLWNvbG9yLWxpZ2h0ICFkZWZhdWx0O1xuJGJvZHktZm9udC1jb2xvcjogbGlnaHRlbigkZGFyay1jb2xvciwgNSUpICFkZWZhdWx0O1xuJGxpbmstY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGxpbmstY29sb3ItZGFyazogZGFya2VuKCRsaW5rLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJGxpbmstY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJGxpbmstY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG5cbi8vIEZvbnRzXG4vLyBDcmVkaXQ6IGh0dHBzOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTUvMTEvdXNpbmctc3lzdGVtLXVpLWZvbnRzLXByYWN0aWNhbC1ndWlkZS9cbiRiYXNlLWZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8gIWRlZmF1bHQ7XG4kbW9uby1mb250LWZhbWlseTogXCJTRiBNb25vXCIsIFwiU2Vnb2UgVUkgTW9ub1wiLCBcIlJvYm90byBNb25vXCIsIE1lbmxvLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZmFsbGJhY2stZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRjamstemgtaGFucy1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHksIFwiUGluZ0ZhbmcgU0NcIiwgXCJIaXJhZ2lubyBTYW5zIEdCXCIsIFwiTWljcm9zb2Z0IFlhSGVpXCIsICRmYWxsYmFjay1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjamstemgtaGFudC1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHksIFwiUGluZ0ZhbmcgVENcIiwgXCJIaXJhZ2lubyBTYW5zIENOU1wiLCBcIk1pY3Jvc29mdCBKaGVuZ0hlaVwiLCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY2prLWpwLWZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseSwgXCJIaXJhZ2lubyBTYW5zXCIsIFwiSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvXCIsIFwiWXUgR290aGljXCIsIFl1R290aGljLCBNZWlyeW8sICRmYWxsYmFjay1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjamsta28tZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCBcIk1hbGd1biBHb3RoaWNcIiwgJGZhbGxiYWNrLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJvZHktZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCAkZmFsbGJhY2stZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vIFVuaXQgc2l6ZXNcbiR1bml0LW86IC4wNXJlbSAhZGVmYXVsdDtcbiR1bml0LWg6IC4xcmVtICFkZWZhdWx0O1xuJHVuaXQtMTogLjJyZW0gIWRlZmF1bHQ7XG4kdW5pdC0yOiAuNHJlbSAhZGVmYXVsdDtcbiR1bml0LTM6IC42cmVtICFkZWZhdWx0O1xuJHVuaXQtNDogLjhyZW0gIWRlZmF1bHQ7XG4kdW5pdC01OiAxcmVtICFkZWZhdWx0O1xuJHVuaXQtNjogMS4ycmVtICFkZWZhdWx0O1xuJHVuaXQtNzogMS40cmVtICFkZWZhdWx0O1xuJHVuaXQtODogMS42cmVtICFkZWZhdWx0O1xuJHVuaXQtOTogMS44cmVtICFkZWZhdWx0O1xuJHVuaXQtMTA6IDJyZW0gIWRlZmF1bHQ7XG4kdW5pdC0xMjogMi40cmVtICFkZWZhdWx0O1xuJHVuaXQtMTY6IDMuMnJlbSAhZGVmYXVsdDtcblxuLy8gRm9udCBzaXplc1xuJGh0bWwtZm9udC1zaXplOiAyMHB4ICFkZWZhdWx0O1xuJGh0bWwtbGluZS1oZWlnaHQ6IDEuNSAhZGVmYXVsdDtcbiRmb250LXNpemU6IC44cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogLjdyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxnOiAuOXJlbSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodDogMS4ycmVtICFkZWZhdWx0O1xuXG4vLyBTaXplc1xuJGxheW91dC1zcGFjaW5nOiAkdW5pdC0yICFkZWZhdWx0O1xuJGxheW91dC1zcGFjaW5nLXNtOiAkdW5pdC0xICFkZWZhdWx0O1xuJGxheW91dC1zcGFjaW5nLWxnOiAkdW5pdC00ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXM6ICR1bml0LWggIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoOiAkdW5pdC1vICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aC1sZzogJHVuaXQtaCAhZGVmYXVsdDtcbiRjb250cm9sLXNpemU6ICR1bml0LTkgIWRlZmF1bHQ7XG4kY29udHJvbC1zaXplLXNtOiAkdW5pdC03ICFkZWZhdWx0O1xuJGNvbnRyb2wtc2l6ZS1sZzogJHVuaXQtMTAgIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXg6ICR1bml0LTIgIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXgtc206ICR1bml0LTIgKiAuNzUgIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXgtbGc6ICR1bml0LTIgKiAxLjUgIWRlZmF1bHQ7XG4kY29udHJvbC1wYWRkaW5nLXk6ICgkY29udHJvbC1zaXplIC0gJGxpbmUtaGVpZ2h0KSAvIDIgLSAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGNvbnRyb2wtcGFkZGluZy15LXNtOiAoJGNvbnRyb2wtc2l6ZS1zbSAtICRsaW5lLWhlaWdodCkgLyAyIC0gJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjb250cm9sLXBhZGRpbmcteS1sZzogKCRjb250cm9sLXNpemUtbGcgLSAkbGluZS1oZWlnaHQpIC8gMiAtICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY29udHJvbC1pY29uLXNpemU6IC44cmVtICFkZWZhdWx0O1xuXG4kY29udHJvbC13aWR0aC14czogMTgwcHggIWRlZmF1bHQ7XG4kY29udHJvbC13aWR0aC1zbTogMzIwcHggIWRlZmF1bHQ7XG4kY29udHJvbC13aWR0aC1tZDogNjQwcHggIWRlZmF1bHQ7XG4kY29udHJvbC13aWR0aC1sZzogOTYwcHggIWRlZmF1bHQ7XG4kY29udHJvbC13aWR0aC14bDogMTI4MHB4ICFkZWZhdWx0O1xuXG4vLyBSZXNwb25zaXZlIGJyZWFrcG9pbnRzXG4kc2l6ZS14czogNDgwcHggIWRlZmF1bHQ7XG4kc2l6ZS1zbTogNjAwcHggIWRlZmF1bHQ7XG4kc2l6ZS1tZDogODQwcHggIWRlZmF1bHQ7XG4kc2l6ZS1sZzogOTYwcHggIWRlZmF1bHQ7XG4kc2l6ZS14bDogMTI4MHB4ICFkZWZhdWx0O1xuJHNpemUtMng6IDE0NDBweCAhZGVmYXVsdDtcblxuJHJlc3BvbnNpdmUtYnJlYWtwb2ludDogJHNpemUteHMgIWRlZmF1bHQ7XG5cbi8vIFotaW5kZXhcbiR6aW5kZXgtMDogMSAhZGVmYXVsdDtcbiR6aW5kZXgtMTogMTAwICFkZWZhdWx0O1xuJHppbmRleC0yOiAyMDAgIWRlZmF1bHQ7XG4kemluZGV4LTM6IDMwMCAhZGVmYXVsdDtcbiR6aW5kZXgtNDogNDAwICFkZWZhdWx0O1xuIiwiLy8gQmFzZVxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogJGh0bWwtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGh0bWwtbGluZS1oZWlnaHQ7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiAkYm9keS1iZztcbiAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygpO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGxpbmstY29sb3ItZGFyaztcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gICY6dmlzaXRlZCB7XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yLWxpZ2h0O1xuICB9XG59XG4iLCIvLyBDb21wb25lbnQgZm9jdXMgc2hhZG93XG5AbWl4aW4gY29udHJvbC1zaGFkb3coJGNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICBib3gtc2hhZG93OiAwIDAgMCAuMXJlbSByZ2JhKCRjb2xvciwgLjIpO1xufVxuXG4vLyBTaGFkb3cgbWl4aW5cbkBtaXhpbiBzaGFkb3ctdmFyaWFudCgkb2Zmc2V0KSB7XG4gIGJveC1zaGFkb3c6IDAgJG9mZnNldCAoJG9mZnNldCArIC4wNXJlbSkgKiAyIHJnYmEoJGRhcmstY29sb3IsIC4zKTtcbn1cbiIsIi8vIFR5cG9ncmFwaHlcbi8vIEhlYWRpbmdzXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luLWJvdHRvbTogLjVlbTtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5oMSxcbi5oMixcbi5oMyxcbi5oNCxcbi5oNSxcbi5oNiB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5oMSxcbi5oMSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbmgyLFxuLmgyIHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG59XG5oMyxcbi5oMyB7XG4gIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuaDQsXG4uaDQge1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cbmg1LFxuLmg1IHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuaDYsXG4uaDYge1xuICBmb250LXNpemU6IC44cmVtO1xufVxuXG4vLyBQYXJhZ3JhcGhzXG5wIHtcbiAgbWFyZ2luOiAwIDAgJGxpbmUtaGVpZ2h0O1xufVxuXG4vLyBTZW1hbnRpYyB0ZXh0IGVsZW1lbnRzXG5hLFxuaW5zLFxudSB7XG4gIHRleHQtZGVjb3JhdGlvbi1za2lwOiBpbmsgZWRnZXM7XG59XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBkb3R0ZWQ7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5rYmQge1xuICBAaW5jbHVkZSBsYWJlbC1iYXNlKCk7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxpZ2h0LWNvbG9yLCAkZGFyay1jb2xvcik7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbn1cblxubWFyayB7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGJvZHktZm9udC1jb2xvciwgJGhpZ2hsaWdodC1jb2xvcik7XG4gIGJvcmRlci1ib3R0b206ICR1bml0LW8gc29saWQgZGFya2VuKCRoaWdobGlnaHQtY29sb3IsIDE1JSk7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBwYWRkaW5nOiAkdW5pdC1vICR1bml0LWggMDtcbn1cblxuLy8gQmxvY2txdW90ZVxuYmxvY2txdW90ZSB7XG4gIGJvcmRlci1sZWZ0OiAkYm9yZGVyLXdpZHRoLWxnIHNvbGlkICRib3JkZXItY29sb3I7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nOiAkdW5pdC0yICR1bml0LTQ7XG5cbiAgcDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vIExpc3RzXG51bCxcbm9sIHtcbiAgbWFyZ2luOiAkdW5pdC00IDAgJHVuaXQtNCAkdW5pdC00O1xuICBwYWRkaW5nOiAwO1xuXG4gIHVsLFxuICBvbCB7XG4gICAgbWFyZ2luOiAkdW5pdC00IDAgJHVuaXQtNCAkdW5pdC00O1xuICB9XG5cbiAgbGkge1xuICAgIG1hcmdpbi10b3A6ICR1bml0LTI7XG4gIH1cbn1cblxudWwge1xuICBsaXN0LXN0eWxlOiBkaXNjIGluc2lkZTtcblxuICB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7XG4gIH1cbn1cblxub2wge1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsIGluc2lkZTtcblxuICBvbCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBsb3dlci1hbHBoYTtcbiAgfVxufVxuXG5kbCB7XG4gIGR0IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICBkZCB7XG4gICAgbWFyZ2luOiAkdW5pdC0yIDAgJHVuaXQtNCAwO1xuICB9XG59XG4iLCIvLyBMYWJlbCBiYXNlIHN0eWxlXG5AbWl4aW4gbGFiZWwtYmFzZSgpIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBwYWRkaW5nOiAuMXJlbSAuMnJlbTtcbn1cblxuQG1peGluIGxhYmVsLXZhcmlhbnQoJGNvbG9yOiAkbGlnaHQtY29sb3IsICRiZy1jb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgYmFja2dyb3VuZDogJGJnLWNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xufVxuIiwiLy8gT3B0aW1pemVkIGZvciBFYXN0IEFzaWFuIENKS1xuaHRtbDpsYW5nKHpoKSxcbmh0bWw6bGFuZyh6aC1IYW5zKSxcbi5sYW5nLXpoLFxuLmxhbmctemgtaGFucyB7XG4gIGZvbnQtZmFtaWx5OiAkY2prLXpoLWhhbnMtZm9udC1mYW1pbHk7XG59XG5cbmh0bWw6bGFuZyh6aC1IYW50KSxcbi5sYW5nLXpoLWhhbnQge1xuICBmb250LWZhbWlseTogJGNqay16aC1oYW50LWZvbnQtZmFtaWx5O1xufVxuXG5odG1sOmxhbmcoamEpLFxuLmxhbmctamEge1xuICBmb250LWZhbWlseTogJGNqay1qcC1mb250LWZhbWlseTtcbn1cblxuaHRtbDpsYW5nKGtvKSxcbi5sYW5nLWtvIHtcbiAgZm9udC1mYW1pbHk6ICRjamsta28tZm9udC1mYW1pbHk7XG59XG5cbjpsYW5nKHpoKSxcbjpsYW5nKGphKSxcbi5sYW5nLWNqayB7XG4gIGlucyxcbiAgdSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICBkZWwgKyBkZWwsXG4gIGRlbCArIHMsXG4gIGlucyArIGlucyxcbiAgaW5zICsgdSxcbiAgcyArIGRlbCxcbiAgcyArIHMsXG4gIHUgKyBpbnMsXG4gIHUgKyB1IHtcbiAgICBtYXJnaW4tbGVmdDogLjEyNWVtO1xuICB9XG59XG4iLCIvLyBUYWJsZXNcbi50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgQGlmICRydGwgPT0gdHJ1ZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH0gQGVsc2Uge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHtcbiAgICAgIHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJixcbiAgJi50YWJsZS1zdHJpcGVkIHtcbiAgICB0Ym9keSB7XG4gICAgICB0ciB7XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItZGFyaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYudGFibGUtaG92ZXIge1xuICAgIHRib2R5IHtcbiAgICAgIHRyIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWRhcms7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTY29sbGFibGUgdGFibGVzXG4gICYudGFibGUtc2Nyb2xsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIHBhZGRpbmctYm90dG9tOiAuNzVyZW07XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gIHRkLFxuICB0aCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIHBhZGRpbmc6ICR1bml0LTMgJHVuaXQtMjtcbiAgfVxuICB0aCB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJGJvcmRlci13aWR0aC1sZztcbiAgfVxufVxuIiwiLy8gQnV0dG9uc1xuLmJ0biB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvci1saWdodDtcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBoZWlnaHQ6ICRjb250cm9sLXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmc6ICRjb250cm9sLXBhZGRpbmcteSAkY29udHJvbC1wYWRkaW5nLXg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4ycywgYm9yZGVyIC4ycywgYm94LXNoYWRvdyAuMnMsIGNvbG9yIC4ycztcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGNvbnRyb2wtc2hhZG93KCk7XG4gIH1cbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yLWRhcms7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3ItZGFyaztcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkcHJpbWFyeS1jb2xvci1kYXJrLCA1JSk7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgJi5sb2FkaW5nIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIG9wYWNpdHk6IC41O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gQnV0dG9uIFByaW1hcnlcbiAgJi5idG4tcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvci1kYXJrO1xuICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkcHJpbWFyeS1jb2xvci1kYXJrLCAyJSk7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkcHJpbWFyeS1jb2xvci1kYXJrLCA1JSk7XG4gICAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgIH1cbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHByaW1hcnktY29sb3ItZGFyaywgNCUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJHByaW1hcnktY29sb3ItZGFyaywgNyUpO1xuICAgICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICB9XG4gICAgJi5sb2FkaW5nIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEJ1dHRvbiBDb2xvcnNcbiAgJi5idG4tc3VjY2VzcyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHN1Y2Nlc3MtY29sb3IpO1xuICB9XG5cbiAgJi5idG4tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRlcnJvci1jb2xvcik7XG4gIH1cblxuICAvLyBCdXR0b24gTGlua1xuICAmLmJ0bi1saW5rIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgY29sb3I6ICRsaW5rLWNvbG9yLWRhcms7XG4gICAgfVxuICB9XG5cbiAgLy8gQnV0dG9uIFNpemVzXG4gICYuYnRuLXNtIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgaGVpZ2h0OiAkY29udHJvbC1zaXplLXNtO1xuICAgIHBhZGRpbmc6ICRjb250cm9sLXBhZGRpbmcteS1zbSAkY29udHJvbC1wYWRkaW5nLXgtc207XG4gIH1cblxuICAmLmJ0bi1sZyB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgIGhlaWdodDogJGNvbnRyb2wtc2l6ZS1sZztcbiAgICBwYWRkaW5nOiAkY29udHJvbC1wYWRkaW5nLXktbGcgJGNvbnRyb2wtcGFkZGluZy14LWxnO1xuICB9XG5cbiAgLy8gQnV0dG9uIEJsb2NrXG4gICYuYnRuLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEJ1dHRvbiBBY3Rpb25cbiAgJi5idG4tYWN0aW9uIHtcbiAgICB3aWR0aDogJGNvbnRyb2wtc2l6ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICYuYnRuLXNtIHtcbiAgICAgIHdpZHRoOiAkY29udHJvbC1zaXplLXNtO1xuICAgIH1cblxuICAgICYuYnRuLWxnIHtcbiAgICAgIHdpZHRoOiAkY29udHJvbC1zaXplLWxnO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJ1dHRvbiBDbGVhclxuICAmLmJ0bi1jbGVhciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgaGVpZ2h0OiAkdW5pdC01O1xuICAgIGxpbmUtaGVpZ2h0OiAkdW5pdC00O1xuICAgIG1hcmdpbi1sZWZ0OiAkdW5pdC0xO1xuICAgIG1hcmdpbi1yaWdodDogLTJweDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBhZGRpbmc6ICR1bml0LWg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHdpZHRoOiAkdW5pdC01O1xuXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJnLWNvbG9yLCAuNSk7XG4gICAgICBvcGFjaXR5OiAuOTU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFwyNzE1XCI7XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBncm91cHNcbi5idG4tZ3JvdXAge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuXG4gIC5idG4ge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgIH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGJvcmRlci13aWR0aDtcbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogJHppbmRleC0wO1xuICAgIH1cbiAgfVxuXG4gICYuYnRuLWdyb3VwLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLmJ0biB7XG4gICAgICBmbGV4OiAxIDAgMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbiB2YXJpYW50IG1peGluXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoJGNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMyUpO1xuICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygkY29sb3IpO1xuICB9XG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGRhcmtlbigkY29sb3IsIDIlKTtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkY29sb3IsIDUlKTtcbiAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICB9XG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogZGFya2VuKCRjb2xvciwgNyUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICB9XG4gICYubG9hZGluZyB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoJGNvbG9yOiAkcHJpbWFyeS1jb2xvcikge1xuICBiYWNrZ3JvdW5kOiAkbGlnaHQtY29sb3I7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygkY29sb3IpO1xuICB9XG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbG9yLCA1MCUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjb2xvciwgMiUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCA1JSk7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgfVxuICAmLmxvYWRpbmcge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3Jtc1xuLmZvcm0tZ3JvdXAge1xuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRsYXlvdXQtc3BhY2luZztcbiAgfVxufVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbi1ib3R0b206ICRsYXlvdXQtc3BhY2luZy1sZztcbn1cblxubGVnZW5kIHtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tYm90dG9tOiAkbGF5b3V0LXNwYWNpbmctbGc7XG59XG5cbi8vIEZvcm0gZWxlbWVudDogTGFiZWxcbi5mb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIHBhZGRpbmc6ICRjb250cm9sLXBhZGRpbmcteSArICRib3JkZXItd2lkdGggMDtcblxuICAmLmxhYmVsLXNtIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgcGFkZGluZzogJGNvbnRyb2wtcGFkZGluZy15LXNtICsgJGJvcmRlci13aWR0aCAwO1xuICB9XG5cbiAgJi5sYWJlbC1sZyB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgIHBhZGRpbmc6ICRjb250cm9sLXBhZGRpbmcteS1sZyArICRib3JkZXItd2lkdGggMDtcbiAgfVxufVxuXG4vLyBGb3JtIGVsZW1lbnQ6IElucHV0XG4uZm9ybS1pbnB1dCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvci1saWdodDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3ItZGFyaztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBoZWlnaHQ6ICRjb250cm9sLXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogJGNvbnRyb2wtcGFkZGluZy15ICRjb250cm9sLXBhZGRpbmcteDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4ycywgYm9yZGVyIC4ycywgYm94LXNoYWRvdyAuMnMsIGNvbG9yIC4ycztcbiAgd2lkdGg6IDEwMCU7XG4gICY6Zm9jdXMge1xuICAgIEBpbmNsdWRlIGNvbnRyb2wtc2hhZG93KCk7XG4gICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgfVxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRncmF5LWNvbG9yO1xuICB9XG5cbiAgLy8gSW5wdXQgc2l6ZXNcbiAgJi5pbnB1dC1zbSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgIGhlaWdodDogJGNvbnRyb2wtc2l6ZS1zbTtcbiAgICBwYWRkaW5nOiAkY29udHJvbC1wYWRkaW5nLXktc20gJGNvbnRyb2wtcGFkZGluZy14LXNtO1xuICB9XG5cbiAgJi5pbnB1dC1sZyB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgIGhlaWdodDogJGNvbnRyb2wtc2l6ZS1sZztcbiAgICBwYWRkaW5nOiAkY29udHJvbC1wYWRkaW5nLXktbGcgJGNvbnRyb2wtcGFkZGluZy14LWxnO1xuICB9XG5cbiAgJi5pbnB1dC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gSW5wdXQgdHlwZXNcbiAgJlt0eXBlPVwiZmlsZVwiXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi8vIEZvcm0gZWxlbWVudDogVGV4dGFyZWFcbnRleHRhcmVhLmZvcm0taW5wdXQge1xuICAmLFxuICAmLmlucHV0LWxnLFxuICAmLmlucHV0LXNtIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLy8gRm9ybSBlbGVtZW50OiBJbnB1dCBoaW50XG4uZm9ybS1pbnB1dC1oaW50IHtcbiAgY29sb3I6ICRncmF5LWNvbG9yO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIG1hcmdpbi10b3A6ICR1bml0LTE7XG5cbiAgLmhhcy1zdWNjZXNzICYsXG4gIC5pcy1zdWNjZXNzICsgJiB7XG4gICAgY29sb3I6ICRzdWNjZXNzLWNvbG9yO1xuICB9XG5cbiAgLmhhcy1lcnJvciAmLFxuICAuaXMtZXJyb3IgKyAmIHtcbiAgICBjb2xvcjogJGVycm9yLWNvbG9yO1xuICB9XG59XG5cbi8vIEZvcm0gZWxlbWVudDogU2VsZWN0XG4uZm9ybS1zZWxlY3Qge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvci1kYXJrO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgaGVpZ2h0OiAkY29udHJvbC1zaXplO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICBvdXRsaW5lOiBub25lO1xuICBwYWRkaW5nOiAkY29udHJvbC1wYWRkaW5nLXkgJGNvbnRyb2wtcGFkZGluZy14O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWxpZ2h0OyBcbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgY29udHJvbC1zaGFkb3coKTtcbiAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB9XG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBTZWxlY3Qgc2l6ZXNcbiAgJi5zZWxlY3Qtc20ge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICBoZWlnaHQ6ICRjb250cm9sLXNpemUtc207XG4gICAgcGFkZGluZzogJGNvbnRyb2wtcGFkZGluZy15LXNtICgkY29udHJvbC1pY29uLXNpemUgKyAkY29udHJvbC1wYWRkaW5nLXgtc20pICRjb250cm9sLXBhZGRpbmcteS1zbSAkY29udHJvbC1wYWRkaW5nLXgtc207XG4gIH1cblxuICAmLnNlbGVjdC1sZyB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgIGhlaWdodDogJGNvbnRyb2wtc2l6ZS1sZztcbiAgICBwYWRkaW5nOiAkY29udHJvbC1wYWRkaW5nLXktbGcgKCRjb250cm9sLWljb24tc2l6ZSArICRjb250cm9sLXBhZGRpbmcteC1sZykgJGNvbnRyb2wtcGFkZGluZy15LWxnICRjb250cm9sLXBhZGRpbmcteC1sZztcbiAgfVxuXG4gIC8vIE11bHRpcGxlIHNlbGVjdFxuICAmW3NpemVdLFxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6ICRjb250cm9sLXBhZGRpbmcteSAkY29udHJvbC1wYWRkaW5nLXg7XG5cbiAgICBvcHRpb24ge1xuICAgICAgcGFkZGluZzogJHVuaXQtaCAkdW5pdC0xO1xuICAgIH1cbiAgfVxuICAmOm5vdChbbXVsdGlwbGVdKTpub3QoW3NpemVdKSB7XG4gICAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWxpZ2h0IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnJTIweG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUyMHZpZXdCb3g9JzAlMjAwJTIwNCUyMDUnJTNFJTNDcGF0aCUyMGZpbGw9JyUyMzY2NzE4OSclMjBkPSdNMiUyMDBMMCUyMDJoNHptMCUyMDVMMCUyMDNoNHonLyUzRSUzQy9zdmclM0VcIikgbm8tcmVwZWF0IHJpZ2h0IC4zNXJlbSBjZW50ZXIgLyAuNHJlbSAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkY29udHJvbC1pY29uLXNpemUgKyAkY29udHJvbC1wYWRkaW5nLXg7XG4gIH1cbn1cblxuLy8gRm9ybSBJY29uc1xuLmhhcy1pY29uLWxlZnQsXG4uaGFzLWljb24tcmlnaHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmZvcm0taWNvbiB7XG4gICAgaGVpZ2h0OiAkY29udHJvbC1pY29uLXNpemU7XG4gICAgbWFyZ2luOiAwICRjb250cm9sLXBhZGRpbmcteTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiAkY29udHJvbC1pY29uLXNpemU7XG4gICAgei1pbmRleDogJHppbmRleC0wICsgMTtcbiAgfVxufVxuXG4uaGFzLWljb24tbGVmdCB7XG4gIC5mb3JtLWljb24ge1xuICAgIGxlZnQ6ICRib3JkZXItd2lkdGg7XG4gIH1cblxuICAuZm9ybS1pbnB1dCB7XG4gICAgcGFkZGluZy1sZWZ0OiAkY29udHJvbC1pY29uLXNpemUgKyAkY29udHJvbC1wYWRkaW5nLXkgKiAyO1xuICB9XG59XG5cbi5oYXMtaWNvbi1yaWdodCB7XG4gIC5mb3JtLWljb24ge1xuICAgIHJpZ2h0OiAkYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLmZvcm0taW5wdXQge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjb250cm9sLWljb24tc2l6ZSArICRjb250cm9sLXBhZGRpbmcteSAqIDI7XG4gIH1cbn1cblxuLy8gRm9ybSBlbGVtZW50OiBDaGVja2JveCBhbmQgUmFkaW9cbi5mb3JtLWNoZWNrYm94LFxuLmZvcm0tcmFkaW8sXG4uZm9ybS1zd2l0Y2gge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgbWFyZ2luOiAoJGNvbnRyb2wtc2l6ZSAtICRjb250cm9sLXNpemUtc20pIC8gMiAwO1xuICBtaW4taGVpZ2h0OiAkY29udHJvbC1zaXplLXNtO1xuICBwYWRkaW5nOiAoKCRjb250cm9sLXNpemUtc20gLSAkbGluZS1oZWlnaHQpIC8gMikgJGNvbnRyb2wtcGFkZGluZy14ICgoJGNvbnRyb2wtc2l6ZS1zbSAtICRsaW5lLWhlaWdodCkgLyAyKSAoJGNvbnRyb2wtaWNvbi1zaXplICsgJGNvbnRyb2wtcGFkZGluZy14KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGlucHV0IHtcbiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgICY6Zm9jdXMgKyAuZm9ybS1pY29uIHtcbiAgICAgIEBpbmNsdWRlIGNvbnRyb2wtc2hhZG93KCk7XG4gICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgICAmOmNoZWNrZWQgKyAuZm9ybS1pY29uIHtcbiAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1pY29uIHtcbiAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvci1kYXJrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjJzLCBib3JkZXIgLjJzLCBib3gtc2hhZG93IC4ycywgY29sb3IgLjJzO1xuICB9XG5cbiAgLy8gSW5wdXQgY2hlY2tib3gsIHJhZGlvIGFuZCBzd2l0Y2ggc2l6ZXNcbiAgJi5pbnB1dC1zbSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICYuaW5wdXQtbGcge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICBtYXJnaW46ICgkY29udHJvbC1zaXplLWxnIC0gJGNvbnRyb2wtc2l6ZS1zbSkgLyAyIDA7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2tib3gsXG4uZm9ybS1yYWRpbyB7XG4gIC5mb3JtLWljb24ge1xuICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvci1saWdodDtcbiAgICBoZWlnaHQ6ICRjb250cm9sLWljb24tc2l6ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogKCRjb250cm9sLXNpemUtc20gLSAkY29udHJvbC1pY29uLXNpemUpIC8gMjtcbiAgICB3aWR0aDogJGNvbnRyb2wtaWNvbi1zaXplO1xuICB9XG5cbiAgaW5wdXQge1xuICAgICY6YWN0aXZlICsgLmZvcm0taWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItZGFyaztcbiAgICB9XG4gIH1cbn1cbi5mb3JtLWNoZWNrYm94IHtcbiAgLmZvcm0taWNvbiB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBpbnB1dCB7XG4gICAgJjpjaGVja2VkICsgLmZvcm0taWNvbiB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgICAgICBib3JkZXI6ICRib3JkZXItd2lkdGgtbGcgc29saWQgJGxpZ2h0LWNvbG9yO1xuICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgaGVpZ2h0OiA5cHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0zcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgd2lkdGg6IDZweDtcbiAgICAgIH1cbiAgICB9XG4gICAgJjppbmRldGVybWluYXRlICsgLmZvcm0taWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItbGlnaHQ7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5mb3JtLXJhZGlvIHtcbiAgLmZvcm0taWNvbiB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB9XG5cbiAgaW5wdXQge1xuICAgICY6Y2hlY2tlZCArIC5mb3JtLWljb24ge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWxpZ2h0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGhlaWdodDogNnB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB3aWR0aDogNnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGb3JtIGVsZW1lbnQ6IFN3aXRjaFxuLmZvcm0tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAoJHVuaXQtOCArICRjb250cm9sLXBhZGRpbmcteCk7XG5cbiAgLmZvcm0taWNvbiB7XG4gICAgYmFja2dyb3VuZDogJGdyYXktY29sb3I7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBib3JkZXItcmFkaXVzOiAkdW5pdC0yICsgJGJvcmRlci13aWR0aDtcbiAgICBoZWlnaHQ6ICR1bml0LTQgKyAkYm9yZGVyLXdpZHRoICogMjtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogKCRjb250cm9sLXNpemUtc20gLSAkdW5pdC00KSAvIDIgLSAkYm9yZGVyLXdpZHRoO1xuICAgIHdpZHRoOiAkdW5pdC04O1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItbGlnaHQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6ICR1bml0LTQ7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMnMsIGJvcmRlciAuMnMsIGJveC1zaGFkb3cgLjJzLCBjb2xvciAuMnMsIGxlZnQgLjJzO1xuICAgICAgd2lkdGg6ICR1bml0LTQ7XG4gICAgfVxuICB9XG5cbiAgaW5wdXQge1xuICAgICY6Y2hlY2tlZCArIC5mb3JtLWljb24ge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogMTRweDtcbiAgICAgIH1cbiAgICB9XG4gICAgJjphY3RpdmUgKyAuZm9ybS1pY29uIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRm9ybSBlbGVtZW50OiBJbnB1dCBncm91cHNcbi5pbnB1dC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG4gICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3ItZGFyaztcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRjb250cm9sLXBhZGRpbmcteSAkY29udHJvbC1wYWRkaW5nLXg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICYuYWRkb24tc20ge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgICAgcGFkZGluZzogJGNvbnRyb2wtcGFkZGluZy15LXNtICRjb250cm9sLXBhZGRpbmcteC1zbTtcbiAgICB9XG5cbiAgICAmLmFkZG9uLWxnIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICAgIHBhZGRpbmc6ICRjb250cm9sLXBhZGRpbmcteS1sZyAkY29udHJvbC1wYWRkaW5nLXgtbGc7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0taW5wdXQsXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ0biB7XG4gICAgei1pbmRleDogJHppbmRleC0wO1xuICB9XG5cbiAgLmZvcm0taW5wdXQsXG4gIC5mb3JtLXNlbGVjdCxcbiAgLmlucHV0LWdyb3VwLWFkZG9uLFxuICAuaW5wdXQtZ3JvdXAtYnRuIHtcbiAgICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogLSRib3JkZXItd2lkdGg7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGJvcmRlci13aWR0aDtcbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAkemluZGV4LTAgKyAxO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAmLmlucHV0LWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH1cbn1cblxuLy8gRm9ybSB2YWxpZGF0aW9uIHN0YXRlc1xuLmZvcm0taW5wdXQsXG4uZm9ybS1zZWxlY3Qge1xuICAuaGFzLXN1Y2Nlc3MgJixcbiAgJi5pcy1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRzdWNjZXNzLWNvbG9yLCA1MyUpO1xuICAgIGJvcmRlci1jb2xvcjogJHN1Y2Nlc3MtY29sb3I7XG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygkc3VjY2Vzcy1jb2xvcik7XG4gICAgfVxuICB9XG5cbiAgLmhhcy1lcnJvciAmLFxuICAmLmlzLWVycm9yIHtcbiAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRlcnJvci1jb2xvciwgNTMlKTtcbiAgICBib3JkZXItY29sb3I6ICRlcnJvci1jb2xvcjtcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGNvbnRyb2wtc2hhZG93KCRlcnJvci1jb2xvcik7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrYm94LFxuLmZvcm0tcmFkaW8sXG4uZm9ybS1zd2l0Y2gge1xuICAuaGFzLWVycm9yICYsXG4gICYuaXMtZXJyb3Ige1xuICAgIC5mb3JtLWljb24ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZXJyb3ItY29sb3I7XG4gICAgfVxuXG4gICAgaW5wdXQge1xuICAgICAgJjpjaGVja2VkICsgLmZvcm0taWNvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRlcnJvci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZXJyb3ItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMgKyAuZm9ybS1pY29uIHtcbiAgICAgICAgQGluY2x1ZGUgY29udHJvbC1zaGFkb3coJGVycm9yLWNvbG9yKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZXJyb3ItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWNoZWNrYm94IHtcbiAgLmhhcy1lcnJvciAmLFxuICAmLmlzLWVycm9yIHtcbiAgICBpbnB1dCB7XG4gICAgICAmOmluZGV0ZXJtaW5hdGUgKyAuZm9ybS1pY29uIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGVycm9yLWNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRlcnJvci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gdmFsaWRhdGlvbiBiYXNlZCBvbiA6cGxhY2Vob2xkZXItc2hvd24gKEVkZ2UgZG9lc24ndCBzdXBwb3J0IGl0IHlldClcbi5mb3JtLWlucHV0IHtcbiAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgJjppbnZhbGlkIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGVycm9yLWNvbG9yO1xuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIGNvbnRyb2wtc2hhZG93KCRlcnJvci1jb2xvcik7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGVycm9yLWNvbG9yLCA1MyUpO1xuICAgICAgfVxuXG4gICAgICAmICsgLmZvcm0taW5wdXQtaGludCB7XG4gICAgICAgIGNvbG9yOiAkZXJyb3ItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZvcm0gZGlzYWJsZWQgYW5kIHJlYWRvbmx5XG4uZm9ybS1pbnB1dCxcbi5mb3JtLXNlbGVjdCB7XG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1jb2xvci1kYXJrO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgb3BhY2l0eTogLjU7XG4gIH1cbn1cblxuLmZvcm0taW5wdXQge1xuICAmW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbG9yO1xuICB9XG59XG5cbmlucHV0IHtcbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgJiArIC5mb3JtLWljb24ge1xuICAgICAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWRhcms7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgb3BhY2l0eTogLjU7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLXN3aXRjaCB7XG4gIGlucHV0IHtcbiAgICAmOmRpc2FibGVkLFxuICAgICYuZGlzYWJsZWQge1xuICAgICAgJiArIC5mb3JtLWljb246OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvci1saWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRm9ybSBob3Jpem9udGFsXG4uZm9ybS1ob3Jpem9udGFsIHtcbiAgcGFkZGluZzogJGxheW91dC1zcGFjaW5nIDA7XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbi8vIEZvcm0gaW5saW5lXG4uZm9ybS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4iLCIvLyBMYWJlbHNcbi5sYWJlbCB7XG4gIEBpbmNsdWRlIGxhYmVsLWJhc2UoKTtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudChsaWdodGVuKCRib2R5LWZvbnQtY29sb3IsIDUlKSwgJGJnLWNvbG9yLWRhcmspO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgLy8gTGFiZWwgcm91bmRlZFxuICAmLmxhYmVsLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IDVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAuNHJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAuNHJlbTsgXG4gIH1cblxuICAvLyBMYWJlbCBjb2xvcnNcbiAgJi5sYWJlbC1wcmltYXJ5IHtcbiAgICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsaWdodC1jb2xvciwgJHByaW1hcnktY29sb3IpO1xuICB9XG5cbiAgJi5sYWJlbC1zZWNvbmRhcnkge1xuICAgIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJHByaW1hcnktY29sb3IsICRzZWNvbmRhcnktY29sb3IpO1xuICB9XG5cbiAgJi5sYWJlbC1zdWNjZXNzIHtcbiAgICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsaWdodC1jb2xvciwgJHN1Y2Nlc3MtY29sb3IpO1xuICB9XG5cbiAgJi5sYWJlbC13YXJuaW5nIHtcbiAgICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsaWdodC1jb2xvciwgJHdhcm5pbmctY29sb3IpO1xuICB9XG5cbiAgJi5sYWJlbC1lcnJvciB7XG4gICAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGlnaHQtY29sb3IsICRlcnJvci1jb2xvcik7XG4gIH1cbn1cbiIsIi8vIENvZGVzXG5jb2RlIHtcbiAgQGluY2x1ZGUgbGFiZWwtYmFzZSgpO1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRjb2RlLWNvbG9yLCBsaWdodGVuKCRjb2RlLWNvbG9yLCA0Mi41JSkpO1xuICBmb250LXNpemU6IDg1JTtcbn1cblxuLmNvZGUge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkZ3JheS1jb2xvcjtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtbGFuZyk7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogJGxheW91dC1zcGFjaW5nO1xuICAgIHRvcDogJHVuaXQtaDtcbiAgfVxuXG4gIGNvZGUge1xuICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gTWVkaWFcbi8vIEltYWdlIHJlc3BvbnNpdmVcbi5pbWctcmVzcG9uc2l2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLy8gb2JqZWN0LWZpdCBzdXBwb3J0IGlzIGNvbWluZyB0byBNaWNyb3NvZnQgRWRnZVxuLy8gaHR0cHM6Ly9kZXZlbG9wZXIubWljcm9zb2Z0LmNvbS9lbi11cy9taWNyb3NvZnQtZWRnZS9wbGF0Zm9ybS9zdGF0dXMvb2JqZWN0Zml0YW5kb2JqZWN0cG9zaXRpb24vXG4uaW1nLWZpdC1jb3ZlciB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uaW1nLWZpdC1jb250YWluIHtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLy8gVmlkZW8gcmVzcG9uc2l2ZVxuLnZpZGVvLXJlc3BvbnNpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IC8vIERlZmF1bHQgcmF0aW8gMTY6OSwgeW91IGNhbiBjYWxjdWxhdGUgdGhpcyB2YWx1ZSBieSBkaXZpZGluZyA5IGJ5IDE2XG4gIH1cblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG52aWRlby52aWRlby1yZXNwb25zaXZlIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBub25lO1xuICB9XG59XG5cbi52aWRlby1yZXNwb25zaXZlLTQtMyB7XG4gICY6OmJlZm9yZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDc1JTsgLy8gUmF0aW8gNDozXG4gIH1cbn1cblxuLnZpZGVvLXJlc3BvbnNpdmUtMS0xIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsgLy8gUmF0aW8gMToxXG4gIH1cbn1cblxuLy8gRmlndXJlXG4uZmlndXJlIHtcbiAgbWFyZ2luOiAwIDAgJGxheW91dC1zcGFjaW5nIDA7XG5cbiAgLmZpZ3VyZS1jYXB0aW9uIHtcbiAgICBjb2xvcjogJGdyYXktY29sb3ItZGFyaztcbiAgICBtYXJnaW4tdG9wOiAkbGF5b3V0LXNwYWNpbmc7XG4gIH1cbn1cbiIsIi8vIExheW91dFxuLmNvbnRhaW5lciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogJGxheW91dC1zcGFjaW5nO1xuICBwYWRkaW5nLXJpZ2h0OiAkbGF5b3V0LXNwYWNpbmc7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICRncmlkLXNwYWNpbmc6ICgkbGF5b3V0LXNwYWNpbmcgLyAoJGxheW91dC1zcGFjaW5nICogMCArIDEpKSAqICRodG1sLWZvbnQtc2l6ZTtcblxuICAmLmdyaWQteGwge1xuICAgIG1heC13aWR0aDogJGdyaWQtc3BhY2luZyAqIDIgKyAkc2l6ZS14bDtcbiAgfVxuXG4gICYuZ3JpZC1sZyB7XG4gICAgbWF4LXdpZHRoOiAkZ3JpZC1zcGFjaW5nICogMiArICRzaXplLWxnO1xuICB9XG5cbiAgJi5ncmlkLW1kIHtcbiAgICBtYXgtd2lkdGg6ICRncmlkLXNwYWNpbmcgKiAyICsgJHNpemUtbWQ7XG4gIH1cblxuICAmLmdyaWQtc20ge1xuICAgIG1heC13aWR0aDogJGdyaWQtc3BhY2luZyAqIDIgKyAkc2l6ZS1zbTtcbiAgfVxuXG4gICYuZ3JpZC14cyB7XG4gICAgbWF4LXdpZHRoOiAkZ3JpZC1zcGFjaW5nICogMiArICRzaXplLXhzO1xuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgYnJlYWtwb2ludCBzeXN0ZW1cbi5zaG93LXhzLFxuLnNob3ctc20sXG4uc2hvdy1tZCxcbi5zaG93LWxnLFxuLnNob3cteGwge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8vIFJlc3BvbnNpdmUgZ3JpZCBzeXN0ZW1cbi5jb2xzLFxuLmNvbHVtbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1sZWZ0OiAtJGxheW91dC1zcGFjaW5nO1xuICBtYXJnaW4tcmlnaHQ6IC0kbGF5b3V0LXNwYWNpbmc7XG5cbiAgJi5jb2wtZ2FwbGVzcyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuXG4gICAgJiA+IC5jb2x1bW4ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cbiAgJi5jb2wtb25lbGluZSB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgfVxufVxuW2NsYXNzfj1cImNvbC1cIl0sXG4uY29sdW1uIHtcbiAgZmxleDogMTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6ICRsYXlvdXQtc3BhY2luZztcbiAgcGFkZGluZy1yaWdodDogJGxheW91dC1zcGFjaW5nO1xuXG4gICYuY29sLTEyLFxuICAmLmNvbC0xMSxcbiAgJi5jb2wtMTAsXG4gICYuY29sLTksXG4gICYuY29sLTgsXG4gICYuY29sLTcsXG4gICYuY29sLTYsXG4gICYuY29sLTUsXG4gICYuY29sLTQsXG4gICYuY29sLTMsXG4gICYuY29sLTIsXG4gICYuY29sLTEsXG4gICYuY29sLWF1dG8ge1xuICAgIGZsZXg6IG5vbmU7XG4gIH1cbn1cbi5jb2wtMTIge1xuICB3aWR0aDogMTAwJTtcbn1cbi5jb2wtMTEge1xuICB3aWR0aDogOTEuNjY2NjY2NjclO1xufVxuLmNvbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMzMzMyU7XG59XG4uY29sLTkge1xuICB3aWR0aDogNzUlO1xufVxuLmNvbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbn1cbi5jb2wtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMzMzMyU7XG59XG4uY29sLTYge1xuICB3aWR0aDogNTAlO1xufVxuLmNvbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbn1cbi5jb2wtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG59XG4uY29sLTMge1xuICB3aWR0aDogMjUlO1xufVxuLmNvbC0yIHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbn1cbi5jb2wtMSB7XG4gIHdpZHRoOiA4LjMzMzMzMzMzJTtcbn1cbi5jb2wtYXV0byB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmNvbC1teC1hdXRvIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5jb2wtbWwtYXV0byB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuLmNvbC1tci1hdXRvIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6ICRzaXplLXhsKSB7XG4gIC5jb2wteGwtMTIsXG4gIC5jb2wteGwtMTEsXG4gIC5jb2wteGwtMTAsXG4gIC5jb2wteGwtOSxcbiAgLmNvbC14bC04LFxuICAuY29sLXhsLTcsXG4gIC5jb2wteGwtNixcbiAgLmNvbC14bC01LFxuICAuY29sLXhsLTQsXG4gIC5jb2wteGwtMyxcbiAgLmNvbC14bC0yLFxuICAuY29sLXhsLTEsXG4gIC5jb2wteGwtYXV0byB7XG4gICAgZmxleDogbm9uZTtcbiAgfVxuICAuY29sLXhsLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLXhsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wteGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC14bC05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5jb2wteGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC14bC02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5jb2wteGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC14bC0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5jb2wteGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLWF1dG8ge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5oaWRlLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnNob3cteGwge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2l6ZS1sZykge1xuICAuY29sLWxnLTEyLFxuICAuY29sLWxnLTExLFxuICAuY29sLWxnLTEwLFxuICAuY29sLWxnLTksXG4gIC5jb2wtbGctOCxcbiAgLmNvbC1sZy03LFxuICAuY29sLWxnLTYsXG4gIC5jb2wtbGctNSxcbiAgLmNvbC1sZy00LFxuICAuY29sLWxnLTMsXG4gIC5jb2wtbGctMixcbiAgLmNvbC1sZy0xLFxuICAuY29sLWxnLWF1dG8ge1xuICAgIGZsZXg6IG5vbmU7XG4gIH1cbiAgLmNvbC1sZy0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC1sZy0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAuY29sLWxnLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuY29sLWxnLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuY29sLWxnLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1sZy1hdXRvIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuaGlkZS1sZyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zaG93LWxnIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogJHNpemUtbWQpIHtcbiAgLmNvbC1tZC0xMixcbiAgLmNvbC1tZC0xMSxcbiAgLmNvbC1tZC0xMCxcbiAgLmNvbC1tZC05LFxuICAuY29sLW1kLTgsXG4gIC5jb2wtbWQtNyxcbiAgLmNvbC1tZC02LFxuICAuY29sLW1kLTUsXG4gIC5jb2wtbWQtNCxcbiAgLmNvbC1tZC0zLFxuICAuY29sLW1kLTIsXG4gIC5jb2wtbWQtMSxcbiAgLmNvbC1tZC1hdXRvIHtcbiAgICBmbGV4OiBub25lO1xuICB9XG4gIC5jb2wtbWQtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5jb2wtbWQtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmNvbC1tZC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1tZC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmNvbC1tZC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtYXV0byB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmhpZGUtbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc2hvdy1tZCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6ICRzaXplLXNtKSB7XG4gIC5jb2wtc20tMTIsXG4gIC5jb2wtc20tMTEsXG4gIC5jb2wtc20tMTAsXG4gIC5jb2wtc20tOSxcbiAgLmNvbC1zbS04LFxuICAuY29sLXNtLTcsXG4gIC5jb2wtc20tNixcbiAgLmNvbC1zbS01LFxuICAuY29sLXNtLTQsXG4gIC5jb2wtc20tMyxcbiAgLmNvbC1zbS0yLFxuICAuY29sLXNtLTEsXG4gIC5jb2wtc20tYXV0byB7XG4gICAgZmxleDogbm9uZTtcbiAgfVxuICAuY29sLXNtLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLXNtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtc20tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5jb2wtc20tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5jb2wtc20tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5jb2wtc20tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLWF1dG8ge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5oaWRlLXNtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnNob3ctc20ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2l6ZS14cykge1xuICAuY29sLXhzLTEyLFxuICAuY29sLXhzLTExLFxuICAuY29sLXhzLTEwLFxuICAuY29sLXhzLTksXG4gIC5jb2wteHMtOCxcbiAgLmNvbC14cy03LFxuICAuY29sLXhzLTYsXG4gIC5jb2wteHMtNSxcbiAgLmNvbC14cy00LFxuICAuY29sLXhzLTMsXG4gIC5jb2wteHMtMixcbiAgLmNvbC14cy0xLFxuICAuY29sLXhzLWF1dG8ge1xuICAgIGZsZXg6IG5vbmU7XG4gIH1cbiAgLmNvbC14cy0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC14cy0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhzLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wteHMtOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAuY29sLXhzLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14cy03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wteHMtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuY29sLXhzLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14cy00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wteHMtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuY29sLXhzLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14cy0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC14cy1hdXRvIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuaGlkZS14cyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zaG93LXhzIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBIZXJvXG4uaGVybyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gIHBhZGRpbmctdG9wOiA0cmVtO1xuXG4gICYuaGVyby1zbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgcGFkZGluZy10b3A6IDJyZW07XG4gIH1cblxuICAmLmhlcm8tbGcge1xuICAgIHBhZGRpbmctYm90dG9tOiA4cmVtO1xuICAgIHBhZGRpbmctdG9wOiA4cmVtO1xuICB9XG5cbiAgLmhlcm8tYm9keSB7XG4gICAgcGFkZGluZzogJGxheW91dC1zcGFjaW5nO1xuICB9XG59IiwiLy8gTmF2YmFyXG4ubmF2YmFyIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gIC5uYXZiYXItc2VjdGlvbiB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDEgMCAwO1xuXG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKTpsYXN0LWNoaWxkIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEFjY29yZGlvbnNcbi5hY2NvcmRpb24ge1xuICBpbnB1dDpjaGVja2VkIH4sXG4gICZbb3Blbl0ge1xuICAgICYgLmFjY29yZGlvbi1oZWFkZXIgPiB7XG4gICAgICAuaWNvbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmIC5hY2NvcmRpb24tYm9keSB7XG4gICAgICBtYXgtaGVpZ2h0OiA1MHJlbTtcbiAgICB9XG4gIH1cblxuICAuYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHVuaXQtMSAkdW5pdC0yO1xuXG4gICAgLmljb24ge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yNXM7XG4gICAgfVxuICB9XG5cbiAgLmFjY29yZGlvbi1ib2R5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGF5b3V0LXNwYWNpbmc7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjI1cztcbiAgfVxufVxuXG4vLyBSZW1vdmUgZGVmYXVsdCBkZXRhaWxzIG1hcmtlciBpbiBXZWJraXRcbnN1bW1hcnkuYWNjb3JkaW9uLWhlYWRlciB7XG4gICY6Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEF2YXRhcnNcbi5hdmF0YXIge1xuICBAaW5jbHVkZSBhdmF0YXItYmFzZSgpO1xuICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjb2xvcjogcmdiYSgkbGlnaHQtY29sb3IsIC44NSk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICYuYXZhdGFyLXhzIHtcbiAgICBAaW5jbHVkZSBhdmF0YXItYmFzZSgkdW5pdC00KTtcbiAgfVxuICAmLmF2YXRhci1zbSB7XG4gICAgQGluY2x1ZGUgYXZhdGFyLWJhc2UoJHVuaXQtNik7XG4gIH1cbiAgJi5hdmF0YXItbGcge1xuICAgIEBpbmNsdWRlIGF2YXRhci1iYXNlKCR1bml0LTEyKTtcbiAgfVxuICAmLmF2YXRhci14bCB7XG4gICAgQGluY2x1ZGUgYXZhdGFyLWJhc2UoJHVuaXQtMTYpO1xuICB9XG5cbiAgaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAkemluZGV4LTA7XG4gIH1cblxuICAuYXZhdGFyLWljb24sXG4gIC5hdmF0YXItcHJlc2VuY2Uge1xuICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvci1saWdodDtcbiAgICBib3R0b206IDE0LjY0JTtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgICBwYWRkaW5nOiAkYm9yZGVyLXdpZHRoLWxnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTQuNjQlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgNTAlKTtcbiAgICB3aWR0aDogNTAlO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtMCArIDE7XG4gIH1cblxuICAuYXZhdGFyLXByZXNlbmNlIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JheS1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAkYm9yZGVyLXdpZHRoLWxnICRsaWdodC1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgaGVpZ2h0OiAuNWVtO1xuICAgIHdpZHRoOiAuNWVtO1xuXG4gICAgJi5vbmxpbmUge1xuICAgICAgYmFja2dyb3VuZDogJHN1Y2Nlc3MtY29sb3I7XG4gICAgfVxuXG4gICAgJi5idXN5IHtcbiAgICAgIGJhY2tncm91bmQ6ICRlcnJvci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmF3YXkge1xuICAgICAgYmFja2dyb3VuZDogJHdhcm5pbmctY29sb3I7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLWluaXRpYWxdOjpiZWZvcmUge1xuICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgY29udGVudDogYXR0cihkYXRhLWluaXRpYWwpO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgei1pbmRleDogJHppbmRleC0wO1xuICB9XG59IiwiLy8gQXZhdGFyIG1peGluXG5AbWl4aW4gYXZhdGFyLWJhc2UoJHNpemU6ICR1bml0LTgpIHtcbiAgZm9udC1zaXplOiAkc2l6ZSAvIDI7XG4gIGhlaWdodDogJHNpemU7XG4gIHdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEJhZGdlc1xuLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICZbZGF0YS1iYWRnZV0sXG4gICY6bm90KFtkYXRhLWJhZGdlXSkge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IC41cmVtO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgLjFyZW0gJGJnLWNvbG9yLWxpZ2h0O1xuICAgICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1iYWRnZSk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtLjA1cmVtLCAtLjVyZW0pO1xuICAgIH1cbiAgfVxuICAmW2RhdGEtYmFkZ2VdIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgICBoZWlnaHQ6IC45cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBtaW4td2lkdGg6IC45cmVtO1xuICAgICAgcGFkZGluZzogLjFyZW0gLjJyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgfVxuICAmOm5vdChbZGF0YS1iYWRnZV0pLFxuICAmW2RhdGEtYmFkZ2U9XCJcIl0ge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGhlaWdodDogNnB4O1xuICAgICAgbWluLXdpZHRoOiA2cHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IDZweDtcbiAgICB9XG4gIH1cblxuICAvLyBCYWRnZXMgZm9yIEJ1dHRvbnNcbiAgJi5idG4ge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgICB9XG4gIH1cblxuICAvLyBCYWRnZXMgZm9yIEF2YXRhcnNcbiAgJi5hdmF0YXIge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTQuNjQlO1xuICAgICAgcmlnaHQ6IDE0LjY0JTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSk7XG4gICAgICB6LWluZGV4OiAkemluZGV4LTE7XG4gICAgfVxuICB9XG59XG4iLCIvLyBCcmVhZGNydW1ic1xuLmJyZWFkY3J1bWIge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46ICR1bml0LTEgMDtcbiAgcGFkZGluZzogJHVuaXQtMSAwO1xuXG4gIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIGNvbG9yOiAkZ3JheS1jb2xvci1kYXJrO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJHVuaXQtMSAwO1xuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJHVuaXQtMTtcblxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkZ3JheS1jb2xvci1kYXJrO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICRncmF5LWNvbG9yLWRhcms7XG4gICAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkdW5pdC0yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQmFyc1xuLmJhciB7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvci1kYXJrO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGhlaWdodDogJHVuaXQtNDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi5iYXItc20ge1xuICAgIGhlaWdodDogJHVuaXQtMTtcbiAgfVxuXG4gIC8vIFRPRE86IGF0dHIoKSBzdXBwb3J0XG4gIC5iYXItaXRlbSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgbGluZS1oZWlnaHQ6ICR1bml0LTQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDA7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBmbGV4LXNocmluazogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2xpZGVyIGJhclxuLmJhci1zbGlkZXIge1xuICBoZWlnaHQ6ICRib3JkZXItd2lkdGgtbGc7XG4gIG1hcmdpbjogJGxheW91dC1zcGFjaW5nIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuYmFyLWl0ZW0ge1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvci1kYXJrO1xuICAgICAgei1pbmRleDogJHppbmRleC0wO1xuICAgIH1cbiAgfVxuXG4gIC5iYXItc2xpZGVyLWJ0biB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6ICR1bml0LTM7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgICB3aWR0aDogJHVuaXQtMztcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIC4xcmVtICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ2FyZHNcbi5jYXJkIHtcbiAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWxpZ2h0O1xuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLmNhcmQtaGVhZGVyLFxuICAuY2FyZC1ib2R5LFxuICAuY2FyZC1mb290ZXIge1xuICAgIHBhZGRpbmc6ICRsYXlvdXQtc3BhY2luZy1sZztcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGxheW91dC1zcGFjaW5nLWxnO1xuICAgIH1cbiAgfVxuXG4gIC5jYXJkLWJvZHkge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmNhcmQtaW1hZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAkbGF5b3V0LXNwYWNpbmctbGc7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICBpbWcge1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBpbWcge1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQ2hpcHNcbi5jaGlwIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWRhcms7XG4gIGJvcmRlci1yYWRpdXM6IDVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmb250LXNpemU6IDkwJTtcbiAgaGVpZ2h0OiAkdW5pdC02O1xuICBsaW5lLWhlaWdodDogJHVuaXQtNDtcbiAgbWFyZ2luOiAkdW5pdC1oO1xuICBtYXgtd2lkdGg6ICRjb250cm9sLXdpZHRoLXNtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAkdW5pdC0xICR1bml0LTI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gIH1cblxuICAuYXZhdGFyIHtcbiAgICBtYXJnaW4tbGVmdDogLSR1bml0LTI7XG4gICAgbWFyZ2luLXJpZ2h0OiAkdW5pdC0xO1xuICB9XG5cbiAgLmJ0bi1jbGVhciB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjc1KTtcbiAgfVxufVxuIiwiLy8gRHJvcGRvd25cbi5kcm9wZG93biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5tZW51IHtcbiAgICBhbmltYXRpb246IHNsaWRlLWRvd24gLjE1cyBlYXNlIDE7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsZWZ0OiAwO1xuICAgIG1heC1oZWlnaHQ6IDUwdmg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICB9XG5cbiAgJi5kcm9wZG93bi1yaWdodCB7XG4gICAgLm1lbnUge1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIC5tZW51LFxuICAuZHJvcGRvd24tdG9nZ2xlOmZvY3VzICsgLm1lbnUsXG4gIC5tZW51OmhvdmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIEZpeCBkcm9wZG93bi10b2dnbGUgYm9yZGVyIHJhZGl1cyBpbiBidXR0b24gZ3JvdXBzXG4gIC5idG4tZ3JvdXAge1xuICAgIC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQoMikge1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRW1wdHkgc3RhdGVzIChvciBCbGFuayBzbGF0ZXMpXG4uZW1wdHkge1xuICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBjb2xvcjogJGdyYXktY29sb3ItZGFyaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAkdW5pdC0xNiAkdW5pdC04O1xuXG4gIC5lbXB0eS1pY29uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGF5b3V0LXNwYWNpbmctbGc7XG4gIH1cblxuICAuZW1wdHktdGl0bGUsXG4gIC5lbXB0eS1zdWJ0aXRsZSB7XG4gICAgbWFyZ2luOiAkbGF5b3V0LXNwYWNpbmcgYXV0bztcbiAgfVxuXG4gIC5lbXB0eS1hY3Rpb24ge1xuICAgIG1hcmdpbi10b3A6ICRsYXlvdXQtc3BhY2luZy1sZztcbiAgfVxufVxuIiwiLy8gTWVudXNcbi5tZW51IHtcbiAgQGluY2x1ZGUgc2hhZG93LXZhcmlhbnQoLjA1cmVtKTtcbiAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWxpZ2h0O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBtaW4td2lkdGg6ICRjb250cm9sLXdpZHRoLXhzO1xuICBwYWRkaW5nOiAkdW5pdC0yO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJGxheW91dC1zcGFjaW5nLXNtKTtcbiAgei1pbmRleDogJHppbmRleC0zO1xuXG4gICYubWVudS1uYXYge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAubWVudS1pdGVtIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmc6IDAgJHVuaXQtMjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgJiA+IGEge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwICgtJHVuaXQtMik7XG4gICAgICBwYWRkaW5nOiAkdW5pdC0xICR1bml0LTI7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tY2hlY2tib3gsXG4gICAgLmZvcm0tcmFkaW8sXG4gICAgLmZvcm0tc3dpdGNoIHtcbiAgICAgIG1hcmdpbjogJHVuaXQtaCAwO1xuICAgIH1cblxuICAgICYgKyAubWVudS1pdGVtIHtcbiAgICAgIG1hcmdpbi10b3A6ICR1bml0LTE7XG4gICAgfVxuICB9XG5cbiAgLm1lbnUtYmFkZ2Uge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcblxuICAgIC5sYWJlbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICR1bml0LTI7XG4gICAgfVxuICB9XG59IiwiLy8gTW9kYWxzXG4ubW9kYWwge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAkbGF5b3V0LXNwYWNpbmc7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcblxuICAmOnRhcmdldCxcbiAgJi5hY3RpdmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiAkemluZGV4LTQ7XG5cbiAgICAubW9kYWwtb3ZlcmxheSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRiZy1jb2xvciwgLjc1KTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgIC5tb2RhbC1jb250YWluZXIge1xuICAgICAgYW5pbWF0aW9uOiBzbGlkZS1kb3duIC4ycyBlYXNlIDE7XG4gICAgICB6LWluZGV4OiAkemluZGV4LTA7XG4gICAgfVxuICB9XG5cbiAgJi5tb2RhbC1zbSB7XG4gICAgLm1vZGFsLWNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250cm9sLXdpZHRoLXNtO1xuICAgICAgcGFkZGluZzogMCAkdW5pdC0yO1xuICAgIH1cbiAgfVxuXG4gICYubW9kYWwtbGcge1xuICAgIC5tb2RhbC1vdmVybGF5IHtcbiAgICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvci1saWdodDtcbiAgICB9XG5cbiAgICAubW9kYWwtY29udGFpbmVyIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBtYXgtd2lkdGg6ICRjb250cm9sLXdpZHRoLWxnO1xuICAgIH1cbiAgfVxufVxuXG4ubW9kYWwtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgc2hhZG93LXZhcmlhbnQoLjJyZW0pO1xuICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItbGlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiA3NXZoO1xuICBtYXgtd2lkdGg6ICRjb250cm9sLXdpZHRoLW1kO1xuICBwYWRkaW5nOiAwICR1bml0LTQ7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICYubW9kYWwtZnVsbGhlaWdodCB7XG4gICAgbWF4LWhlaWdodDogMTAwdmg7XG4gIH1cblxuICAubW9kYWwtaGVhZGVyIHtcbiAgICBjb2xvcjogJGRhcmstY29sb3I7XG4gICAgcGFkZGluZzogJHVuaXQtNDtcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHBhZGRpbmc6ICR1bml0LTQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgcGFkZGluZzogJHVuaXQtNDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuIiwiLy8gTmF2c1xuLm5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogJHVuaXQtMSAwO1xuXG4gIC5uYXYtaXRlbSB7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJGdyYXktY29sb3ItZGFyaztcbiAgICAgIHBhZGRpbmc6ICR1bml0LTEgJHVuaXQtMjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICY6Zm9jdXMsXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAmID4gYSB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJGdyYXktY29sb3ItZGFyaywgMTAlKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYgLm5hdiB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHVuaXQtMjtcbiAgICBtYXJnaW4tbGVmdDogJHVuaXQtNDtcbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46ICR1bml0LTEgMDtcbiAgcGFkZGluZzogJHVuaXQtMSAwO1xuXG4gIC5wYWdlLWl0ZW0ge1xuICAgIG1hcmdpbjogJHVuaXQtMSAkdW5pdC1vO1xuXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAkdW5pdC0xICR1bml0LTE7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6ICR1bml0LTEgJHVuaXQtMjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICY6Zm9jdXMsXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgYSB7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnBhZ2UtcHJldixcbiAgICAmLnBhZ2UtbmV4dCB7XG4gICAgICBmbGV4OiAxIDAgNTAlO1xuICAgIH1cblxuICAgICYucGFnZS1uZXh0IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cblxuICAgIC5wYWdlLWl0ZW0tdGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5wYWdlLWl0ZW0tc3VidGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgb3BhY2l0eTogLjU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBQYW5lbHNcbi5wYW5lbCB7XG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAucGFuZWwtaGVhZGVyLFxuICAucGFuZWwtZm9vdGVyIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBwYWRkaW5nOiAkbGF5b3V0LXNwYWNpbmctbGc7XG4gIH1cblxuICAucGFuZWwtbmF2IHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxuXG4gIC5wYW5lbC1ib2R5IHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgJGxheW91dC1zcGFjaW5nLWxnO1xuICB9XG59XG4iLCIvLyBQb3BvdmVyc1xuLnBvcG92ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAucG9wb3Zlci1jb250YWluZXIge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBhZGRpbmc6ICRsYXlvdXQtc3BhY2luZztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnM7XG4gICAgd2lkdGg6ICRjb250cm9sLXdpZHRoLXNtO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtMztcbiAgfVxuXG4gICo6Zm9jdXMgKyAucG9wb3Zlci1jb250YWluZXIsXG4gICY6aG92ZXIgLnBvcG92ZXItY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKSBzY2FsZSgxKTtcbiAgfVxuXG4gICYucG9wb3Zlci1yaWdodCB7XG4gICAgLnBvcG92ZXItY29udGFpbmVyIHtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICB0b3A6IDUwJTtcbiAgICB9XG5cbiAgICAqOmZvY3VzICsgLnBvcG92ZXItY29udGFpbmVyLFxuICAgICY6aG92ZXIgLnBvcG92ZXItY29udGFpbmVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpIHNjYWxlKDEpO1xuICAgIH1cbiAgfVxuXG4gICYucG9wb3Zlci1ib3R0b20ge1xuICAgIC5wb3BvdmVyLWNvbnRhaW5lciB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgfVxuXG4gICAgKjpmb2N1cyArIC5wb3BvdmVyLWNvbnRhaW5lcixcbiAgICAmOmhvdmVyIC5wb3BvdmVyLWNvbnRhaW5lciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKSBzY2FsZSgxKTtcbiAgICB9XG4gIH1cblxuICAmLnBvcG92ZXItbGVmdCB7XG4gICAgLnBvcG92ZXItY29udGFpbmVyIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDUwJTtcbiAgICB9XG5cbiAgICAqOmZvY3VzICsgLnBvcG92ZXItY29udGFpbmVyLFxuICAgICY6aG92ZXIgLnBvcG92ZXItY29udGFpbmVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAtNTAlKSBzY2FsZSgxKTtcbiAgICB9XG4gIH1cblxuICAuY2FyZCB7XG4gICAgQGluY2x1ZGUgc2hhZG93LXZhcmlhbnQoLjJyZW0pO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuIiwiLy8gU3RlcHNcbi5zdGVwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogJHVuaXQtMSAwO1xuICB3aWR0aDogMTAwJTtcblxuICAuc3RlcC1pdGVtIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1pbi1oZWlnaHQ6IDFyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6bm90KDpmaXJzdC1jaGlsZCk6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGxlZnQ6IC01MCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDlweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMjBweCAxMHB4IDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBib3JkZXI6ICRib3JkZXItd2lkdGgtbGcgc29saWQgJGxpZ2h0LWNvbG9yO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6ICR1bml0LTM7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6ICR1bml0LTE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgd2lkdGg6ICR1bml0LTM7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBhIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtY29sb3I7XG4gICAgICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoLWxnIHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYgfiAuc3RlcC1pdGVtIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICRncmF5LWNvbG9yO1xuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRib3JkZXItY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJzXG4udGFiIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogJHVuaXQtMSAwICgkdW5pdC0xIC0gJGJvcmRlci13aWR0aCkgMDtcblxuICAudGFiLWl0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICBhIHtcbiAgICAgIGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGgtbGcgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwICR1bml0LTIgMCAwO1xuICAgICAgcGFkZGluZzogJHVuaXQtMiAkdW5pdC0xICR1bml0LTIgLSAkYm9yZGVyLXdpZHRoLWxnICR1bml0LTE7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5hY3RpdmUgYSxcbiAgICBhLmFjdGl2ZSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICB9XG5cbiAgICAmLnRhYi1hY3Rpb24ge1xuICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG5cbiAgICAuYnRuLWNsZWFyIHtcbiAgICAgIG1hcmdpbi10b3A6IC0kdW5pdC0xO1xuICAgIH1cbiAgfVxuXG4gICYudGFiLWJsb2NrIHtcbiAgICAudGFiLWl0ZW0ge1xuICAgICAgZmxleDogMSAwIDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIGEge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgIC5iYWRnZSB7XG4gICAgICAgICZbZGF0YS1iYWRnZV06OmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6ICR1bml0LWg7XG4gICAgICAgICAgdG9wOiAkdW5pdC1oO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjpub3QoLnRhYi1ibG9jaykge1xuICAgIC5iYWRnZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gVGlsZXNcbi50aWxlIHtcbiAgYWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLnRpbGUtaWNvbixcbiAgLnRpbGUtYWN0aW9uIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxuICAudGlsZS1jb250ZW50IHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogJHVuaXQtMjtcbiAgICB9XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICR1bml0LTI7XG4gICAgfVxuICB9XG4gIC50aWxlLXRpdGxlLFxuICAudGlsZS1zdWJ0aXRsZSB7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgfVxuXG4gICYudGlsZS1jZW50ZXJlZCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC50aWxlLWNvbnRlbnQge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAudGlsZS10aXRsZSxcbiAgICAudGlsZS1zdWJ0aXRsZSB7XG4gICAgICBAaW5jbHVkZSB0ZXh0LWVsbGlwc2lzKCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gVGV4dCBFbGxpcHNpc1xuQG1peGluIHRleHQtZWxsaXBzaXMoKSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuIiwiLy8gVG9hc3RzXG4udG9hc3Qge1xuICBAaW5jbHVkZSB0b2FzdC12YXJpYW50KCRkYXJrLWNvbG9yKTtcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRkYXJrLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRsYXlvdXQtc3BhY2luZztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi50b2FzdC1wcmltYXJ5IHtcbiAgICBAaW5jbHVkZSB0b2FzdC12YXJpYW50KCRwcmltYXJ5LWNvbG9yKTtcbiAgfVxuXG4gICYudG9hc3Qtc3VjY2VzcyB7XG4gICAgQGluY2x1ZGUgdG9hc3QtdmFyaWFudCgkc3VjY2Vzcy1jb2xvcik7XG4gIH1cblxuICAmLnRvYXN0LXdhcm5pbmcge1xuICAgIEBpbmNsdWRlIHRvYXN0LXZhcmlhbnQoJHdhcm5pbmctY29sb3IpO1xuICB9XG5cbiAgJi50b2FzdC1lcnJvciB7XG4gICAgQGluY2x1ZGUgdG9hc3QtdmFyaWFudCgkZXJyb3ItY29sb3IpO1xuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cbiAgfVxuXG4gIC5idG4tY2xlYXIge1xuICAgIG1hcmdpbjogJHVuaXQtaDtcbiAgfVxuXG4gIHAge1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gVG9hc3QgdmFyaWFudCBtaXhpblxuQG1peGluIHRvYXN0LXZhcmlhbnQoJGNvbG9yOiAkZGFyay1jb2xvcikge1xuICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgLjk1KTtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG59XG4iLCIvLyBUb29sdGlwc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRkYXJrLWNvbG9yLCAuOTUpO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS10b29sdGlwKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgbGVmdDogNTAlO1xuICAgIG1heC13aWR0aDogJGNvbnRyb2wtd2lkdGgtc207XG4gICAgb3BhY2l0eTogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6ICR1bml0LTEgJHVuaXQtMjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgJHVuaXQtMik7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMsIHRyYW5zZm9ybSAuMnM7XG4gICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICB6LWluZGV4OiAkemluZGV4LTM7XG4gIH1cbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0kdW5pdC0xKTtcbiAgICB9XG4gIH1cbiAgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG5cbiAgJi50b29sdGlwLXJpZ2h0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206IDUwJTtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtJHVuaXQtMSwgNTAlKTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHVuaXQtMSwgNTAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnRvb2x0aXAtYm90dG9tIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtJHVuaXQtMik7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsICR1bml0LTEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgJi50b29sdGlwLWxlZnQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogNTAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHVuaXQtMiwgNTAlKTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLSR1bml0LTEsIDUwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBBbmltYXRpb25zXG5Aa2V5ZnJhbWVzIGxvYWRpbmcge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlLWRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSR1bml0LTgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG4iLCIvLyBCYWNrZ3JvdW5kIGNvbG9yIHV0aWxpdHkgbWl4aW5cbkBtaXhpbiBiZy1jb2xvci12YXJpYW50KCRuYW1lOiBcIi5iZy1wcmltYXJ5XCIsICRjb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgI3skbmFtZX0ge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvciAhaW1wb3J0YW50O1xuXG4gICAgQGlmIChsaWdodG5lc3MoJGNvbG9yKSA8IDYwKSB7XG4gICAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLyBUZXh0IGNvbG9yIHV0aWxpdHkgbWl4aW5cbkBtaXhpbiB0ZXh0LWNvbG9yLXZhcmlhbnQoJG5hbWU6IFwiLnRleHQtcHJpbWFyeVwiLCAkY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gICN7JG5hbWV9IHtcbiAgICBjb2xvcjogJGNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cblxuICBhI3skbmFtZX0ge1xuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgNSUpO1xuICAgIH1cbiAgICAmOnZpc2l0ZWQge1xuICAgICAgY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLCA1JSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDdXJzb3JzXG4uYy1oYW5kIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uYy1tb3ZlIHtcbiAgY3Vyc29yOiBtb3ZlO1xufVxuXG4uYy16b29tLWluIHtcbiAgY3Vyc29yOiB6b29tLWluO1xufVxuXG4uYy16b29tLW91dCB7XG4gIGN1cnNvcjogem9vbS1vdXQ7XG59XG5cbi5jLW5vdC1hbGxvd2VkIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmMtYXV0byB7XG4gIGN1cnNvcjogYXV0bztcbn0iLCIvLyBEaXNwbGF5XG4uZC1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmQtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLmQtaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmQtZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uZC1pbmxpbmUtZmxleCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuLmQtbm9uZSxcbi5kLWhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4uZC12aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi5kLWludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi50ZXh0LWhpZGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogMDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuLnRleHQtYXNzaXN0aXZlIHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG4iLCIvLyBEaXZpZGVyXG4uZGl2aWRlcixcbi5kaXZpZGVyLXZlcnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICZbZGF0YS1jb250ZW50XTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvci1saWdodDtcbiAgICBjb2xvcjogJGdyYXktY29sb3I7XG4gICAgY29udGVudDogYXR0cihkYXRhLWNvbnRlbnQpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgcGFkZGluZzogMCAkdW5pdC0yO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJGZvbnQtc2l6ZS1zbSArICRib3JkZXItd2lkdGgpO1xuICB9XG59XG5cbi5kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yLWxpZ2h0O1xuICBoZWlnaHQ6ICRib3JkZXItd2lkdGg7XG4gIG1hcmdpbjogJHVuaXQtMiAwO1xuXG4gICZbZGF0YS1jb250ZW50XSB7XG4gICAgbWFyZ2luOiAkdW5pdC00IDA7XG4gIH1cbn1cblxuLmRpdmlkZXItdmVydCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkdW5pdC00O1xuXG4gICY6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBib3R0b206ICR1bml0LTI7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsZWZ0OiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJHVuaXQtMjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cblxuICAmW2RhdGEtY29udGVudF06OmFmdGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgcGFkZGluZzogJHVuaXQtMSAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgfVxufVxuIiwiLy8gTG9hZGluZ1xuLmxvYWRpbmcge1xuICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogJHVuaXQtNDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJjo6YWZ0ZXIge1xuICAgIGFuaW1hdGlvbjogbG9hZGluZyA1MDBtcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoLWxnIHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAkdW5pdC00O1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSR1bml0LTI7XG4gICAgbWFyZ2luLXRvcDogLSR1bml0LTI7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogJHVuaXQtNDtcbiAgICB6LWluZGV4OiAkemluZGV4LTA7XG4gIH1cblxuICAmLmxvYWRpbmctbGcge1xuICAgIG1pbi1oZWlnaHQ6ICR1bml0LTEwO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGhlaWdodDogJHVuaXQtODtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHVuaXQtNDtcbiAgICAgIG1hcmdpbi10b3A6IC0kdW5pdC00O1xuICAgICAgd2lkdGg6ICR1bml0LTg7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDbGVhcmZpeCBtaXhpblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxufVxuIiwiLy8gUG9zaXRpb25cbi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5wLXJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG59XG5cbi5wLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG59XG5cbi5wLWZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG59XG5cbi5wLXN0aWNreSB7XG4gIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcbn1cblxuLnAtY2VudGVyZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5mbGV4LWNlbnRlcmVkIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi8vIFNwYWNpbmdcbkBpbmNsdWRlIG1hcmdpbi12YXJpYW50KDAsIDApO1xuXG5AaW5jbHVkZSBtYXJnaW4tdmFyaWFudCgxLCAkdW5pdC0xKTtcblxuQGluY2x1ZGUgbWFyZ2luLXZhcmlhbnQoMiwgJHVuaXQtMik7XG5cbkBpbmNsdWRlIHBhZGRpbmctdmFyaWFudCgwLCAwKTtcblxuQGluY2x1ZGUgcGFkZGluZy12YXJpYW50KDEsICR1bml0LTEpO1xuXG5AaW5jbHVkZSBwYWRkaW5nLXZhcmlhbnQoMiwgJHVuaXQtMik7XG4iLCIvLyBNYXJnaW4gdXRpbGl0eSBtaXhpblxuQG1peGluIG1hcmdpbi12YXJpYW50KCRpZDogMSwgJHNpemU6ICR1bml0LTEpIHtcbiAgLm0tI3skaWR9IHtcbiAgICBtYXJnaW46ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWItI3skaWR9IHtcbiAgICBtYXJnaW4tYm90dG9tOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1sLSN7JGlkfSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXItI3skaWR9IHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXQtI3skaWR9IHtcbiAgICBtYXJnaW4tdG9wOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm14LSN7JGlkfSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRzaXplICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm15LSN7JGlkfSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNpemUgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tdG9wOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vIFBhZGRpbmcgdXRpbGl0eSBtaXhpblxuQG1peGluIHBhZGRpbmctdmFyaWFudCgkaWQ6IDEsICRzaXplOiAkdW5pdC0xKSB7XG4gIC5wLSN7JGlkfSB7XG4gICAgcGFkZGluZzogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYi0jeyRpZH0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBsLSN7JGlkfSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnByLSN7JGlkfSB7XG4gICAgcGFkZGluZy1yaWdodDogJHNpemUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wdC0jeyRpZH0ge1xuICAgIHBhZGRpbmctdG9wOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnB4LSN7JGlkfSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkc2l6ZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6ICRzaXplICFpbXBvcnRhbnQ7XG4gIH1cbiAgXG4gIC5weS0jeyRpZH0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAkc2l6ZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiAkc2l6ZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBTaGFwZXNcbi5zLXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cblxuLnMtY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufSIsIi8vIFRleHRcbi8vIFRleHQgYWxpZ25tZW50IHV0aWxpdGllc1xuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbi8vIFRleHQgdHJhbnNmb3JtIHV0aWxpdGllc1xuLnRleHQtbG93ZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cblxuLnRleHQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnRleHQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG4vLyBUZXh0IHN0eWxlIHV0aWxpdGllc1xuLnRleHQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLnRleHQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udGV4dC1pdGFsaWMge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi50ZXh0LWxhcmdlIHtcbiAgZm9udC1zaXplOiAxLjJlbTtcbn1cblxuLnRleHQtc21hbGwge1xuICBmb250LXNpemU6IC45ZW07XG59XG5cbi50ZXh0LXRpbnkge1xuICBmb250LXNpemU6IC44ZW07XG59XG5cbi50ZXh0LW11dGVkIHtcbiAgb3BhY2l0eTogLjg7XG59XG5cbi8vIFRleHQgb3ZlcmZsb3cgdXRpbGl0aWVzXG4udGV4dC1lbGxpcHNpcyB7XG4gIEBpbmNsdWRlIHRleHQtZWxsaXBzaXMoKTtcbn1cblxuLnRleHQtY2xpcCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGNsaXA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50ZXh0LWJyZWFrIHtcbiAgaHlwaGVuczogYXV0bztcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuIiwiLy8gVmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLyohIFNwZWN0cmUuY3NzIEV4cGVyaW1lbnRhbHMgdiN7JHZlcnNpb259IHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL3BpY3R1cmVwYW4yL3NwZWN0cmUgKi9cbi8vIEV4cGVyaW1lbnRhbHNcbkBpbXBvcnQgXCJhdXRvY29tcGxldGVcIjtcbkBpbXBvcnQgXCJjYWxlbmRhcnNcIjtcbkBpbXBvcnQgXCJjYXJvdXNlbHNcIjtcbkBpbXBvcnQgXCJjb21wYXJpc29uLXNsaWRlcnNcIjtcbkBpbXBvcnQgXCJmaWx0ZXJzXCI7XG5AaW1wb3J0IFwibWV0ZXJzXCI7XG5AaW1wb3J0IFwib2ZmLWNhbnZhc1wiO1xuQGltcG9ydCBcInBhcmFsbGF4XCI7XG5AaW1wb3J0IFwicHJvZ3Jlc3NcIjtcbkBpbXBvcnQgXCJzbGlkZXJzXCI7XG5AaW1wb3J0IFwidGltZWxpbmVzXCI7XG5AaW1wb3J0IFwidmlld2VyLTM2MFwiO1xuIiwiLy8gQXV0b2NvbXBsZXRlXG4uZm9ybS1hdXRvY29tcGxldGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmZvcm0tYXV0b2NvbXBsZXRlLWlucHV0IHtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiAkdW5pdC04O1xuICAgIHBhZGRpbmc6ICR1bml0LWg7XG5cbiAgICAmLmlzLWZvY3VzZWQge1xuICAgICAgQGluY2x1ZGUgY29udHJvbC1zaGFkb3coKTtcbiAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuXG4gICAgLmZvcm0taW5wdXQge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgIGhlaWdodDogJHVuaXQtNjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkdW5pdC00O1xuICAgICAgbWFyZ2luOiAkdW5pdC1oO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLm1lbnUge1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICYuYXV0b2NvbXBsZXRlLW9uZWxpbmUge1xuICAgIC5mb3JtLWF1dG9jb21wbGV0ZS1pbnB1dCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgfVxuXG4gICAgLmNoaXAge1xuICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBDYWxlbmRhcnNcbi5jYWxlbmRhciB7XG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi13aWR0aDogMjgwcHg7XG5cbiAgLmNhbGVuZGFyLW5hdiB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgIHBhZGRpbmc6ICRsYXlvdXQtc3BhY2luZztcbiAgfVxuXG4gIC5jYWxlbmRhci1oZWFkZXIsXG4gIC5jYWxlbmRhci1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAkbGF5b3V0LXNwYWNpbmcgMDtcblxuICAgIC5jYWxlbmRhci1kYXRlIHtcbiAgICAgIGZsZXg6IDAgMCAxNC4yOCU7IC8vIDcgY2FsZW5kYXItaXRlbXMgZWFjaCByb3dcbiAgICAgIG1heC13aWR0aDogMTQuMjglO1xuICAgIH1cbiAgfVxuXG4gIC5jYWxlbmRhci1oZWFkZXIge1xuICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgY29sb3I6ICRncmF5LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuY2FsZW5kYXItYm9keSB7XG4gICAgY29sb3I6ICRncmF5LWNvbG9yLWRhcms7XG4gIH1cblxuICAuY2FsZW5kYXItZGF0ZSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6ICR1bml0LTE7XG5cbiAgICAuZGF0ZS1pdGVtIHtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGNvbG9yOiAkZ3JheS1jb2xvci1kYXJrO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgICAgaGVpZ2h0OiAkdW5pdC03O1xuICAgICAgbGluZS1oZWlnaHQ6ICR1bml0LTU7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgcGFkZGluZzogJHVuaXQtaDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjJzLCBib3JkZXIgLjJzLCBib3gtc2hhZG93IC4ycywgY29sb3IgLjJzO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB3aWR0aDogJHVuaXQtNztcblxuICAgICAgJi5kYXRlLXRvZGF5IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yLWRhcms7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIEBpbmNsdWRlIGNvbnRyb2wtc2hhZG93KCk7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMsXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvci1saWdodDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yLWRhcms7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgICAgJjphY3RpdmUsXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yLWRhcms7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRwcmltYXJ5LWNvbG9yLWRhcmssIDUlKTtcbiAgICAgICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgLy8gQ2FsZW5kYXIgYmFkZ2Ugc3VwcG9ydFxuICAgICAgJi5iYWRnZSB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAzcHg7XG4gICAgICAgICAgcmlnaHQ6IDNweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRhdGUtaXRlbSxcbiAgICAuY2FsZW5kYXItZXZlbnQge1xuICAgICAgJjpkaXNhYmxlZCxcbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIG9wYWNpdHk6IC4yNTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5wcmV2LW1vbnRoLFxuICAgICYubmV4dC1tb250aCB7XG4gICAgICAuZGF0ZS1pdGVtLFxuICAgICAgLmNhbGVuZGFyLWV2ZW50IHtcbiAgICAgICAgb3BhY2l0eTogLjI1O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jYWxlbmRhci1yYW5nZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiAkdW5pdC03O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICAgICYucmFuZ2Utc3RhcnQge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnJhbmdlLWVuZCB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICByaWdodDogNTAlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYucmFuZ2Utc3RhcnQsXG4gICAgJi5yYW5nZS1lbmQge1xuICAgICAgLmRhdGUtaXRlbSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yLWRhcms7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRwcmltYXJ5LWNvbG9yLWRhcmssIDUlKTtcbiAgICAgICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZGF0ZS1pdGVtIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDYWxlbmRhcnMgc2l6ZVxuICAmLmNhbGVuZGFyLWxnIHtcbiAgICAuY2FsZW5kYXItYm9keSB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAuY2FsZW5kYXItZGF0ZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGhlaWdodDogNS41cmVtO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICY6bnRoLWNoaWxkKDduKSB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWxhc3QtY2hpbGQoLW4rNykge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZGF0ZS1pdGVtIHtcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgaGVpZ2h0OiAkdW5pdC03O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkbGF5b3V0LXNwYWNpbmctc207XG4gICAgICBtYXJnaW4tdG9wOiAkbGF5b3V0LXNwYWNpbmctc207XG4gICAgfVxuXG4gICAgLmNhbGVuZGFyLXJhbmdlIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogMTlweDtcbiAgICAgIH1cbiAgICAgICYucmFuZ2Utc3RhcnQge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgd2lkdGg6IDE5cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYucmFuZ2UtZW5kIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICByaWdodDogMTlweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jYWxlbmRhci1ldmVudHMge1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgcGFkZGluZzogJGxheW91dC1zcGFjaW5nLXNtO1xuICAgIH1cblxuICAgIC5jYWxlbmRhci1ldmVudCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAkdW5pdC1oIGF1dG87XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcGFkZGluZzogM3B4IDRweDtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENhcm91c2Vsc1xuLy8gVGhlIG51bWJlciBvZiBjYXJvdXNlbCBpbWFnZXNcbiRjYXJvdXNlbC1udW1iZXI6IDg7XG5cbiVjYXJvdXNlbC1pbWFnZS1jaGVja2VkIHsgXG4gIGFuaW1hdGlvbjogY2Fyb3VzZWwtc2xpZGVpbiAuNzVzIGVhc2UtaW4tb3V0IDE7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6ICR6aW5kZXgtMTtcbn1cblxuJWNhcm91c2VsLW5hdi1jaGVja2VkIHsgXG4gIGNvbG9yOiAkZ3JheS1jb2xvci1saWdodDtcbn1cblxuLmNhcm91c2VsIHtcbiAgYmFja2dyb3VuZDogJGJnLWNvbG9yO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB6LWluZGV4OiAkemluZGV4LTA7XG5cbiAgLmNhcm91c2VsLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgIH1cblxuICAgIC5jYXJvdXNlbC1pdGVtIHtcbiAgICAgIGFuaW1hdGlvbjogY2Fyb3VzZWwtc2xpZGVvdXQgMXMgZWFzZS1pbi1vdXQgMTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAuaXRlbS1wcmV2LFxuICAgICAgICAuaXRlbS1uZXh0IHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLml0ZW0tcHJldixcbiAgICAuaXRlbS1uZXh0IHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGdyYXktY29sb3ItbGlnaHQsIC4yNSk7XG4gICAgICBib3JkZXItY29sb3I6IHJnYmEoJGdyYXktY29sb3ItbGlnaHQsIC41KTtcbiAgICAgIGNvbG9yOiAkZ3JheS1jb2xvci1saWdodDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuNHM7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB6LWluZGV4OiAkemluZGV4LTE7XG4gICAgfVxuICAgIC5pdGVtLXByZXYge1xuICAgICAgbGVmdDogMXJlbTtcbiAgICB9XG4gICAgLml0ZW0tbmV4dCB7XG4gICAgICByaWdodDogMXJlbTtcbiAgICB9XG4gIH1cblxuICAuY2Fyb3VzZWwtbG9jYXRvciB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNhcm91c2VsLW51bWJlcikge1xuICAgICAgJjpudGgtb2YtdHlwZSgjeyRpfSk6Y2hlY2tlZCB+IC5jYXJvdXNlbC1jb250YWluZXIgLmNhcm91c2VsLWl0ZW06bnRoLW9mLXR5cGUoI3skaX0pIHtcbiAgICAgICAgQGV4dGVuZCAlY2Fyb3VzZWwtaW1hZ2UtY2hlY2tlZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkY2Fyb3VzZWwtbnVtYmVyKSB7XG4gICAgICAmOm50aC1vZi10eXBlKCN7JGl9KTpjaGVja2VkIH4gLmNhcm91c2VsLW5hdiAubmF2LWl0ZW06bnRoLW9mLXR5cGUoI3skaX0pIHtcbiAgICAgICAgQGV4dGVuZCAlY2Fyb3VzZWwtbmF2LWNoZWNrZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNhcm91c2VsLW5hdiB7XG4gICAgYm90dG9tOiAkbGF5b3V0LXNwYWNpbmc7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBsZWZ0OiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB3aWR0aDogMTByZW07XG4gICAgei1pbmRleDogJHppbmRleC0xO1xuXG4gICAgLm5hdi1pdGVtIHtcbiAgICAgIGNvbG9yOiByZ2JhKCRncmF5LWNvbG9yLWxpZ2h0LCAuNSk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgaGVpZ2h0OiAkdW5pdC04O1xuICAgICAgbWFyZ2luOiAkdW5pdC0xO1xuICAgICAgbWF4LXdpZHRoOiAyLjVyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogJHVuaXQtaDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC41cmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGtleWZyYW1lcyBjYXJvdXNlbC1zbGlkZWluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBjYXJvdXNlbC1zbGlkZW91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxufVxuIiwiLy8gSW1hZ2UgY29tcGFyaXNvbiBzbGlkZXJcbi8vIENyZWRpdDogaHR0cDovL2NvZGVwZW4uaW8vc29saXBzaXN0YWNwL3Blbi9HcG1hcVxuLmNvbXBhcmlzb24tc2xpZGVyIHtcbiAgaGVpZ2h0OiA1MHZoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgLmNvbXBhcmlzb24tYmVmb3JlLFxuICAuY29tcGFyaXNvbi1hZnRlciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcblxuICAgIGltZyB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuY29tcGFyaXNvbi1iZWZvcmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICAuY29tcGFyaXNvbi1sYWJlbCB7XG4gICAgICByaWdodDogJHVuaXQtNDtcbiAgICB9XG4gIH1cblxuICAuY29tcGFyaXNvbi1hZnRlciB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICB6LWluZGV4OiAyO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogJHVuaXQtNDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtMDtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBib3gtc2hhZG93OiAwIC01cHgsIDAgNXB4O1xuICAgICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDNweDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6ICR1bml0LTI7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSk7XG4gICAgICB3aWR0aDogM3B4O1xuICAgIH1cblxuICAgIC5jb21wYXJpc29uLWxhYmVsIHtcbiAgICAgIGxlZnQ6ICR1bml0LTQ7XG4gICAgfVxuICB9XG5cbiAgLmNvbXBhcmlzb24tcmVzaXplciB7XG4gICAgYW5pbWF0aW9uOiBmaXJzdC1ydW4gMS41cyAxIGVhc2UtaW4tb3V0O1xuICAgIGN1cnNvcjogZXctcmVzaXplO1xuICAgIGhlaWdodDogJHVuaXQtNDtcbiAgICBsZWZ0OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6ICR1bml0LTQ7XG4gICAgb3BhY2l0eTogMDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByZXNpemU6IGhvcml6b250YWw7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlWSgzMCk7XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICAuY29tcGFyaXNvbi1sYWJlbCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkZGFyay1jb2xvciwgLjUpO1xuICAgIGJvdHRvbTogJHVuaXQtNDtcbiAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgIHBhZGRpbmc6ICR1bml0LTEgJHVuaXQtMjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmaXJzdC1ydW4ge1xuICAwJSB7XG4gICAgd2lkdGg6IDA7XG4gIH1cbiAgMjUlIHtcbiAgICB3aWR0aDogJHVuaXQtMTI7XG4gIH1cbiAgNTAlIHtcbiAgICB3aWR0aDogJHVuaXQtNDtcbiAgfVxuICA3NSUge1xuICAgIHdpZHRoOiAkdW5pdC02O1xuICB9XG4gIDEwMCUge1xuICAgIHdpZHRoOiAwO1xuICB9XG59XG4iLCIvLyBGaWx0ZXJzIFxuLy8gVGhlIG51bWJlciBvZiBmaWx0ZXIgb3B0aW9ucyBcbiRmaWx0ZXItbnVtYmVyOiA4ICFkZWZhdWx0O1xuXG4lZmlsdGVyLWNoZWNrZWQtbmF2IHsgXG4gIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xufVxuXG4lZmlsdGVyLWNoZWNrZWQtYm9keSB7IFxuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZmlsdGVyIHtcbiAgLmZpbHRlci1uYXYge1xuICAgIG1hcmdpbjogJGxheW91dC1zcGFjaW5nIDA7XG4gIH1cblxuICAuZmlsdGVyLWJvZHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLmZpbHRlci10YWcge1xuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRmaWx0ZXItbnVtYmVyKSB7XG4gICAgICAmI3RhZy0jeyRpfTpjaGVja2VkIH4gLmZpbHRlci1uYXYgLmNoaXBbZm9yPVwidGFnLSN7JGl9XCJdIHtcbiAgICAgICAgQGV4dGVuZCAlZmlsdGVyLWNoZWNrZWQtbmF2O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggKCRmaWx0ZXItbnVtYmVyKSB7XG4gICAgICAmI3RhZy0jeyRpfTpjaGVja2VkIH4gLmZpbHRlci1ib2R5IC5maWx0ZXItaXRlbTpub3QoW2RhdGEtdGFnfj1cInRhZy0jeyRpfVwiXSkge1xuICAgICAgICBAZXh0ZW5kICVmaWx0ZXItY2hlY2tlZC1ib2R5O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTWV0ZXJzXG4vLyBDcmVkaXQ6IGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vaHRtbDUtbWV0ZXItZWxlbWVudC9cbi5tZXRlciB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICR1bml0LTQ7XG5cbiAgJjo6LXdlYmtpdC1tZXRlci1pbm5lci1lbGVtZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICY6Oi13ZWJraXQtbWV0ZXItYmFyLFxuICAmOjotd2Via2l0LW1ldGVyLW9wdGltdW0tdmFsdWUsXG4gICY6Oi13ZWJraXQtbWV0ZXItc3Vib3B0aW11bS12YWx1ZSxcbiAgJjo6LXdlYmtpdC1tZXRlci1ldmVuLWxlc3MtZ29vZC12YWx1ZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmOjotd2Via2l0LW1ldGVyLWJhciB7XG4gICAgYmFja2dyb3VuZDogJGJnLWNvbG9yO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1tZXRlci1vcHRpbXVtLXZhbHVlIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3VjY2Vzcy1jb2xvcjtcbiAgfVxuXG4gICY6Oi13ZWJraXQtbWV0ZXItc3Vib3B0aW11bS12YWx1ZSB7XG4gICAgYmFja2dyb3VuZDogJHdhcm5pbmctY29sb3I7XG4gIH1cblxuICAmOjotd2Via2l0LW1ldGVyLWV2ZW4tbGVzcy1nb29kLXZhbHVlIHtcbiAgICBiYWNrZ3JvdW5kOiAkZXJyb3ItY29sb3I7XG4gIH1cblxuICAmOjotbW96LW1ldGVyLWJhcixcbiAgJjotbW96LW1ldGVyLW9wdGltdW0sXG4gICY6LW1vei1tZXRlci1zdWItb3B0aW11bSxcbiAgJjotbW96LW1ldGVyLXN1Yi1zdWItb3B0aW11bSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmOi1tb3otbWV0ZXItb3B0aW11bTo6LW1vei1tZXRlci1iYXIge1xuICAgIGJhY2tncm91bmQ6ICRzdWNjZXNzLWNvbG9yO1xuICB9XG5cbiAgJjotbW96LW1ldGVyLXN1Yi1vcHRpbXVtOjotbW96LW1ldGVyLWJhciB7XG4gICAgYmFja2dyb3VuZDogJHdhcm5pbmctY29sb3I7XG4gIH1cblxuICAmOi1tb3otbWV0ZXItc3ViLXN1Yi1vcHRpbXVtOjotbW96LW1ldGVyLWJhciB7XG4gICAgYmFja2dyb3VuZDogJGVycm9yLWNvbG9yO1xuICB9XG59XG4iLCIvLyBPZmYgY2FudmFzIG1lbnVzXG4kb2ZmLWNhbnZhcy1icmVha3BvaW50OiAkc2l6ZS1sZyAhZGVmYXVsdDtcblxuLm9mZi1jYW52YXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5vZmYtY2FudmFzLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJGxheW91dC1zcGFjaW5nO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgei1pbmRleDogJHppbmRleC0wO1xuICAgIEBpZiAkcnRsID09IHRydWUge1xuICAgICAgcmlnaHQ6ICRsYXlvdXQtc3BhY2luZztcbiAgICB9IEBlbHNlIHtcbiAgICAgIGxlZnQ6ICRsYXlvdXQtc3BhY2luZztcbiAgICB9XG4gIH1cblxuICAub2ZmLWNhbnZhcy1zaWRlYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG4gICAgYm90dG9tOiAwO1xuICAgIG1pbi13aWR0aDogMTByZW07XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtMjtcbiAgICBAaWYgJHJ0bCA9PSB0cnVlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgfVxuICB9XG5cbiAgLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6ICRsYXlvdXQtc3BhY2luZyAkbGF5b3V0LXNwYWNpbmcgJGxheW91dC1zcGFjaW5nIDRyZW07XG4gIH1cblxuICAub2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRkYXJrLWNvbG9yLCAuMSk7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAub2ZmLWNhbnZhcy1zaWRlYmFyIHtcbiAgICAmOnRhcmdldCxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxuXG4gICAgJjp0YXJnZXQgfiAub2ZmLWNhbnZhcy1vdmVybGF5LFxuICAgICYuYWN0aXZlIH4gLm9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUmVzcG9uc2l2ZSBsYXlvdXRcbkBtZWRpYSAobWluLXdpZHRoOiAkb2ZmLWNhbnZhcy1icmVha3BvaW50KSB7XG4gIC5vZmYtY2FudmFzIHtcbiAgICAmLm9mZi1jYW52YXMtc2lkZWJhci1zaG93IHtcbiAgICAgIC5vZmYtY2FudmFzLXRvZ2dsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gIFxuICAgICAgLm9mZi1jYW52YXMtc2lkZWJhciB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLm9mZi1jYW52YXMtb3ZlcmxheSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhcmFsbGF4XG4kcGFyYWxsYXgtZGVnOiAzZGVnICFkZWZhdWx0O1xuJHBhcmFsbGF4LW9mZnNldDogNC41cHggIWRlZmF1bHQ7XG4kcGFyYWxsYXgtb2Zmc2V0LXo6IDUwcHggIWRlZmF1bHQ7XG4kcGFyYWxsYXgtcGVyc3BlY3RpdmU6IDEwMDBweCAhZGVmYXVsdDtcbiRwYXJhbGxheC1zY2FsZTogLjk1ICFkZWZhdWx0O1xuJHBhcmFsbGF4LWZhZGUtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjM1KSAhZGVmYXVsdDtcblxuLy8gTWl4aW46IFBhcmFsbGF4IGRpcmVjdGlvblxuQG1peGluIHBhcmFsbGF4LWRpcigpIHtcbiAgaGVpZ2h0OiA1MCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDUwJTtcbiAgei1pbmRleDogJHppbmRleC0xO1xufVxuXG4ucGFyYWxsYXgge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuXG4gIC5wYXJhbGxheC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBzaGFkb3ctdmFyaWFudCgxcmVtKTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgkcGFyYWxsYXgtcGVyc3BlY3RpdmUpO1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cyBlYXNlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAucGFyYWxsYXgtZnJvbnQge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoJGRhcmstY29sb3IsIC43NSk7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigkcGFyYWxsYXgtb2Zmc2V0LXopIHNjYWxlKCRwYXJhbGxheC1zY2FsZSk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC40cztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAkemluZGV4LTA7XG4gIH1cblxuICAucGFyYWxsYXgtdG9wLWxlZnQge1xuICAgIEBpbmNsdWRlIHBhcmFsbGF4LWRpcigpO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuXG4gICAgJjpmb2N1cyB+IC5wYXJhbGxheC1jb250ZW50LFxuICAgICY6aG92ZXIgfiAucGFyYWxsYXgtY29udGVudCB7XG4gICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKCRwYXJhbGxheC1wZXJzcGVjdGl2ZSkgcm90YXRlWCgkcGFyYWxsYXgtZGVnKSByb3RhdGVZKC0kcGFyYWxsYXgtZGVnKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgJHBhcmFsbGF4LWZhZGUtY29sb3IgMCUsIHRyYW5zcGFyZW50IDUwJSk7XG4gICAgICB9XG5cbiAgICAgIC5wYXJhbGxheC1mcm9udCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHBhcmFsbGF4LW9mZnNldCwgJHBhcmFsbGF4LW9mZnNldCwgJHBhcmFsbGF4LW9mZnNldC16KSBzY2FsZSgkcGFyYWxsYXgtc2NhbGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wYXJhbGxheC10b3AtcmlnaHQge1xuICAgIEBpbmNsdWRlIHBhcmFsbGF4LWRpcigpO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcblxuICAgICY6Zm9jdXMgfiAucGFyYWxsYXgtY29udGVudCxcbiAgICAmOmhvdmVyIH4gLnBhcmFsbGF4LWNvbnRlbnQge1xuICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgkcGFyYWxsYXgtcGVyc3BlY3RpdmUpIHJvdGF0ZVgoJHBhcmFsbGF4LWRlZykgcm90YXRlWSgkcGFyYWxsYXgtZGVnKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC0xMzVkZWcsICRwYXJhbGxheC1mYWRlLWNvbG9yIDAlLCB0cmFuc3BhcmVudCA1MCUpO1xuICAgICAgfVxuXG4gICAgICAucGFyYWxsYXgtZnJvbnQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0kcGFyYWxsYXgtb2Zmc2V0LCAkcGFyYWxsYXgtb2Zmc2V0LCAkcGFyYWxsYXgtb2Zmc2V0LXopIHNjYWxlKCRwYXJhbGxheC1zY2FsZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhcmFsbGF4LWJvdHRvbS1sZWZ0IHtcbiAgICBAaW5jbHVkZSBwYXJhbGxheC1kaXIoKTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcblxuICAgICY6Zm9jdXMgfiAucGFyYWxsYXgtY29udGVudCxcbiAgICAmOmhvdmVyIH4gLnBhcmFsbGF4LWNvbnRlbnQge1xuICAgICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgkcGFyYWxsYXgtcGVyc3BlY3RpdmUpIHJvdGF0ZVgoLSRwYXJhbGxheC1kZWcpIHJvdGF0ZVkoLSRwYXJhbGxheC1kZWcpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICRwYXJhbGxheC1mYWRlLWNvbG9yIDAlLCB0cmFuc3BhcmVudCA1MCUpO1xuICAgICAgfVxuXG4gICAgICAucGFyYWxsYXgtZnJvbnQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRwYXJhbGxheC1vZmZzZXQsIC0kcGFyYWxsYXgtb2Zmc2V0LCAkcGFyYWxsYXgtb2Zmc2V0LXopIHNjYWxlKCRwYXJhbGxheC1zY2FsZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhcmFsbGF4LWJvdHRvbS1yaWdodCB7XG4gICAgQGluY2x1ZGUgcGFyYWxsYXgtZGlyKCk7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuXG4gICAgJjpmb2N1cyB+IC5wYXJhbGxheC1jb250ZW50LFxuICAgICY6aG92ZXIgfiAucGFyYWxsYXgtY29udGVudCB7XG4gICAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKCRwYXJhbGxheC1wZXJzcGVjdGl2ZSkgcm90YXRlWCgtJHBhcmFsbGF4LWRlZykgcm90YXRlWSgkcGFyYWxsYXgtZGVnKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC00NWRlZywgJHBhcmFsbGF4LWZhZGUtY29sb3IgMCUsIHRyYW5zcGFyZW50IDUwJSk7XG4gICAgICB9XG5cbiAgICAgIC5wYXJhbGxheC1mcm9udCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLSRwYXJhbGxheC1vZmZzZXQsIC0kcGFyYWxsYXgtb2Zmc2V0LCAkcGFyYWxsYXgtb2Zmc2V0LXopIHNjYWxlKCRwYXJhbGxheC1zY2FsZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBQcm9ncmVzc1xuLy8gQ3JlZGl0OiBodHRwczovL2Nzcy10cmlja3MuY29tL2h0bWw1LXByb2dyZXNzLWVsZW1lbnQvXG4ucHJvZ3Jlc3Mge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItZGFyaztcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICBoZWlnaHQ6ICR1bml0LTE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjo6LXdlYmtpdC1wcm9ncmVzcy1iYXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmOjotbW96LXByb2dyZXNzLWJhciB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmOmluZGV0ZXJtaW5hdGUge1xuICAgIGFuaW1hdGlvbjogcHJvZ3Jlc3MtaW5kZXRlcm1pbmF0ZSAxLjVzIGxpbmVhciBpbmZpbml0ZTtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItZGFyayBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRwcmltYXJ5LWNvbG9yIDMwJSwgJGJnLWNvbG9yLWRhcmsgMzAlKSB0b3AgbGVmdCAvIDE1MCUgMTUwJSBuby1yZXBlYXQ7XG5cbiAgICAmOjotbW96LXByb2dyZXNzLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwcm9ncmVzcy1pbmRldGVybWluYXRlIHtcbiAgMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDIwMCUgMDtcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjAwJSAwO1xuICB9XG59XG4iLCIvLyBTbGlkZXJzXG4vLyBDcmVkaXQ6IGh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc3R5bGluZy1jcm9zcy1icm93c2VyLWNvbXBhdGlibGUtcmFuZ2UtaW5wdXRzLWNzcy9cbi5zbGlkZXIge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICR1bml0LTY7XG5cbiAgJjpmb2N1cyB7XG4gICAgQGluY2x1ZGUgY29udHJvbC1zaGFkb3coKTtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgJi50b29sdGlwOm5vdChbZGF0YS10b29sdGlwXSkge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IGF0dHIodmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNsaWRlciBUaHVtYlxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgaGVpZ2h0OiAkdW5pdC0zO1xuICAgIG1hcmdpbi10b3A6IC0oJHVuaXQtMyAtICR1bml0LWgpIC8gMjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzO1xuICAgIHdpZHRoOiAkdW5pdC0zO1xuICB9XG4gICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgaGVpZ2h0OiAkdW5pdC0zO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnM7XG4gICAgd2lkdGg6ICR1bml0LTM7XG4gIH1cbiAgJjo6LW1zLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGhlaWdodDogJHVuaXQtMztcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzO1xuICAgIHdpZHRoOiAkdW5pdC0zO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7XG4gICAgfVxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjI1KTtcbiAgICB9XG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7XG4gICAgfVxuICB9XG5cbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZDogJGdyYXktY29sb3ItbGlnaHQ7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQ6ICRncmF5LWNvbG9yLWxpZ2h0O1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG4gICAgJjo6LW1zLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQ6ICRncmF5LWNvbG9yLWxpZ2h0O1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG4gIH1cblxuICAvLyBTbGlkZXIgVHJhY2tcbiAgJjo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvci1kYXJrO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGhlaWdodDogJHVuaXQtaDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItZGFyaztcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBoZWlnaHQ6ICR1bml0LWg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgJjo6LW1zLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItZGFyaztcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBoZWlnaHQ6ICR1bml0LWg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgJjo6LW1zLWZpbGwtbG93ZXIge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICB9XG59XG4iLCIvLyBUaW1lbGluZXNcbi50aW1lbGluZSB7XG4gIC50aW1lbGluZS1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi1ib3R0b206ICR1bml0LTY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IDExcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6ICR1bml0LTY7XG4gICAgICB3aWR0aDogMnB4O1xuICAgIH1cblxuICAgIC50aW1lbGluZS1sZWZ0IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cblxuICAgIC50aW1lbGluZS1jb250ZW50IHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgcGFkZGluZzogMnB4IDAgMnB4ICRsYXlvdXQtc3BhY2luZy1sZztcbiAgICB9XG5cbiAgICAudGltZWxpbmUtaWNvbiB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBoZWlnaHQ6ICR1bml0LTY7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAkdW5pdC02O1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoLWxnIHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6ICR1bml0LTI7XG4gICAgICAgIGxlZnQ6ICR1bml0LTI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAkdW5pdC0yO1xuICAgICAgICB3aWR0aDogJHVuaXQtMjtcbiAgICAgIH1cblxuICAgICAgJi5pY29uLWxnIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gMzYwIERlZ3JlZSBWaWV3ZXJcblxuLy8gTWl4aW46IFZpZXdlciBzbGlkZXIgc2l6ZXNcbkBtaXhpbiB2aWV3ZXItc2xpZGVyLXNpemUoJGltYWdlLW51bWJlcjogMzYpIHtcbiAgQGZvciAkcyBmcm9tIDEgdGhyb3VnaCAoJGltYWdlLW51bWJlcikge1xuICAgIC52aWV3ZXItc2xpZGVyW21heD0nI3skaW1hZ2UtbnVtYmVyfSddW3ZhbHVlPScjeyRzfSddICsgLnZpZXdlci1pbWFnZSB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IHBlcmNlbnRhZ2UoKCgkcyktMSkgKiAxLygoJGltYWdlLW51bWJlciktMSkpO1xuICAgIH1cbiAgfVxufVxuXG4udmlld2VyLTM2MCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gQ29weSBhbmQgYWRkIG1vcmUgbnVtYmVycyBpZiB5b3UgbmVlZFxuICBAaW5jbHVkZSB2aWV3ZXItc2xpZGVyLXNpemUoMzYpO1xuXG4gIC52aWV3ZXItc2xpZGVyIHtcbiAgICBjdXJzb3I6IGV3LXJlc2l6ZTtcbiAgICBtYXJnaW46IDFyZW07XG4gICAgb3JkZXI6IDI7XG4gICAgd2lkdGg6IDYwJTtcbiAgfVxuXG4gIC52aWV3ZXItaW1hZ2Uge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3JkZXI6IDE7XG4gIH1cbn0iLCIvKiBEZWZpbmUgdGhlIFwic3lzdGVtXCIgZm9udCBmYW1pbHkgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogc3lzdGVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoXCIuU0ZOU1RleHRcIiksIGxvY2FsKFwiLkhlbHZldGljYU5ldWVEZXNrSW50ZXJmYWNlXCIpLCBsb2NhbChcIi5MdWNpZGFHcmFuZGVVSVwiKSwgbG9jYWwoXCJVYnVudHVcIiksIGxvY2FsKFwiU2Vnb2UgVUlcIiksIGxvY2FsKFwiUm9ib3RvXCIpLCBsb2NhbChcIkRyb2lkU2Fuc1wiKSwgbG9jYWwoXCJUYWhvbWFcIik7XG59XG5cbmJvZHkge1xuICBmb250LWZhbWlseTogXCJzeXN0ZW1cIiwtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsc2Fucy1zZXJpZiAhaW1wb3J0YW50O1xufSIsIi8qKioqKiogTE9HSU4gKioqKioqL1xuLmxvZ2luLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIG1heC13aWR0aDogMzUwcHg7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGN0Y3Rjc7XG4gIG1hcmdpbjogMTAwcHggYXV0bztcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2hhZG93OiAwcHggMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtZmFtaWx5OiBzeXN0ZW0tdWk7XG59XG4ubG9naW4tY29udGFpbmVyIGgxIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDEuOGVtO1xuICBmb250LWZhbWlseTogc3lzdGVtLXVpO1xufVxuLmxvZ2luLWNvbnRhaW5lciBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5sb2dpbi1jb250YWluZXIgaW5wdXRbdHlwZT10ZXh0XSwgaW5wdXRbdHlwZT1wYXNzd29yZF0ge1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Q5ZDlkOTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjMGMwYzA7XG4gIC8qIGJvcmRlci1yYWRpdXM6IDJweDsgKi9cbiAgcGFkZGluZzogMCA4cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5sb2dpbi1jb250YWluZXIgaW5wdXRbdHlwZT10ZXh0XTpob3ZlciwgaW5wdXRbdHlwZT1wYXNzd29yZF06aG92ZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYjliOWI5O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2EwYTBhMDtcbiAgLW1vei1ib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLDAsMCwwLjEpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMSk7XG59XG4ubG9naW4tc3VibWl0IHtcbiAgLyogYm9yZGVyOiAxcHggc29saWQgIzMwNzllZDsgKi9cbiAgYm9yZGVyOiAwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggcmdiYSgwLDAsMCwwLjEpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ5MGZlO1xuICBwYWRkaW5nOiAxN3B4IDBweDtcbiAgZm9udC1mYW1pbHk6IHN5c3RlbS11aTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICAvKiBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsICAgZnJvbSgjNGQ5MGZlKSwgdG8oIzQ3ODdlZCkpOyAqL1xufVxuLmxvZ2luLXN1Ym1pdDpob3ZlciB7XG4gIC8qIGJvcmRlcjogMXB4IHNvbGlkICMyZjViYjc7ICovXG4gIGJvcmRlcjogMHB4O1xuICB0ZXh0LXNoYWRvdzogMCAxcHggcmdiYSgwLDAsMCwwLjMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzU3YWU4O1xuICAvKiBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsICAgZnJvbSgjNGQ5MGZlKSwgdG8oIzM1N2FlOCkpOyAqL1xufVxuLmxvZ2luLWNvbnRhaW5lciBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG9wYWNpdHk6IDAuNjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSBlYXNlIDAuNXM7XG59XG4ubG9naW4taGVscHtcbiAgZm9udC1zaXplOiAxMnB4O1xufSIsIi5zY3JvbGxib3gge1xuICBvdmVyZmxvdzogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgYmFja2dyb3VuZDpcbiAgICAgICAgICAvKiBTaGFkb3cgY292ZXJzICovXG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KHdoaXRlIDMwJSwgcmdiYSgyNTUsMjU1LDI1NSwwKSksXG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LDI1NSwyNTUsMCksIHdoaXRlIDcwJSkgMCAxMDAlLFxuXG4gICAgICAgICAgICAvKiBTaGFkb3dzICovXG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KDUwJSAwLCBmYXJ0aGVzdC1zaWRlLCByZ2JhKDAsMCwwLC4yKSwgcmdiYSgwLDAsMCwwKSksXG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KDUwJSAxMDAlLGZhcnRoZXN0LXNpZGUsIHJnYmEoMCwwLDAsLjIpLCByZ2JhKDAsMCwwLDApKSAwIDEwMCU7XG4gIGJhY2tncm91bmQ6XG4gICAgICAgICAgLyogU2hhZG93IGNvdmVycyAqL1xuICAgICAgICAgIGxpbmVhci1ncmFkaWVudCh3aGl0ZSAzMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkpLFxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwyNTUsMjU1LDApLCB3aGl0ZSA3MCUpIDAgMTAwJSxcblxuICAgICAgICAgICAgLyogU2hhZG93cyAqL1xuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChmYXJ0aGVzdC1zaWRlIGF0IDUwJSAwLCByZ2JhKDAsMCwwLC4yKSwgcmdiYSgwLDAsMCwwKSksXG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGZhcnRoZXN0LXNpZGUgYXQgNTAlIDEwMCUsIHJnYmEoMCwwLDAsLjIpLCByZ2JhKDAsMCwwLDApKSAwIDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgNDBweCwgMTAwJSA0MHB4LCAxMDAlIDE0cHgsIDEwMCUgMTRweDtcblxuICAvKiBPcGVyYSBkb2Vzbid0IHN1cHBvcnQgdGhpcyBpbiB0aGUgc2hvcnRoYW5kICovXG4gIGJhY2tncm91bmQtYXR0YWNobWVudDogbG9jYWwsIGxvY2FsLCBzY3JvbGwsIHNjcm9sbDtcbn0iLCIudGltZWxpbmUtcGxheS1pY29ue1xuICB3aWR0aDogNjYlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1NSU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4uY2FyZHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4uY29udGVudHtcbiAgd29yZC1icmVhazpicmVhay1hbGw7XG59XG5cbi50aW1lbGluZS1tYXJrZXJ7XG4gIHotaW5kZXg6IDk5OTk7XG59XG5cbiJdLCJzb3VyY2VSb290IjoiIn0=*/