@charset "UTF-8";
/*! Spectre.css | 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 */
  line-height: 1.15; /* 2 */
  -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;
}

/**
 * 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: monospace, monospace; /* 1 */
  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%;
}

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

/* 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: 10px;
  line-height: 1.428571429;
  -webkit-tap-highlight-color: transparent;
}

body {
  background: #fff;
  color: #888;
  font-family: "Ubuntu", "Helvetica Neue", sans-serif;
  font-size: 1.6rem;
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
  font-weight: 300;
}

a {
  color: #84C426;
  outline: none;
  text-decoration: none;
}
a:focus {
  box-shadow: 0 0 0 0.2rem rgba(132, 196, 38, 0.15);
}
a:focus, a:hover, a:active, a.active {
  color: #67991e;
  text-decoration: none !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: inherit;
  font-weight: 300;
  line-height: 1.2;
  margin-bottom: 1.5rem;
  margin-top: 0;
}

h1 {
  font-size: 3rem;
}

h2 {
  font-size: 2.6rem;
}

h3 {
  font-size: 2.2rem;
}

h4 {
  font-size: 2rem;
}

h5 {
  font-size: 1.7rem;
}

h6 {
  font-size: 1.6rem;
}

p {
  line-height: 2.4rem;
  margin: 0 0 3rem;
}

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

blockquote {
  border-left: 0.2rem solid white;
  margin-left: 0;
  padding: 1rem 2rem;
}
blockquote p:last-child {
  margin-bottom: 0;
}
blockquote cite {
  color: #d2d2d2;
}

ul,
ol {
  margin: 2rem 0 2rem 2rem;
  padding: 0;
}
ul ul,
ul ol,
ol ul,
ol ol {
  margin: 1.5rem 0 1.5rem 2rem;
}
ul li,
ol li {
  margin-top: 1rem;
}

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

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

dl dt {
  font-weight: bold;
}
dl dd {
  margin: 0.5rem 0 1.5rem 0;
}

mark {
  border-radius: 0.2rem;
  display: inline-block;
  line-height: 1;
  padding: 0.3rem 0.4rem;
  vertical-align: baseline;
  background: #ffe9b3;
  color: #888;
}

kbd {
  border-radius: 0.2rem;
  display: inline-block;
  line-height: 1;
  padding: 0.3rem 0.4rem;
  vertical-align: baseline;
  background: #6C6C6C;
  color: #fff;
}

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

:lang(zh),
:lang(ja),
:lang(ko),
.cjk {
  font-family: "Ubuntu", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Hiragino Kaku Gothic Pro", Meiryo, "Malgun Gothic", "Helvetica Neue", sans-serif;
}

:lang(zh) ins,
:lang(zh) u,
:lang(ja) ins,
:lang(ja) u,
.cjk ins,
.cjk u {
  border-bottom: 0.1rem 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,
.cjk del + del,
.cjk del + s,
.cjk ins + ins,
.cjk ins + u,
.cjk s + del,
.cjk s + s,
.cjk u + ins,
.cjk u + u {
  margin-left: 0.125em;
}

.table {
  border-collapse: collapse;
  border-spacing: 0;
  text-align: left;
  width: 100%;
}
.table.table-striped tbody tr:nth-of-type(odd) {
  background: white;
}
.table.table-hover tbody tr:hover {
  background: #f7f7f7;
}
.table tbody tr.active, .table.table-striped tbody tr.active {
  background: #f7f7f7;
}
.table td {
  border-bottom: 0.1rem solid white;
  padding: 1.5rem 1rem;
}
.table th {
  border-bottom: 0.1rem solid #9f9f9f;
  padding: 1.5rem 1rem;
}

.btn {
  -webkit-appearance: none;
          appearance: none;
  background: #fff;
  border: 0.1rem solid #84C426;
  border-radius: 0.2rem;
  color: #84C426;
  transition: all 0.2s ease;
  cursor: pointer;
  display: inline-block;
  font-size: 1.6rem;
  height: 3.2rem;
  line-height: 2rem;
  outline: none;
  padding: 0.5rem 0.8rem;
  text-align: center;
  text-decoration: none;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: middle;
  white-space: nowrap;
}
.btn:focus {
  background: #52a8da;
  box-shadow: 0 0 0 0.2rem rgba(132, 196, 38, 0.15);
  text-decoration: none;
}
.btn:hover {
  background: #84C426;
  border-color: #7bb724;
  color: #fff;
  text-decoration: none;
}
.btn:active, .btn.active {
  background: #7bb724;
  border-color: #6da21f;
  color: #fff;
  text-decoration: none;
}
.btn[disabled], .btn:disabled, .btn.disabled {
  cursor: default;
  opacity: 0.5;
  pointer-events: none;
}
.btn.btn-primary {
  background: #84C426;
  border-color: #7bb724;
  color: #fff;
}
.btn.btn-primary:focus, .btn.btn-primary:hover {
  background: #76af22;
  border-color: #6da21f;
  color: #fff;
}
.btn.btn-primary:active, .btn.btn-primary.active {
  background: #70a620;
  border-color: #67991e;
  color: #fff;
}
.btn.btn-primary.loading::after {
  border-bottom-color: #fff;
  border-left-color: #fff;
}
.btn.btn-link {
  background: transparent;
  border-color: transparent;
  color: #84C426;
}
.btn.btn-link:focus, .btn.btn-link:hover, .btn.btn-link:active, .btn.btn-link.active {
  color: #67991e;
}
.btn.btn-sm {
  font-size: 1.2rem;
  height: 2.4rem;
  padding: 0.1rem 0.8rem;
}
.btn.btn-lg {
  font-size: 1.6rem;
  height: 4rem;
  padding: 0.9rem 0.8rem;
}
.btn.btn-block {
  display: block;
  width: 100%;
}
.btn.btn-action {
  width: 3.2rem;
  padding-left: 0;
  padding-right: 0;
}
.btn.btn-action.btn-sm {
  width: 2.4rem;
}
.btn.btn-action.btn-lg {
  width: 4rem;
}
.btn.btn-clear {
  background: transparent;
  border: 0;
  color: currentColor;
  height: 1.6rem;
  line-height: 1.6rem;
  margin-left: 0.4rem;
  margin-right: -0.2rem;
  opacity: 0.45;
  padding: 0 0.2rem;
  text-decoration: none;
  width: 1.6rem;
}
.btn.btn-clear:hover {
  opacity: 0.85;
}
.btn.btn-clear::before {
  content: "✕";
}

.btn-group {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.btn-group .btn {
  -ms-flex: 1 0 auto;
      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.1rem;
}
.btn-group .btn:last-child:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
  margin-left: -0.1rem;
}
.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: -ms-flexbox;
  display: flex;
}
.btn-group.btn-group-block .btn {
  -ms-flex: 1 0 0px;
      flex: 1 0 0;
}

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

.form-label {
  display: block;
  padding: 0.6rem 0;
}
.form-label.label-sm {
  padding: 0.2rem 0;
}
.form-label.label-lg {
  padding: 1rem 0;
}

.form-input {
  -webkit-appearance: none;
          appearance: none;
  background: #fff;
  background-image: none;
  border: 0.1rem solid #999;
  border-radius: 0.2rem;
  color: #888;
  transition: all 0.2s ease;
  display: block;
  font-size: 1.6rem;
  height: 3.2rem;
  line-height: 2rem;
  max-width: 100%;
  outline: none;
  padding: 0.5rem 0.8rem;
  position: relative;
  width: 100%;
}
.form-input:focus {
  border-color: #84C426;
  box-shadow: 0 0 0 0.2rem rgba(132, 196, 38, 0.15);
}
.form-input:-ms-input-placeholder {
  color: #d2d2d2;
}
.form-input::-ms-input-placeholder {
  color: #d2d2d2;
}
.form-input::placeholder {
  color: #d2d2d2;
}
.form-input.input-sm {
  font-size: 1.2rem;
  height: 2.4rem;
  padding: 0.1rem 0.8rem;
}
.form-input.input-lg {
  font-size: 1.6rem;
  height: 4rem;
  padding: 0.9rem 0.8rem;
}
.form-input.input-inline {
  display: inline-block;
  vertical-align: middle;
  width: auto;
}
textarea.form-input {
  height: auto;
}

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

.form-input-hint {
  color: #d2d2d2;
  margin-top: 0.4rem;
}
.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 {
  -webkit-appearance: none;
          appearance: none;
  border: 0.1rem solid #999;
  border-radius: 0.2rem;
  color: inherit;
  font-size: 1.6rem;
  line-height: 2rem;
  outline: none;
  padding: 0.5rem 0.8rem;
  vertical-align: middle;
  width: 100%;
}
.form-select[multiple] option {
  padding: 0.2rem 0.4rem;
}
.form-select:not([multiple]) {
  background: #fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23667189' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") no-repeat right 0.75rem center/0.8rem 1rem;
  height: 3.2rem;
  padding-right: 2.4rem;
}
.form-select:focus {
  border-color: #84C426;
  box-shadow: 0 0 0 0.2rem rgba(132, 196, 38, 0.15);
}
.form-select::-ms-expand {
  display: none;
}
.form-select.select-sm {
  font-size: 1.2rem;
  height: 2.4rem;
  padding: 0.1rem 2rem 0.1rem 0.6rem;
}
.form-select.select-lg {
  font-size: 1.6rem;
  height: 4rem;
  padding: 0.9rem 2.4rem 0.9rem 0.8rem;
}

.has-success .form-input, .form-input.is-success,
.has-success .form-select,
.form-select.is-success {
  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.2rem rgba(50, 182, 67, 0.15);
}
.has-error .form-input, .form-input.is-error,
.has-error .form-select,
.form-select.is-error {
  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.2rem rgba(232, 86, 0, 0.15);
}

.has-icon-left,
.has-icon-right {
  position: relative;
}
.has-icon-left .form-icon,
.has-icon-right .form-icon {
  margin: 0 0.8rem;
  min-width: 1.4rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

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

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

.form-checkbox,
.form-radio,
.form-switch {
  display: inline-block;
  line-height: 2rem;
  position: relative;
}
.form-checkbox input,
.form-radio input,
.form-switch input {
  clip: rect(0, 0, 0, 0);
  height: 0.1rem;
  margin: -0.1rem;
  overflow: hidden;
  position: absolute;
  width: 0.1rem;
}
.form-checkbox input:focus + .form-icon,
.form-radio input:focus + .form-icon,
.form-switch input:focus + .form-icon {
  border-color: #84C426;
  box-shadow: 0 0 0 0.2rem rgba(132, 196, 38, 0.15);
}
.form-checkbox input:checked + .form-icon,
.form-radio input:checked + .form-icon,
.form-switch input:checked + .form-icon {
  background: #84C426;
  border-color: #84C426;
}
.form-checkbox .form-icon,
.form-radio .form-icon,
.form-switch .form-icon {
  border: 0.1rem solid #999;
  transition: all 0.2s ease;
  cursor: pointer;
  display: inline-block;
  position: absolute;
}

.form-checkbox,
.form-radio {
  padding: 0.2rem 2rem;
}
.form-checkbox .form-icon,
.form-radio .form-icon {
  background: #fff;
  height: 1.4rem;
  left: 0;
  top: 0.5rem;
  width: 1.4rem;
}
.form-checkbox input:active + .form-icon,
.form-radio input:active + .form-icon {
  background: #f7f7f7;
}

.form-checkbox .form-icon {
  border-radius: 0.2rem;
}
.form-checkbox input:checked + .form-icon::before {
  background-clip: padding-box;
  border: 0.2rem solid #fff;
  border-left-width: 0;
  border-top-width: 0;
  content: "";
  height: 1rem;
  left: 50%;
  margin-left: -0.3rem;
  margin-top: -0.6rem;
  position: absolute;
  top: 50%;
  transform: rotate(45deg);
  width: 0.6rem;
}
.form-checkbox input:indeterminate + .form-icon {
  background: #84C426;
  border-color: #84C426;
}
.form-checkbox input:indeterminate + .form-icon::before {
  background: #fff;
  content: "";
  height: 0.2rem;
  left: 50%;
  margin-left: -0.5rem;
  margin-top: -0.1rem;
  position: absolute;
  top: 50%;
  width: 1rem;
}

.form-radio .form-icon {
  border-radius: 0.7rem;
}
.form-radio input:checked + .form-icon::before {
  background: #fff;
  border-radius: 0.2rem;
  content: "";
  height: 0.4rem;
  left: 50%;
  margin-left: -0.2rem;
  margin-top: -0.2rem;
  position: absolute;
  top: 50%;
  width: 0.4rem;
}

.form-switch {
  padding: 0.2rem 2rem 0.2rem 3.6rem;
}
.form-switch .form-icon {
  background: white;
  background-clip: padding-box;
  border-radius: 0.9rem;
  height: 1.8rem;
  left: 0;
  top: 0.3rem;
  width: 3rem;
}
.form-switch .form-icon::before {
  background: #fff;
  border-radius: 0.8rem;
  content: "";
  display: block;
  height: 1.6rem;
  left: 0;
  position: absolute;
  top: 0;
  transition: all 0.2s ease;
  width: 1.6rem;
}
.form-switch input:checked + .form-icon::before {
  left: 1.2rem;
}
.form-switch input:active + .form-icon::before {
  background: white;
}

.input-group {
  display: -ms-flexbox;
  display: flex;
}
.input-group .input-group-addon {
  background: white;
  border: 0.1rem solid #999;
  border-radius: 0.2rem;
  line-height: 2rem;
  padding: 0.5rem 0.8rem;
}
.input-group .input-group-addon.addon-sm {
  font-size: 1.2rem;
  padding: 0.1rem 0.8rem;
}
.input-group .input-group-addon.addon-lg {
  font-size: 1.6rem;
  padding: 0.9rem 0.8rem;
}
.input-group .input-group-addon,
.input-group .input-group-btn {
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
}
.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.1rem;
}
.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.1rem;
}
.input-group .form-input:focus,
.input-group .form-select:focus,
.input-group .input-group-addon:focus,
.input-group .input-group-btn:focus {
  z-index: 1;
}
.input-group .form-select {
  width: auto;
}
.input-group.input-inline {
  display: -ms-inline-flexbox;
  display: inline-flex;
}

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

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

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

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

.form-horizontal {
  padding: 1rem;
}
.form-horizontal .form-group {
  display: -ms-flexbox;
  display: flex;
}
.form-horizontal .form-checkbox,
.form-horizontal .form-radio,
.form-horizontal .form-switch {
  margin: 0.4rem 0;
}

.label {
  border-radius: 0.2rem;
  display: inline-block;
  line-height: 1;
  padding: 0.3rem 0.4rem;
  vertical-align: baseline;
  background: white;
  color: #959595;
}
.label.label-primary {
  background: #84C426;
  color: #fff;
}
.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.2rem;
  display: inline-block;
  line-height: 1;
  padding: 0.3rem 0.4rem;
  vertical-align: baseline;
  background: #fdf4f4;
  color: #e06870;
}

.code {
  border-radius: 0.2rem;
  color: #888;
  line-height: 2rem;
  position: relative;
}
.code::before {
  content: attr(data-lang);
  color: #d2d2d2;
  font-size: 1.2rem;
  position: absolute;
  right: 1rem;
  top: 0.2rem;
}
.code code {
  background: white;
  color: inherit;
  display: block;
  line-height: inherit;
  overflow-x: auto;
  padding: 2rem;
  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 {
  bottom: 0;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}
.video-responsive video {
  height: auto;
  max-width: 100%;
  width: 100%;
}

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

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

.figure {
  margin: 0 0 1rem 0;
}
.figure .figure-caption {
  color: #9f9f9f;
  margin-top: 1rem;
}

.container {
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
}
.container.grid-1280 {
  max-width: 130rem;
}
.container.grid-960 {
  max-width: 98rem;
}
.container.grid-480 {
  max-width: 50rem;
}

.columns {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -1rem;
  margin-right: -1rem;
}
.columns.col-gapless {
  margin-left: 0;
  margin-right: 0;
}
.columns.col-gapless .column {
  padding-left: 0;
  padding-right: 0;
}
.columns.col-oneline {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  overflow-x: auto;
}

.column {
  -ms-flex: 1;
      flex: 1;
  max-width: 100%;
  padding: 1rem;
}
.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 {
  -ms-flex: none;
      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%;
}

@media screen and (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 {
    -ms-flex: none;
        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%;
  }
}
@media screen and (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 {
    -ms-flex: none;
        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%;
  }
}
@media screen and (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 {
    -ms-flex: none;
        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%;
  }
}
@media screen and (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 {
    -ms-flex: none;
        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%;
  }
}
@media screen and (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 {
    -ms-flex: none;
        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%;
  }
}
.show-xs,
.show-sm,
.show-md,
.show-lg,
.show-xl {
  display: none !important;
}

@media screen and (max-width: 480px) {
  .hide-xs {
    display: none !important;
  }
  .show-xs {
    display: block !important;
  }
}
@media screen and (max-width: 600px) {
  .hide-sm {
    display: none !important;
  }
  .show-sm {
    display: block !important;
  }
}
@media screen and (max-width: 840px) {
  .hide-md {
    display: none !important;
  }
  .show-md {
    display: block !important;
  }
}
@media screen and (max-width: 960px) {
  .hide-lg {
    display: none !important;
  }
  .show-lg {
    display: block !important;
  }
}
@media screen and (max-width: 1280px) {
  .hide-xl {
    display: none !important;
  }
  .show-xl {
    display: block !important;
  }
}
.navbar {
  -ms-flex-align: stretch;
      align-items: stretch;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
.navbar .navbar-section {
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 1 0 0px;
      flex: 1 0 0;
}
.navbar .navbar-section:last-child {
  -ms-flex-pack: end;
      justify-content: flex-end;
}
.navbar .navbar-center {
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
}
.navbar .navbar-brand {
  font-size: 1.6rem;
  font-weight: 500;
  text-decoration: none;
}

.panel {
  border: 0.1rem solid white;
  border-radius: 0.2rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}
.panel .panel-header,
.panel .panel-footer {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  padding: 1.5rem;
}
.panel .panel-nav {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
}
.panel .panel-body {
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  overflow-y: auto;
  padding: 0 1.5rem;
}
.panel .panel-title {
  font-size: 2rem;
}
.panel .panel-subtitle {
  color: #eeeeee;
}

.empty {
  background: white;
  border-radius: 0.2rem;
  color: #9f9f9f;
  text-align: center;
  padding: 4rem;
}
.empty .empty-title,
.empty .empty-subtitle {
  margin: 1rem auto;
}
.empty .empty-subtitle {
  color: #eeeeee;
}
.empty .empty-action {
  margin-top: 1.5rem;
}

.form-autocomplete {
  position: relative;
}
.form-autocomplete .form-autocomplete-input {
  -ms-flex-line-pack: start;
      align-content: flex-start;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  height: auto;
  min-height: 3.2rem;
  padding: 0.1rem 0 0 0.1rem;
}
.form-autocomplete .form-autocomplete-input.is-focused {
  border-color: #84C426;
  box-shadow: 0 0 0 0.2rem rgba(132, 196, 38, 0.15);
}
.form-autocomplete .form-autocomplete-input .form-input {
  border-color: transparent;
  box-shadow: none;
  display: inline-block;
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  height: 2.8rem;
  padding: 0.3rem 0.8rem;
  width: auto;
}
.form-autocomplete mark {
  font-size: 1;
  padding: 0.1em 0;
}
.form-autocomplete .menu {
  left: 0;
  position: absolute;
  top: 100%;
  width: 100%;
}

.avatar {
  background: #84C426;
  border-radius: 50%;
  color: rgba(255, 255, 255, 0.85);
  display: inline-block;
  font-size: 1.6rem;
  font-weight: 300;
  height: 3.2rem;
  line-height: 1;
  margin: 0;
  position: relative;
  vertical-align: middle;
  width: 3.2rem;
}
.avatar.avatar-xs {
  font-size: 0.8rem;
  height: 1.6rem;
  width: 1.6rem;
}
.avatar.avatar-sm {
  font-size: 1rem;
  height: 2.4rem;
  width: 2.4rem;
}
.avatar.avatar-lg {
  font-size: 2rem;
  height: 4.8rem;
  width: 4.8rem;
}
.avatar.avatar-xl {
  font-size: 2.6rem;
  height: 6.4rem;
  width: 6.4rem;
}
.avatar img {
  border-radius: 50%;
  height: 100%;
  position: relative;
  width: 100%;
  z-index: 100;
}
.avatar .avatar-icon {
  background: #fff;
  bottom: 14.64%;
  height: 50%;
  padding: 0.2rem;
  position: absolute;
  right: 14.64%;
  transform: translate(50%, 50%);
  width: 50%;
}
.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: #84C426;
  background-clip: padding-box;
  border-radius: 1rem;
  box-shadow: 0 0 0 0.2rem #fff;
  color: #fff;
  content: attr(data-badge);
  display: inline-block;
  transform: translate(-0.2rem, -1rem);
}
.badge[data-badge]::after {
  font-size: 1.2rem;
  height: 1.8rem;
  line-height: 1;
  min-width: 1.8rem;
  padding: 0.3rem 0.5rem;
  text-align: center;
  white-space: nowrap;
}
.badge:not([data-badge])::after, .badge[data-badge=""]::after {
  height: 0.6rem;
  min-width: 0.6rem;
  padding: 0;
  width: 0.6rem;
}
.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;
}
.badge.avatar-xs::after {
  content: "";
  height: 0.8rem;
  min-width: 0.8rem;
  padding: 0;
  width: 0.8rem;
}

.bar {
  background: #f7f7f7;
  border-radius: 0.2rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  height: 1.6rem;
  width: 100%;
}
.bar.bar-sm {
  height: 0.4rem;
}
.bar .bar-item {
  background: #84C426;
  color: #fff;
  display: block;
  font-size: 1.2rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  line-height: 1;
  height: 100%;
  padding: 0.2rem 0;
  position: relative;
  text-align: center;
  width: 0;
}
.bar .bar-item:first-child {
  border-bottom-left-radius: 0.2rem;
  border-top-left-radius: 0.2rem;
}
.bar .bar-item:last-child {
  border-bottom-right-radius: 0.2rem;
  border-top-right-radius: 0.2rem;
  -ms-flex-negative: 1;
      flex-shrink: 1;
}

.bar-slider {
  height: 0.2rem;
  margin: 1rem 0;
  position: relative;
}
.bar-slider .bar-item {
  left: 0;
  padding: 0;
  position: absolute;
}
.bar-slider .bar-item:not(:last-child):first-child {
  background: #f7f7f7;
  z-index: 1;
}
.bar-slider .bar-slider-btn {
  background: #84C426;
  border: 0;
  border-radius: 50%;
  height: 1.2rem;
  padding: 0;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(50%, -50%);
  width: 1.2rem;
}
.bar-slider .bar-slider-btn:active {
  box-shadow: 0 0 0 0.2rem #84C426;
}

.card {
  background: #fff;
  border: 0.1rem solid white;
  border-radius: 0.2rem;
  display: block;
}
.card .card-header,
.card .card-body,
.card .card-footer {
  padding: 1.5rem;
  padding-bottom: 0;
}
.card .card-header:last-child,
.card .card-body:last-child,
.card .card-footer:last-child {
  padding-bottom: 1.5rem;
}
.card .card-image {
  padding-top: 1.5rem;
}
.card .card-image:first-child {
  padding-top: 0;
}
.card .card-image:first-child img {
  border-top-left-radius: 0.2rem;
  border-top-right-radius: 0.2rem;
}
.card .card-image:last-child img {
  border-bottom-left-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}
.card .card-title {
  font-size: 2rem;
}
.card .card-subtitle {
  color: #eeeeee;
  font-size: 1.2rem;
}

.chip {
  -ms-flex-align: center;
      align-items: center;
  background: #f7f7f7;
  border-radius: 0.2rem;
  color: #9f9f9f;
  display: -ms-inline-flexbox;
  display: inline-flex;
  height: 2.8rem;
  margin: 0 0.1rem 0.1rem 0;
  max-width: 100%;
  padding: 0.1rem 0.8rem;
  text-decoration: none;
  vertical-align: middle;
}
.chip.active {
  background: #84C426;
  color: #fff;
}
.chip .avatar {
  margin-left: -0.4rem;
  margin-right: 0.4rem;
}

.dropdown {
  display: inline-block;
  position: relative;
}
.dropdown .menu {
  animation: slide-down 0.2s ease 1;
  display: none;
  left: 0;
  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.2rem;
  border-top-right-radius: 0.2rem;
}

.menu {
  background: #fff;
  border-radius: 0.2rem;
  list-style: none;
  margin: 0;
  min-width: 18rem;
  padding: 1rem;
  box-shadow: 0 0.1rem 0.4rem rgba(108, 108, 108, 0.3);
  transform: translateY(0.5rem);
  z-index: 100;
}
.menu .menu-item {
  margin-top: 0;
  padding: 0 0.8rem;
  text-decoration: none;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.menu .menu-item > a {
  border-radius: 0.2rem;
  color: inherit;
  display: block;
  margin: 0 -0.8rem;
  padding: 0.6rem 0.8rem;
  text-decoration: none;
}
.menu .menu-item > a:focus, .menu .menu-item > a:hover {
  color: #84C426;
}
.menu .menu-item > a:active, .menu .menu-item > a.active {
  background: #52a8da;
  color: #84C426;
}
.menu .menu-badge {
  float: right;
  padding: 0.6rem 0;
}
.menu .menu-badge .btn {
  margin-top: -0.2rem;
}

.modal {
  -ms-flex-align: center;
      align-items: center;
  bottom: 0;
  display: none;
  -ms-flex-pack: center;
      justify-content: center;
  left: 0;
  opacity: 0;
  overflow: hidden;
  padding: 1rem;
  position: fixed;
  right: 0;
  top: 0;
}
.modal:target, .modal.active {
  display: -ms-flexbox;
  display: flex;
  opacity: 1;
  z-index: 400;
}
.modal:target .modal-overlay, .modal.active .modal-overlay {
  background: rgba(108, 108, 108, 0.5);
  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 0.2s ease 1;
  max-width: 64rem;
  z-index: 1;
}
.modal.modal-sm .modal-container {
  max-width: 32rem;
}

.modal-container {
  background: #fff;
  border-radius: 0.2rem;
  display: block;
  padding: 0;
  box-shadow: 0 0.4rem 1rem rgba(108, 108, 108, 0.3);
  text-align: left;
}
.modal-container .modal-header {
  padding: 1.5rem;
}
.modal-container .modal-header .modal-title {
  font-size: 1.6rem;
  margin: 0;
}
.modal-container .modal-body {
  max-height: 50vh;
  overflow-y: auto;
  padding: 1.5rem;
  position: relative;
}
.modal-container .modal-footer {
  padding: 1.5rem;
  text-align: right;
}

.breadcrumb,
.tab,
.pagination,
.nav {
  list-style: none;
  margin: 0.5rem 0;
}

.breadcrumb {
  padding: 1.2rem;
}
.breadcrumb .breadcrumb-item {
  display: inline-block;
  margin: 0;
}
.breadcrumb .breadcrumb-item:last-child {
  color: #d2d2d2;
}
.breadcrumb .breadcrumb-item:not(:first-child)::before {
  color: white;
  content: "/";
  padding: 0 0.4rem;
}

.tab {
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.tab .tab-item {
  margin-top: 0;
}
.tab .tab-item.tab-action {
  -ms-flex: 1 0 auto;
      flex: 1 0 auto;
  text-align: right;
}
.tab .tab-item a {
  border-bottom: 0.2rem solid transparent;
  color: inherit;
  display: block;
  margin-top: 0;
  padding: 0.6rem 1.2rem 0.4rem 1.2rem;
  text-decoration: none;
}
.tab .tab-item a:focus, .tab .tab-item a:hover {
  color: #84C426;
}
.tab .tab-item.active a,
.tab .tab-item a.active {
  border-bottom-color: #84C426;
  color: #84C426;
}
.tab.tab-block .tab-item {
  -ms-flex: 1 0 0px;
      flex: 1 0 0;
  text-align: center;
}
.tab.tab-block .tab-item .badge[data-badge]::after {
  position: absolute;
  right: -0.4rem;
  top: -0.4rem;
  transform: translate(0, 0);
}
.tab:not(.tab-block) .badge {
  padding-right: 0.2rem;
}

.pagination {
  display: -ms-flexbox;
  display: flex;
}
.pagination .page-item {
  margin: 1rem 0.1rem;
}
.pagination .page-item span {
  display: inline-block;
  padding: 0.6rem 0.4rem;
}
.pagination .page-item a {
  border-radius: 0.2rem;
  color: #9f9f9f;
  display: inline-block;
  padding: 0.6rem 0.8rem;
  text-decoration: none;
}
.pagination .page-item a:focus, .pagination .page-item a:hover {
  color: #84C426;
}
.pagination .page-item a[disabled], .pagination .page-item a.disabled {
  cursor: default;
  opacity: 0.5;
  pointer-events: none;
}
.pagination .page-item.active a {
  background: #84C426;
  color: #fff;
}
.pagination .page-item.page-prev, .pagination .page-item.page-next {
  -ms-flex: 1 0 50%;
      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: 0.5;
}

.nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}
.nav .nav-item a {
  color: #9f9f9f;
  padding: 0.6rem 0.8rem;
  text-decoration: none;
}
.nav .nav-item a:focus, .nav .nav-item a:hover {
  color: #84C426;
}
.nav .nav-item.active > a {
  font-weight: bold;
}
.nav .nav-item.active > a:focus, .nav .nav-item.active > a:hover {
  color: #84C426;
}
.nav .nav {
  margin-bottom: 1rem;
  margin-left: 2rem;
}
.nav .nav a {
  color: #d2d2d2;
}

.popover {
  display: inline-block;
  position: relative;
}
.popover .popover-container {
  content: attr(data-tooltip);
  opacity: 0;
  left: 50%;
  padding: 1rem;
  position: absolute;
  top: 0;
  transform: translate(-50%, -50%) scale(0);
  transition: transform 0.2s ease;
  width: 32rem;
  z-index: 400;
}
.popover :focus + .popover-container, .popover:hover .popover-container,
.popover .popover-container:hover {
  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,
.popover.popover-right .popover-container:hover {
  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,
.popover.popover-bottom .popover-container:hover {
  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,
.popover.popover-left .popover-container:hover {
  transform: translate(-100%, -50%) scale(1);
}
.popover .card {
  border: 0;
  box-shadow: 0 0.4rem 1rem rgba(108, 108, 108, 0.3);
}

.step {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  list-style: none;
  margin: 0.5rem 0;
  width: 100%;
}
.step .step-item {
  -ms-flex: 1 1 0px;
      flex: 1 1 0;
  margin-top: 0;
  min-height: 2rem;
  text-align: center;
  position: relative;
}
.step .step-item:not(:first-child)::before {
  background: #84C426;
  content: "";
  height: 0.2rem;
  left: -50%;
  position: absolute;
  top: 0.9rem;
  width: 100%;
}
.step .step-item a {
  color: #d2d2d2;
  display: inline-block;
  padding: 2rem 1rem 0;
  text-decoration: none;
}
.step .step-item a::before {
  background: #84C426;
  border: 0.2rem solid #fff;
  border-radius: 50%;
  content: "";
  display: block;
  height: 1.2rem;
  left: 50%;
  position: absolute;
  top: 0.4rem;
  transform: translateX(-50%);
  width: 1.2rem;
  z-index: 1;
}
.step .step-item.active a::before {
  background: #fff;
  border: 0.2rem solid #84C426;
}
.step .step-item.active ~ .step-item::before {
  background: white;
}
.step .step-item.active ~ .step-item a::before {
  background: white;
}

.tile {
  -ms-flex-line-pack: justify;
      align-content: space-between;
  -ms-flex-align: start;
      align-items: flex-start;
  display: -ms-flexbox;
  display: flex;
}
.tile .tile-icon,
.tile .tile-action {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
}
.tile .tile-content {
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
}
.tile .tile-content:not(:first-child) {
  padding-left: 1rem;
}
.tile .tile-content:not(:last-child) {
  padding-right: 1rem;
}
.tile .tile-title {
  line-height: 2rem;
}
.tile .tile-subtitle {
  color: #eeeeee;
  line-height: 2rem;
}
.tile.tile-centered {
  -ms-flex-align: center;
      align-items: center;
}
.tile.tile-centered .tile-content {
  overflow: hidden;
}
.tile.tile-centered .tile-title,
.tile.tile-centered .tile-subtitle {
  margin-bottom: 0;
}

.toast {
  border: 0.1rem solid #6C6C6C;
  border-radius: 0.2rem;
  color: #fff;
  display: block;
  padding: 1rem;
  background: rgba(108, 108, 108, 0.9);
  border-color: #6C6C6C;
  width: 100%;
}
.toast.toast-primary {
  background: rgba(132, 196, 38, 0.9);
  border-color: #84C426;
}
.toast.toast-success {
  background: rgba(50, 182, 67, 0.9);
  border-color: #32b643;
}
.toast.toast-warning {
  background: rgba(255, 183, 0, 0.9);
  border-color: #ffb700;
}
.toast.toast-error {
  background: rgba(232, 86, 0, 0.9);
  border-color: #e85600;
}
.toast a {
  color: #fff;
  text-decoration: underline;
}
.toast a:focus, .toast a:hover, .toast a:active, .toast a.active {
  opacity: 0.75;
}

.tooltip {
  position: relative;
}
.tooltip::after {
  background: rgba(108, 108, 108, 0.9);
  border-radius: 0.2rem;
  bottom: 100%;
  color: #fff;
  content: attr(data-tooltip);
  display: block;
  font-size: 1.2rem;
  left: 50%;
  max-width: 32rem;
  opacity: 0;
  overflow: hidden;
  padding: 0.4rem 0.8rem;
  pointer-events: none;
  position: absolute;
  text-overflow: ellipsis;
  transform: translate(-50%, 1rem);
  transition: all 0.2s ease;
  white-space: nowrap;
  z-index: 200;
}
.tooltip:focus::after, .tooltip:hover::after {
  opacity: 1;
  transform: translate(-50%, -0.5rem);
}
.tooltip[disabled], .tooltip.disabled {
  pointer-events: auto;
}
.tooltip.tooltip-right::after {
  bottom: 50%;
  left: 100%;
  transform: translate(-1rem, 50%);
}
.tooltip.tooltip-right:focus::after, .tooltip.tooltip-right:hover::after {
  transform: translate(0.5rem, 50%);
}
.tooltip.tooltip-bottom::after {
  bottom: auto;
  top: 100%;
  transform: translate(-50%, -1rem);
}
.tooltip.tooltip-bottom:focus::after, .tooltip.tooltip-bottom:hover::after {
  transform: translate(-50%, 0.5rem);
}
.tooltip.tooltip-left::after {
  bottom: 50%;
  left: auto;
  right: 100%;
  transform: translate(1rem, 50%);
}
.tooltip.tooltip-left:focus::after, .tooltip.tooltip-left:hover::after {
  transform: translate(-0.5rem, 50%);
}

@keyframes loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes slide-down {
  0% {
    opacity: 0;
    transform: translateY(-3rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.divider,
.divider-vert {
  display: block;
  position: relative;
}
.divider[data-content]::after,
.divider-vert[data-content]::after {
  background: #fff;
  color: white;
  content: attr(data-content);
  display: inline-block;
  font-size: 1.2rem;
  padding: 0 0.8rem;
  transform: translateY(-1.1rem);
}

.divider {
  border-top: 0.1rem solid white;
  height: 0.1rem;
  margin: 1rem 0;
}

.divider-vert {
  display: block;
  padding: 1rem;
}
.divider-vert::before {
  border-left: 0.1rem solid white;
  bottom: 1rem;
  content: "";
  display: block;
  left: 50%;
  position: absolute;
  top: 1rem;
  transform: translateX(-50%);
}
.divider-vert[data-content]::after {
  left: 50%;
  padding: 0.4rem 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.loading {
  color: transparent !important;
  min-height: 1.6rem;
  pointer-events: none;
  position: relative;
}
.loading::after {
  animation: loading 500ms infinite linear;
  border: 0.2rem solid #84C426;
  border-radius: 0.8rem;
  border-right-color: transparent;
  border-top-color: transparent;
  content: "";
  display: block;
  height: 1.6rem;
  left: 50%;
  margin-left: -0.8rem;
  margin-top: -0.8rem;
  position: absolute;
  top: 50%;
  width: 1.6rem;
  z-index: 1;
}

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

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

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

.rel {
  position: relative;
}

.abs {
  position: absolute;
}

.fixed {
  position: fixed;
}

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

.mt-10 {
  margin-top: 1rem;
}

.mr-10 {
  margin-right: 1rem;
}

.mb-10 {
  margin-bottom: 1rem;
}

.ml-10 {
  margin-left: 1rem;
}

.mt-5 {
  margin-top: 0.5rem;
}

.mr-5 {
  margin-right: 0.5rem;
}

.mb-5 {
  margin-bottom: 0.5rem;
}

.ml-5 {
  margin-left: 0.5rem;
}

.pt-10 {
  padding-top: 1rem;
}

.pr-10 {
  padding-right: 1rem;
}

.pb-10 {
  padding-bottom: 1rem;
}

.pl-10 {
  padding-left: 1rem;
}

.pt-5 {
  padding-top: 0.5rem;
}

.pr-5 {
  padding-right: 0.5rem;
}

.pb-5 {
  padding-bottom: 0.5rem;
}

.pl-5 {
  padding-left: 0.5rem;
}

.block {
  display: block;
}

.inline {
  display: inline;
}

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

.flex {
  display: -ms-flexbox;
  display: flex;
}

.inline-flex {
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.hide {
  display: none !important;
}

.visible {
  visibility: visible;
}

.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: 0.1rem;
  margin: -0.1rem;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 0.1rem;
}

.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-ellipsis, .tile.tile-centered .tile-title,
.tile.tile-centered .tile-subtitle {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

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

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

.hand {
  cursor: pointer;
}

.shadow-0 {
  box-shadow: 0 0 0.2rem rgba(108, 108, 108, 0.3);
}

.shadow-1 {
  box-shadow: 0 0.1rem 0.4rem rgba(108, 108, 108, 0.3);
}

.shadow-2 {
  box-shadow: 0 0.2rem 0.6rem rgba(108, 108, 108, 0.3);
}

.shadow-3 {
  box-shadow: 0 0.3rem 0.8rem rgba(108, 108, 108, 0.3);
}

.shadow-4 {
  box-shadow: 0 0.4rem 1rem rgba(108, 108, 108, 0.3);
}

.rounded {
  border-radius: 0.2rem;
}

.circle {
  border-radius: 50%;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNwZWN0cmUuc2NzcyIsInNwZWN0cmUvX25vcm1hbGl6ZS5zY3NzIiwic3BlY3RyZS9fYmFzZS5zY3NzIiwic3BlY3RyZS9fdmFyaWFibGVzLnNjc3MiLCJzcGVjdHJlL19taXhpbnMuc2NzcyIsInNwZWN0cmUvX3R5cG9ncmFwaHkuc2NzcyIsInNwZWN0cmUvX2FzaWFuLnNjc3MiLCJzcGVjdHJlL190YWJsZXMuc2NzcyIsInNwZWN0cmUvX2J1dHRvbnMuc2NzcyIsInNwZWN0cmUvX2Zvcm1zLnNjc3MiLCJzcGVjdHJlL19sYWJlbHMuc2NzcyIsInNwZWN0cmUvX2NvZGVzLnNjc3MiLCJzcGVjdHJlL19tZWRpYS5zY3NzIiwic3BlY3RyZS9fbGF5b3V0LnNjc3MiLCJzcGVjdHJlL19uYXZiYXIuc2NzcyIsInNwZWN0cmUvX3BhbmVscy5zY3NzIiwic3BlY3RyZS9fZW1wdHkuc2NzcyIsInNwZWN0cmUvX2F1dG9jb21wbGV0ZS5zY3NzIiwic3BlY3RyZS9fYXZhdGFycy5zY3NzIiwic3BlY3RyZS9fYmFkZ2VzLnNjc3MiLCJzcGVjdHJlL19iYXJzLnNjc3MiLCJzcGVjdHJlL19jYXJkcy5zY3NzIiwic3BlY3RyZS9fY2hpcHMuc2NzcyIsInNwZWN0cmUvX2Ryb3Bkb3ducy5zY3NzIiwic3BlY3RyZS9fbWVudXMuc2NzcyIsInNwZWN0cmUvX21vZGFscy5zY3NzIiwic3BlY3RyZS9fbmF2aWdhdGlvbi5zY3NzIiwic3BlY3RyZS9fYnJlYWRjcnVtYnMuc2NzcyIsInNwZWN0cmUvX3RhYnMuc2NzcyIsInNwZWN0cmUvX3BhZ2luYXRpb24uc2NzcyIsInNwZWN0cmUvX25hdnMuc2NzcyIsInNwZWN0cmUvX3BvcG92ZXJzLnNjc3MiLCJzcGVjdHJlL19zdGVwcy5zY3NzIiwic3BlY3RyZS9fdGlsZXMuc2NzcyIsInNwZWN0cmUvX3RvYXN0cy5zY3NzIiwic3BlY3RyZS9fdG9vbHRpcHMuc2NzcyIsInNwZWN0cmUvX2FuaW1hdGlvbnMuc2NzcyIsInNwZWN0cmUv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QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQVlFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOzs7QUFHSjtFQUNFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQVlFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOzs7QUFHSjtFQUNFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQVlFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOzs7QUFHSjtFQUNFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQVlFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJQUNFOzs7QUFHSjtFQUNFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtJQVlFOztFQUVGO0lBQ0U7O0VBRUY7SUFDRTs7RUFFRjtJ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O0VBQ0E7RUFDQTtFQUNBOzs7QUFHRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFHRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFOzs7QUFHRjtBQUFBO0VBQ0U7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7OztBQUlGO0VqQ2xORTs7O0FpQ3FORjtFakNyTkU7OztBaUN3TkY7RWpDeE5FOzs7QWlDMk5GO0VqQzNORTs7O0FpQzhORjtFakM5TkU7OztBaUNtT0Y7RUFDRSxlbENwUGM7OztBa0NzUGhCO0VBQ0UiLCJmaWxlIjoic3BlY3RyZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiEgU3BlY3RyZS5jc3MgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vcGljdHVyZXBhbjIvc3BlY3RyZSAqL1xuXG4vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG5AaW1wb3J0ICdzcGVjdHJlL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdzcGVjdHJlL21peGlucyc7XG5cbi8vIFJlc2V0IGFuZCBkZXBlbmRlbmNpZXNcbkBpbXBvcnQgJ3NwZWN0cmUvbm9ybWFsaXplJztcbkBpbXBvcnQgJ3NwZWN0cmUvYmFzZSc7XG5cbi8vIENvcmUgY2xhc3Nlc1xuQGltcG9ydCAnc3BlY3RyZS90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ3NwZWN0cmUvYXNpYW4nO1xuQGltcG9ydCAnc3BlY3RyZS90YWJsZXMnO1xuQGltcG9ydCAnc3BlY3RyZS9idXR0b25zJztcbkBpbXBvcnQgJ3NwZWN0cmUvZm9ybXMnO1xuQGltcG9ydCAnc3BlY3RyZS9sYWJlbHMnO1xuQGltcG9ydCAnc3BlY3RyZS9jb2Rlcyc7XG5AaW1wb3J0ICdzcGVjdHJlL21lZGlhJztcblxuLy8gTGF5b3V0XG5AaW1wb3J0ICdzcGVjdHJlL2xheW91dCc7XG5AaW1wb3J0ICdzcGVjdHJlL25hdmJhcic7XG5AaW1wb3J0ICdzcGVjdHJlL3BhbmVscyc7XG5AaW1wb3J0ICdzcGVjdHJlL2VtcHR5JztcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCAnc3BlY3RyZS9hdXRvY29tcGxldGUnO1xuQGltcG9ydCAnc3BlY3RyZS9hdmF0YXJzJztcbkBpbXBvcnQgJ3NwZWN0cmUvYmFkZ2VzJztcbkBpbXBvcnQgJ3NwZWN0cmUvYmFycyc7XG5AaW1wb3J0ICdzcGVjdHJlL2NhcmRzJztcbkBpbXBvcnQgJ3NwZWN0cmUvY2hpcHMnO1xuQGltcG9ydCAnc3BlY3RyZS9kcm9wZG93bnMnO1xuQGltcG9ydCAnc3BlY3RyZS9tZW51cyc7XG5AaW1wb3J0ICdzcGVjdHJlL21vZGFscyc7XG5AaW1wb3J0ICdzcGVjdHJlL25hdmlnYXRpb24nO1xuQGltcG9ydCAnc3BlY3RyZS9wb3BvdmVycyc7XG5AaW1wb3J0ICdzcGVjdHJlL3N0ZXBzJztcbkBpbXBvcnQgJ3NwZWN0cmUvdGlsZXMnO1xuQGltcG9ydCAnc3BlY3RyZS90b2FzdHMnO1xuQGltcG9ydCAnc3BlY3RyZS90b29sdGlwcyc7XG5cbi8vIFV0aWxpdHkgY2xhc3Nlc1xuQGltcG9ydCAnc3BlY3RyZS9hbmltYXRpb25zJztcbkBpbXBvcnQgJ3NwZWN0cmUvdXRpbGl0aWVzJztcbiIsIi8qIE1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgKi9cbi8qIG5vcm1hbGl6ZS5jc3MgdjUuMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG5maWdjYXB0aW9uLFxuZmlndXJlLFxubWFpbiB7IC8qIDEgKi9cbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4IChyZW1vdmVkKS5cbiAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuIChyZW1vdmVkKVxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZS13aWR0aDogMDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLiAocmVtb3ZlZClcbiAqL1xuXG4vKipcbiAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzdHlsZSBpbiBBbmRyb2lkIDQuMy0uXG4gKi9cblxuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS4gKFJlbW92ZWQpXG4gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxIChjaGFuZ2VkKSAqL1xuICBmb250LXNpemU6IGluaGVyaXQ7IC8qIDEgKGNoYW5nZWQpICovXG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyAvKiAxIChjaGFuZ2VkKSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUgKHJlbW92ZWQpLlxuICovXG5cblxuLyoqXG4gKiBDaGFuZ2UgdGhlIGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKSAoY2hhbmdlZCkuXG4gKi9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzLCAvKiAxICovXG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogU2NyaXB0aW5nXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEhpZGRlblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLy8gQmFzZVxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogJGh0bWwtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGh0bWwtbGluZS1oZWlnaHQ7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiAkYm9keS1iZztcbiAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbmEge1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygpO1xuICB9XG5cbiAgJjpmb2N1cyxcbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGxpbmstY29sb3ItZGFyaztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gQ29yZSB2YXJpYWJsZXNcbiRkYXJrLWNvbG9yOiAjNkM2QzZDO1xuJGxpZ2h0LWNvbG9yOiAjZmZmO1xuXG4vLyBHbG9iYWxcbiRodG1sLWZvbnQtc2l6ZTogMTBweDtcbiRodG1sLWxpbmUtaGVpZ2h0OiAxLjQyODU3MTQyOTtcbiRib2R5LWJnOiAkbGlnaHQtY29sb3I7XG4kYm9keS1mb250LWNvbG9yOiAjODg4O1xuJGZvbnQtc2l6ZTogMS42cmVtO1xuJGZvbnQtc2l6ZS1zbTogMS4ycmVtO1xuJGZvbnQtc2l6ZS1sZzogMS42cmVtO1xuXG4vLyBGb250c1xuLy8gQ3JlZGl0OiBodHRwczovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE1LzExL3VzaW5nLXN5c3RlbS11aS1mb250cy1wcmFjdGljYWwtZ3VpZGUvXG4kYmFzZS1mb250LWZhbWlseTogJ1VidW50dSc7XG4kZmFsbGJhY2stZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZjtcbiRjamstZm9udC1mYW1pbHk6ICRiYXNlLWZvbnQtZmFtaWx5LCBcIlBpbmdGYW5nIFNDXCIsIFwiSGlyYWdpbm8gU2FucyBHQlwiLCBcIk1pY3Jvc29mdCBZYUhlaVwiLCBcIkhpcmFnaW5vIEtha3UgR290aGljIFByb1wiLCBNZWlyeW8sIFwiTWFsZ3VuIEdvdGhpY1wiLCAkZmFsbGJhY2stZm9udC1mYW1pbHk7XG4kYm9keS1mb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHksICRmYWxsYmFjay1mb250LWZhbWlseTtcblxuLy8gU2l6ZXNcbiRsYXlvdXQtcGFkZGluZzogMXJlbTtcbiRsYXlvdXQtcGFkZGluZy1sZzogMS41cmVtO1xuJGNvbnRyb2wtbWluLXdpZHRoOiAxOHJlbTtcbiRib3JkZXItcmFkaXVzOiAuMnJlbTtcbiRib3JkZXItd2lkdGg6IC4xcmVtO1xuXG4vLyBDb2xvcnNcbi8vIENvcmUgY29sb3JzXG4kcHJpbWFyeS1jb2xvcjogIzg0QzQyNjtcbiRwcmltYXJ5LWNvbG9yLWRhcms6IGRhcmtlbigkcHJpbWFyeS1jb2xvciwgMyUpO1xuJHByaW1hcnktY29sb3ItbGlnaHQ6IGxpZ2h0ZW4oJHByaW1hcnktY29sb3IsIDMlKTtcbiRzZWNvbmRhcnktY29sb3I6ICM0NUEyRDc7XG4kc2Vjb25kYXJ5LWNvbG9yLWRhcms6IGRhcmtlbigkc2Vjb25kYXJ5LWNvbG9yLCAzJSk7XG4kc2Vjb25kYXJ5LWNvbG9yLWxpZ2h0OiBsaWdodGVuKCRzZWNvbmRhcnktY29sb3IsIDMlKTtcbiR0ZXJ0aWFyeS1jb2xvcjogIzMyNUU2RTtcblxuJGxpbmstY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGxpbmstY29sb3ItZGFyazogZGFya2VuKCRsaW5rLWNvbG9yLCAxMCUpO1xuXG4vLyBHcmF5IGNvbG9yc1xuJGdyYXktY29sb3I6IGxpZ2h0ZW4oJGRhcmstY29sb3IsIDQwJSk7XG4kZ3JheS1jb2xvci1kYXJrOiBkYXJrZW4oJGdyYXktY29sb3IsIDIwJSk7XG4kZ3JheS1jb2xvci1saWdodDogbGlnaHRlbigkZ3JheS1jb2xvciwgMjAlKTtcblxuJGJvcmRlci1jb2xvcjogbGlnaHRlbigkZ3JheS1jb2xvci1saWdodCwgMyUpO1xuJGJvcmRlci1jb2xvci1kYXJrOiAjOTk5O1xuJGJnLWNvbG9yOiBsaWdodGVuKCRkYXJrLWNvbG9yLCA2NiUpO1xuJGJnLWNvbG9yLWRhcms6IGRhcmtlbigkYmctY29sb3IsIDMlKTtcbiRiZy1jb2xvci1saWdodDogJGxpZ2h0LWNvbG9yO1xuXG4vLyBDb250cm9sIGNvbG9yc1xuJGNvbnRyb2wtY29sb3Itc3VjY2VzczogIzMyYjY0MztcbiRjb250cm9sLWNvbG9yLXdhcm5pbmc6ICNmZmI3MDA7XG4kY29udHJvbC1jb2xvci1lcnJvcjogI2U4NTYwMDtcblxuLy8gT3RoZXIgY29sb3JzXG4kY29kZS1jb2xvcjogI2UwNjg3MDtcbiRoaWdobGlnaHQtY29sb3I6ICNmZmU5YjM7XG5cbiRzaWx2ZXItY2hhbGljZS1jb2xvcjogIzlFOUU5RTtcbiRtaW5lLXNoYWZ0LWNvbG9yOiAjMjQyNDI0O1xuJG5pbGUtYmx1ZS1jb2xvcjogIzE4NDE0QztcbiRhdGxhbnRpcy1jb2xvcjogIzg0QzQyNjtcbiRnbGFjaWVyLWNvbG9yOiAjNzZBQ0MyO1xuJGVtcHR5LWNvbG9yOiAjODQ4NTg2O1xuXG5cbi8vIFJlc3BvbnNpdmUgYnJlYWtwb2ludHNcbiRzaXplLXhzOiA0ODBweDtcbiRzaXplLXNtOiA2MDBweDtcbiRzaXplLW1kOiA4NDBweDtcbiRzaXplLWxnOiA5NjBweDtcbiRzaXplLXhsOiAxMjgwcHg7XG4kc2l6ZS0yeDogMTQ0MHB4O1xuXG4vLyBaLWluZGV4XG4kemluZGV4LTA6IDE7XG4kemluZGV4LTE6IDEwMDtcbiR6aW5kZXgtMjogMjAwO1xuJHppbmRleC0zOiAzMDA7XG4kemluZGV4LTQ6IDQwMDtcbiIsIi8vIENvcmUgbWl4aW5zXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICB9XG59XG5cbi8vIENvbXBvbmVudCBmb2N1cyBzaGFkb3dcbkBtaXhpbiBjb250cm9sLXNoYWRvdygkY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIC4ycmVtIHJnYmEoJGNvbG9yLCAuMTUpO1xufVxuXG4vLyBDb21wb25lbnQgdHJhbnNpdGlvblxuQG1peGluIGNvbnRyb2wtdHJhbnNpdGlvbigpIHtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlO1xufVxuXG4vLyBUb2FzdCB2YXJpYW50XG5AbWl4aW4gdG9hc3QtdmFyaWFudCgkY29sb3I6ICRkYXJrLWNvbG9yKSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAuOSk7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yO1xufVxuXG4vLyBMYWJlbCBiYXNlIHN0eWxlXG5AbWl4aW4gbGFiZWwtYmFzZSgpIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IC4zcmVtIC40cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcjogJGxpZ2h0LWNvbG9yLCAkYmctY29sb3I6ICRwcmltYXJ5LWNvbG9yKSB7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIHNoYWRvdy12YXJpYW50KCRvZmZzZXQpIHtcbiAgYm94LXNoYWRvdzogMCAkb2Zmc2V0ICgkb2Zmc2V0Ky4xcmVtKSoyIHJnYmEoJGRhcmstY29sb3IsIDAuMyk7XG59XG4iLCIvLyBUeXBvZ3JhcGh5XG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuaDEge1xuICBmb250LXNpemU6IDNyZW07XG59XG5oMiB7XG4gIGZvbnQtc2l6ZTogMi42cmVtO1xufVxuaDMge1xuICBmb250LXNpemU6IDIuMnJlbTtcbn1cbmg0IHtcbiAgZm9udC1zaXplOiAyLjByZW07XG59XG5oNSB7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xufVxuaDYge1xuICBmb250LXNpemU6IDEuNnJlbTtcbn1cbnAge1xuICBsaW5lLWhlaWdodDogMi40cmVtO1xuICBtYXJnaW46IDAgMCAzcmVtO1xufVxuYSxcbmlucyxcbnUge1xuICB0ZXh0LWRlY29yYXRpb24tc2tpcDogaW5rIGVkZ2VzO1xufVxuYmxvY2txdW90ZSB7XG4gIGJvcmRlci1sZWZ0OiAuMnJlbSBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuXG4gIHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGNpdGUge1xuICAgIGNvbG9yOiAkZ3JheS1jb2xvcjtcbiAgfVxufVxudWwsXG5vbCB7XG4gIG1hcmdpbjogMnJlbSAwIDJyZW0gMnJlbTtcbiAgcGFkZGluZzogMDtcblxuICB1bCxcbiAgb2wge1xuICAgIG1hcmdpbjogMS41cmVtIDAgMS41cmVtIDJyZW07XG4gIH1cblxuICBsaSB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxufVxudWwge1xuICBsaXN0LXN0eWxlOiBkaXNjO1xuXG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGNpcmNsZTtcbiAgfVxufVxub2wge1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xuXG4gIG9sIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGxvd2VyLWFscGhhO1xuICB9XG59XG5kbCB7XG4gIGR0IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICBkZCB7XG4gICAgbWFyZ2luOiAuNXJlbSAwIDEuNXJlbSAwO1xuICB9XG59XG5tYXJrIHtcbiAgQGluY2x1ZGUgbGFiZWwtYmFzZSgpO1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRib2R5LWZvbnQtY29sb3IsICRoaWdobGlnaHQtY29sb3IpO1xufVxua2JkIHtcbiAgQGluY2x1ZGUgbGFiZWwtYmFzZSgpO1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsaWdodC1jb2xvciwgJGRhcmstY29sb3IpO1xufVxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAuMXJlbSBkb3R0ZWQ7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuIiwiLy8gT3B0aW1pemVkIGZvciBFYXN0IEFzaWFuIENKS1xuOmxhbmcoemgpLFxuOmxhbmcoamEpLFxuOmxhbmcoa28pLFxuLmNqayB7XG4gIGZvbnQtZmFtaWx5OiAkY2prLWZvbnQtZmFtaWx5O1xufVxuXG46bGFuZyh6aCksXG46bGFuZyhqYSksXG4uY2prIHtcbiAgaW5zLFxuICB1IHtcbiAgICBib3JkZXItYm90dG9tOiAuMXJlbSBzb2xpZDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgLy8gQ3JlZGl0OiBodHRwczovL2dpdGh1Yi5jb20vZXRoYW50dy9IYW5cbiAgZGVsICsgZGVsLFxuICBkZWwgKyBzLFxuICBpbnMgKyBpbnMsXG4gIGlucyArIHUsXG4gIHMgKyBkZWwsXG4gIHMgKyBzLFxuICB1ICsgaW5zLFxuICB1ICsgdSB7XG4gICAgbWFyZ2luLWxlZnQ6IC4xMjVlbTtcbiAgfVxufVxuIiwiLy8gVGFibGVzXG4udGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi50YWJsZS1zdHJpcGVkIHtcbiAgICB0Ym9keSB7XG4gICAgICB0cjpudGgtb2YtdHlwZShvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJnLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYudGFibGUtaG92ZXIge1xuICAgIHRib2R5IHtcbiAgICAgIHRyIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWRhcms7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLFxuICAmLnRhYmxlLXN0cmlwZWQge1xuICAgIHRib2R5IHtcbiAgICAgIHRyIHtcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvci1kYXJrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMXJlbTtcbiAgfVxuXG4gIHRoIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRncmF5LWNvbG9yLWRhcms7XG4gICAgcGFkZGluZzogMS41cmVtIDFyZW07XG4gIH1cbn1cbiIsIi8vIEJ1dHRvbnNcbi5idG4ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItbGlnaHQ7XG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgQGluY2x1ZGUgY29udHJvbC10cmFuc2l0aW9uKCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGhlaWdodDogMy4ycmVtO1xuICBsaW5lLWhlaWdodDogMnJlbTtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogLjVyZW0gLjhyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvci1saWdodDtcbiAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yLWRhcms7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvci1kYXJrO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRwcmltYXJ5LWNvbG9yLWRhcmssIDUlKTtcbiAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIG9wYWNpdHk6IC41O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gQnV0dG9uIFByaW1hcnlcbiAgJi5idG4tcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvci1kYXJrO1xuICAgIGNvbG9yOiAkbGlnaHQtY29sb3I7XG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkcHJpbWFyeS1jb2xvci1kYXJrLCAyJSk7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkcHJpbWFyeS1jb2xvci1kYXJrLCA1JSk7XG4gICAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgIH1cbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHByaW1hcnktY29sb3ItZGFyaywgNCUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJHByaW1hcnktY29sb3ItZGFyaywgNyUpO1xuICAgICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICB9XG4gICAgJi5sb2FkaW5nIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEJ1dHRvbiBMaW5rXG4gICYuYnRuLWxpbmsge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJGxpbmstY29sb3ItZGFyaztcbiAgICB9XG4gIH1cblxuICAvLyBCdXR0b24gU2l6ZXNcbiAgJi5idG4tc20ge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICBoZWlnaHQ6IDIuNHJlbTtcbiAgICBwYWRkaW5nOiAuMXJlbSAuOHJlbTtcbiAgfVxuXG4gICYuYnRuLWxnIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gICAgaGVpZ2h0OiA0cmVtO1xuICAgIHBhZGRpbmc6IC45cmVtIC44cmVtO1xuICB9XG5cbiAgLy8gQnV0dG9uIEJsb2NrXG4gICYuYnRuLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEJ1dHRvbiBBY3Rpb25cbiAgJi5idG4tYWN0aW9uIHtcbiAgICB3aWR0aDogMy4ycmVtO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuXG4gICAgJi5idG4tc20ge1xuICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICB9XG5cbiAgICAmLmJ0bi1sZyB7XG4gICAgICB3aWR0aDogNHJlbTtcbiAgICB9XG4gIH1cblxuICAvLyBCdXR0b24gQ2xlYXJcbiAgJi5idG4tY2xlYXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgIGhlaWdodDogMS42cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjZyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC40cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLS4ycmVtO1xuICAgIG9wYWNpdHk6IC40NTtcbiAgICBwYWRkaW5nOiAwIC4ycmVtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB3aWR0aDogMS42cmVtO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAuODU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFwyNzE1XCI7XG4gICAgfVxuICB9XG59XG5cbi8vIEJ1dHRvbiBncm91cHNcbi5idG4tZ3JvdXAge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuXG4gIC5idG4ge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgIH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtLjFyZW07XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtLjFyZW07XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAkemluZGV4LTA7XG4gICAgfVxuICB9XG5cbiAgJi5idG4tZ3JvdXAtYmxvY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAuYnRuIHtcbiAgICAgIGZsZXg6IDEgMCAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm9ybXNcbi5mb3JtLWdyb3VwIHtcbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGF5b3V0LXBhZGRpbmc7XG4gIH1cbn1cblxuLy8gRm9ybSBlbGVtZW50OiBMYWJlbFxuLmZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogLjZyZW0gMDtcblxuICAmLmxhYmVsLXNtIHtcbiAgICBwYWRkaW5nOiAuMnJlbSAwO1xuICB9XG5cbiAgJi5sYWJlbC1sZyB7XG4gICAgcGFkZGluZzogMXJlbSAwO1xuICB9XG59XG5cbi8vIEZvcm0gZWxlbWVudDogSW5wdXRcbi5mb3JtLWlucHV0IHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWxpZ2h0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvci1kYXJrO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gIEBpbmNsdWRlIGNvbnRyb2wtdHJhbnNpdGlvbigpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBoZWlnaHQ6IDMuMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogLjVyZW0gLjhyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgQGluY2x1ZGUgY29udHJvbC1zaGFkb3coKTtcbiAgfVxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRncmF5LWNvbG9yO1xuICB9XG5cbiAgLy8gSW5wdXQgc2l6ZXNcbiAgJi5pbnB1dC1zbSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgIGhlaWdodDogMi40cmVtO1xuICAgIHBhZGRpbmc6IC4xcmVtIC44cmVtO1xuICB9XG5cbiAgJi5pbnB1dC1sZyB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgIGhlaWdodDogNHJlbTtcbiAgICBwYWRkaW5nOiAuOXJlbSAuOHJlbTtcbiAgfVxuXG4gICYuaW5wdXQtaW5saW5lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIFRleHRhcmVhXG4gIEBhdC1yb290IHRleHRhcmVhLmZvcm0taW5wdXQge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIElucHV0IHR5cGVzXG4gICZbdHlwZT1cImZpbGVcIl0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4vLyBGb3JtIGVsZW1lbnQ6IElucHV0IGhpbnRcbi5mb3JtLWlucHV0LWhpbnQge1xuICBjb2xvcjogJGdyYXktY29sb3I7XG4gIG1hcmdpbi10b3A6IC40cmVtO1xuXG4gIC5oYXMtc3VjY2VzcyAmLFxuICAuaXMtc3VjY2VzcyArICYge1xuICAgIGNvbG9yOiAkY29udHJvbC1jb2xvci1zdWNjZXNzO1xuICB9XG5cbiAgLmhhcy1lcnJvciAmLFxuICAuaXMtZXJyb3IgKyAmIHtcbiAgICBjb2xvcjogJGNvbnRyb2wtY29sb3ItZXJyb3I7XG4gIH1cbn1cblxuLy8gRm9ybSBlbGVtZW50OiBTZWxlY3Rcbi5mb3JtLXNlbGVjdCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yLWRhcms7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMnJlbTtcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogLjVyZW0gLjhyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBvcHRpb24ge1xuICAgICAgcGFkZGluZzogLjJyZW0gLjRyZW07XG4gICAgfVxuICB9XG4gICY6bm90KFttdWx0aXBsZV0pIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItbGlnaHQgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA1JyUzRSUzQ3BhdGggZmlsbD0nJTIzNjY3MTg5JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8lM0UlM0Mvc3ZnJTNFXCIpIG5vLXJlcGVhdCByaWdodCAuNzVyZW0gY2VudGVyIC8gLjhyZW0gMXJlbTtcbiAgICBoZWlnaHQ6IDMuMnJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyLjRyZW07XG4gIH1cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygpO1xuICB9XG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBTZWxlY3Qgc2l6ZXNcbiAgJi5zZWxlY3Qtc20ge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICBoZWlnaHQ6IDIuNHJlbTtcbiAgICBwYWRkaW5nOiAuMXJlbSAycmVtIC4xcmVtIC42cmVtO1xuICB9XG5cbiAgJi5zZWxlY3QtbGcge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICBoZWlnaHQ6IDRyZW07XG4gICAgcGFkZGluZzogLjlyZW0gMi40cmVtIC45cmVtIC44cmVtO1xuICB9XG59XG5cbi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbi5mb3JtLWlucHV0LFxuLmZvcm0tc2VsZWN0IHtcbiAgLmhhcy1zdWNjZXNzICYsXG4gICYuaXMtc3VjY2VzcyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29udHJvbC1jb2xvci1zdWNjZXNzO1xuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgY29udHJvbC1zaGFkb3coJGNvbnRyb2wtY29sb3Itc3VjY2Vzcyk7XG4gICAgfVxuICB9XG5cbiAgLmhhcy1lcnJvciAmLFxuICAmLmlzLWVycm9yIHtcbiAgICBib3JkZXItY29sb3I6ICRjb250cm9sLWNvbG9yLWVycm9yO1xuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgY29udHJvbC1zaGFkb3coJGNvbnRyb2wtY29sb3ItZXJyb3IpO1xuICAgIH1cbiAgfVxufVxuXG4vLyB2YWxpZGF0aW9uIGJhc2VkIG9uIDpwbGFjZWhvbGRlci1zaG93biAoRWRnZSBkb2Vzbid0IHN1cHBvcnQgaXQgeWV0KVxuLy8uZm9ybS1pbnB1dCB7XG4vLyAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4vLyAgICAmOmludmFsaWQge1xuLy8gICAgICBib3JkZXItY29sb3I6ICRjb250cm9sLWNvbG9yLWVycm9yO1xuLy8gICAgICAmOmZvY3VzIHtcbi8vICAgICAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygkY29udHJvbC1jb2xvci1lcnJvcik7XG4vLyAgICAgIH1cbi8vXG4vLyAgICAgICYgKyAuZm9ybS1pbnB1dC1oaW50IHtcbi8vICAgICAgICBjb2xvcjogJGNvbnRyb2wtY29sb3ItZXJyb3I7XG4vLyAgICAgIH1cbi8vICAgIH1cbi8vICB9XG4vL31cblxuLy8gRm9ybSBJY29uc1xuLmhhcy1pY29uLWxlZnQsXG4uaGFzLWljb24tcmlnaHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmZvcm0taWNvbiB7XG4gICAgbWFyZ2luOiAwIC44cmVtO1xuICAgIG1pbi13aWR0aDogMS40cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cbn1cblxuLmhhcy1pY29uLWxlZnQge1xuICAuZm9ybS1pY29uIHtcbiAgICBsZWZ0OiAwO1xuICB9XG5cbiAgLmZvcm0taW5wdXQge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgfVxufVxuXG4uaGFzLWljb24tcmlnaHQge1xuICAuZm9ybS1pY29uIHtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gIC5mb3JtLWlucHV0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICB9XG59XG5cbi8vIEZvcm0gZWxlbWVudDogQ2hlY2tib3ggYW5kIFJhZGlvXG4uZm9ybS1jaGVja2JveCxcbi5mb3JtLXJhZGlvLFxuLmZvcm0tc3dpdGNoIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGlucHV0IHtcbiAgICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICAgIGhlaWdodDogLjFyZW07XG4gICAgbWFyZ2luOiAtLjFyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IC4xcmVtO1xuICAgICY6Zm9jdXMgKyAuZm9ybS1pY29uIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBAaW5jbHVkZSBjb250cm9sLXNoYWRvdygpO1xuICAgIH1cbiAgICAmOmNoZWNrZWQgKyAuZm9ybS1pY29uIHtcbiAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1pY29uIHtcbiAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvci1kYXJrO1xuICAgIEBpbmNsdWRlIGNvbnRyb2wtdHJhbnNpdGlvbigpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrYm94LFxuLmZvcm0tcmFkaW8ge1xuICBwYWRkaW5nOiAuMnJlbSAycmVtO1xuXG4gIC5mb3JtLWljb24ge1xuICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvci1saWdodDtcbiAgICBoZWlnaHQ6IDEuNHJlbTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogLjVyZW07XG4gICAgd2lkdGg6IDEuNHJlbTtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICAmOmFjdGl2ZSArIC5mb3JtLWljb24ge1xuICAgICAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWRhcms7XG4gICAgfVxuICB9XG59XG4uZm9ybS1jaGVja2JveCB7XG4gIC5mb3JtLWljb24ge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgaW5wdXQge1xuICAgICY6Y2hlY2tlZCArIC5mb3JtLWljb24ge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgICAgYm9yZGVyOiAuMnJlbSBzb2xpZCAkbGlnaHQtY29sb3I7XG4gICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0uM3JlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLS42cmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHdpZHRoOiAuNnJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjppbmRldGVybWluYXRlICsgLmZvcm0taWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItbGlnaHQ7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGhlaWdodDogLjJyZW07XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0uNXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLS4xcmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5mb3JtLXJhZGlvIHtcbiAgLmZvcm0taWNvbiB7XG4gICAgYm9yZGVyLXJhZGl1czogLjdyZW07XG4gIH1cblxuICBpbnB1dCB7XG4gICAgJjpjaGVja2VkICsgLmZvcm0taWNvbiB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItbGlnaHQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBoZWlnaHQ6IC40cmVtO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtLjJyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IC0uMnJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgd2lkdGg6IC40cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGb3JtIGVsZW1lbnQ6IFN3aXRjaFxuLmZvcm0tc3dpdGNoIHtcbiAgcGFkZGluZzogLjJyZW0gMnJlbSAuMnJlbSAzLjZyZW07XG5cbiAgLmZvcm0taWNvbiB7XG4gICAgYmFja2dyb3VuZDogJGdyYXktY29sb3ItbGlnaHQ7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBib3JkZXItcmFkaXVzOiAuOXJlbTtcbiAgICBoZWlnaHQ6IDEuOHJlbTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogLjNyZW07XG4gICAgd2lkdGg6IDNyZW07XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvci1saWdodDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IC44cmVtO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgQGluY2x1ZGUgY29udHJvbC10cmFuc2l0aW9uKCk7XG4gICAgICB3aWR0aDogMS42cmVtO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0IHtcbiAgICAmOmNoZWNrZWQgKyAuZm9ybS1pY29uIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDEuMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjphY3RpdmUgKyAuZm9ybS1pY29uIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRm9ybSBlbGVtZW50OiBJbnB1dCBncm91cHNcbi5pbnB1dC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG4gICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3ItZGFyaztcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBwYWRkaW5nOiAuNXJlbSAuOHJlbTtcblxuICAgICYuYWRkb24tc20ge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgICAgcGFkZGluZzogLjFyZW0gLjhyZW07XG4gICAgfVxuICAgICYuYWRkb24tbGcge1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgICAgcGFkZGluZzogLjlyZW0gLjhyZW07XG4gICAgfVxuICB9XG4gIC5pbnB1dC1ncm91cC1hZGRvbixcbiAgLmlucHV0LWdyb3VwLWJ0biB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZm9ybS1pbnB1dCxcbiAgLmZvcm0tc2VsZWN0LFxuICAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gIC5pbnB1dC1ncm91cC1idG4ge1xuICAgICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgIH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtLjFyZW07XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtLjFyZW07XG4gICAgfVxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogJHppbmRleC0wO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cblxuICAmLmlucHV0LWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH1cbn1cblxuLy8gRm9ybSBkaXNhYmxlZCBhbmQgcmVhZG9ubHlcbi5mb3JtLWlucHV0LFxuLmZvcm0tc2VsZWN0IHtcbiAgJjpkaXNhYmxlZCxcbiAgJi5kaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbG9yLWRhcms7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBvcGFjaXR5OiAuNTtcbiAgfVxufVxuXG4uZm9ybS1pbnB1dCB7XG4gICZbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmctY29sb3I7XG4gIH1cbn1cblxuaW5wdXQge1xuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICAmICsgLmZvcm0taWNvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItZGFyaztcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICBvcGFjaXR5OiAuNTtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tc3dpdGNoIHtcbiAgaW5wdXQge1xuICAgICY6ZGlzYWJsZWQsXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICAmICsgLmZvcm0taWNvbjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWxpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGb3JtIEhvcml6b250YWxcbi5mb3JtLWhvcml6b250YWwge1xuICBwYWRkaW5nOiAkbGF5b3V0LXBhZGRpbmc7XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuZm9ybS1jaGVja2JveCxcbiAgLmZvcm0tcmFkaW8sXG4gIC5mb3JtLXN3aXRjaCB7XG4gICAgbWFyZ2luOiAuNHJlbSAwO1xuICB9XG59XG4iLCIvLyBMYWJlbHNcbi5sYWJlbCB7XG4gIEBpbmNsdWRlIGxhYmVsLWJhc2UoKTtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudChsaWdodGVuKCRib2R5LWZvbnQtY29sb3IsIDUlKSwgJGJnLWNvbG9yKTtcblxuICAmLmxhYmVsLXByaW1hcnkge1xuICAgIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxpZ2h0LWNvbG9yLCAkcHJpbWFyeS1jb2xvcik7XG4gIH1cblxuICAmLmxhYmVsLXN1Y2Nlc3Mge1xuICAgIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGxpZ2h0LWNvbG9yLCAkY29udHJvbC1jb2xvci1zdWNjZXNzKTtcbiAgfVxuXG4gICYubGFiZWwtd2FybmluZyB7XG4gICAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGlnaHQtY29sb3IsICRjb250cm9sLWNvbG9yLXdhcm5pbmcpO1xuICB9XG5cbiAgJi5sYWJlbC1lcnJvciB7XG4gICAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGlnaHQtY29sb3IsICRjb250cm9sLWNvbG9yLWVycm9yKTtcbiAgfVxufVxuIiwiLy8gQ29kZXNcbmNvZGUge1xuICBAaW5jbHVkZSBsYWJlbC1iYXNlKCk7XG4gIEBpbmNsdWRlIGxhYmVsLXZhcmlhbnQoJGNvZGUtY29sb3IsIGxpZ2h0ZW4oJGNvZGUtY29sb3IsIDMzJSkpO1xufVxuXG4uY29kZSB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYW5nKTtcbiAgICBjb2xvcjogJGdyYXktY29sb3I7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMXJlbTtcbiAgICB0b3A6IC4ycmVtO1xuICB9XG5cbiAgY29kZSB7XG4gICAgYmFja2dyb3VuZDogJGJnLWNvbG9yO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gTWVkaWFcbi5pbWctcmVzcG9uc2l2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLy8gb2JqZWN0LWZpdCBzdXBwb3J0IGlzIGNvbWluZyB0byBNaWNyb3NvZnQgRWRnZVxuLy8gaHR0cHM6Ly9kZXZlbG9wZXIubWljcm9zb2Z0LmNvbS9lbi11cy9taWNyb3NvZnQtZWRnZS9wbGF0Zm9ybS9zdGF0dXMvb2JqZWN0Zml0YW5kb2JqZWN0cG9zaXRpb24vXG4uaW1nLWZpdC1jb3ZlciB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uaW1nLWZpdC1jb250YWluIHtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLy8gVmlkZW8gcmVzcG9uc2l2ZVxuLnZpZGVvLXJlc3BvbnNpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgLy8gRGVmYXVsdCByYXRpbyAxNjo5LCB5b3UgY2FuIGNhbGN1bGF0ZSB0aGlzIHZhbHVlIGJ5IGRpdmlkaW5nIDkgYnkgMTZcbiAgfVxuXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBlbWJlZCB7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgdmlkZW8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnZpZGVvLXJlc3BvbnNpdmUtNC0zIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzUlOyAvLyBSYXRpbyA0OjNcbiAgfVxufVxuXG4udmlkZW8tcmVzcG9uc2l2ZS0xLTEge1xuICAmOjpiZWZvcmUge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOyAvLyBSYXRpbyAxOjFcbiAgfVxufVxuXG4uZmlndXJlIHtcbiAgbWFyZ2luOiAwIDAgJGxheW91dC1wYWRkaW5nIDA7XG5cbiAgLmZpZ3VyZS1jYXB0aW9uIHtcbiAgICBjb2xvcjogJGdyYXktY29sb3ItZGFyaztcbiAgICBtYXJnaW4tdG9wOiAkbGF5b3V0LXBhZGRpbmc7XG4gIH1cbn1cbiIsIi8vIExheW91dFxuLmNvbnRhaW5lciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogJGxheW91dC1wYWRkaW5nO1xuICBwYWRkaW5nLXJpZ2h0OiAkbGF5b3V0LXBhZGRpbmc7XG4gIHdpZHRoOiAxMDAlO1xuICBAZXh0ZW5kIC5jbGVhcmZpeDtcblxuICAmLmdyaWQtMTI4MCB7XG4gICAgbWF4LXdpZHRoOiAxMjhyZW0gKyAyICogJGxheW91dC1wYWRkaW5nO1xuICB9XG5cbiAgJi5ncmlkLTk2MCB7XG4gICAgbWF4LXdpZHRoOiA5NnJlbSArIDIgKiAkbGF5b3V0LXBhZGRpbmc7XG4gIH1cblxuICAmLmdyaWQtNDgwIHtcbiAgICBtYXgtd2lkdGg6IDQ4cmVtICsgMiAqICRsYXlvdXQtcGFkZGluZztcbiAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGdyaWQgc3lzdGVtXG4uY29sdW1ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLWxlZnQ6IC0kbGF5b3V0LXBhZGRpbmc7XG4gIG1hcmdpbi1yaWdodDogLSRsYXlvdXQtcGFkZGluZztcblxuICAmLmNvbC1nYXBsZXNzIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAuY29sdW1uIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG4gICYuY29sLW9uZWxpbmUge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gIH1cbn1cbi5jb2x1bW4ge1xuICBmbGV4OiAxO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRsYXlvdXQtcGFkZGluZztcblxuICAmLmNvbC0xMixcbiAgJi5jb2wtMTEsXG4gICYuY29sLTEwLFxuICAmLmNvbC05LFxuICAmLmNvbC04LFxuICAmLmNvbC03LFxuICAmLmNvbC02LFxuICAmLmNvbC01LFxuICAmLmNvbC00LFxuICAmLmNvbC0zLFxuICAmLmNvbC0yLFxuICAmLmNvbC0xIHtcbiAgICBmbGV4OiBub25lO1xuICB9XG59XG4uY29sLTEyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uY29sLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY2NjY3JTtcbn1cbi5jb2wtMTAge1xuICB3aWR0aDogODMuMzMzMzMzMzMlO1xufVxuLmNvbC05IHtcbiAgd2lkdGg6IDc1JTtcbn1cbi5jb2wtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NjY2NyU7XG59XG4uY29sLTcge1xuICB3aWR0aDogNTguMzMzMzMzMzMlO1xufVxuLmNvbC02IHtcbiAgd2lkdGg6IDUwJTtcbn1cbi5jb2wtNSB7XG4gIHdpZHRoOiA0MS42NjY2NjY2NyU7XG59XG4uY29sLTQge1xuICB3aWR0aDogMzMuMzMzMzMzMzMlO1xufVxuLmNvbC0zIHtcbiAgd2lkdGg6IDI1JTtcbn1cbi5jb2wtMiB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NyU7XG59XG4uY29sLTEge1xuICB3aWR0aDogOC4zMzMzMzMzMyU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2l6ZS14bCApIHtcbiAgLmNvbC14bC0xMixcbiAgLmNvbC14bC0xMSxcbiAgLmNvbC14bC0xMCxcbiAgLmNvbC14bC05LFxuICAuY29sLXhsLTgsXG4gIC5jb2wteGwtNyxcbiAgLmNvbC14bC02LFxuICAuY29sLXhsLTUsXG4gIC5jb2wteGwtNCxcbiAgLmNvbC14bC0zLFxuICAuY29sLXhsLTIsXG4gIC5jb2wteGwtMSB7XG4gICAgZmxleDogbm9uZTtcbiAgfVxuICAuY29sLXhsLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLXhsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wteGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC14bC05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5jb2wteGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC14bC02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5jb2wteGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC14bC0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5jb2wteGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNpemUtbGcgKSB7XG4gIC5jb2wtbGctMTIsXG4gIC5jb2wtbGctMTEsXG4gIC5jb2wtbGctMTAsXG4gIC5jb2wtbGctOSxcbiAgLmNvbC1sZy04LFxuICAuY29sLWxnLTcsXG4gIC5jb2wtbGctNixcbiAgLmNvbC1sZy01LFxuICAuY29sLWxnLTQsXG4gIC5jb2wtbGctMyxcbiAgLmNvbC1sZy0yLFxuICAuY29sLWxnLTEge1xuICAgIGZsZXg6IG5vbmU7XG4gIH1cbiAgLmNvbC1sZy0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC1sZy0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAuY29sLWxnLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuY29sLWxnLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuY29sLWxnLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1sZy0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMyU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzaXplLW1kICkge1xuICAuY29sLW1kLTEyLFxuICAuY29sLW1kLTExLFxuICAuY29sLW1kLTEwLFxuICAuY29sLW1kLTksXG4gIC5jb2wtbWQtOCxcbiAgLmNvbC1tZC03LFxuICAuY29sLW1kLTYsXG4gIC5jb2wtbWQtNSxcbiAgLmNvbC1tZC00LFxuICAuY29sLW1kLTMsXG4gIC5jb2wtbWQtMixcbiAgLmNvbC1tZC0xIHtcbiAgICBmbGV4OiBub25lO1xuICB9XG4gIC5jb2wtbWQtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5jb2wtbWQtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC1tZC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmNvbC1tZC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1tZC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmNvbC1tZC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc2l6ZS1zbSApIHtcbiAgLmNvbC1zbS0xMixcbiAgLmNvbC1zbS0xMSxcbiAgLmNvbC1zbS0xMCxcbiAgLmNvbC1zbS05LFxuICAuY29sLXNtLTgsXG4gIC5jb2wtc20tNyxcbiAgLmNvbC1zbS02LFxuICAuY29sLXNtLTUsXG4gIC5jb2wtc20tNCxcbiAgLmNvbC1zbS0zLFxuICAuY29sLXNtLTIsXG4gIC5jb2wtc20tMSB7XG4gICAgZmxleDogbm9uZTtcbiAgfVxuICAuY29sLXNtLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLXNtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtc20tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5jb2wtc20tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5jb2wtc20tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC1zbS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5jb2wtc20tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNpemUteHMpIHtcbiAgLmNvbC14cy0xMixcbiAgLmNvbC14cy0xMSxcbiAgLmNvbC14cy0xMCxcbiAgLmNvbC14cy05LFxuICAuY29sLXhzLTgsXG4gIC5jb2wteHMtNyxcbiAgLmNvbC14cy02LFxuICAuY29sLXhzLTUsXG4gIC5jb2wteHMtNCxcbiAgLmNvbC14cy0zLFxuICAuY29sLXhzLTIsXG4gIC5jb2wteHMtMSB7XG4gICAgZmxleDogbm9uZTtcbiAgfVxuICAuY29sLXhzLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLXhzLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wteHMtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC14cy05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5jb2wteHMtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhzLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC14cy02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5jb2wteHMtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhzLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC14cy0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5jb2wteHMtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhzLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxufVxuXG4vLyBSZXNwb25zaXZlIGJyZWFrcG9pbnQgc3lzdGVtXG4uc2hvdy14cyxcbi5zaG93LXNtLFxuLnNob3ctbWQsXG4uc2hvdy1sZyxcbi5zaG93LXhsIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNpemUteHMpIHtcbiAgLmhpZGUteHMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc2hvdy14cyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNpemUtc20pIHtcbiAgLmhpZGUtc20ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc2hvdy1zbSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNpemUtbWQpIHtcbiAgLmhpZGUtbWQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc2hvdy1tZCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNpemUtbGcpIHtcbiAgLmhpZGUtbGcge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc2hvdy1sZyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNpemUteGwpIHtcbiAgLmhpZGUteGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAuc2hvdy14bCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gTmF2YmFyXG4ubmF2YmFyIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gIC5uYXZiYXItc2VjdGlvbiB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDEgMCAwO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuIiwiLy8gUGFuZWxzXG4ucGFuZWwge1xuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLnBhbmVsLWhlYWRlcixcbiAgLnBhbmVsLWZvb3RlciB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgcGFkZGluZzogJGxheW91dC1wYWRkaW5nLWxnO1xuICB9XG5cbiAgLnBhbmVsLW5hdiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cblxuICAucGFuZWwtYm9keSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBwYWRkaW5nOiAwICRsYXlvdXQtcGFkZGluZy1sZztcbiAgfVxuXG4gIC5wYW5lbC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgLnBhbmVsLXN1YnRpdGxlIHtcbiAgICBjb2xvcjogbGlnaHRlbigkYm9keS1mb250LWNvbG9yLCA0MCUpO1xuICB9XG59XG4iLCIvLyBFbXB0eSBzdGF0ZXMgKG9yIEJsYW5rIHNsYXRlcylcbi5lbXB0eSB7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGNvbG9yOiAkZ3JheS1jb2xvci1kYXJrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDQgKiAkbGF5b3V0LXBhZGRpbmc7XG5cbiAgLmVtcHR5LXRpdGxlLFxuICAuZW1wdHktc3VidGl0bGUge1xuICAgIG1hcmdpbjogMXJlbSBhdXRvO1xuICB9XG5cbiAgLmVtcHR5LXN1YnRpdGxlIHtcbiAgICBjb2xvcjogbGlnaHRlbigkYm9keS1mb250LWNvbG9yLCA0MCUpO1xuICB9XG5cbiAgLmVtcHR5LWFjdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICB9XG59XG4iLCIvLyBBdXRvY29tcGxldGVcbi5mb3JtLWF1dG9jb21wbGV0ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuZm9ybS1hdXRvY29tcGxldGUtaW5wdXQge1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDMuMnJlbTtcbiAgICBwYWRkaW5nOiAuMXJlbSAwIDAgLjFyZW07XG5cbiAgICAmLmlzLWZvY3VzZWQge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGNvbnRyb2wtc2hhZG93KCk7XG4gICAgfVxuXG4gICAgLmZvcm0taW5wdXQge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgIGhlaWdodDogMi44cmVtO1xuICAgICAgcGFkZGluZzogLjNyZW0gLjhyZW07XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cblxuICBtYXJrIHtcbiAgICBmb250LXNpemU6IDE7XG4gICAgcGFkZGluZzogLjFlbSAwO1xuICB9XG5cbiAgLm1lbnUge1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gQXZhdGFyc1xuLmF2YXRhciB7XG4gIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbG9yOiByZ2JhKCRsaWdodC1jb2xvciwgMC44NSk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBmb250LXdlaWdodDogMzAwO1xuICBoZWlnaHQ6IDMuMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMy4ycmVtO1xuXG4gICYuYXZhdGFyLXhzIHtcbiAgICBmb250LXNpemU6IC44cmVtO1xuICAgIGhlaWdodDogMS42cmVtO1xuICAgIHdpZHRoOiAxLjZyZW07XG4gIH1cbiAgJi5hdmF0YXItc20ge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBoZWlnaHQ6IDIuNHJlbTtcbiAgICB3aWR0aDogMi40cmVtO1xuICB9XG4gICYuYXZhdGFyLWxnIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgaGVpZ2h0OiA0LjhyZW07XG4gICAgd2lkdGg6IDQuOHJlbTtcbiAgfVxuICAmLmF2YXRhci14bCB7XG4gICAgZm9udC1zaXplOiAyLjZyZW07XG4gICAgaGVpZ2h0OiA2LjRyZW07XG4gICAgd2lkdGg6IDYuNHJlbTtcbiAgfVxuXG4gIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogJHppbmRleC0xO1xuICB9XG5cbiAgLmF2YXRhci1pY29uIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItbGlnaHQ7XG4gICAgYm90dG9tOiAxNC42NCU7XG4gICAgaGVpZ2h0OiA1MCU7XG4gICAgcGFkZGluZzogLjJyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxNC42NCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCA1MCUpO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAmW2RhdGEtaW5pdGlhbF06OmJlZm9yZSB7XG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtaW5pdGlhbCk7XG4gICAgbGVmdDogNTAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB6LWluZGV4OiAkemluZGV4LTA7XG4gIH1cbn1cbiIsIi8vIEJhZGdlc1xuLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICZbZGF0YS1iYWRnZV0sXG4gICY6bm90KFtkYXRhLWJhZGdlXSkge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAuMnJlbSAkYmctY29sb3ItbGlnaHQ7XG4gICAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgICAgY29udGVudDogYXR0cihkYXRhLWJhZGdlKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0uMnJlbSwgLTFyZW0pO1xuICAgIH1cbiAgfVxuICAmW2RhdGEtYmFkZ2VdIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgICBoZWlnaHQ6IDEuOHJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbWluLXdpZHRoOiAxLjhyZW07XG4gICAgICBwYWRkaW5nOiAuM3JlbSAuNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuICB9XG4gICY6bm90KFtkYXRhLWJhZGdlXSksXG4gICZbZGF0YS1iYWRnZT0nJ10ge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGhlaWdodDogLjZyZW07XG4gICAgICBtaW4td2lkdGg6IC42cmVtO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiAuNnJlbTtcbiAgICB9XG4gIH1cblxuICAvLyBCYWRnZXMgZm9yIEJ1dHRvbnNcbiAgJi5idG4ge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgICB9XG4gIH1cblxuICAvLyBCYWRnZXMgZm9yIEF2YXRhcnNcbiAgJi5hdmF0YXIge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTQuNjQlO1xuICAgICAgcmlnaHQ6IDE0LjY0JTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSk7XG4gICAgICB6LWluZGV4OiAkemluZGV4LTE7XG4gICAgfVxuICB9XG5cbiAgJi5hdmF0YXIteHMge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IC44cmVtO1xuICAgICAgbWluLXdpZHRoOiAuOHJlbTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogLjhyZW07XG4gICAgfVxuICB9XG59XG4iLCIvLyBCYXJzXG4uYmFyIHtcbiAgYmFja2dyb3VuZDogJGJnLWNvbG9yLWRhcms7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgaGVpZ2h0OiAxLjZyZW07XG4gIHdpZHRoOiAxMDAlO1xuXG4gICYuYmFyLXNtIHtcbiAgICBoZWlnaHQ6IC40cmVtO1xuICB9XG5cbiAgLy8gVE9ETzogYXR0cigpIHN1cHBvcnRcbiAgLmJhci1pdGVtIHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogLjJyZW0gMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAwO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgfVxuICB9XG59XG5cbi8vIFNsaWRlciBiYXJcbi5iYXItc2xpZGVyIHtcbiAgaGVpZ2h0OiAuMnJlbTtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuYmFyLWl0ZW0ge1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiZy1jb2xvci1kYXJrO1xuICAgICAgei1pbmRleDogJHppbmRleC0wO1xuICAgIH1cbiAgfVxuXG4gIC5iYXItc2xpZGVyLWJ0biB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpO1xuICAgIHdpZHRoOiAxLjJyZW07XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAuMnJlbSAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENhcmRzXG4uY2FyZCB7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvci1saWdodDtcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBkaXNwbGF5OiBibG9jaztcblxuICAuY2FyZC1oZWFkZXIsXG4gIC5jYXJkLWJvZHksXG4gIC5jYXJkLWZvb3RlciB7XG4gICAgcGFkZGluZzogJGxheW91dC1wYWRkaW5nLWxnO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkbGF5b3V0LXBhZGRpbmctbGc7XG4gICAgfVxuICB9XG5cbiAgLmNhcmQtaW1hZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAkbGF5b3V0LXBhZGRpbmctbGc7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICBpbWcge1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBpbWcge1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jYXJkLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cblxuICAuY2FyZC1zdWJ0aXRsZSB7XG4gICAgY29sb3I6IGxpZ2h0ZW4oJGJvZHktZm9udC1jb2xvciwgNDAlKTtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gIH1cbn1cbiIsIi8vIENoaXBzXG4uY2hpcCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvci1kYXJrO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgY29sb3I6ICRncmF5LWNvbG9yLWRhcms7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBoZWlnaHQ6IDIuOHJlbTtcbiAgbWFyZ2luOiAwIC4xcmVtIC4xcmVtIDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogLjFyZW0gLjhyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgfVxuXG4gIC5hdmF0YXIge1xuICAgIG1hcmdpbi1sZWZ0OiAtLjRyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAuNHJlbTtcbiAgfVxufVxuIiwiLy8gRHJvcGRvd25cbi5kcm9wZG93biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5tZW51IHtcbiAgICBhbmltYXRpb246IHNsaWRlLWRvd24gLjJzIGVhc2UgMTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgfVxuXG4gICYuZHJvcGRvd24tcmlnaHQge1xuICAgIC5tZW51IHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSAubWVudSxcbiAgLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyArIC5tZW51LFxuICAubWVudTpob3ZlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBGaXggZHJvcGRvd24tdG9nZ2xlIGJvcmRlciByYWRpdXMgaW4gYnV0dG9uIGdyb3Vwc1xuICAuYnRuLWdyb3VwIHtcbiAgICAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKDIpIHtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIE1lbnVzXG4ubWVudSB7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvci1saWdodDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgbWluLXdpZHRoOiAkY29udHJvbC1taW4td2lkdGg7XG4gIHBhZGRpbmc6IDFyZW07XG4gIEBpbmNsdWRlIHNoYWRvdy12YXJpYW50KC4xcmVtKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC41cmVtKTtcbiAgei1pbmRleDogJHppbmRleC0xO1xuXG4gIC5tZW51LWl0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZzogMCAuOHJlbTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICAmID4gYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDAgLS44cmVtO1xuICAgICAgcGFkZGluZzogLjZyZW0gLjhyZW07XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yLWxpZ2h0O1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1lbnUtYmFkZ2Uge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwYWRkaW5nOiAuNnJlbSAwO1xuXG4gICAgLmJ0biB7XG4gICAgICBtYXJnaW4tdG9wOiAtLjJyZW07XG4gICAgfVxuICB9XG59XG4iLCIvLyBNb2RhbHNcbi5tb2RhbCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogbm9uZTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6ICRsYXlvdXQtcGFkZGluZztcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuXG4gICY6dGFyZ2V0LFxuICAmLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6ICR6aW5kZXgtNDtcblxuICAgIC5tb2RhbC1vdmVybGF5IHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGRhcmstY29sb3IsIC41KTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgIC5tb2RhbC1jb250YWluZXIge1xuICAgICAgYW5pbWF0aW9uOiBzbGlkZS1kb3duIC4ycyBlYXNlIDE7XG4gICAgICBtYXgtd2lkdGg6IDY0cmVtO1xuICAgICAgei1pbmRleDogJHppbmRleC0wO1xuICAgIH1cbiAgfVxuXG4gICYubW9kYWwtc20ge1xuICAgIC5tb2RhbC1jb250YWluZXIge1xuICAgICAgbWF4LXdpZHRoOiAzMnJlbTtcbiAgICB9XG4gIH1cbn1cblxuLm1vZGFsLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6ICRiZy1jb2xvci1saWdodDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwO1xuICBAaW5jbHVkZSBzaGFkb3ctdmFyaWFudCguNHJlbSk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgLm1vZGFsLWhlYWRlciB7XG4gICAgcGFkZGluZzogJGxheW91dC1wYWRkaW5nLWxnO1xuXG4gICAgLm1vZGFsLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgbWF4LWhlaWdodDogNTB2aDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHBhZGRpbmc6ICRsYXlvdXQtcGFkZGluZy1sZztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAubW9kYWwtZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAkbGF5b3V0LXBhZGRpbmctbGc7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbiIsIi8vIE5hdmlnYXRpb25cbi5icmVhZGNydW1iLFxuLnRhYixcbi5wYWdpbmF0aW9uLFxuLm5hdiB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogLjVyZW0gMDtcbn1cblxuQGltcG9ydCAnYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAndGFicyc7XG5AaW1wb3J0ICdwYWdpbmF0aW9uJztcbkBpbXBvcnQgJ25hdnMnO1xuIiwiLy8gQnJlYWRjcnVtYnNcbi5icmVhZGNydW1iIHtcbiAgcGFkZGluZzogMS4ycmVtO1xuXG4gIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgY29sb3I6ICRncmF5LWNvbG9yO1xuICAgIH1cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAkZ3JheS1jb2xvci1saWdodDtcbiAgICAgICAgY29udGVudDogXCIvXCI7XG4gICAgICAgIHBhZGRpbmc6IDAgLjRyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUYWJzXG4udGFiIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuXG4gIC50YWItaXRlbSB7XG4gICAgbWFyZ2luLXRvcDogMDtcblxuICAgICYudGFiLWFjdGlvbiB7XG4gICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgYm9yZGVyLWJvdHRvbTogLjJyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHBhZGRpbmc6IC42cmVtIDEuMnJlbSAuNHJlbSAxLjJyZW07XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5hY3RpdmUgYSxcbiAgICBhLmFjdGl2ZSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmLnRhYi1ibG9jayB7XG4gICAgLnRhYi1pdGVtIHtcbiAgICAgIGZsZXg6IDEgMCAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAuYmFkZ2Uge1xuICAgICAgICAmW2RhdGEtYmFkZ2VdOjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHJpZ2h0OiAtLjRyZW07XG4gICAgICAgICAgdG9wOiAtLjRyZW07XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOm5vdCgudGFiLWJsb2NrKSB7XG4gICAgLmJhZGdlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IC4ycmVtO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC5wYWdlLWl0ZW0ge1xuICAgIG1hcmdpbjogMXJlbSAuMXJlbTtcblxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogLjZyZW0gLjRyZW07XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGNvbG9yOiAkZ3JheS1jb2xvci1kYXJrO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogLjZyZW0gLjhyZW07XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICAgICZbZGlzYWJsZWRdLFxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnBhZ2UtcHJldixcbiAgICAmLnBhZ2UtbmV4dCB7XG4gICAgICBmbGV4OiAxIDAgNTAlO1xuICAgIH1cblxuICAgICYucGFnZS1uZXh0IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cblxuICAgIC5wYWdlLWl0ZW0tdGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5wYWdlLWl0ZW0tc3VidGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgb3BhY2l0eTogLjU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBOYXZzXG4ubmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAubmF2LWl0ZW0ge1xuICAgIGEge1xuICAgICAgY29sb3I6ICRncmF5LWNvbG9yLWRhcms7XG4gICAgICBwYWRkaW5nOiAuNnJlbSAuOHJlbTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICY6Zm9jdXMsXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAmID4gYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmIC5uYXYge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDJyZW07XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkZ3JheS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBvcG92ZXJzXG4ucG9wb3ZlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5wb3BvdmVyLWNvbnRhaW5lciB7XG4gICAgY29udGVudDogYXR0cihkYXRhLXRvb2x0aXApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHBhZGRpbmc6ICRsYXlvdXQtcGFkZGluZztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZTtcbiAgICB3aWR0aDogMzJyZW07XG4gICAgei1pbmRleDogJHppbmRleC00O1xuICB9XG5cbiAgOmZvY3VzICsgLnBvcG92ZXItY29udGFpbmVyLFxuICAmOmhvdmVyIC5wb3BvdmVyLWNvbnRhaW5lcixcbiAgLnBvcG92ZXItY29udGFpbmVyOmhvdmVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKSBzY2FsZSgxKTtcbiAgfVxuXG4gICYucG9wb3Zlci1yaWdodCB7XG4gICAgLnBvcG92ZXItY29udGFpbmVyIHtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICB0b3A6IDUwJTtcbiAgICB9XG5cbiAgICA6Zm9jdXMgKyAucG9wb3Zlci1jb250YWluZXIsXG4gICAgJjpob3ZlciAucG9wb3Zlci1jb250YWluZXIsXG4gICAgLnBvcG92ZXItY29udGFpbmVyOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpIHNjYWxlKDEpO1xuICAgIH1cbiAgfVxuXG4gICYucG9wb3Zlci1ib3R0b20ge1xuICAgIC5wb3BvdmVyLWNvbnRhaW5lciB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgfVxuXG4gICAgOmZvY3VzICsgLnBvcG92ZXItY29udGFpbmVyLFxuICAgICY6aG92ZXIgLnBvcG92ZXItY29udGFpbmVyLFxuICAgIC5wb3BvdmVyLWNvbnRhaW5lcjpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKSBzY2FsZSgxKTtcbiAgICB9XG4gIH1cblxuICAmLnBvcG92ZXItbGVmdCB7XG4gICAgLnBvcG92ZXItY29udGFpbmVyIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDUwJTtcbiAgICB9XG5cbiAgICA6Zm9jdXMgKyAucG9wb3Zlci1jb250YWluZXIsXG4gICAgJjpob3ZlciAucG9wb3Zlci1jb250YWluZXIsXG4gICAgLnBvcG92ZXItY29udGFpbmVyOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0xMDAlLCAtNTAlKSBzY2FsZSgxKTtcbiAgICB9XG4gIH1cblxuICAuY2FyZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIEBpbmNsdWRlIHNoYWRvdy12YXJpYW50KC40cmVtKTtcbiAgfVxufVxuIiwiLy8gU3RlcHNcbi5zdGVwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogLjVyZW0gMDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLnN0ZXAtaXRlbSB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtaW4taGVpZ2h0OiAycmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiAuMnJlbTtcbiAgICAgIGxlZnQ6IC01MCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC45cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGdyYXktY29sb3I7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAycmVtIDFyZW0gMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGJvcmRlcjogLjJyZW0gc29saWQgJGxpZ2h0LWNvbG9yO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLjRyZW07XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDEuMnJlbTtcbiAgICAgICAgei1pbmRleDogJHppbmRleC0wO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGEge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1jb2xvcjtcbiAgICAgICAgICBib3JkZXI6IC4ycmVtIHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYgfiAuc3RlcC1pdGVtIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGdyYXktY29sb3ItbGlnaHQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBUaWxlc1xuLnRpbGUge1xuICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZGlzcGxheTogZmxleDtcblxuICAudGlsZS1pY29uLFxuICAudGlsZS1hY3Rpb24ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIC50aWxlLWNvbnRlbnQge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIH1cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICB9XG4gIH1cbiAgLnRpbGUtdGl0bGUge1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICB9XG4gIC50aWxlLXN1YnRpdGxlIHtcbiAgICBjb2xvcjogbGlnaHRlbigkYm9keS1mb250LWNvbG9yLCA0MCUpO1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICB9XG5cbiAgJi50aWxlLWNlbnRlcmVkIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLnRpbGUtY29udGVudCB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIC50aWxlLXRpdGxlLFxuICAgIC50aWxlLXN1YnRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBAZXh0ZW5kIC50ZXh0LWVsbGlwc2lzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gVG9hc3RzXG4udG9hc3Qge1xuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGRhcmstY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGxheW91dC1wYWRkaW5nO1xuICBAaW5jbHVkZSB0b2FzdC12YXJpYW50KCRkYXJrLWNvbG9yKTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi50b2FzdC1wcmltYXJ5IHtcbiAgICBAaW5jbHVkZSB0b2FzdC12YXJpYW50KCRwcmltYXJ5LWNvbG9yKTtcbiAgfVxuXG4gICYudG9hc3Qtc3VjY2VzcyB7XG4gICAgQGluY2x1ZGUgdG9hc3QtdmFyaWFudCgkY29udHJvbC1jb2xvci1zdWNjZXNzKTtcbiAgfVxuXG4gICYudG9hc3Qtd2FybmluZyB7XG4gICAgQGluY2x1ZGUgdG9hc3QtdmFyaWFudCgkY29udHJvbC1jb2xvci13YXJuaW5nKTtcbiAgfVxuXG4gICYudG9hc3QtZXJyb3Ige1xuICAgIEBpbmNsdWRlIHRvYXN0LXZhcmlhbnQoJGNvbnRyb2wtY29sb3ItZXJyb3IpO1xuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6ICRsaWdodC1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgb3BhY2l0eTogLjc1O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gVG9vbHRpcHNcbi50b29sdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkZGFyay1jb2xvciwgLjkpO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBjb2xvcjogJGxpZ2h0LWNvbG9yO1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS10b29sdGlwKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc207XG4gICAgbGVmdDogNTAlO1xuICAgIG1heC13aWR0aDogMzJyZW07XG4gICAgb3BhY2l0eTogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IC40cmVtIC44cmVtO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxcmVtKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2U7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB6LWluZGV4OiAkemluZGV4LTI7XG4gIH1cbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0uNXJlbSk7XG4gICAgfVxuICB9XG4gICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxuXG4gICYudG9vbHRpcC1yaWdodCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiA1MCU7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTFyZW0sIDUwJSk7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC41cmVtLCA1MCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnRvb2x0aXAtYm90dG9tIHtcbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMXJlbSk7XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC41cmVtKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi50b29sdGlwLWxlZnQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvdHRvbTogNTAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMXJlbSwgNTAlKTtcbiAgICB9XG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLS41cmVtLCA1MCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQW5pbWF0aW9uc1xuQGtleWZyYW1lcyBsb2FkaW5nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZS1kb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zcmVtKTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuIiwiLy8gRGl2aWRlclxuLmRpdmlkZXIsXG4uZGl2aWRlci12ZXJ0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmW2RhdGEtY29udGVudF06OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3ItbGlnaHQ7XG4gICAgY29sb3I6ICRncmF5LWNvbG9yLWxpZ2h0O1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1jb250ZW50KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtO1xuICAgIHBhZGRpbmc6IDAgLjhyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xLjFyZW0pO1xuICB9XG59XG5cbi5kaXZpZGVyIHtcbiAgYm9yZGVyLXRvcDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBoZWlnaHQ6IC4xcmVtO1xuICBtYXJnaW46IDFyZW0gMDtcbn1cblxuLmRpdmlkZXItdmVydCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGF5b3V0LXBhZGRpbmc7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXItbGVmdDogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIGJvdHRvbTogJGxheW91dC1wYWRkaW5nO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogNTAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRsYXlvdXQtcGFkZGluZztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cblxuICAmW2RhdGEtY29udGVudF06OmFmdGVyIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgcGFkZGluZzogLjRyZW0gMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cbn1cblxuLy8gTG9hZGluZ1xuLmxvYWRpbmcge1xuICBjb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMS42cmVtO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOjphZnRlciB7XG4gICAgYW5pbWF0aW9uOiBsb2FkaW5nIDUwMG1zIGluZmluaXRlIGxpbmVhcjtcbiAgICBib3JkZXI6IC4ycmVtIHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IC44cmVtO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEuNnJlbTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0uOHJlbTtcbiAgICBtYXJnaW4tdG9wOiAtLjhyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAxLjZyZW07XG4gICAgei1pbmRleDogJHppbmRleC0wO1xuICB9XG59XG5cbi8vIFBvc2l0aW9uXG4uY2xlYXJmaXgge1xuICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xufVxuLmZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5yZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYWJzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuLmNlbnRlcmVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4vLyBTcGFjaW5nXG4ubXQtMTAge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLm1yLTEwIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuLm1iLTEwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5tbC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLm10LTUge1xuICBtYXJnaW4tdG9wOiAuNXJlbTtcbn1cbi5tci01IHtcbiAgbWFyZ2luLXJpZ2h0OiAuNXJlbTtcbn1cbi5tYi01IHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG59XG4ubWwtNSB7XG4gIG1hcmdpbi1sZWZ0OiAuNXJlbTtcbn1cblxuLnB0LTEwIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG59XG4ucHItMTAge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuLnBiLTEwIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG4ucGwtMTAge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG59XG4ucHQtNSB7XG4gIHBhZGRpbmctdG9wOiAuNXJlbTtcbn1cbi5wci01IHtcbiAgcGFkZGluZy1yaWdodDogLjVyZW07XG59XG4ucGItNSB7XG4gIHBhZGRpbmctYm90dG9tOiAuNXJlbTtcbn1cbi5wbC01IHtcbiAgcGFkZGluZy1sZWZ0OiAuNXJlbTtcbn1cblxuLy8gRGlzcGxheVxuLmJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLmlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5mbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5pbmxpbmUtZmxleCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnRleHQtaGlkZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiAwO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG4udGV4dC1hc3Npc3RpdmUge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIGhlaWdodDogLjFyZW07XG4gIG1hcmdpbjogLS4xcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAuMXJlbTtcbn1cbi8vIFRleHRcbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG4udGV4dC1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xufVxuLnRleHQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi50ZXh0LWNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuLnRleHQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbi50ZXh0LWJvbGQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi50ZXh0LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi50ZXh0LWxhcmdlIHtcbiAgZm9udC1zaXplOiAxLjJlbTtcbn1cblxuLnRleHQtZWxsaXBzaXMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi50ZXh0LWNsaXAge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBjbGlwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnRleHQtYnJlYWsge1xuICBoeXBoZW5zOiBhdXRvO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4uaGFuZCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8gU2hhZG93XG4uc2hhZG93LTAge1xuICBAaW5jbHVkZSBzaGFkb3ctdmFyaWFudCgwKTtcbn1cbi5zaGFkb3ctMSB7XG4gIEBpbmNsdWRlIHNoYWRvdy12YXJpYW50KC4xcmVtKTtcbn1cbi5zaGFkb3ctMiB7XG4gIEBpbmNsdWRlIHNoYWRvdy12YXJpYW50KC4ycmVtKTtcbn1cbi5zaGFkb3ctMyB7XG4gIEBpbmNsdWRlIHNoYWRvdy12YXJpYW50KC4zcmVtKTtcbn1cbi5zaGFkb3ctNCB7XG4gIEBpbmNsdWRlIHNoYWRvdy12YXJpYW50KC40cmVtKTtcbn1cblxuLy8gU2hhcGVzXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuLmNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbiJdfQ== */
