/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

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

/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block; }

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block; }

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

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

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

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

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

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

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

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

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000; }

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

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

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

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

/* Grouping content
   ========================================================================== */
/**
 * 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 margin in IE 8.
 */
figure {
  margin: 1em 40px; }

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

/* Forms
   ========================================================================== */
/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
textarea,
.ginput_container_select select,
.ginput_complex .address_country select,
.clear-multi .gfield_time_ampm select,
.ginput_container_multiselect select,
.form-field select,
select,
textarea {
  font: inherit;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Restore the font weight unset by the previous rule.
 */
optgroup {
  font-weight: bold; }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input,
textarea,
.ginput_container_select select,
.ginput_complex .address_country select,
.clear-multi .gfield_time_ampm select,
.ginput_container_multiselect select,
.form-field select {
  /* 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.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

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

/**
 * 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 OS X.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54; }

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

html,
body {
  min-height: 100%; }

body {
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch; }
  body * {
    box-sizing: border-box; }

body {
  color: #1a1a1a;
  font-family: "Gotham SSm A", "Gotham SSm B", "Gotham", Helvetica, Arial, sans-serif;
  font-feature-settings: "kern", "liga", "pnum";
  font-size: 1rem;
  font-weight: 200;
  line-height: 1.5;
  letter-spacing: -0.016em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

h1, h2, h3, h4, h5, h6 {
  font-family: "Gotham SSm A", "Gotham SSm B", "Gotham", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.25;
  margin: 1.5em 0 1em;
  text-transform: uppercase; }

h1 {
  margin-top: 0;
  font-size: 3rem;
  letter-spacing: -0.048em; }
  @media (min-width: 1025px) {
    h1 {
      font-size: 3.875rem;
      letter-spacing: -0.062em; } }

h2 {
  font-size: 2rem;
  letter-spacing: -0.032em;
  font-weight: 400; }
  @media (min-width: 1025px) {
    h2 {
      font-size: 3rem;
      letter-spacing: -0.048em; } }

h3 {
  font-size: 1.75rem;
  letter-spacing: -0.028em;
  font-weight: 300; }
  @media (min-width: 1025px) {
    h3 {
      font-size: 2rem;
      letter-spacing: -0.032em; } }

h4 {
  font-size: 1.5rem;
  letter-spacing: -0.024em;
  font-weight: 700; }
  @media (min-width: 1025px) {
    h4 {
      font-size: 1.75rem;
      letter-spacing: -0.028em; } }

h5 {
  font-size: 1.3125rem;
  letter-spacing: -0.021em;
  font-weight: 500; }
  @media (min-width: 1025px) {
    h5 {
      font-size: 1.5rem;
      letter-spacing: -0.024em; } }

h6 {
  font-size: 1.1875rem;
  letter-spacing: -0.019em;
  font-weight: 400; }
  @media (min-width: 1025px) {
    h6 {
      font-size: 1.3125rem;
      letter-spacing: -0.021em; } }

p {
  margin: 0 0 1.5em; }

a {
  color: #1a1a1a;
  text-decoration: none;
  transition: color 125ms cubic-bezier(0.77, 0, 0.175, 1); }

hr {
  border-bottom: 1px solid #e3e8ea;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  margin: 1.5em 0; }

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

@keyframes dash {
  0% {
    stroke-dasharray: 1, 150;
    stroke-dashoffset: 0; }
  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -35; }
  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -124; } }

form {
  text-align: left; }

input[type=number]::-webkit-inner-spin-button, textarea[type=number]::-webkit-inner-spin-button, .ginput_container_select select[type=number]::-webkit-inner-spin-button, .ginput_complex .address_country select[type=number]::-webkit-inner-spin-button, .clear-multi .gfield_time_ampm select[type=number]::-webkit-inner-spin-button, .ginput_container_multiselect select[type=number]::-webkit-inner-spin-button, .form-field select[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button,
textarea[type=number]::-webkit-outer-spin-button,
.ginput_container_select select[type=number]::-webkit-outer-spin-button,
.ginput_complex .address_country select[type=number]::-webkit-outer-spin-button,
.clear-multi .gfield_time_ampm select[type=number]::-webkit-outer-spin-button,
.ginput_container_multiselect select[type=number]::-webkit-outer-spin-button,
.form-field select[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0; }

::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #91969a; }

::-moz-placeholder {
  /* Firefox 19+ */
  color: #91969a; }

:-ms-input-placeholder {
  /* IE 10+ */
  color: #91969a; }

:-moz-placeholder {
  /* Firefox 18- */
  color: #91969a; }

[type="search"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

[type="submit"],
[type="button"] {
  width: 100%;
  height: auto; }
  @media (min-width: 768px) {
    [type="submit"],
    [type="button"] {
      width: auto; } }

input, textarea, .ginput_container_select select, .ginput_complex .address_country select, .clear-multi .gfield_time_ampm select, .ginput_container_multiselect select, .form-field select {
  width: 100%;
  padding: 10px 20px;
  background-color: #fff;
  border: 1px solid #c4c9cd;
  border-radius: 3px;
  transition: border 125ms cubic-bezier(0.77, 0, 0.175, 1), box-shadow 125ms cubic-bezier(0.77, 0, 0.175, 1); }
  input:focus, textarea:focus, .ginput_container_select select:focus, .ginput_complex .address_country select:focus, .clear-multi .gfield_time_ampm select:focus, .ginput_container_multiselect select:focus, .form-field select:focus {
    border-color: #5e6367;
    outline: 0; }

textarea {
  width: 100%;
  overflow: hidden; }

.gform_wrapper {
  max-width: 40rem; }

.gform_title {
  margin-bottom: 2.25rem; }

.gform_description {
  position: relative;
  display: block;
  margin: 4.5rem 0 2.25rem;
  color: #91969a; }
  .gform_description:before {
    content: '';
    position: absolute;
    top: -2.375rem;
    left: 0;
    display: block;
    width: 2.75rem;
    height: 0.25rem;
    background-color: #91969a; }

.gsection_title {
  text-transform: none;
  margin: 0 0 20px; }

.ginput_container_date ~ .gfield_description {
  margin-top: 0; }

.gform_footer {
  margin-top: 2.25rem; }
  .gform_footer form {
    display: -ms-flexbox;
    display: flex; }

.gform_fields {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .gform_fields li {
    width: 100%; }
    @media (min-width: 1026px) {
      .gform_fields li.span-half {
        width: 48%; } }
    @media (min-width: 1026px) {
      .gform_fields li.span-third {
        width: 31%; } }
    .gform_fields li.advanced-search__select {
      margin-bottom: 0; }
      @media (min-width: 1341px) {
        .gform_fields li.advanced-search__select {
          width: 30%; } }
    @media (min-width: 1341px) {
      .gform_fields li.advanced-search__input {
        width: 65%; } }
    .gform_fields li.advanced-search__input label {
      visibility: hidden; }

.gfield {
  margin-bottom: 18px; }

.advanced-search_wrapper .gfield {
  padding: 0; }

@media (min-width: 768px) {
  .gfield_required {
    display: inline-block; } }

.validation_error {
  padding: 1.25rem;
  margin: 0 0 2.25rem;
  background: rgba(166, 25, 46, 0.25);
  color: #a6192e;
  border: 1px dotted #a6192e;
  font-weight: 500; }

.gfield_description {
  font-size: 0.875rem;
  font-weight: 300;
  color: #5e6367;
  margin-bottom: 16px; }
  .gfield_description.validation_message {
    background: none;
    color: #a6192e;
    font-weight: 500;
    margin-top: 16px;
    border: 0; }

.gfield_label {
  position: relative;
  display: block;
  margin-bottom: 10px;
  font-size: 1rem;
  line-height: 1.2;
  color: #5e6367;
  font-weight: 500; }
  .gfield_error .gfield_label {
    color: #a6192e; }

.ginput_container {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  margin-top: 0; }

.gform_drop_area {
  padding: 2.25rem;
  border: 0.0625rem dashed #5e6367;
  text-align: center; }
  .gform_drop_area span {
    display: block;
    margin-bottom: 1.125rem; }

.gfield_list_container .gfield_list_group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center; }
  .gfield_list_container .gfield_list_group:hover td {
    background-color: transparent; }

.gfield_list_container .gfield_list_cell {
  display: block;
  height: 2.75rem;
  padding: 0;
  border: 0;
  -ms-flex-positive: 2;
  flex-grow: 2; }

.gfield_list_container .gfield_list_icons {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  height: 2.75rem;
  padding: 0;
  border: 0; }
  .gfield_list_container .gfield_list_icons img {
    margin-left: 0.5625rem; }
  .gfield_list_container .gfield_list_icons img:first-child {
    margin-left: 1.125rem; }

.ginput_complex {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .ginput_complex label {
    margin-top: 0.5625rem;
    font-size: 0.75rem;
    color: #5e6367; }
  .ginput_complex .ginput_full {
    width: 100%; }
  .ginput_complex .ginput_left,
  .ginput_complex .name_first,
  .ginput_complex .ginput_right,
  .ginput_complex .name_last {
    width: 100%; }
    @media (min-width: 768px) {
      .ginput_complex .ginput_left,
      .ginput_complex .name_first,
      .ginput_complex .ginput_right,
      .ginput_complex .name_last {
        width: calc(50% - 20px); } }

.clear-multi {
  display: -ms-flexbox;
  display: flex; }
  .clear-multi label {
    margin-top: 0.5625rem;
    font-size: 0.75rem;
    color: #91969a; }
  .clear-multi i {
    position: absolute;
    top: 0.4375rem;
    right: -0.75rem;
    font-style: normal; }
  .clear-multi > div {
    margin-left: 1.5rem; }
  .clear-multi > div:first-child {
    margin-left: 0; }
  .clear-multi .ginput_container_time {
    height: 44px;
    width: 75px;
    position: relative; }
    .clear-multi .ginput_container_time input, .clear-multi .ginput_container_time textarea, .clear-multi .ginput_container_time .ginput_container_select select, .ginput_container_select .clear-multi .ginput_container_time select, .clear-multi .ginput_container_time .ginput_complex .address_country select, .ginput_complex .address_country .clear-multi .ginput_container_time select, .clear-multi .ginput_container_time .gfield_time_ampm select, .clear-multi .gfield_time_ampm .ginput_container_time select, .clear-multi .ginput_container_time .ginput_container_multiselect select, .ginput_container_multiselect .clear-multi .ginput_container_time select, .clear-multi .ginput_container_time .form-field select, .form-field .clear-multi .ginput_container_time select, .clear-multi .ginput_container_time select {
      position: absolute;
      left: 0.3125rem;
      bottom: 0; }
    .clear-multi .ginput_container_time label {
      position: absolute;
      bottom: -1.875rem;
      left: 1.125rem;
      margin: 0; }

.gf_clear {
  width: 100%; }

.gfield_error .ginput_container input, .gfield_error .ginput_container textarea, .gfield_error .ginput_container .ginput_container_select select, .ginput_container_select .gfield_error .ginput_container select, .gfield_error .ginput_container .ginput_complex .address_country select, .ginput_complex .address_country .gfield_error .ginput_container select, .gfield_error .ginput_container .clear-multi .gfield_time_ampm select, .clear-multi .gfield_time_ampm .gfield_error .ginput_container select, .gfield_error .ginput_container .ginput_container_multiselect select, .ginput_container_multiselect .gfield_error .ginput_container select, .gfield_error .ginput_container .form-field select, .form-field .gfield_error .ginput_container select {
  border-color: #a6192e; }

.ginput_container_select, .ginput_complex .address_country, .clear-multi .gfield_time_ampm {
  position: relative; }
  .ginput_container_select:before, .ginput_complex .address_country:before, .clear-multi .gfield_time_ampm:before {
    content: url(../assets/img/icons/i_down-arrow.svg);
    position: absolute;
    top: 10px;
    left: auto;
    right: 20px;
    width: 10px;
    height: 2px; }
  .ginput_container_select select, .ginput_complex .address_country select, .clear-multi .gfield_time_ampm select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding-right: 60px;
    background: transparent;
    cursor: pointer;
    position: relative;
    z-index: 1;
    overflow: ellipsis; }
    .ginput_container_select select::-ms-expand, .ginput_complex .address_country select::-ms-expand, .clear-multi .gfield_time_ampm select::-ms-expand {
      display: none; }

.ginput_container_multiselect {
  position: relative; }
  .ginput_container_multiselect select {
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    cursor: pointer;
    z-index: 1; }
    .ginput_container_multiselect select::-ms-expand {
      display: none; }
  .ginput_container_multiselect option {
    padding: 10px; }

.gfield_radio {
  width: 100%; }
  .gfield_radio li {
    margin: 0 0 16px; }
  .gfield_radio [type="radio"] {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    display: inline; }
    .gfield_radio [type="radio"] + label {
      position: relative;
      display: block;
      padding: 20px 20px 20px 60px;
      border: 1px solid #c4c9cd;
      border-radius: 3px;
      text-transform: none;
      font-size: 1.1875rem;
      line-height: 1.5rem;
      cursor: pointer; }
    .gfield_radio [type="radio"] + label:before {
      content: url(../assets/img/icons/i_selection.svg);
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 20px;
      width: 20px;
      height: 20px;
      border-radius: 50%;
      transition: box-shadow 125ms cubic-bezier(0.77, 0, 0.175, 1); }
    .gfield_radio [type="radio"] + label:hover:before {
      box-shadow: 0 0 0 0.25rem rgba(196, 201, 205, 0.5); }
    .gfield_radio [type="radio"] + label:hover {
      border-color: #5e6367; }
    .gfield_radio [type="radio"]:checked + label {
      border-color: #8fd1c3;
      background: rgba(143, 209, 195, 0.1); }
    .gfield_radio [type="radio"]:checked + label:before {
      content: url(../assets/img/icons/i_selection-radio.svg); }

.gfield_checkbox {
  width: 100%; }
  .gfield_checkbox li {
    display: block;
    margin: 0 0 8px; }
  .gfield_checkbox [type="checkbox"] {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    display: inline; }
    .gfield_checkbox [type="checkbox"] + label {
      position: relative;
      display: inline-block;
      padding: 20px 20px 20px 60px;
      border: 1px solid #c4c9cd;
      border-radius: 3px;
      text-transform: none;
      font-size: 1.1875rem;
      line-height: 1rem;
      cursor: pointer;
      width: 100%; }
    .gfield_checkbox [type="checkbox"] + label:before {
      content: url(../assets/img/icons/i_selection.svg);
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 20px;
      width: 20px;
      height: 20px;
      border-radius: 50%;
      transition: box-shadow 125ms cubic-bezier(0.77, 0, 0.175, 1); }
    .gfield_checkbox [type="checkbox"] + label:hover:before {
      box-shadow: inset 0 0 0 0.25rem rgba(196, 201, 205, 0.5); }
    .gfield_checkbox [type="checkbox"] + label:hover {
      border-color: #5e6367; }
    .gfield_checkbox [type="checkbox"]:checked + label {
      border-color: #8fd1c3;
      background: rgba(143, 209, 195, 0.1); }
    .gfield_checkbox [type="checkbox"]:checked + label:before {
      content: url(../assets/img/icons/i_selection-check.svg); }

.form .errors {
  padding: 1.25rem;
  margin: 0 0 2.25rem;
  background: rgba(166, 25, 46, 0.25);
  color: #f26a36;
  border: 1px dotted #a6192e;
  font-weight: 500; }

.form .error {
  color: #a6192e;
  font-weight: 500; }

.form-field {
  width: 100%;
  margin: 0 0 9px; }
  .form-field.pd-checkbox {
    line-height: 0; }
  .form-field * {
    width: 100%; }
  .form-field label {
    position: relative;
    display: block;
    margin-bottom: 10px;
    font-size: 1rem;
    line-height: 1.2;
    color: #5e6367;
    font-weight: 500; }
  .form-field select {
    width: 100%; }
  .form-field.email input, .form-field.email textarea, .form-field.email select, .form-field.pd-email input, .form-field.pd-email textarea, .form-field.pd-email select {
    padding: 17px;
    line-height: 1;
    margin-bottom: 10px; }
  .form-field.pd-checkbox .value span {
    margin: 0 10px 0 0; }
  .form-field input[type="checkbox"], .form-field textarea[type="checkbox"], .form-field select[type="checkbox"] {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    display: inline; }
    .form-field input[type="checkbox"] + label, .form-field textarea[type="checkbox"] + label, .form-field .ginput_container_select select[type="checkbox"] + label, .form-field .ginput_complex .address_country select[type="checkbox"] + label, .form-field .clear-multi .gfield_time_ampm select[type="checkbox"] + label, .form-field .ginput_container_multiselect select[type="checkbox"] + label, .form-field select[type="checkbox"] + label {
      position: relative;
      display: inline-block;
      padding: 20px 20px 20px 60px;
      text-transform: none;
      cursor: pointer;
      font-size: 0.875rem;
      line-height: 1.2;
      font-weight: 200;
      border: 0px; }
    .form-field input[type="checkbox"] + label:before, .form-field textarea[type="checkbox"] + label:before, .form-field .ginput_container_select select[type="checkbox"] + label:before, .form-field .ginput_complex .address_country select[type="checkbox"] + label:before, .form-field .clear-multi .gfield_time_ampm select[type="checkbox"] + label:before, .form-field .ginput_container_multiselect select[type="checkbox"] + label:before, .form-field select[type="checkbox"] + label:before {
      content: url(../assets/img/icons/i_selection.svg);
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 20px;
      width: 20px;
      height: 20px;
      border-radius: 50%;
      transition: box-shadow 125ms cubic-bezier(0.77, 0, 0.175, 1); }
    .form-field input[type="checkbox"] + label:hover:before, .form-field textarea[type="checkbox"] + label:hover:before, .form-field .ginput_container_select select[type="checkbox"] + label:hover:before, .form-field .ginput_complex .address_country select[type="checkbox"] + label:hover:before, .form-field .clear-multi .gfield_time_ampm select[type="checkbox"] + label:hover:before, .form-field .ginput_container_multiselect select[type="checkbox"] + label:hover:before, .form-field select[type="checkbox"] + label:hover:before {
      box-shadow: inset 0 0 0 0.25rem rgba(196, 201, 205, 0.5); }
    .form-field input[type="checkbox"] + label:hover, .form-field textarea[type="checkbox"] + label:hover, .form-field .ginput_container_select select[type="checkbox"] + label:hover, .form-field .ginput_complex .address_country select[type="checkbox"] + label:hover, .form-field .clear-multi .gfield_time_ampm select[type="checkbox"] + label:hover, .form-field .ginput_container_multiselect select[type="checkbox"] + label:hover, .form-field select[type="checkbox"] + label:hover {
      border-color: #5e6367; }
    .form-field input[type="checkbox"]:checked + label, .form-field textarea[type="checkbox"]:checked + label, .form-field .ginput_container_select select[type="checkbox"]:checked + label, .form-field .ginput_complex .address_country select[type="checkbox"]:checked + label, .form-field .clear-multi .gfield_time_ampm select[type="checkbox"]:checked + label, .form-field .ginput_container_multiselect select[type="checkbox"]:checked + label, .form-field select[type="checkbox"]:checked + label {
      border-color: #8fd1c3;
      background: rgba(143, 209, 195, 0.1); }
    .form-field input[type="checkbox"]:checked + label:before, .form-field textarea[type="checkbox"]:checked + label:before, .form-field .ginput_container_select select[type="checkbox"]:checked + label:before, .form-field .ginput_complex .address_country select[type="checkbox"]:checked + label:before, .form-field .clear-multi .gfield_time_ampm select[type="checkbox"]:checked + label:before, .form-field .ginput_container_multiselect select[type="checkbox"]:checked + label:before, .form-field select[type="checkbox"]:checked + label:before {
      content: url(../assets/img/icons/i_selection-check.svg); }
  .form-field.pd-radio .value span {
    display: block;
    width: 100%;
    margin: 0 0 16px; }
  .form-field input[type="radio"], .form-field textarea[type="radio"], .form-field select[type="radio"] {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
    display: inline; }
    .form-field input[type="radio"] + label, .form-field textarea[type="radio"] + label, .form-field .ginput_container_select select[type="radio"] + label, .form-field .ginput_complex .address_country select[type="radio"] + label, .form-field .clear-multi .gfield_time_ampm select[type="radio"] + label, .form-field .ginput_container_multiselect select[type="radio"] + label, .form-field select[type="radio"] + label {
      position: relative;
      display: block;
      padding: 20px 20px 20px 60px;
      border: 1px solid #c4c9cd;
      border-radius: 3px;
      text-transform: none;
      font-size: 1.1875rem;
      line-height: 1.5rem;
      cursor: pointer; }
    .form-field input[type="radio"] + label:before, .form-field textarea[type="radio"] + label:before, .form-field .ginput_container_select select[type="radio"] + label:before, .form-field .ginput_complex .address_country select[type="radio"] + label:before, .form-field .clear-multi .gfield_time_ampm select[type="radio"] + label:before, .form-field .ginput_container_multiselect select[type="radio"] + label:before, .form-field select[type="radio"] + label:before {
      content: url(../assets/img/icons/i_selection.svg);
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 20px;
      width: 20px;
      height: 20px;
      border-radius: 50%;
      transition: box-shadow 125ms cubic-bezier(0.77, 0, 0.175, 1); }
    .form-field input[type="radio"] + label:hover:before, .form-field textarea[type="radio"] + label:hover:before, .form-field .ginput_container_select select[type="radio"] + label:hover:before, .form-field .ginput_complex .address_country select[type="radio"] + label:hover:before, .form-field .clear-multi .gfield_time_ampm select[type="radio"] + label:hover:before, .form-field .ginput_container_multiselect select[type="radio"] + label:hover:before, .form-field select[type="radio"] + label:hover:before {
      box-shadow: 0 0 0 0.25rem rgba(196, 201, 205, 0.5); }
    .form-field input[type="radio"] + label:hover, .form-field textarea[type="radio"] + label:hover, .form-field .ginput_container_select select[type="radio"] + label:hover, .form-field .ginput_complex .address_country select[type="radio"] + label:hover, .form-field .clear-multi .gfield_time_ampm select[type="radio"] + label:hover, .form-field .ginput_container_multiselect select[type="radio"] + label:hover, .form-field select[type="radio"] + label:hover {
      border-color: #5e6367; }
    .form-field input[type="radio"]:checked + label, .form-field textarea[type="radio"]:checked + label, .form-field .ginput_container_select select[type="radio"]:checked + label, .form-field .ginput_complex .address_country select[type="radio"]:checked + label, .form-field .clear-multi .gfield_time_ampm select[type="radio"]:checked + label, .form-field .ginput_container_multiselect select[type="radio"]:checked + label, .form-field select[type="radio"]:checked + label {
      border-color: #8fd1c3;
      background: rgba(143, 209, 195, 0.1); }
    .form-field input[type="radio"]:checked + label:before, .form-field textarea[type="radio"]:checked + label:before, .form-field .ginput_container_select select[type="radio"]:checked + label:before, .form-field .ginput_complex .address_country select[type="radio"]:checked + label:before, .form-field .clear-multi .gfield_time_ampm select[type="radio"]:checked + label:before, .form-field .ginput_container_multiselect select[type="radio"]:checked + label:before, .form-field select[type="radio"]:checked + label:before {
      content: url(../assets/img/icons/i_selection-radio.svg); }
  .form-field select {
    background: transparent;
    cursor: pointer;
    height: 45px; }
  .form-field .submit {
    display: inline-block; }
  .form-field .description {
    font-size: 0.875rem; }
    .form-field .description a {
      background-image: linear-gradient(to right, #2b3034 0%, #2b3034 100%);
      background-repeat: repeat-x;
      background-position: 0 100%;
      background-size: 100% 1px; }
      .form-field .description a:hover, .form-field .description a:focus, .form-field .description a:active {
        color: #5e6367; }

ul,
ol {
  list-style-type: none;
  margin: 0;
  padding: 0; }
  [data-content="editor"] ul:not(.gform_fields) {
    list-style-type: disc;
    margin-bottom: 0.75em;
    padding-left: 1.5em; }
  [data-content="editor"] ol {
    list-style-type: decimal;
    margin-bottom: 0.75em;
    padding-left: 1.5em; }

dl {
  margin-bottom: 0.75em; }
  dl dt {
    font-weight: bold;
    margin-top: 0.75em; }
  dl dd {
    margin: 0; }

img,
picture {
  margin: 0;
  max-width: 100%; }

figure {
  margin: 0;
  padding: 0; }

figcaption {
  padding: 10px 0 0;
  font-size: 0.875rem;
  color: #5e6367;
  font-style: italic; }

iframe {
  display: block;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto; }

table {
  border-collapse: collapse;
  font-feature-settings: "kern", "liga", "tnum";
  margin: 0 0 1.5em;
  table-layout: fixed;
  width: 100%;
  border-top: 1px solid #c4c9cd;
  border-left: 1px solid #c4c9cd; }

th {
  border-bottom: 1px solid #c4c9cd;
  font-weight: 600;
  padding: 10px;
  text-align: left; }

td {
  border-right: 1px solid #c4c9cd;
  border-bottom: 1px solid #c4c9cd;
  padding: 10px; }

tr,
td,
th {
  vertical-align: middle; }

.header-container,
.content-container,
.footer-container {
  clear: both;
  float: left;
  width: 100%; }
  .header-container:after,
  .content-container:after,
  .footer-container:after {
    content: "";
    display: table;
    clear: both; }

.wrapper {
  margin: 0 auto;
  max-width: 100%;
  padding: 0 30px;
  transition: all 125ms 125ms; }

@media (min-width: 320px) and (max-width: 479px) {
  .wrapper {
    padding: 0 30px; } }

@media (min-width: 480px) and (max-width: 639px) {
  .wrapper {
    padding: 0 60px; } }

@media (min-width: 640px) and (max-width: 1024px) {
  .wrapper {
    padding: 0 60px; } }

@media (min-width: 1025px) and (max-width: 1339px) {
  .wrapper {
    padding: 0 60px; } }
  @media (min-width: 1340px) {
    .wrapper {
      max-width: 1280px;
      padding: 0; } }
  @media (min-width: 1340px) {
    .wrapper--full {
      max-width: 100%;
      padding: 0 100px; } }

.container {
  box-sizing: border-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -10px; }
  @media (min-width: 1340px) {
    .container {
      margin-left: -20px;
      margin-right: -20px; } }

.site-content.pushed {
  margin-top: 100px; }

.grid {
  width: 100%;
  box-sizing: border-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -10px; }
  @media (min-width: 641px) {
    .grid {
      border-bottom: 1px solid #e3e8ea; }
      .grid:last-child {
        border: 0; } }
  @media (min-width: 1340px) {
    .grid {
      margin-left: -20px;
      margin-right: -20px; } }
  .grid__header {
    box-sizing: border-box;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc( 100% - 20px);
    flex-basis: calc( 100% - 20px);
    max-width: calc( 100% - 20px);
    margin: 0 10px 20px;
    font-size: 1.75rem;
    text-transform: none; }
    @media (max-width: 639px) {
      .grid__header {
        box-sizing: border-box;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0; } }
    @media (min-width: 768px) {
      .grid__header {
        font-size: 2rem; } }
    .grid__header--topic {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 100% - 20px);
      flex-basis: calc( 100% - 20px);
      max-width: calc( 100% - 20px);
      margin: 0 10px;
      margin-bottom: 0;
      font-size: 1.125rem;
      font-weight: 300; }
      @media (max-width: 639px) {
        .grid__header--topic {
          box-sizing: border-box;
          -ms-flex-positive: 0;
          flex-grow: 0;
          -ms-flex-negative: 0;
          flex-shrink: 0;
          -ms-flex-preferred-size: 100%;
          flex-basis: 100%;
          max-width: 100%;
          margin: 0; } }
      @media (min-width: 768px) {
        .grid__header--topic {
          box-sizing: border-box;
          -ms-flex-positive: 0;
          flex-grow: 0;
          -ms-flex-negative: 0;
          flex-shrink: 0;
          -ms-flex-preferred-size: calc( 100% - 40px);
          flex-basis: calc( 100% - 40px);
          max-width: calc( 100% - 40px);
          margin: 0 20px;
          font-size: 1.25rem;
          min-height: 85px; } }
  .grid__item {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc( 100% - 1em);
    flex-basis: calc( 100% - 1em);
    max-width: calc( 100% - 1em);
    margin: 0 0.5em 1em; }
    @media (max-width: 639px) {
      .grid__item {
        border-bottom: 1px solid #e3e8ea; }
        .grid__container--topics .grid__item {
          border: 0; } }

@media (min-width: 640px) and (max-width: 1024px) {
  .grid__item[data-size="1"] {
    box-sizing: border-box;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc( 50% - 20px);
    flex-basis: calc( 50% - 20px);
    max-width: calc( 50% - 20px);
    margin: 0 10px;
    max-width: calc(50% - 20px);
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column; }
    .grid__item[data-size="1"]:last-child:before {
      content: '';
      position: absolute;
      top: 30px;
      bottom: 30px;
      left: -10px;
      width: 1px;
      background: #e3e8ea; }
    [data-cols="4"] .grid__item[data-size="1"]:nth-child(even):before {
      content: '';
      position: absolute;
      top: 30px;
      bottom: 30px;
      left: -10px;
      width: 1px;
      background: #e3e8ea; }
    [data-cols="4"] .grid__item[data-size="1"]:first-child {
      border-bottom: 1px solid #e3e8ea; }
    [data-cols="4"] .grid__item[data-size="1"]:nth-child(2) {
      border-bottom: 1px solid #e3e8ea; }
      [data-cols="4"] .grid__item[data-size="1"]:nth-child(2):after {
        content: '';
        position: absolute;
        bottom: -1px;
        right: calc(100% - 1px);
        width: 20px;
        height: 1px;
        background: #e3e8ea; }
  .grid__item[data-size="2"] {
    box-sizing: border-box;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc( 100% - 20px);
    flex-basis: calc( 100% - 20px);
    max-width: calc( 100% - 20px);
    margin: 0 10px;
    border-bottom: 1px solid #e3e8ea; } }

@media (min-width: 1025px) and (max-width: 1339px) {
  .grid__item[data-size="1"] {
    box-sizing: border-box;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc( 25% - 20px);
    flex-basis: calc( 25% - 20px);
    max-width: calc( 25% - 20px);
    margin: 0 10px;
    max-width: calc(25% - 20px);
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column; }
    .grid__item[data-size="1"]:before {
      content: '';
      position: absolute;
      top: 30px;
      bottom: 30px;
      left: -10px;
      width: 1px;
      background: #e3e8ea; }
    .grid__item[data-size="1"]:first-child:before {
      display: none; }
  .grid__item[data-size="2"] {
    box-sizing: border-box;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc( 50% - 20px);
    flex-basis: calc( 50% - 20px);
    max-width: calc( 50% - 20px);
    margin: 0 10px; } }
    @media (min-width: 1340px) {
      .grid__item[data-size="1"] {
        box-sizing: border-box;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        -ms-flex-preferred-size: calc( 25% - 40px);
        flex-basis: calc( 25% - 40px);
        max-width: calc( 25% - 40px);
        margin: 0 20px;
        max-width: calc(25% - 40px);
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column; }
        .grid__item[data-size="1"]:before {
          content: '';
          position: absolute;
          top: 30px;
          bottom: 30px;
          left: -20px;
          width: 1px;
          background: #e3e8ea; }
        .grid__item[data-size="1"]:first-child:before {
          display: none; }
      .grid__item[data-size="2"] {
        box-sizing: border-box;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        -ms-flex-preferred-size: calc( 50% - 40px);
        flex-basis: calc( 50% - 40px);
        max-width: calc( 50% - 40px);
        margin: 0 20px; } }

.grid--topics-cols .grid__header--topic {
  -ms-flex: none;
  flex: none;
  margin: 0;
  padding-top: 30px; }
  @media (max-width: 639px) {
    .grid--topics-cols .grid__header--topic {
      border-top: 1px solid #e3e8ea; } }

.site__bar {
  position: fixed;
  top: 0;
  left: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 60px;
  border-bottom: 2px solid #c4c9cd;
  background: #fff;
  z-index: 100; }
  @media (min-width: 1340px) {
    .site__bar {
      height: 80px; } }
  .site__bar > [data-item~="flex"] {
    -ms-flex: 0 1 auto;
    flex: 0 1 auto; }

.site__branding {
  -ms-flex-order: 2;
  order: 2; }
  .site__branding .site__title {
    margin: 0;
    font-size: 0; }
    .site__branding .site__title a {
      display: block;
      width: 137px;
      height: 60px;
      background: url("../assets/img/logos/ti-logo-stacked.svg") no-repeat 50% 50%;
      background-size: 137px 60px; }
      @media (min-width: 1340px) {
        .site__branding .site__title a {
          width: 182px;
          height: 80px;
          background-size: 182px 80px; } }

.toggle__menu {
  -ms-flex-order: 1;
  order: 1;
  padding: 0;
  background: none;
  border-radius: 0;
  height: 50px;
  width: 50px;
  font-size: 0;
  position: relative; }
  .toggle__menu:hover {
    background: none;
    box-shadow: none;
    color: inherit; }
  .toggle__menu:focus {
    outline: none; }
  @media (min-width: 1340px) {
    .toggle__menu {
      height: 60px;
      width: 60px;
      margin-right: 65px; } }
  .toggle__menu > span {
    position: absolute;
    padding-left: 30px;
    top: 50%;
    left: 50%;
    display: inline-block;
    height: 25px;
    vertical-align: middle;
    color: #2b3034;
    margin: -5px 0 0 -10px;
    transition: all 125ms cubic-bezier(0.77, 0, 0.175, 1); }
    @media (min-width: 768px) {
      .toggle__menu > span {
        font-size: 0.875rem; } }
    .toggle__menu > span:before, .toggle__menu > span:after {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      display: block;
      width: 20px;
      height: 2px;
      transition: all 125ms cubic-bezier(0.77, 0, 0.175, 1); }
    .toggle__menu > span:before {
      top: 15%;
      border-bottom: 2px solid #2b3034;
      width: 15px; }
    .toggle__menu > span:after {
      height: 10px;
      border-top: 2px solid #2b3034;
      border-bottom: 2px solid #2b3034; }
  .toggle__menu:hover > span:before {
    width: 20px; }
  .toggle__menu[aria-pressed="true"] > span:before {
    transform: rotate(45deg);
    width: 20px;
    background-color: #2b3034;
    height: 2px;
    border: none;
    top: 30%; }
  .toggle__menu[aria-pressed="true"] > span:after {
    transform: rotate(-45deg);
    top: 30%;
    border: none;
    background-color: #2b3034;
    height: 2px; }

.site__page-title {
  -ms-flex-order: 3;
  order: 3;
  -ms-flex-positive: 1;
  flex-grow: 1;
  display: none; }
  @media (min-width: 1340px) {
    .site__page-title {
      display: block;
      text-align: center;
      opacity: 0;
      transform: translateY(80%);
      transition: transform 125ms cubic-bezier(0.77, 0, 0.175, 1), opacity 125ms cubic-bezier(0.77, 0, 0.175, 1); }
      .site__page-title.show-title {
        opacity: 1;
        transform: translateY(0); } }

.subscribe__btn {
  -ms-flex-order: 5;
  order: 5;
  width: 100%;
  padding: 25px 30px; }
  .subscribe__btn .subscribe__link {
    background-color: #00558c;
    width: 100%; }
  @media (min-width: 1025px) {
    .subscribe__btn .subscribe__link {
      width: initial; } }
  @media (min-width: 1340px) {
    .subscribe__btn {
      padding: 0;
      width: initial;
      display: block;
      text-align: right; }
      .subscribe__btn .subscribe__link {
        display: inline-block; } }
  @media (min-width: 1340px) {
    .subscribe__btn--mobile {
      display: none; } }
  .subscribe__btn--desktop {
    display: none; }
    @media (min-width: 1340px) {
      .subscribe__btn--desktop {
        display: block; } }

.toggle__search {
  -ms-flex-order: 6;
  order: 6;
  padding: 0;
  background: none;
  border-radius: 0;
  height: 50px;
  width: 50px;
  font-size: 0;
  position: relative; }
  .toggle__search:hover {
    background: none;
    box-shadow: none;
    color: inherit; }
  .toggle__search:focus {
    outline: none; }
  @media (min-width: 1340px) {
    .toggle__search {
      height: 60px;
      width: 60px; } }
  .toggle__search svg,
  .toggle__search img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 20px;
    height: 20px;
    transition: opacity 125ms cubic-bezier(0.77, 0, 0.175, 1); }
  .toggle__search .close-search {
    opacity: 0;
    z-index: -1; }
  .toggle__search[aria-pressed="true"] .open-search {
    opacity: 0;
    z-index: -1; }
  .toggle__search[aria-pressed="true"] .close-search {
    opacity: 1;
    z-index: 1; }

.panel__search,
.panel__menu {
  position: fixed;
  top: 60px;
  left: 0;
  width: 100%;
  height: calc(100vh - 60px);
  background: #fff;
  opacity: 0;
  pointer-events: none;
  z-index: -1;
  overflow-y: scroll;
  transition: opacity 125ms cubic-bezier(0.77, 0, 0.175, 1), z-index 125ms cubic-bezier(0.77, 0, 0.175, 1); }
  @media (min-width: 1340px) {
    .panel__search,
    .panel__menu {
      height: calc(100vh - 80px);
      top: 80px; } }
  .panel__search[aria-expanded="true"],
  .panel__menu[aria-expanded="true"] {
    opacity: 1;
    z-index: 90;
    pointer-events: initial; }

.panel__menu {
  height: 100%;
  padding-bottom: 60px; }
  @media (min-width: 1025px) {
    .panel__menu {
      height: auto;
      max-height: 100vh;
      overflow-y: scroll;
      padding-bottom: 30px;
      background: rgba(255, 255, 255, 0.95);
      -webkit-backdrop-filter: blur(10px); } }
  .panel__menu[aria-expanded="true"] {
    border-bottom: 2px solid #c4c9cd; }

.panel__search {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 20px; }
  .panel__search .search-form {
    width: 100%; }
    .panel__search .search-form__label {
      font-size: 0; }
    .panel__search .search-form__input {
      border: 0;
      padding: 0;
      margin: 0;
      width: 100%;
      text-align: center;
      font-size: 2rem;
      box-shadow: none;
      letter-spacing: -0.064em; }
      .panel__search .search-form__input::-webkit-input-placeholder {
        opacity: .2; }
      .panel__search .search-form__input:-moz-placeholder {
        opacity: .2; }
      .panel__search .search-form__input::-moz-placeholder {
        opacity: .2; }
      .panel__search .search-form__input:-ms-input-placeholder {
        opacity: .2; }
      .panel__search .search-form__input::-ms-input-placeholder {
        opacity: .2; }
      .panel__search .search-form__input:-ms-input-placeholder {
        opacity: .2; }
      .panel__search .search-form__input::placeholder {
        opacity: .2; }
      .panel__search .search-form__input:active, .panel__search .search-form__input:focus {
        box-shadow: none; }
      @media (min-width: 768px) {
        .panel__search .search-form__input {
          font-size: 6rem; } }
    .panel__search .search-form__submit {
      display: none; }

body.fixed {
  overflow-y: hidden; }

.footer-container {
  padding: 60px 0 30px;
  background: #2b3034;
  color: #fff; }
  .footer-container__wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    @media (min-width: 640px) {
      .footer-container__wrap {
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-align: start;
        align-items: flex-start; } }

.footer-brand {
  text-align: center;
  margin-bottom: 50px; }
  @media (min-width: 640px) {
    .footer-brand {
      margin: 0;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: 45%;
      flex-basis: 45%; } }
  @media (min-width: 1025px) {
    .footer-brand {
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: 280px;
      flex-basis: 280px;
      -ms-flex-order: 1;
      order: 1;
      text-align: left; } }
  @media (min-width: 1150px) {
    .footer-brand {
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: 200px;
      flex-basis: 200px; } }
  @media (min-width: 1340px) {
    .footer-brand {
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: 350px;
      flex-basis: 350px; } }
  .footer-brand__logo {
    display: block;
    width: 185px;
    height: 40px;
    font-size: 0;
    margin: 0 auto 30px;
    background: url("../assets/img/logos/ti-logo-stacked--inverse.svg") no-repeat 50% 50%; }
    @media (min-width: 1025px) {
      .footer-brand__logo {
        margin: 0 0 30px; } }
    @media (min-width: 1340px) {
      .footer-brand__logo {
        width: 330px;
        height: 30px;
        background: url("../assets/img/logos/ti-logo-horizontal--inverse.svg") no-repeat 50% 50%; } }
  .footer-brand__tagline {
    margin: 0; }

.footer-mag {
  text-align: center;
  color: #fff;
  margin: 0 0 50px; }
  @media (min-width: 640px) {
    .footer-mag {
      margin: 0;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: 45%;
      flex-basis: 45%; } }
  @media (min-width: 1025px) {
    .footer-mag {
      margin: 0;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: 250px;
      flex-basis: 250px;
      -ms-flex-order: 5;
      order: 5;
      text-align: left; } }
  @media (min-width: 1340px) {
    .footer-mag {
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: 300px;
      flex-basis: 300px; } }
  @media (min-width: 1150px) {
    .footer-mag {
      -ms-flex-order: 3;
      order: 3; } }
  .footer-mag__link {
    color: #fff;
    display: block;
    border-bottom: 1px solid #5e6367; }
    @media (min-width: 1150px) {
      .footer-mag__link {
        border: 0; } }
  .footer-mag__header {
    margin-top: 0;
    font-size: 1.3125rem;
    text-transform: none; }
  .footer-mag__img {
    display: block;
    margin: 0 auto; }

div.socials--footer {
  width: 100%;
  margin-bottom: 50px; }
  @media (min-width: 640px) {
    div.socials--footer {
      margin: 50px auto;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: 260px;
      flex-basis: 260px; } }
  @media (min-width: 1025px) {
    div.socials--footer {
      -ms-flex-order: 3;
      order: 3;
      margin: 0; } }
  @media (min-width: 1150px) {
    div.socials--footer {
      -ms-flex-order: 4;
      order: 4;
      margin: 0; } }

.footer__legal {
  display: block;
  width: 100%;
  text-transform: uppercase; }
  @media (min-width: 1025px) {
    .footer__legal {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: row;
      flex-direction: row;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -ms-flex-align: center;
      align-items: center;
      width: 55%;
      margin-top: 60px;
      -ms-flex-order: 4;
      order: 4; } }
  @media (min-width: 1150px) {
    .footer__legal {
      -ms-flex-order: 5;
      order: 5;
      width: 100%;
      padding-top: 30px;
      margin: 0;
      border-top: 1px solid #5e6367; } }

.footer__nav,
.legal__nav {
  display: block;
  width: 100%; }
  .footer__nav .menu-item,
  .legal__nav .menu-item {
    display: block; }
    .footer__nav .menu-item > a,
    .legal__nav .menu-item > a {
      position: relative;
      display: block;
      padding: 20px 20px 20px 0;
      color: #f0f5f7;
      font-size: 1rem;
      border-bottom: 1px solid #5e6367;
      transition: border-color 125ms cubic-bezier(0.77, 0, 0.175, 1), color 125ms cubic-bezier(0.77, 0, 0.175, 1); }
      .footer__nav .menu-item > a:hover, .footer__nav .menu-item > a:active,
      .legal__nav .menu-item > a:hover,
      .legal__nav .menu-item > a:active {
        color: #fff;
        border-color: #fff; }
      @media (min-width: 1025px) {
        .footer__nav .menu-item > a,
        .legal__nav .menu-item > a {
          margin: 0 0 10px;
          padding: 0;
          border: 0;
          font-weight: 500; } }
      @media (max-width: 1024px) {
        .footer__nav .menu-item > a:before, .footer__nav .menu-item > a:after,
        .legal__nav .menu-item > a:before,
        .legal__nav .menu-item > a:after {
          content: '';
          position: absolute;
          top: 50%;
          right: 4px;
          height: 2px;
          width: 8px;
          background: #fff;
          transform: rotate(-45deg) translateY(4px); }
        .footer__nav .menu-item > a:after,
        .legal__nav .menu-item > a:after {
          transform: rotate(45deg) translateY(-4px); } }

.footer__nav {
  display: none; }
  @media (min-width: 1025px) {
    .footer__nav {
      display: block;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: 150px;
      flex-basis: 150px;
      -ms-flex-order: 2;
      order: 2; } }

@media (min-width: 1025px) {
  .legal__nav {
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 1;
    flex-shrink: 1;
    -ms-flex-preferred-size: 60%;
    flex-basis: 60%;
    -ms-flex-order: 2;
    order: 2;
    text-align: right; }
    .legal__nav .menu-item {
      display: inline-block;
      margin-left: 10px; }
      .legal__nav .menu-item > a {
        position: relative;
        display: inline-block;
        padding: 0;
        color: #c4c9cd;
        font-size: 1rem;
        font-weight: 400;
        border: none; }
        .legal__nav .menu-item > a:hover, .legal__nav .menu-item > a:active {
          color: #fff; } }

.copyright {
  margin: 50px 0 0;
  color: #c4c9cd;
  font-weight: 400; }
  @media (min-width: 1025px) {
    .copyright {
      margin: 0;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: 35%;
      flex-basis: 35%;
      -ms-flex-order: 1;
      order: 1; } }

.archive__layout {
  box-sizing: border-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -10px; }
  @media (min-width: 1025px) {
    .archive__layout {
      box-sizing: border-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: row;
      flex-direction: row;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
      margin: 0 -30px; } }

@media (max-width: 1024px) {
  .archive__list {
    -ms-flex-order: 2;
    order: 2; } }

@media (min-width: 1025px) {
  .archive__list {
    box-sizing: border-box;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc( 75% - 60px);
    flex-basis: calc( 75% - 60px);
    max-width: calc( 75% - 60px);
    margin: 0 30px 60px; } }

@media (max-width: 1024px) {
  .archive__aside {
    -ms-flex-order: 1;
    order: 1; } }

@media (min-width: 1025px) {
  .archive__aside {
    box-sizing: border-box;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc( 25% - 60px);
    flex-basis: calc( 25% - 60px);
    max-width: calc( 25% - 60px);
    margin: 0 30px 60px; } }

.single__content {
  margin: 0 auto;
  max-width: 620px; }
  .single__content--pull {
    position: relative; }
    @media (min-width: 1340px) {
      .single__content--pull {
        margin: 0 -110px 60px 0; } }
  .single__content.articles {
    max-width: 800px; }
    .single__content.articles .single__figure--featured {
      margin: 30px auto 30px; }
  @media (min-width: 1025px) {
    .single__content--full {
      max-width: 85%; } }

.single .page__header {
  width: 100%;
  max-width: 100%; }

.single__figure {
  margin: 30px auto 30px; }
  .single__figure--featured {
    margin: 0 -30px 30px; }
    @media (min-width: 480px) {
      .single__figure--featured {
        margin: 0 -60px 60px; } }
    .single__figure--featured figcaption {
      margin: 0 30px 0; }
      @media (min-width: 480px) {
        .single__figure--featured figcaption {
          margin: 0 60px 0; } }

.single__content {
  font-size: 1.1875rem;
  line-height: 2; }

.magazine-single--portrait {
  position: relative;
  padding: 0 30px; }
  .magazine-single--portrait:after {
    content: "";
    display: table;
    clear: both; }
  @media (min-width: 480px) {
    .magazine-single--portrait {
      padding: 0 60px; } }
  @media (min-width: 1025px) {
    .magazine-single--portrait {
      padding: 0; } }
  .magazine-single--portrait .magazine-single__feature {
    display: none; }
    @media (min-width: 1340px) {
      .magazine-single--portrait .magazine-single__feature {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        width: 40%;
        max-width: 733px;
        margin: 0;
        background-position: center center;
        background-size: cover; }
        .magazine-single--portrait .magazine-single__feature.scroll {
          position: absolute;
          top: auto;
          bottom: -200px;
          height: 100vh; } }
  @media (min-width: 1340px) {
    .magazine-single--portrait .magazine-single__content {
      float: left;
      margin: 0 0 0 40%;
      width: 60%; } }
  @media (min-width: 1730px) {
    .magazine-single--portrait .magazine-single__content {
      margin: 0 0 0 850px;
      width: 750px; } }
  .magazine-single--portrait .magazine-single__content .single__content {
    margin-top: 100px; }
  .magazine-single--portrait .magazine-single__content .header__adv + .single__content {
    margin-top: 0; }
  @media (min-width: 1340px) {
    .magazine-single--portrait .single__figure--featured {
      display: none; } }

.magazine-single--landscape {
  padding: 0 30px; }
  @media (min-width: 480px) {
    .magazine-single--landscape {
      padding: 0 60px; } }
  @media (min-width: 1025px) {
    .magazine-single--landscape {
      padding: 0; } }
  .magazine-single--landscape .magazine-single__feature {
    display: none; }
    @media (min-width: 1340px) {
      .magazine-single--landscape .magazine-single__feature {
        position: relative;
        display: block;
        width: 100%;
        height: 650px;
        margin: 0;
        background-position: center center;
        background-size: cover; }
        .magazine-single--landscape .magazine-single__feature[data-theme="dark"]:after {
          content: '';
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          right: 0;
          width: 100%;
          height: 100%;
          z-index: 1;
          background: linear-gradient(to bottom, rgba(26, 26, 26, 0) 0%, #1a1a1a 100%);
          filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001a1a1a', endColorstr='#1a1a1a',GradientType=0 ); }
        .magazine-single--landscape .magazine-single__feature[data-theme="dark"] .topic a,
        .magazine-single--landscape .magazine-single__feature[data-theme="dark"] .title--single,
        .magazine-single--landscape .magazine-single__feature[data-theme="dark"] .meta,
        .magazine-single--landscape .magazine-single__feature[data-theme="dark"] .meta a {
          color: #fff; }
        .magazine-single--landscape .magazine-single__feature[data-theme="dark"] .topic a {
          background-image: linear-gradient(to right, #91969a 0%, #91969a 100%);
          background-repeat: repeat-x;
          background-position: 0 100%;
          background-size: 100% 1px; }
        .magazine-single--landscape .magazine-single__feature[data-theme="dark"] .page__header:after {
          background: #fff; }
        .magazine-single--landscape .magazine-single__feature[data-theme="light"]:after {
          content: '';
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          right: 0;
          width: 100%;
          height: 100%;
          z-index: 1;
          background: linear-gradient(to bottom, rgba(240, 245, 247, 0) 0%, #f0f5f7 100%);
          filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001a1a1a', endColorstr='#1a1a1a',GradientType=0 ); }
        .magazine-single--landscape .magazine-single__feature[data-theme="light"] .meta,
        .magazine-single--landscape .magazine-single__feature[data-theme="light"] .meta a {
          color: #2b3034; }
        .magazine-single--landscape .magazine-single__feature[data-style="no-gradient"]:after {
          background: none !important; }
        .magazine-single--landscape .magazine-single__feature .page__header {
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translateX(-50%) translateY(-50%);
          width: 850px;
          text-align: center;
          z-index: 5; }
          .magazine-single--landscape .magazine-single__feature .page__header:after {
            left: 50%;
            transform: translateX(-50%); } }
  .magazine-single--landscape .magazine-single__content .single__content {
    margin-top: 100px; }
  .magazine-single--landscape .magazine-single__content .header__adv + .single__content {
    margin-top: 0; }
  @media (min-width: 1340px) {
    .magazine-single--landscape .single__figure--featured {
      display: none; } }
  @media (min-width: 1340px) {
    .magazine-single--landscape .page__header.hide {
      display: none; } }

.view--mobile {
  display: block; }
  @media (min-width: 1340px) {
    .view--mobile {
      clip: rect(1px, 1px, 1px, 1px);
      position: absolute;
      height: 0px;
      width: 0px;
      overflow: hidden; } }

@media (min-width: 1340px) {
  .footer__adv.pos-r {
    margin-left: 40%; } }

@media (min-width: 1730px) {
  .footer__adv.pos-r {
    margin-left: 850px;
    width: 750px; } }

@media (max-width: 767px) {
  .watchlist {
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -10px;
    margin-bottom: 30px; }
    .watchlist__item {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 50% - 1em);
      flex-basis: calc( 50% - 1em);
      max-width: calc( 50% - 1em);
      margin: 0 0.5em;
      border-bottom: 1px solid #e3e8ea; }
      .watchlist__item:nth-child(even):before {
        content: '';
        position: absolute;
        top: 30px;
        bottom: 30px;
        left: -10px;
        width: 1px;
        background: #e3e8ea; }
      .watchlist__item:nth-child(even) > .ratio-grid__item-content:after {
        content: '';
        position: absolute;
        bottom: -1px;
        right: calc(100% - 1px);
        width: 20px;
        height: 1px;
        background: #e3e8ea; }
    .watchlist__company {
      position: absolute;
      top: 0;
      left: -9999em;
      height: 0;
      overflow: hidden; } }

@media (min-width: 768px) {
  .watchlist {
    margin: 0 0 30px; }
    .watchlist .ratio-grid__item:after {
      display: none; }
    .watchlist .ratio-grid__item-content {
      position: relative;
      -ms-flex-pack: justify;
      justify-content: space-between; }
    .watchlist .watchlist__item {
      padding: 30px 0;
      border-bottom: 1px solid #e3e8ea; }
    .watchlist .watchlist__company {
      max-width: calc(100% - 180px); }
    .watchlist .watchlist__logo {
      width: 180px;
      border: 1px solid #e3e8ea;
      border-radius: 3px; } }

.watchlist-logo {
  text-align: center; }
  .watchlist-logo > img {
    max-width: 200px;
    height: auto; }

.top-companies__logo {
  padding: 20px; }

@media (max-width: 767px) {
  .top-companies {
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -10px; }
    .top-companies__item {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 50% - 20px);
      flex-basis: calc( 50% - 20px);
      max-width: calc( 50% - 20px);
      margin: 0 10px;
      border-bottom: 1px solid #e3e8ea; }
      .top-companies__item:nth-child(even):before {
        content: '';
        position: absolute;
        top: 30px;
        bottom: 30px;
        left: -10px;
        width: 1px;
        background: #e3e8ea; }
      .top-companies__item:nth-child(even) > .ratio-grid__item-content:after {
        content: '';
        position: absolute;
        bottom: -1px;
        right: calc(100% - 1px);
        width: 20px;
        height: 1px;
        background: #e3e8ea; } }

@media (min-width: 768px) {
  .top-companies {
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -10px; }
    .top-companies__item {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 33.3333333333% - 20px);
      flex-basis: calc( 33.3333333333% - 20px);
      max-width: calc( 33.3333333333% - 20px);
      margin: 0 10px;
      margin-bottom: 20px; }
      .top-companies__item:nth-child(1) {
        position: absolute;
        top: 0;
        right: -10px;
        width: calc(33.33% - 10px); }
      .top-companies__item:nth-child(2) {
        position: absolute;
        top: 215px;
        right: -10px;
        width: calc(33.33% - 10px); }
    .top-companies__logo {
      border: 1px solid #e3e8ea;
      border-radius: 3px;
      transition: border-color 125ms cubic-bezier(0.77, 0, 0.175, 1); }
      .top-companies__logo:hover, .top-companies__logo:focus, .top-companies__logo:active {
        border-color: #2b3034; } }

@media (min-width: 1340px) {
  .top-companies__item {
    box-sizing: border-box;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc( 25% - 20px);
    flex-basis: calc( 25% - 20px);
    max-width: calc( 25% - 20px);
    margin: 0 10px;
    margin-bottom: 20px; }
    .top-companies__item:nth-child(1) {
      top: 0;
      right: calc(25% - 5px);
      width: calc(25% - 15px); }
    .top-companies__item:nth-child(2) {
      top: 0;
      right: -10px;
      width: calc(25% - 15px); }
    .top-companies__item:nth-child(3) {
      position: absolute;
      top: 215px;
      right: calc(25% - 5px);
      width: calc(25% - 15px); }
    .top-companies__item:nth-child(4) {
      position: absolute;
      top: 215px;
      right: -10px;
      width: calc(25% - 15px); } }

.top20__summary,
.watchlist__summary {
  line-height: 1.4;
  font-size: 1rem; }

.top20-logo {
  text-align: center; }
  .top20-logo > img {
    max-width: 200px;
    height: auto; }
    @media (min-width: 768px) {
      .top20-logo > img {
        max-width: 50%;
        height: auto; } }
  @media (min-width: 768px) {
    .top20-logo {
      display: block;
      position: relative;
      width: 66.66%;
      margin-bottom: 20px; }
      .top20-logo:after {
        content: '';
        display: block;
        width: 100%;
        padding-top: 100%; }
      .top20-logo > img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateX(-50%) translateY(-50%);
        max-height: 60%;
        width: auto; } }
  @media (min-width: 1340px) {
    .top20-logo {
      width: 50%; } }

.top-companies-cta > *:first-child {
  margin: 0 0 20px; }
  @media (min-width: 768px) {
    .top-companies-cta > *:first-child {
      margin: 0 20px 0 0; } }

.single-top_companies .column__float {
  padding: 0 20px; }
  @media (min-width: 1025px) {
    .single-top_companies .column__float {
      padding: 0 0 0 20px; } }
  @media (min-width: 1340px) {
    .single-top_companies .column__float {
      padding: 0 0 0 80px; } }
  @media (min-width: 1025px) {
    .single-top_companies .column__float--primary {
      margin-top: 228px; } }
  @media (min-width: 1470px) {
    .single-top_companies .column__float .addthis_share {
      transform: translateX(-710px); } }

@media (min-width: 1025px) {
  .post-type-archive-top_companies .column__float--primary {
    margin: 60px 30px 0; } }

.cs {
  margin-top: 100px; }

.supplier-external {
  border: 0;
  min-height: 800px; }

.supplier-custom-page {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column; }
  @media (min-width: 1025px) {
    .supplier-custom-page {
      box-sizing: border-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: row;
      flex-direction: row;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
      margin: 0 -30px; } }
  .supplier-custom-page .supplier__main:only-child {
    width: 100%; }
  @media (min-width: 1025px) {
    .supplier-custom-page .supplier__main {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 75% - 60px);
      flex-basis: calc( 75% - 60px);
      max-width: calc( 75% - 60px);
      margin: 0 30px 60px; } }
  @media (min-width: 1025px) {
    .supplier-custom-page .supplier__sidebar {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 25% - 60px);
      flex-basis: calc( 25% - 60px);
      max-width: calc( 25% - 60px);
      margin: 0 30px 60px; } }

.supplier__section {
  clear: both; }
  .supplier__section .supplier__heading {
    margin-top: 0;
    padding: 10px;
    font-size: 1.75rem; }

.column__layout {
  box-sizing: border-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -10px; }
  @media (min-width: 1025px) {
    .column__layout {
      box-sizing: border-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: row;
      flex-direction: row;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
      margin: 0 -30px; } }
  @media (max-width: 1024px) {
    .column__layout--main {
      -ms-flex-order: 2;
      order: 2; } }
  @media (min-width: 1025px) {
    .column__layout--main {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 75% - 60px);
      flex-basis: calc( 75% - 60px);
      max-width: calc( 75% - 60px);
      margin: 0 30px 60px; } }
  @media (max-width: 1024px) {
    .column__layout--aside {
      -ms-flex-order: 1;
      order: 1; } }
  @media (min-width: 1025px) {
    .column__layout--aside {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 25% - 60px);
      flex-basis: calc( 25% - 60px);
      max-width: calc( 25% - 60px);
      margin: 0 30px 60px; } }

.column__float {
  float: left;
  width: 100%;
  margin: 0; }
  @media (min-width: 1025px) {
    .column__float {
      margin: 0 -30px; }
      .column__float--primary {
        float: right;
        width: calc( 25% - 60px);
        margin: 0 30px 0; }
      .column__float--secondary {
        float: left;
        width: calc( 75% - 60px);
        margin: 0 30px 60px; }
      .column__float--tertiary {
        float: right;
        clear: right;
        width: calc( 25% - 60px);
        margin: 0 30px 60px; } }

.menu-item-has-children {
  position: relative; }
  .menu-item-has-children .menu-toggle {
    position: relative;
    width: 20px;
    height: 20px;
    display: block; }
    .menu-item-has-children .menu-toggle:after {
      content: '';
      position: absolute;
      right: 5px;
      bottom: 5px;
      width: 6px;
      height: 6px;
      border-left: 2px solid #5e6367;
      border-top: 2px solid #5e6367;
      transform: rotate(225deg);
      transition: transform .3s ease, margin .3s ease;
      cursor: pointer; }
    .menu-item-has-children .menu-toggle__container {
      z-index: 1;
      right: 0;
      top: 0;
      position: absolute;
      width: 20px;
      height: 20px; }
  .menu-item-has-children.active .menu-toggle:after {
    transform: rotate(405deg); }
  .menu-item-has-children a:before, .menu-item-has-children a:after {
    content: none !important; }
  .menu-item-has-children .sub-menu {
    display: none; }
    .menu-item-has-children .sub-menu .menu-item a {
      background-image: none;
      padding-left: 20px; }
      .menu-item-has-children .sub-menu .menu-item a:hover {
        background-image: none; }

.button,
button,
input[type="submit"], textarea[type="submit"], .ginput_container_select select[type="submit"], .ginput_complex .address_country select[type="submit"], .clear-multi .gfield_time_ampm select[type="submit"], .ginput_container_multiselect select[type="submit"], .form-field select[type="submit"], .mag__intro[data-theme="light"] .button--inverted {
  display: inline-block;
  padding: 18px 50px;
  background-color: #1a1a1a;
  border: 0;
  border-radius: 25px;
  box-shadow: none;
  color: #fff;
  font-family: "Gotham SSm A", "Gotham SSm B", "Gotham", Helvetica, Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.014em;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  transition: background-color 125ms 125ms; }
  .button:hover,
  button:hover,
  input[type="submit"]:hover, textarea[type="submit"]:hover, .ginput_container_select select[type="submit"]:hover, .ginput_complex .address_country select[type="submit"]:hover, .clear-multi .gfield_time_ampm select[type="submit"]:hover, .ginput_container_multiselect select[type="submit"]:hover, .form-field select[type="submit"]:hover, .mag__intro[data-theme="light"] .button--inverted:hover {
    color: #fff;
    background-color: #2b3034;
    box-shadow: 0 0 0 4px rgba(26, 26, 26, 0.25); }

.button--inverted {
  display: inline-block;
  padding: 18px 50px;
  background-color: #fff;
  border: 1px solid;
  border-color: #1a1a1a;
  border-radius: 25px;
  box-shadow: none;
  color: #1a1a1a;
  font-family: "Gotham SSm A", "Gotham SSm B", "Gotham", Helvetica, Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.014em;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  transition: background-color 125ms 125ms; }
  .button--inverted:hover {
    color: rgba(26, 26, 26, 0.8);
    background-color: rgba(255, 255, 255, 0.8);
    border-color: rgba(26, 26, 26, 0.8);
    box-shadow: 0 0 0 4px rgba(26, 26, 26, 0.25); }

.button--ghost, .feature__article[data-theme="light"] .feature__btn {
  display: inline-block;
  padding: 18px 50px;
  background-color: transparent;
  border: 1px solid;
  border-color: #1a1a1a;
  border-radius: 25px;
  box-shadow: none;
  color: #1a1a1a;
  font-family: "Gotham SSm A", "Gotham SSm B", "Gotham", Helvetica, Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.014em;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  transition: background-color 125ms 125ms; }
  .button--ghost:hover, .feature__article[data-theme="light"] .feature__btn:hover {
    color: rgba(26, 26, 26, 0.8);
    background-color: transparent;
    border-color: rgba(26, 26, 26, 0.8);
    box-shadow: 0 0 0 4px rgba(26, 26, 26, 0.25); }

.button--ghost-inverted, .feature__article[data-theme="dark"] .feature__btn {
  display: inline-block;
  padding: 18px 50px;
  background-color: transparent;
  border: 1px solid;
  border-color: #fff;
  border-radius: 25px;
  box-shadow: none;
  color: #fff;
  font-family: "Gotham SSm A", "Gotham SSm B", "Gotham", Helvetica, Arial, sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.014em;
  text-decoration: none;
  text-transform: uppercase;
  text-align: center;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  vertical-align: middle;
  -webkit-font-smoothing: antialiased;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  transition: background-color 125ms 125ms; }
  .button--ghost-inverted:hover, .feature__article[data-theme="dark"] .feature__btn:hover {
    color: rgba(255, 255, 255, 0.8);
    background-color: transparent;
    border-color: rgba(255, 255, 255, 0.8);
    box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.25); }

@media (max-width: 767px) {
  .blocked--mobile {
    display: block; } }

.button--small {
  font-size: 0.75rem;
  padding: 12px 20px; }

.secondary-link {
  position: relative;
  display: inline-block;
  background-image: linear-gradient(to right, #c4c9cd 0%, #c4c9cd 100%);
  background-repeat: repeat-x;
  background-position: 0 100%;
  background-size: 100% 1px;
  font-size: 0.875rem; }

.icon,
.icon:before,
.icon:after {
  transition: all 0.2s ease; }

.i-caret {
  position: relative;
  display: inline-block;
  margin: 0;
  width: 30px;
  height: 30px; }
  .i-caret:before {
    content: '';
    position: absolute;
    right: 13px;
    top: 50%;
    width: 14px;
    height: 2px;
    background: currentColor;
    transform: rotate(45deg); }
  .i-caret:after {
    content: '';
    position: absolute;
    left: 13px;
    right: auto;
    top: 50%;
    width: 14px;
    height: 2px;
    background: currentColor;
    transform: rotate(-45deg); }

.i-menu {
  color: #fff;
  position: relative;
  margin: 0 auto;
  display: block;
  width: 20px;
  height: 2px;
  background-color: currentColor; }
  .i-menu:before {
    content: '';
    position: absolute;
    top: -7px;
    left: 0;
    width: 20px;
    height: 2px;
    background-color: currentColor; }
  .i-menu:after {
    content: '';
    position: absolute;
    top: 7px;
    left: 0;
    width: 20px;
    height: 2px;
    background-color: currentColor; }

.i-close {
  color: #fff;
  display: inline-block;
  position: relative;
  width: 18px;
  height: 18px; }
  .i-close:before {
    content: '';
    position: absolute;
    top: 10px;
    width: 18px;
    height: 2px;
    background-color: currentColor;
    transform: rotate(-45deg); }
  .i-close:after {
    content: '';
    position: absolute;
    top: 10px;
    width: 18px;
    height: 2px;
    background-color: currentColor;
    transform: rotate(45deg); }

.i-arrow-right {
  position: relative;
  display: inline-block;
  margin: 0;
  width: 30px;
  height: 30px; }
  .i-arrow-right:before {
    content: '';
    position: absolute;
    right: 2px;
    top: 50%;
    width: 26px;
    height: 2px;
    background: currentColor;
    transform: translateY(-50%); }
  .i-arrow-right:after {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    width: 18px;
    height: 18px;
    border-top: solid 2px currentColor;
    border-right: solid 2px currentColor;
    transform-origin: top right;
    transform: rotate(45deg); }

.i-arrow-left {
  position: relative;
  display: inline-block;
  margin: 0;
  width: 30px;
  height: 30px; }
  .i-arrow-left:before {
    content: '';
    position: absolute;
    left: 2px;
    top: 50%;
    width: 26px;
    height: 2px;
    background: currentColor;
    transform: translateY(-50%); }
  .i-arrow-left:after {
    content: '';
    position: absolute;
    left: 8px;
    top: 50%;
    width: 18px;
    height: 18px;
    border-bottom: solid 2px currentColor;
    border-left: solid 2px currentColor;
    transform-origin: top right;
    transform: rotate(45deg); }

.ratio-grid__item {
  position: relative; }
  .ratio-grid__item:after {
    content: '';
    display: block;
    width: 100%;
    padding-top: 100%; }
  .ratio-grid__item-content {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center; }

.ratio {
  display: block;
  position: relative;
  width: 100%; }
  .ratio:after {
    content: '';
    display: block;
    width: 100%;
    padding-top: 100%; }
  .ratio--wide:after {
    padding-top: 56.25%; }
  .ratio--traditional:after {
    padding-top: 75%; }
  .ratio__content {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 20px; }

.panel__menu-wrapper {
  overflow-x: hidden; }

@media (min-width: 768px) and (max-width: 1024px) {
  .panel__menu-wrapper {
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -0.5em;
    padding: 60px;
    margin: 0 auto;
    max-width: 900px; } }
  @media (min-width: 1025px) {
    .panel__menu-wrapper {
      box-sizing: border-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-pack: center;
      justify-content: center;
      margin: 0 -0.5em;
      padding: 30px 60px; } }

@media (min-width: 768px) and (max-width: 1024px) {
  .panel__menu-wrapper > * {
    box-sizing: border-box;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc( 50% - 20px);
    flex-basis: calc( 50% - 20px);
    max-width: calc( 50% - 20px);
    margin: 0 10px 20px; }
    .panel__menu-wrapper > *.nav__group {
      box-sizing: border-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin: 0 -0.5em;
      -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
      max-width: 100%;
      margin: 0; }
      .panel__menu-wrapper > *.nav__group > * {
        box-sizing: border-box;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        -ms-flex-preferred-size: calc( 50% - 20px);
        flex-basis: calc( 50% - 20px);
        max-width: calc( 50% - 20px);
        margin: 0 10px 20px; } }
  @media (min-width: 1025px) {
    .panel__menu-wrapper > * {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 20% - 20px);
      flex-basis: calc( 20% - 20px);
      max-width: calc( 20% - 20px);
      margin: 0 10px 20px; }
      .panel__menu-wrapper > *.nav__group {
        box-sizing: border-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 -0.5em;
        margin: 0 10px; } }

.nav {
  display: block;
  width: 100%;
  border-bottom: 1px solid #c4c9cd; }
  @media (min-width: 768px) {
    .nav {
      border-bottom: 0; } }
  .nav__header {
    position: relative;
    margin: 0;
    padding: 20px 30px;
    font-size: 1rem;
    font-weight: 500;
    color: #2b3034;
    text-transform: uppercase; }
    @media (max-width: 767px) {
      .nav__header {
        cursor: pointer;
        border-bottom: 1px solid #c4c9cd; }
        .nav__header:after {
          content: '';
          position: absolute;
          right: 30px;
          top: 50%;
          width: 12px;
          height: 12px;
          border-left: 2px solid #2b3034;
          border-top: 2px solid #2b3034;
          transform: rotate(225deg);
          transition: transform .3s ease, margin .3s ease;
          margin-top: -6px; }
        .nav__header[aria-selected="true"]:after {
          transform: rotate(45deg);
          margin: 0; } }
    @media (min-width: 768px) {
      .nav__header {
        padding: 20px 0; } }
  .nav__section {
    padding: 25px 30px; }
    @media (min-width: 768px) {
      .nav__section {
        padding: 0; } }
    .nav__section ul > li.bold > a {
      font-weight: 700; }
    .nav__section ul > li > a {
      display: inline-block;
      padding: 10px 0;
      font-size: 1rem;
      line-height: 1.1; }
      .nav__section ul > li > a:hover, .nav__section ul > li > a:active, .nav__section ul > li > a:focus {
        text-decoration: underline; }
      @media (min-width: 768px) {
        .nav__section ul > li > a {
          font-size: 0.875rem;
          padding: 6px 0; } }
  .nav__wrap {
    height: auto; }
    @media (max-width: 767px) {
      .nav__wrap {
        height: 0;
        overflow: hidden;
        transition: all .3s ease; }
        .nav__wrap[aria-expanded="true"] {
          height: auto; } }
  .nav__section--topics li.topic--compliance a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--compliance a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #a6192e;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--compliance a:hover:before, .nav__section--topics li.topic--compliance a:active:before, .nav__section--topics li.topic--compliance a:focus:before {
      background: #a6192e; }
  .nav__section--topics li.topic--content-development a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--content-development a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #f26a36;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--content-development a:hover:before, .nav__section--topics li.topic--content-development a:active:before, .nav__section--topics li.topic--content-development a:focus:before {
      background: #f26a36; }
  .nav__section--topics li.topic--diversity-equity-and-inclusion a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--diversity-equity-and-inclusion a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #76232f;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--diversity-equity-and-inclusion a:hover:before, .nav__section--topics li.topic--diversity-equity-and-inclusion a:active:before, .nav__section--topics li.topic--diversity-equity-and-inclusion a:focus:before {
      background: #76232f; }
  .nav__section--topics li.topic--e-learning a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--e-learning a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #ff8f1c;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--e-learning a:hover:before, .nav__section--topics li.topic--e-learning a:active:before, .nav__section--topics li.topic--e-learning a:focus:before {
      background: #ff8f1c; }
  .nav__section--topics li.topic--it-and-technical-training a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--it-and-technical-training a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #b94700;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--it-and-technical-training a:hover:before, .nav__section--topics li.topic--it-and-technical-training a:active:before, .nav__section--topics li.topic--it-and-technical-training a:focus:before {
      background: #b94700; }
  .nav__section--topics li.topic--leadership a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--leadership a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #daaa00;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--leadership a:hover:before, .nav__section--topics li.topic--leadership a:active:before, .nav__section--topics li.topic--leadership a:focus:before {
      background: #daaa00; }
  .nav__section--topics li.topic--learning-technologies a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--learning-technologies a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #82c341;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--learning-technologies a:hover:before, .nav__section--topics li.topic--learning-technologies a:active:before, .nav__section--topics li.topic--learning-technologies a:focus:before {
      background: #82c341; }
  .nav__section--topics li.topic--measurement-and-analytics a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--measurement-and-analytics a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #00b098;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--measurement-and-analytics a:hover:before, .nav__section--topics li.topic--measurement-and-analytics a:active:before, .nav__section--topics li.topic--measurement-and-analytics a:focus:before {
      background: #00b098; }
  .nav__section--topics li.topic--outsourcing a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--outsourcing a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #008264;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--outsourcing a:hover:before, .nav__section--topics li.topic--outsourcing a:active:before, .nav__section--topics li.topic--outsourcing a:focus:before {
      background: #008264; }
  .nav__section--topics li.topic--onboarding a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--onboarding a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #8fd1c3;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--onboarding a:hover:before, .nav__section--topics li.topic--onboarding a:active:before, .nav__section--topics li.topic--onboarding a:focus:before {
      background: #8fd1c3; }
  .nav__section--topics li.topic--performance-management a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--performance-management a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #00bce7;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--performance-management a:hover:before, .nav__section--topics li.topic--performance-management a:active:before, .nav__section--topics li.topic--performance-management a:focus:before {
      background: #00bce7; }
  .nav__section--topics li.topic--professional-development a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--professional-development a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #00558c;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--professional-development a:hover:before, .nav__section--topics li.topic--professional-development a:active:before, .nav__section--topics li.topic--professional-development a:focus:before {
      background: #00558c; }
  .nav__section--topics li.topic--remote-learning a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--remote-learning a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #007096;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--remote-learning a:hover:before, .nav__section--topics li.topic--remote-learning a:active:before, .nav__section--topics li.topic--remote-learning a:focus:before {
      background: #007096; }
  .nav__section--topics li.topic--sales a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--sales a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #6756a5;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--sales a:hover:before, .nav__section--topics li.topic--sales a:active:before, .nav__section--topics li.topic--sales a:focus:before {
      background: #6756a5; }
  .nav__section--topics li.topic--strategy-alignment-and-planning a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--strategy-alignment-and-planning a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #772583;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--strategy-alignment-and-planning a:hover:before, .nav__section--topics li.topic--strategy-alignment-and-planning a:active:before, .nav__section--topics li.topic--strategy-alignment-and-planning a:focus:before {
      background: #772583; }
  .nav__section--topics li.topic--workforce-development a {
    display: inline-block;
    position: relative;
    padding-left: 20px; }
    .nav__section--topics li.topic--workforce-development a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%);
      width: 10px;
      height: 10px;
      border: 2px solid #9b26b6;
      border-radius: 50%;
      transition: background .3s ease; }
    .nav__section--topics li.topic--workforce-development a:hover:before, .nav__section--topics li.topic--workforce-development a:active:before, .nav__section--topics li.topic--workforce-development a:focus:before {
      background: #9b26b6; }

.nav__dropdowns {
  display: none; }
  @media (min-width: 1340px) {
    .nav__dropdowns {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: row;
      flex-direction: row;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
      -ms-flex-pack: end;
      justify-content: flex-end;
      -ms-flex-align: stretch;
      align-items: stretch;
      height: 100%;
      -ms-flex-order: 4;
      order: 4;
      margin-right: 50px;
      transition: opacity .3s ease; }
      .nav__dropdowns.hide {
        opacity: 0;
        width: 0;
        margin: 0;
        overflow: hidden; } }

.dropdown {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  margin: 0 0 0 40px; }
  .dropdown__title {
    position: relative;
    padding: 0 20px 0 0; }
    .dropdown__title:after {
      content: '';
      position: absolute;
      right: 0;
      top: 50%;
      width: 8px;
      height: 8px;
      border-left: 1px solid #2b3034;
      border-top: 1px solid #2b3034;
      transform: rotate(225deg);
      transition: transform .3s ease, margin .3s ease;
      margin-top: -6px; }
  .dropdown__list {
    position: absolute;
    top: 100%;
    left: 0;
    height: 0;
    width: 260px;
    overflow: hidden;
    background: #fff;
    z-index: 150; }
    .dropdown__list li {
      padding: 5px 0;
      font-size: 0.875rem; }
      .dropdown__list li a:hover, .dropdown__list li a:active, .dropdown__list li a:focus {
        text-decoration: underline; }
  .dropdown:hover .dropdown__list {
    height: auto;
    padding: 10px;
    border: 2px solid #c4c9cd;
    border-top-color: #fff; }

.widget__block {
  margin: 0 0 30px;
  padding: 30px;
  background: #f0f5f7; }
  @media (min-width: 768px) {
    .widget__block {
      margin: 0 0 60px; } }
  @media (max-width: 767px) {
    .widget__block--filter {
      background: none; } }
  .widget__block--filter .widget__title {
    display: none; }
    @media (min-width: 768px) {
      .widget__block--filter .widget__title {
        display: block; } }

.widget__title {
  position: relative;
  display: block;
  padding-bottom: 30px;
  margin: 0 0 30px;
  font-size: 1.3125rem;
  text-transform: none;
  font-weight: 400; }
  .widget__title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 80px;
    height: 4px;
    background: #2b3034; }

/**
 * Swiper 3.4.2
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * 
 * http://www.idangero.us/swiper/
 * 
 * Copyright 2017, Vladimir Kharlampidi
 * The iDangero.us
 * http://www.idangero.us/
 * 
 * Licensed under MIT
 * 
 * Released on: March 10, 2017
 */
.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  -ms-flex-direction: column;
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  transition-property: transform;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  -webkit-flex-shrink: 0;
  -ms-flex: 0 0 auto;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative; }

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto; }

.swiper-container-autoheight .swiper-wrapper {
  -ms-flex-align: start;
  align-items: flex-start;
  transition-property: transform, height; }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
  touch-action: pan-x; }

/* Arrows */
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background-position: center;
  background-repeat: no-repeat; }

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms;
  transform: translate3d(0, 0, 0);
  z-index: 10; }

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: 0.2; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -webkit-appearance: none;
  appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff; }

.swiper-pagination-bullet-active {
  opacity: 1;
  background: #007aff; }

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0); }

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 5px 0;
  display: block; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 5px; }

/* Progress */
.swiper-pagination-progress {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }

.swiper-pagination-progress .swiper-pagination-progressbar {
  background: #007aff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progress .swiper-pagination-progressbar {
  transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progress {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progress {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-progress.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.5); }

.swiper-pagination-progress.swiper-pagination-white .swiper-pagination-progressbar {
  background: #fff; }

.swiper-pagination-progress.swiper-pagination-black .swiper-pagination-progressbar {
  background: #000; }

/* 3D Container */
.swiper-container-3d {
  -o-perspective: 1200px;
  perspective: 1200px; }

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  transform-style: preserve-3d; }

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-container-3d .swiper-slide-shadow-left {
  /* Safari 4+, Chrome */
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), transparent);
  /* Firefox 16+, IE10, Opera 12.50+ */ }

.swiper-container-3d .swiper-slide-shadow-right {
  /* Safari 4+, Chrome */
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), transparent);
  /* Firefox 16+, IE10, Opera 12.50+ */ }

.swiper-container-3d .swiper-slide-shadow-top {
  /* Safari 4+, Chrome */
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent);
  /* Firefox 16+, IE10, Opera 12.50+ */ }

.swiper-container-3d .swiper-slide-shadow-bottom {
  /* Safari 4+, Chrome */
  /* Chrome 10+, Safari 5.1+, iOS 5+ */
  /* Firefox 3.6-15 */
  /* Opera 11.10-12.00 */
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), transparent);
  /* Firefox 16+, IE10, Opera 12.50+ */ }

/* Coverflow */
.swiper-container-coverflow .swiper-wrapper,
.swiper-container-flip .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px; }

/* Cube + Flip */
.swiper-container-cube,
.swiper-container-flip {
  overflow: visible; }

.swiper-container-cube .swiper-slide,
.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1; }

.swiper-container-cube .swiper-slide .swiper-slide,
.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube .swiper-slide-active,
.swiper-container-flip .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

/* Cube */
.swiper-container-cube .swiper-slide {
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  filter: blur(50px);
  z-index: 0; }

/* Fade */
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity; }

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center; }

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain; }

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }

.swiper-lazy-preloader:after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg); } }

.socials {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  max-width: 260px;
  margin: 0 auto 50px; }
  .panel__menu .socials {
    margin: 0 auto;
    max-width: 100%;
    padding: 15px 30px; }
    @media (min-width: 1025px) {
      .panel__menu .socials {
        display: none; } }
  .socials__link {
    position: relative;
    display: inline-block;
    border: 1px solid #fff;
    width: 50px;
    height: 50px;
    box-shadow: none;
    border-radius: 50%;
    line-height: 1;
    transition: box-shadow 125ms cubic-bezier(0.77, 0, 0.175, 1); }
    .socials__link:hover, .socials__link:active {
      box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.4); }
    .socials__link svg {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translateX(-50%) translateY(-50%);
      width: 25px;
      height: 25px; }
      .socials__link svg * {
        fill: #fff; }
        .panel__menu .socials__link svg * {
          fill: #2b3034; }

.adv__block {
  display: block;
  margin: 0 auto;
  overflow: hidden;
  text-align: center; }
  .adv__block--leaderboard {
    width: 320px;
    height: 50px; }
    @media (min-width: 480px) {
      .adv__block--leaderboard {
        width: 468px;
        height: 60px; } }
    @media (min-width: 768px) {
      .adv__block--leaderboard {
        width: 728px;
        height: 90px; } }
    @media (min-width: 1025px) {
      .adv__block--leaderboard {
        width: 970px;
        height: 90px; } }
  .adv__block--square {
    position: relative; }
    .adv__block--square + .adv__block--square {
      margin-top: 60px; }
  .tile .adv__block iframe {
    width: auto; }
  @media (min-width: 1025px) {
    .magazine-single--portrait .adv__block--leaderboard {
      width: 728px;
      height: 90px; } }

.footer__adv {
  margin: 100px auto 10px; }
  .error404 .footer__adv {
    display: none; }

.header__adv {
  margin: 90px auto 30px; }

.aside__adv {
  padding: 0;
  background-color: transparent; }
  .aside__adv iframe {
    width: auto; }

.title--page {
  font-size: 2rem;
  font-weight: 700;
  text-transform: none;
  margin: 0; }

.title--issue {
  font-size: 3rem;
  font-weight: 500;
  text-transform: none; }

.title--single {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.13;
  text-transform: none;
  margin: 20px 0; }

.title--topic {
  font-size: 2rem;
  font-weight: 700;
  text-transform: none;
  margin: 0 0 10px; }

.title--section {
  font-size: 1.75rem;
  font-weight: 700;
  text-transform: none;
  margin: 0 0 30px; }
  .title--section > span {
    display: block;
    font-weight: 100; }

.title--article {
  font-size: 1.3125rem;
  font-weight: 500;
  text-transform: none;
  margin: 30px 0; }

@media (min-width: 768px) {
  .title--page {
    font-size: 2.5rem; }
  .title--issue {
    font-size: 5rem; }
  .title--topic {
    font-size: 2.8125rem; }
  .title--section {
    font-size: 2rem; }
    .title--section > span {
      display: inline; } }

@media (min-width: 1025px) {
  .title--topic {
    font-size: 4rem; } }

.tile {
  position: relative;
  padding: 30px 0 30px; }
  .tile__img-link {
    display: block;
    width: 100%;
    margin: 0 auto 30px; }
    .tile__img-link picture {
      display: block;
      position: relative;
      width: 100%;
      padding-top: 56.25%;
      /* 16:9 Aspect Ratio */ }
      @media (min-width: 640px) {
        .tile__img-link picture {
          padding-top: 75%;
          /* 4:3 Aspect Ratio */ } }
      .tile__img-link picture img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateX(-50%) translateY(-50%);
        max-width: 100%;
        max-height: 100%; }
    .tile__img-link img {
      display: block;
      margin: 0 auto; }
  .tile__info, .tile__content {
    width: 100%; }
  .tile__title {
    margin: 30px 0; }
    .tile__title > a:hover, .tile__title > a:focus, .tile__title > a:active {
      background-image: linear-gradient(to right, #2b3034 0%, #2b3034 100%);
      background-repeat: repeat-x;
      background-position: 0 100%;
      background-size: 100% 1px; }
  .tile__snippet {
    margin: 30px 0 0; }

.tile--large .tile__title {
  font-size: 2rem; }

.tile--large .tile__snippet {
  display: none; }

.tile--medium-wide .tile__info {
  box-sizing: border-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -0.5em; }

.tile--medium-wide .tile__snippet {
  display: none; }

@media (min-width: 640px) {
  .tile--medium-wide .tile__img-link,
  .tile--medium-wide .tile__content {
    box-sizing: border-box;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc( 50% - 20px);
    flex-basis: calc( 50% - 20px);
    max-width: calc( 50% - 20px);
    margin: 0 10px;
    max-width: calc(50% - 20px); } }

.tile--medium-wide .tile__content {
  margin-top: 20px; }

.tile--small .tile__content {
  margin-top: 20px; }

.tile--small .tile__img-link,
.tile--small .tile__snippet {
  display: none; }

.tile--list {
  box-sizing: border-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 0;
  border-bottom: 1px solid #e3e8ea; }
  @media (min-width: 640px) {
    .tile--list.showThumb .tile__info {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 66.6666666667% - 20px);
      flex-basis: calc( 66.6666666667% - 20px);
      max-width: calc( 66.6666666667% - 20px);
      -ms-flex-order: 1;
      order: 1;
      margin: 0 10px;
      max-width: calc(66.66667% - 20px); } }
  @media (min-width: 640px) {
    .tile--list.showThumb .tile__img-link {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 33.3333333333% - 20px);
      flex-basis: calc( 33.3333333333% - 20px);
      max-width: calc( 33.3333333333% - 20px);
      -ms-flex-order: 2;
      order: 2;
      margin: 0 10px; } }
  .tile--list .tile__title {
    font-size: 2rem;
    margin: 15px 0; }
  .tile--list .tile__snippet {
    margin-top: 20px; }

.archive__list .tile--list.featured {
  position: relative;
  -ms-flex: none;
  flex: none;
  max-width: 100%; }
  @media (min-width: 640px) {
    .archive__list .tile--list.featured .tile__img-link {
      display: block;
      width: 100%;
      max-width: 100%;
      margin: 0;
      -ms-flex: none;
      flex: none; }
    .archive__list .tile--list.featured .tile__info {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      z-index: 2;
      -ms-flex: none;
      flex: none;
      margin: 0;
      padding: 30px 30px 60px;
      color: #fff;
      max-width: 100%; }
    .archive__list .tile--list.featured .tile__title a,
    .archive__list .tile--list.featured .meta,
    .archive__list .tile--list.featured .meta a,
    .archive__list .tile--list.featured .topic a {
      color: #fff; }
    .archive__list .tile--list.featured .topic a {
      background-image: linear-gradient(to right, #fff 0%, #fff 100%);
      background-repeat: repeat-x;
      background-position: 0 100%;
      background-size: 100% 1px; } }
  @media (min-width: 768px) {
    .archive__list .tile--list.featured .tile__info {
      max-width: 75%; } }
  @media (min-width: 1340px) {
    .archive__list .tile--list.featured .tile__info {
      padding: 30px 30px 90px 60px; } }
  .archive__list .tile--list.featured .tile__img-link {
    position: relative; }
    .archive__list .tile--list.featured .tile__img-link > img {
      display: block;
      margin: 0 auto; }
    @media (min-width: 640px) {
      .archive__list .tile--list.featured .tile__img-link:after {
        content: '';
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        height: 100%;
        z-index: 1;
        background: linear-gradient(to bottom, rgba(26, 26, 26, 0) 0%, #1a1a1a 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001a1a1a', endColorstr='#1a1a1a',GradientType=0 ); } }
  .archive__list .tile--list.featured .tile__title {
    font-size: 2rem;
    text-transform: none;
    margin: 15px 0;
    color: #fff; }
    .archive__list .tile--list.featured .tile__title > a:hover, .archive__list .tile--list.featured .tile__title > a:focus, .archive__list .tile--list.featured .tile__title > a:active {
      background-image: linear-gradient(to right, #fff 0%, #fff 100%);
      background-repeat: repeat-x;
      background-position: 0 100%;
      background-size: 100% 1px; }
    @media (min-width: 640px) {
      .archive__list .tile--list.featured .tile__title {
        font-size: 2.125rem; } }
    @media (min-width: 768px) {
      .archive__list .tile--list.featured .tile__title {
        font-size: 2.5rem; } }
  .archive__list .tile--list.featured .tile__snippet {
    display: none; }

.grid__container--topics .topic {
  display: none; }

.grid__container--topics .tile__title {
  margin-top: 0; }

.grid__container--topics [data-topic="compliance"] .tile__img-link {
  border-top: 4px solid #a6192e; }

.grid__container--topics [data-topic="content-development"] .tile__img-link {
  border-top: 4px solid #f26a36; }

.grid__container--topics [data-topic="diversity-equity-and-inclusion"] .tile__img-link {
  border-top: 4px solid #76232f; }

.grid__container--topics [data-topic="e-learning"] .tile__img-link {
  border-top: 4px solid #ff8f1c; }

.grid__container--topics [data-topic="it-and-technical-training"] .tile__img-link {
  border-top: 4px solid #b94700; }

.grid__container--topics [data-topic="leadership"] .tile__img-link {
  border-top: 4px solid #daaa00; }

.grid__container--topics [data-topic="learning-technologies"] .tile__img-link {
  border-top: 4px solid #82c341; }

.grid__container--topics [data-topic="measurement-and-analytics"] .tile__img-link {
  border-top: 4px solid #00b098; }

.grid__container--topics [data-topic="outsourcing"] .tile__img-link {
  border-top: 4px solid #008264; }

.grid__container--topics [data-topic="onboarding"] .tile__img-link {
  border-top: 4px solid #8fd1c3; }

.grid__container--topics [data-topic="performance-management"] .tile__img-link {
  border-top: 4px solid #00bce7; }

.grid__container--topics [data-topic="professional-development"] .tile__img-link {
  border-top: 4px solid #00558c; }

.grid__container--topics [data-topic="remote-learning"] .tile__img-link {
  border-top: 4px solid #007096; }

.grid__container--topics [data-topic="sales"] .tile__img-link {
  border-top: 4px solid #6756a5; }

.grid__container--topics [data-topic="strategy-alignment-and-planning"] .tile__img-link {
  border-top: 4px solid #772583; }

.grid__container--topics [data-topic="workforce-development"] .tile__img-link {
  border-top: 4px solid #9b26b6; }

.grid--topics-cols .tile {
  border-top: 1px solid #e3e8ea; }
  .grid--topics-cols .tile:nth-child(2) {
    border-top: 0; }
    .grid--topics-cols .tile:nth-child(2) .tile__title {
      font-size: 1.3125rem; }
    .grid--topics-cols .tile:nth-child(2) .tile__img-link {
      display: block; }

.grid--topics-cols .tile__title {
  margin-top: 0;
  font-size: 1rem; }

.grid--topics-cols .tile__content {
  margin-top: 0; }

.tile[data-type="top_companies"] .tile__img-link {
  background: #fff; }
  .tile[data-type="top_companies"] .tile__img-link .placeholder {
    background: none; }
    .tile[data-type="top_companies"] .tile__img-link .placeholder > .svg {
      z-index: 1; }
      .tile[data-type="top_companies"] .tile__img-link .placeholder > .svg * {
        fill: #2b3034; }
    .tile[data-type="top_companies"] .tile__img-link .placeholder .top-company__pattern {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%; }
      .tile[data-type="top_companies"] .tile__img-link .placeholder .top-company__pattern .svg {
        width: 100%;
        height: 100%;
        display: block; }
        .tile[data-type="top_companies"] .tile__img-link .placeholder .top-company__pattern .svg * {
          fill: #e6e6e6; }
  .tile[data-type="top_companies"] .tile__img-link .tile__img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    max-height: 80%;
    max-width: 80%;
    z-index: 2; }

.webinar__tile {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding: 0 0 30px;
  border-radius: 3px;
  background: #2b3034;
  color: #fff;
  overflow: hidden; }
  .webinar__tile a {
    color: #fff; }
  .webinar__tile .webinar__date {
    position: absolute;
    top: 30px;
    left: 30px;
    z-index: 1; }

.webinar__date {
  display: inline-block;
  vertical-align: middle;
  width: auto;
  text-transform: uppercase;
  line-height: 1; }
  .webinar__date .day {
    display: table-cell;
    vertical-align: middle;
    font-size: 3rem;
    font-weight: 500;
    padding: 0 5px 0 0; }
  .webinar__date .date__wrap {
    display: table-cell;
    vertical-align: middle; }
  .webinar__date .month,
  .webinar__date .year {
    display: block;
    font-size: 1.1875rem; }
  .webinar__date .time {
    display: block;
    font-size: 1.25rem;
    font-weight: 400;
    margin-top: 5px; }

.webinar__time {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  margin-left: 10px;
  border-left: 1px solid #c4c9cd;
  padding-left: 10px; }
  .webinar__time .starttime {
    display: inline-block; }
  .webinar__time .length {
    display: block; }

.webinar__icon {
  position: absolute;
  top: 30px;
  right: 30px;
  width: 26px;
  height: 26px;
  margin: 5px 0 0 0; }
  .webinar__icon svg * {
    fill: #fff; }

.webinar__placeholder {
  width: 100%;
  padding-top: 56.25%;
  /* 16:9 Aspect Ratio */
  margin-bottom: 30px; }
  @media (min-width: 640px) {
    .webinar__placeholder {
      padding-top: 75%;
      /* 4:3 Aspect Ratio */ } }

.webinar__info {
  -ms-flex-positive: 1;
  flex-grow: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.webinar__content {
  position: relative;
  padding: 0 30px;
  z-index: 1; }
  .webinar__content .topic a {
    background-image: linear-gradient(to right, #91969a 0%, #91969a 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px; }

.webinar__title {
  margin: 30px 0;
  font-size: 1.3125rem;
  text-transform: none; }
  .webinar__title > a:hover, .webinar__title > a:focus, .webinar__title > a:active {
    background-image: linear-gradient(to right, #fff 0%, #fff 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px; }

.webinar__footer {
  position: relative;
  padding: 0 30px;
  z-index: 1; }
  .webinar__footer .button {
    margin-top: 30px;
    padding: 18px 20px;
    display: block; }

.webinar__sponsor {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-align: center;
  align-items: center; }
  .webinar__sponsor span {
    display: block;
    font-size: 0.875rem; }
  .webinar__sponsor strong {
    font-size: 1rem;
    font-weight: 500; }

.webinar__sponsor-img {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -ms-flex-preferred-size: 65px;
  flex-basis: 65px;
  background: #fff;
  height: 65px;
  width: 65px;
  max-width: 65px;
  border-radius: 50%;
  padding: 8px;
  margin-right: 10px;
  text-align: center;
  overflow: hidden; }
  .webinar__sponsor-img > img {
    display: block;
    width: 100%; }
  .webinar__sponsor-img--full {
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: 150px;
    flex-basis: 150px;
    width: 150px;
    max-width: 150px;
    height: auto;
    border-radius: 0; }

.webinar__sponsor-text {
  margin: 0;
  line-height: 1.5;
  font-size: 1rem; }

.webinar__pattern {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 0; }
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .webinar__pattern {
      /* IE10+ CSS styles go here */
      display: none; } }
  .webinar__pattern svg {
    display: block;
    position: absolute;
    bottom: 0; }
    [data-topic="compliance"] .webinar__pattern svg * {
      fill: #a6192e; }
    [data-topic="content-development"] .webinar__pattern svg * {
      fill: #f26a36; }
    [data-topic="diversity-equity-and-inclusion"] .webinar__pattern svg * {
      fill: #76232f; }
    [data-topic="e-learning"] .webinar__pattern svg * {
      fill: #ff8f1c; }
    [data-topic="it-and-technical-training"] .webinar__pattern svg * {
      fill: #b94700; }
    [data-topic="leadership"] .webinar__pattern svg * {
      fill: #daaa00; }
    [data-topic="learning-technologies"] .webinar__pattern svg * {
      fill: #82c341; }
    [data-topic="measurement-and-analytics"] .webinar__pattern svg * {
      fill: #00b098; }
    [data-topic="outsourcing"] .webinar__pattern svg * {
      fill: #008264; }
    [data-topic="onboarding"] .webinar__pattern svg * {
      fill: #8fd1c3; }
    [data-topic="performance-management"] .webinar__pattern svg * {
      fill: #00bce7; }
    [data-topic="professional-development"] .webinar__pattern svg * {
      fill: #00558c; }
    [data-topic="remote-learning"] .webinar__pattern svg * {
      fill: #007096; }
    [data-topic="sales"] .webinar__pattern svg * {
      fill: #6756a5; }
    [data-topic="strategy-alignment-and-planning"] .webinar__pattern svg * {
      fill: #772583; }
    [data-topic="workforce-development"] .webinar__pattern svg * {
      fill: #9b26b6; }

.webinar--featured {
  position: relative;
  padding: 200px 0 30px;
  background: #2b3034; }
  @media (min-width: 1025px) {
    .webinar--featured {
      padding: 120px 0 60px; } }
  .webinar--featured a {
    color: #fff; }
  .webinar--featured .topic a {
    background-image: linear-gradient(to right, #91969a 0%, #91969a 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px; }
  .webinar--featured .webinar__info {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column; }
    @media (min-width: 1025px) {
      .webinar--featured .webinar__info {
        -ms-flex-direction: row;
        flex-direction: row;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: center;
        align-items: center; } }
  .webinar--featured .webinar__heading {
    position: relative;
    z-index: 1; }
    @media (min-width: 1025px) {
      .webinar--featured .webinar__heading {
        -ms-flex: 0 1 55%;
        flex: 0 1 55%; } }
    .webinar--featured .webinar__heading .webinar__title {
      font-size: 2rem; }
      @media (min-width: 1025px) {
        .webinar--featured .webinar__heading .webinar__title {
          font-size: 3rem; } }
  .webinar--featured .webinar__card {
    position: relative;
    z-index: 1;
    padding: 30px 0 0;
    color: #fff; }
    @media (min-width: 1025px) {
      .webinar--featured .webinar__card {
        background: #fff;
        padding: 30px;
        color: #2b3034;
        min-width: 400px; } }
  .webinar--featured .webinar__start {
    font-size: 1.75rem;
    margin: 30px 0; }
    @media (min-width: 1025px) {
      .webinar--featured .webinar__start {
        margin: 40px 0; } }
    .webinar--featured .webinar__start .webinar__time {
      border: 0;
      margin-left: 0;
      font-weight: 500; }
  .webinar--featured .button {
    display: block; }
  .webinar--featured .registration-ends {
    margin: 30px 0 0;
    color: #fff; }
    @media (min-width: 1025px) {
      .webinar--featured .registration-ends {
        color: #91969a; } }
  .webinar--featured .webinar__pattern {
    padding: 0;
    width: 60%; }
    @media (min-width: 1025px) {
      .webinar--featured .webinar__pattern {
        width: 500px; } }

.webinar--featured[data-topic="compliance"] .button {
  background-color: #a6192e; }

.webinar--featured[data-topic="content-development"] .button {
  background-color: #f26a36; }

.webinar--featured[data-topic="diversity-equity-and-inclusion"] .button {
  background-color: #76232f; }

.webinar--featured[data-topic="e-learning"] .button {
  background-color: #ff8f1c; }

.webinar--featured[data-topic="it-and-technical-training"] .button {
  background-color: #b94700; }

.webinar--featured[data-topic="leadership"] .button {
  background-color: #daaa00; }

.webinar--featured[data-topic="learning-technologies"] .button {
  background-color: #82c341; }

.webinar--featured[data-topic="measurement-and-analytics"] .button {
  background-color: #00b098; }

.webinar--featured[data-topic="outsourcing"] .button {
  background-color: #008264; }

.webinar--featured[data-topic="onboarding"] .button {
  background-color: #8fd1c3; }

.webinar--featured[data-topic="performance-management"] .button {
  background-color: #00bce7; }

.webinar--featured[data-topic="professional-development"] .button {
  background-color: #00558c; }

.webinar--featured[data-topic="remote-learning"] .button {
  background-color: #007096; }

.webinar--featured[data-topic="sales"] .button {
  background-color: #6756a5; }

.webinar--featured[data-topic="strategy-alignment-and-planning"] .button {
  background-color: #772583; }

.webinar--featured[data-topic="workforce-development"] .button {
  background-color: #9b26b6; }

.webinar__intro {
  margin: 0 0 80px;
  font-size: 1.1875rem;
  line-height: 2; }
  @media (min-width: 1025px) {
    .webinar__intro {
      column-count: 2; } }
  .webinar__intro + .content-module {
    margin-bottom: 80px;
    font-size: 1.125rem; }

.single-webinars .page__header {
  padding-bottom: 20px;
  margin-bottom: 30px; }

.single-webinars .title--single {
  margin-bottom: 0; }

.single-webinars .sponsor__bar .sponsor__block:only-child {
  -ms-flex-preferred-size: 300px;
  flex-basis: 300px;
  max-width: 300px; }

.meta {
  font-size: 0.875rem;
  font-weight: 300;
  color: #5e6367;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center; }
  .meta__wrap {
    -ms-flex: 1;
    flex: 1;
    min-width: 0; }
  .meta__content {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }
    .meta__content > *:not(:last-child):after {
      content: '\2022';
      margin: 0 8px;
      display: inline-block; }
  .tile .meta__pub-date {
    display: none; }
  .meta__author[href] {
    display: inline;
    color: #5e6367; }
    .meta__author[href]:hover, .meta__author[href]:focus, .meta__author[href]:active {
      background-image: linear-gradient(to right, #5e6367 0%, #5e6367 100%);
      background-repeat: repeat-x;
      background-position: 0 100%;
      background-size: 100% 1px; }

.topic {
  font-size: 0.75rem;
  color: #2b3034; }
  .topic > a {
    text-transform: uppercase;
    font-weight: 500;
    line-height: 1.2;
    background-image: linear-gradient(to right, #c4c9cd 0%, #c4c9cd 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px; }
    .topic > a:hover, .topic > a:focus, .topic > a:active {
      background-size: 100% 0;
      color: #5e6367; }

.page-template-custom-topic-landing .content-module {
  padding-top: 50px;
  font-size: 1.125rem; }

.callout {
  clear: both;
  margin: 60px 0;
  width: 100%;
  background: #f0f5f7; }
  .callout:after {
    content: "";
    display: table;
    clear: both; }
  .callout__container {
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 -0.5em;
    padding: 60px 30px; }
    @media (min-width: 768px) {
      .callout__container {
        box-sizing: border-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin: 0 -0.5em; } }
  .callout__item {
    -ms-flex: 0 1 100%;
    flex: 0 1 100%;
    text-align: center;
    max-width: 700px; }
    .callout__item--img {
      display: none; }
    .callout__item--content {
      display: block; }
      .callout__item--content .callout__title {
        font-size: 1.75rem;
        font-weight: 400;
        text-transform: none; }
        .callout__item--content .callout__title--link > a:hover, .callout__item--content .callout__title--link > a:focus, .callout__item--content .callout__title--link > a:active {
          background-image: linear-gradient(to right, #2b3034 0%, #2b3034 100%);
          background-repeat: repeat-x;
          background-position: 0 100%;
          background-size: 100% 1px; }
      .callout__item--content .callout__snippet {
        font-size: 1.1875rem; }
    .callout__item--cta {
      display: block; }
      .callout__item--cta .button {
        display: block;
        margin: 0 auto; }
    @media (min-width: 768px) {
      .callout__item {
        max-width: 100%; }
        .callout__item--content {
          box-sizing: border-box;
          -ms-flex-positive: 0;
          flex-grow: 0;
          -ms-flex-negative: 0;
          flex-shrink: 0;
          -ms-flex-preferred-size: calc( 66.6666666667% - 20px);
          flex-basis: calc( 66.6666666667% - 20px);
          max-width: calc( 66.6666666667% - 20px);
          -ms-flex-item-align: center;
          -ms-grid-row-align: center;
          align-self: center;
          margin: 0 10px;
          text-align: left; }
          .callout__item--content .callout__title {
            font-size: 2rem;
            margin-bottom: .5em; }
          .callout__item--content .callout__snippet {
            margin: 0; }
        .callout__item--cta {
          box-sizing: border-box;
          -ms-flex-positive: 0;
          flex-grow: 0;
          -ms-flex-negative: 0;
          flex-shrink: 0;
          -ms-flex-preferred-size: calc( 33.3333333333% - 20px);
          flex-basis: calc( 33.3333333333% - 20px);
          max-width: calc( 33.3333333333% - 20px);
          -ms-flex-item-align: center;
          -ms-grid-row-align: center;
          align-self: center;
          margin: 0 10px; } }
    @media (min-width: 1025px) {
      .callout__item--img {
        position: relative;
        display: block;
        box-sizing: border-box;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        -ms-flex-preferred-size: calc( 25% - 20px);
        flex-basis: calc( 25% - 20px);
        max-width: calc( 25% - 20px);
        -ms-flex-item-align: end;
        align-self: flex-end;
        margin: 0 10px; }
        .callout__item--img img {
          position: absolute;
          bottom: -60px;
          left: 0;
          max-width: 100%;
          max-height: 280px; }
      .callout__item--content {
        box-sizing: border-box;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        -ms-flex-preferred-size: calc( 50% - 20px);
        flex-basis: calc( 50% - 20px);
        max-width: calc( 50% - 20px);
        -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
        margin: 0 10px; }
      .callout__item--cta {
        box-sizing: border-box;
        -ms-flex-positive: 0;
        flex-grow: 0;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        -ms-flex-preferred-size: calc( 25% - 20px);
        flex-basis: calc( 25% - 20px);
        max-width: calc( 25% - 20px);
        -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
        margin: 0 10px; } }
  .callout__link:hover, .callout__link:active {
    text-decoration: underline; }
  .callout--magazine {
    background: #f0f5f7; }

.page__header + .callout {
  margin-top: 100px; }

.feature__article {
  position: relative; }
  @media (min-width: 640px) {
    .feature__article {
      margin-bottom: 30px; }
      .feature__article .wrapper {
        position: absolute;
        bottom: 0;
        left: 50%;
        width: 100%;
        transform: translateX(-50%);
        z-index: 2; } }

.feature__img {
  position: relative; }
  .feature__img > picture img {
    display: block;
    margin: 0 auto; }
  @media (min-width: 640px) {
    .feature__img:after {
      content: '';
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      width: 100%;
      height: 100%;
      z-index: 1;
      background: linear-gradient(to bottom, rgba(26, 26, 26, 0) 0%, #1a1a1a 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001a1a1a', endColorstr='#1a1a1a',GradientType=0 ); } }

.feature__info {
  padding: 30px 0;
  border-bottom: 1px solid #e3e8ea;
  color: #fff; }
  @media (min-width: 640px) {
    .feature__info {
      border-bottom: 0; } }

.feature__title {
  font-size: 1.5rem;
  text-transform: none;
  margin: 30px 0; }
  .feature__title > a:hover, .feature__title > a:focus, .feature__title > a:active {
    background-image: linear-gradient(to right, #2b3034 0%, #2b3034 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px; }
  @media (min-width: 640px) {
    .feature__title {
      font-size: 2rem; } }
  @media (min-width: 1025px) {
    .feature__title {
      font-size: 2.8125rem; } }
  @media (min-width: 1340px) {
    .feature__title {
      font-size: 3.625rem;
      max-width: 60%; } }
  @media (min-width: 640px) {
    .feature__title--resized {
      font-size: 1.375rem; } }
  @media (min-width: 768px) {
    .feature__title--resized {
      font-size: 1.75rem; } }
  @media (min-width: 1025px) {
    .feature__title--resized {
      font-size: 1.875rem;
      max-width: 60%; } }
  @media (min-width: 1340px) {
    .feature__title--resized {
      font-size: 2.25rem;
      max-width: 60%; } }

@media (min-width: 640px) {
  .feature__btn {
    margin-top: 30px;
    display: inline-block; } }

@media (min-width: 640px) {
  .feature__article[data-theme="dark"] .feature__title a,
  .feature__article[data-theme="dark"] .meta,
  .feature__article[data-theme="dark"] .meta a,
  .feature__article[data-theme="dark"] .topic a {
    color: #fff; }
  .feature__article[data-theme="dark"] .topic a {
    background-image: linear-gradient(to right, #fff 0%, #fff 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px; }
  .feature__article[data-theme="dark"] a:not(.feature__btn):hover, .feature__article[data-theme="dark"] a:not(.feature__btn):active, .feature__article[data-theme="dark"] a:not(.feature__btn):focus {
    background-image: linear-gradient(to right, #fff 0%, #fff 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px; } }

@media (max-width: 639px) {
  .feature__article[data-theme="dark"] .feature__btn {
    display: none; } }

@media (min-width: 640px) {
  .feature__article[data-theme="light"] .feature__title a,
  .feature__article[data-theme="light"] .meta,
  .feature__article[data-theme="light"] .meta a,
  .feature__article[data-theme="light"] .topic a {
    color: #2b3034; }
  .feature__article[data-theme="light"] a:not(.feature__btn):hover, .feature__article[data-theme="light"] a:not(.feature__btn):active, .feature__article[data-theme="light"] a:not(.feature__btn):focus {
    background-image: linear-gradient(to right, #2b3034 0%, #2b3034 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px; }
  .feature__article[data-theme="light"] .feature__img:after {
    background: linear-gradient(to bottom, rgba(240, 245, 247, 0) 0%, #f0f5f7 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001a1a1a', endColorstr='#1a1a1a',GradientType=0 ); } }

@media (max-width: 639px) {
  .feature__article[data-theme="light"] .feature__btn {
    display: none; } }

.feature__article[data-style="no-gradient"] .feature__img:after {
  background: none !important; }

.sponsor__bar {
  padding: 15px 0 0;
  background-color: #fff; }
  .sponsor__bar .wrapper {
    position: relative; }
  .sponsor__bar .owl-next,
  .sponsor__bar .owl-prev {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    border-right: 2px solid #2b3034 !important;
    border-bottom: 2px solid #2b3034 !important;
    border-radius: 0 !important; }
    .sponsor__bar .owl-next span,
    .sponsor__bar .owl-prev span {
      text-indent: 101%;
      overflow: hidden;
      display: block; }
  .sponsor__bar .owl-prev {
    left: 0;
    transform: rotate(135deg); }
  .sponsor__bar .owl-next {
    right: 0;
    transform: rotate(-45deg); }
  .sponsor__bar .close {
    display: none; }
  .sponsor__bar.closed {
    display: none; }
  @media (min-width: 1340px) {
    .sponsor__bar.fixed {
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 1;
      border-top: 1px solid #c4c9cd; } }
  .sponsor__bar.fixed .close {
    display: block;
    position: absolute;
    top: -27px;
    right: -50px;
    padding: 0px 8px;
    background-color: #e3e8ea;
    border-radius: 100%;
    cursor: pointer; }
  .sponsor__bar.fixed .icon {
    width: 10px; }

.sponsor__bar-wrap[data-count="1"] {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center; }

.sponsor__bar-wrap.owl-carousel img {
  width: 60% !important;
  margin: 0 auto; }

.sponsor__heading {
  font-size: 1.0625rem;
  margin: 0;
  text-align: center;
  font-weight: 400;
  text-transform: none;
  margin-bottom: 10px; }
  .sponsor__heading a {
    display: block;
    font-weight: 700;
    text-decoration: underline; }
    @media (min-width: 768px) {
      .sponsor__heading a {
        display: inline; } }

.sponsor__block {
  position: relative;
  text-align: center; }
  .sponsor__block > div {
    position: relative;
    width: 100%; }
  .sponsor__block .ratio__content {
    padding: 0 20px; }

.sponsor__logo {
  width: 100%;
  transition: transform 125ms cubic-bezier(0.77, 0, 0.175, 1); }
  .sponsor__logo:hover, .sponsor__logo:focus, .sponsor__logo:active {
    transform: scale(1.1); }

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

@media (min-width: 768px) {
  .filter__heading {
    clear: both;
    float: left;
    width: auto; } }

@media (max-width: 768px) {
  .filter__controls--desktop {
    display: none; }
  .filter__controls--mobile {
    display: block; } }

@media (min-width: 769px) {
  .filter__controls--desktop {
    display: block;
    float: right;
    width: auto; }
  .filter__controls--mobile {
    display: none; } }

.filter__label {
  display: inline-block;
  vertical-align: middle;
  font-weight: 500; }

.filter__select {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 0 10px; }

.filter__toggle {
  display: block;
  margin: 0 0 30px; }

.filter__list {
  transition: max-height 125ms cubic-bezier(0.77, 0, 0.175, 1);
  transform: translate3d(0, 0, 0); }
  .filter__list[aria-expanded="false"] {
    max-height: 0;
    overflow: hidden; }
  .filter__list[aria-expanded="true"] {
    max-height: 1000px;
    overflow: hidden; }
  .filter__list li {
    display: block;
    font-weight: 300; }
    .filter__list li:last-child {
      margin: 0; }
    .filter__list li.active a {
      background-image: linear-gradient(to right, #5e6367 0%, #5e6367 100%);
      background-repeat: repeat-x;
      background-position: 0 100%;
      background-size: 100% 1px; }
    .filter__list li a {
      background-image: linear-gradient(to right, #c4c9cd 0%, #c4c9cd 100%);
      background-repeat: repeat-x;
      background-position: 0 100%;
      background-size: 100% 1px; }
      .filter__list li a:hover, .filter__list li a:active, .filter__list li a:focus {
        background-size: 100% 0;
        color: #5e6367; }
  @media (min-width: 768px) {
    .filter__list {
      height: auto; } }

.social__callout {
  margin: 60px 0;
  font-size: 1.5rem;
  color: #5e6367;
  line-height: 1.5;
  text-align: center; }
  @media (min-width: 768px) {
    .social__callout {
      font-size: 1.75rem; } }
  .social__callout-quote {
    margin: 0; }
  .social__callout-link {
    color: #5e6367; }
    .social__callout-link:hover, .social__callout-link:focus, .social__callout-link:active {
      background-image: linear-gradient(to right, #2b3034 0%, #2b3034 100%);
      background-repeat: repeat-x;
      background-position: 0 100%;
      background-size: 100% 1px; }
  .social__callout svg,
  .social__callout .icon {
    display: block;
    margin: 10px auto 0;
    width: 30px;
    height: 30px; }
    .social__callout svg *,
    .social__callout .icon * {
      fill: #8fd1c3; }
    @media (min-width: 768px) {
      .social__callout svg,
      .social__callout .icon {
        width: 20px;
        height: 20px; } }

.tags {
  clear: both;
  position: relative;
  padding: 60px 0 0;
  margin: 60px 0 0;
  border-top: 1px solid #e3e8ea; }
  .tags:before {
    content: url("../assets/img/logos/ti-logo-emblem.svg");
    position: absolute;
    top: -14px;
    left: calc(50% - 15px);
    background: #fff;
    padding: 0 15px;
    width: 20px;
    height: 30px; }
  .tags__list {
    margin: 0 auto;
    width: auto;
    padding-bottom: 60px;
    border-bottom: 1px solid #e3e8ea; }
  .tags__item {
    display: block;
    margin: 0 0 20px;
    text-align: center; }
    @media (min-width: 768px) {
      .tags__item {
        text-align: left;
        display: inline-block;
        margin: 0 0 10px; } }
    .tags__item > a {
      display: inline-block;
      padding: 0 20px;
      line-height: 30px;
      height: 30px;
      background: #f0f5f7;
      text-align: center;
      font-size: 0.875rem;
      font-weight: 300;
      color: #5e6367;
      border-radius: 15px;
      transition: background 125ms #base-animation-easing; }
      .tags__item > a:hover, .tags__item > a:active, .tags__item > a:focus {
        background: #e3e8ea; }

.author {
  clear: both;
  padding: 60px 0;
  line-height: 1.5;
  text-align: center; }
  @media (min-width: 768px) {
    .author {
      text-align: left; } }
  .author__pic {
    display: inline-block;
    height: 75px;
    width: 75px;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 auto 30px; }
    @media (min-width: 768px) {
      .author__pic {
        float: left;
        margin: 0 40px 0 0; } }
  .author__bio {
    text-align: center; }
    @media (min-width: 768px) {
      .author__bio {
        margin: 0 0 0 115px;
        text-align: left; } }
    .author__bio [itemprop="name"] {
      font-weight: 500;
      margin: 0 0 10px; }
  .author__more {
    background-image: linear-gradient(to right, #2b3034 0%, #2b3034 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px;
    font-weight: 500; }

.related-content {
  box-sizing: border-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -20px; }
  @media (min-width: 1025px) {
    .related-content .tile {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 33.3333333333% - 40px);
      flex-basis: calc( 33.3333333333% - 40px);
      max-width: calc( 33.3333333333% - 40px);
      margin: 0 20px; } }

.placeholder {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  /* 16:9 Aspect Ratio */
  background-color: #e3e8ea; }
  @media (min-width: 640px) {
    .placeholder {
      padding-top: 75%;
      /* 4:3 Aspect Ratio */ } }
  .tile--large .placeholder,
  .featured .placeholder {
    padding-top: 56.25%;
    /* 16:9 Aspect Ratio */ }
  [data-topic="compliance"] .placeholder {
    background-color: #a6192e; }
  [data-topic="content-development"] .placeholder {
    background-color: #f26a36; }
  [data-topic="diversity-equity-and-inclusion"] .placeholder {
    background-color: #76232f; }
  [data-topic="e-learning"] .placeholder {
    background-color: #ff8f1c; }
  [data-topic="it-and-technical-training"] .placeholder {
    background-color: #b94700; }
  [data-topic="leadership"] .placeholder {
    background-color: #daaa00; }
  [data-topic="learning-technologies"] .placeholder {
    background-color: #82c341; }
  [data-topic="measurement-and-analytics"] .placeholder {
    background-color: #00b098; }
  [data-topic="outsourcing"] .placeholder {
    background-color: #008264; }
  [data-topic="onboarding"] .placeholder {
    background-color: #8fd1c3; }
  [data-topic="performance-management"] .placeholder {
    background-color: #00bce7; }
  [data-topic="professional-development"] .placeholder {
    background-color: #00558c; }
  [data-topic="remote-learning"] .placeholder {
    background-color: #007096; }
  [data-topic="sales"] .placeholder {
    background-color: #6756a5; }
  [data-topic="strategy-alignment-and-planning"] .placeholder {
    background-color: #772583; }
  [data-topic="workforce-development"] .placeholder {
    background-color: #9b26b6; }
  .placeholder > .svg {
    width: 120px;
    height: 120px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%); }
    .placeholder > .svg * {
      fill: #fff; }
      [data-topic="leadership"] .placeholder > .svg * {
        fill: #1a1a1a; }

.page__header {
  position: relative;
  padding: 0 0 40px;
  margin: 0 0 60px; }
  .page__header:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 180px;
    height: 8px;
    background: #2b3034; }
  .page-template-default .page__header {
    max-width: 100%; }
    .page-template-default .page__header:after {
      width: 100%; }
  .articles .page__header {
    padding: 0;
    margin: 0; }
    .articles .page__header:after {
      content: none; }
  @media (min-width: 768px) {
    .page__header {
      max-width: 75%; } }
  .page__header--topic {
    margin: 0 0 20px;
    padding: 0 50px;
    text-align: center;
    max-width: 100%; }
    @media (min-width: 768px) {
      .page__header--topic {
        padding: 0 80px; } }
    .page__header--topic:after {
      content: none; }
    .page__header--topic[data-topic="compliance"]:after {
      background: #a6192e; }
    .page__header--topic[data-topic="content-development"]:after {
      background: #f26a36; }
    .page__header--topic[data-topic="diversity-equity-and-inclusion"]:after {
      background: #76232f; }
    .page__header--topic[data-topic="e-learning"]:after {
      background: #ff8f1c; }
    .page__header--topic[data-topic="it-and-technical-training"]:after {
      background: #b94700; }
    .page__header--topic[data-topic="leadership"]:after {
      background: #daaa00; }
    .page__header--topic[data-topic="learning-technologies"]:after {
      background: #82c341; }
    .page__header--topic[data-topic="measurement-and-analytics"]:after {
      background: #00b098; }
    .page__header--topic[data-topic="outsourcing"]:after {
      background: #008264; }
    .page__header--topic[data-topic="onboarding"]:after {
      background: #8fd1c3; }
    .page__header--topic[data-topic="performance-management"]:after {
      background: #00bce7; }
    .page__header--topic[data-topic="professional-development"]:after {
      background: #00558c; }
    .page__header--topic[data-topic="remote-learning"]:after {
      background: #007096; }
    .page__header--topic[data-topic="sales"]:after {
      background: #6756a5; }
    .page__header--topic[data-topic="strategy-alignment-and-planning"]:after {
      background: #772583; }
    .page__header--topic[data-topic="workforce-development"]:after {
      background: #9b26b6; }
  .page__header--contact .contact-sponsor {
    margin: 20px 0 0; }
  @media (min-width: 768px) {
    .page__header--contact {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: row;
      flex-direction: row;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      width: 100%;
      max-width: 100%; }
      .page__header--contact .title--page {
        max-width: 60%; }
      .page__header--contact .contact-sponsor {
        -ms-flex-order: 2;
        order: 2;
        margin-top: 30px; }
      .page__header--contact .page__desc {
        width: 100%;
        -ms-flex-order: 3;
        order: 3; } }
  @media (min-width: 1025px) {
    .page__header--contact .title--page {
      max-width: 75%; } }

.page__desc {
  margin: 10px 0 0;
  font-size: 1.1875rem;
  color: #5e6367; }

.posttype-callout {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  margin: 0 0 30px;
  border-bottom: 1px solid #c4c9cd; }
  .posttype-callout__info {
    margin-bottom: 20px; }
  .posttype-callout__cta {
    margin-bottom: 20px; }
  @media (min-width: 480px) {
    .posttype-callout {
      -ms-flex-direction: row;
      flex-direction: row;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-align: center;
      align-items: center; }
      .posttype-callout__info, .posttype-callout__cta {
        margin-bottom: 30px; } }

.published-issue {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -ms-flex-align: center;
  align-items: center; }
  .published-issue__img {
    display: inline-block;
    max-width: 120px;
    min-width: 0; }
  .published-issue__info {
    min-width: 0;
    margin: 0;
    font-size: 0.875rem;
    font-weight: 300;
    line-height: 1.2; }
    .published-issue__info strong {
      display: block;
      font-size: 1rem;
      font-weight: 500;
      text-transform: capitalize; }
  .published-issue__img + .published-issue__info {
    padding: 0 20px; }

.registration-ends {
  width: 100%;
  margin: -60px 0 60px;
  font-size: 0.875rem;
  color: #91969a;
  font-style: italic; }

.list__item {
  display: block;
  width: 100%;
  border-bottom: 1px solid #e3e8ea; }

.list__link {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 30px 0;
  overflow: hidden;
  transition: background 125ms cubic-bezier(0.77, 0, 0.175, 1); }
  @media (min-width: 768px) {
    .list__link {
      -ms-flex-direction: row;
      flex-direction: row;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
      -ms-flex-align: center;
      align-items: center;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin: 0 -40px;
      padding: 30px 40px; }
      .list__link:hover, .list__link:active, .list__link:focus {
        background: #2b3034;
        color: #fff; }
        .list__link:hover .button, .list__link:active .button, .list__link:focus .button {
          display: inline-block;
          padding: 18px 50px;
          background-color: #fff;
          border: 1px solid;
          border-color: #1a1a1a;
          border-radius: 25px;
          box-shadow: none;
          color: #1a1a1a;
          font-family: "Gotham SSm A", "Gotham SSm B", "Gotham", Helvetica, Arial, sans-serif;
          font-size: 0.875rem;
          font-weight: 500;
          line-height: 1;
          letter-spacing: -0.014em;
          text-decoration: none;
          text-transform: uppercase;
          text-align: center;
          -webkit-user-select: none;
          -ms-user-select: none;
          user-select: none;
          vertical-align: middle;
          -webkit-font-smoothing: antialiased;
          cursor: pointer;
          -webkit-appearance: none;
          -moz-appearance: none;
          appearance: none;
          transition: background-color 125ms 125ms; }
          .list__link:hover .button:hover, .list__link:active .button:hover, .list__link:focus .button:hover {
            color: rgba(26, 26, 26, 0.8);
            background-color: rgba(255, 255, 255, 0.8);
            border-color: rgba(26, 26, 26, 0.8);
            box-shadow: 0 0 0 4px rgba(26, 26, 26, 0.25); } }

.list__info {
  display: block; }
  @media (min-width: 768px) {
    .list__info {
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: 140px;
      flex-basis: 140px; } }

.list__title {
  margin: 25px 0 0;
  font-size: 1.1875rem;
  font-weight: 500;
  text-transform: none; }
  @media (min-width: 768px) {
    .list__title {
      margin: 0;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: calc(100% - 300px);
      flex-basis: calc(100% - 300px); } }

.list__action {
  display: none; }
  @media (min-width: 768px) {
    .list__action {
      display: inline-block;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 1;
      flex-shrink: 1;
      -ms-flex-preferred-size: 150px;
      flex-basis: 150px; } }

.mag__intro {
  position: relative; }

.mag__cover {
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  padding: 50px 30px 60px;
  height: 100vh; }
  .mag__cover:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: linear-gradient(to bottom, rgba(26, 26, 26, 0) 0%, #1a1a1a 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001a1a1a', endColorstr='#1a1a1a',GradientType=0 ); }
  @media (min-width: 1025px) {
    .mag__cover {
      padding: 50px 60px 60px; } }
  @media (min-width: 1340px) {
    .mag__cover {
      padding: 80px 100px 120px; } }
  .mag__cover > header {
    position: relative;
    z-index: 10;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: 100%; }
    .mag__cover > header .scroll-arrow {
      display: none; }
      @media (min-width: 1340px) {
        .mag__cover > header .scroll-arrow {
          display: inline-block;
          position: absolute;
          bottom: -80px;
          left: 50%;
          transform: translateX(-50%);
          width: 60px;
          height: 60px;
          border-radius: 50%;
          border: 2px solid #fff; }
          .mag__cover > header .scroll-arrow > .svg {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translateX(-50%) translateY(-50%);
            width: 20px;
            height: 13px; }
            .mag__cover > header .scroll-arrow > .svg > * {
              fill: #fff; } }
  .mag__cover .mag__meta {
    -ms-flex-order: 1;
    order: 1;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-align: center;
    align-items: center; }
    .mag__cover .mag__meta .edition {
      -ms-flex-order: 1;
      order: 1;
      font-size: 0.875rem;
      font-weight: 500;
      text-transform: uppercase;
      margin: 0 0 0 20px; }
      @media (min-width: 768px) {
        .mag__cover .mag__meta .edition {
          -ms-flex: none;
          flex: none;
          position: absolute;
          top: 20px;
          left: -25px;
          margin: 0;
          transform-origin: left top;
          transform: rotate(-90deg) translateX(-100%); } }
      @media (min-width: 1025px) {
        .mag__cover .mag__meta .edition {
          left: -40px; } }
    .mag__cover .mag__meta .mag-intro__logo {
      position: relative;
      display: inline-block;
      width: 100px;
      height: 100px;
      background: rgba(26, 26, 26, 0.75);
      padding: 15px;
      text-align: center; }
      @media (min-width: 768px) {
        .mag__cover .mag__meta .mag-intro__logo {
          width: 250px;
          height: 250px;
          padding: 30px; } }
      .mag__cover .mag__meta .mag-intro__logo > .svg {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateX(-50%) translateY(-50%); }
  .mag__cover .mag__cover-title {
    -ms-flex-order: 2;
    order: 2;
    margin-top: auto;
    color: #fff; }
    @media (min-width: 1025px) {
      .mag__cover .mag__cover-title {
        max-width: 55%; } }
  .mag__cover .mag__cta {
    -ms-flex-order: 3;
    order: 3; }

.mag__features {
  padding: 10px 30px 30px; }
  @media (min-width: 1025px) {
    .mag__features {
      padding: 80px 60px 60px;
      position: absolute;
      top: 0;
      right: 0;
      z-index: 10;
      height: 100%;
      max-width: 70%;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
      flex-direction: column;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  @media (min-width: 1340px) {
    .mag__features {
      padding: 90px 100px 120px 0px; } }

.mag__intro[data-theme="dark"] .mag__cover-title,
.mag__intro[data-theme="dark"] .mag__meta {
  color: #fff; }

@media (min-width: 1025px) {
  .mag__intro[data-theme="dark"] .topic a,
  .mag__intro[data-theme="dark"] .title--article a,
  .mag__intro[data-theme="dark"] .meta__content,
  .mag__intro[data-theme="dark"] .meta__content a,
  .mag__intro[data-theme="dark"] .mag__nav a,
  .mag__intro[data-theme="dark"] .mag__nav a:hover,
  .mag__intro[data-theme="dark"] .mag__nav a:active {
    color: #fff; }
  .mag__intro[data-theme="dark"] .topic a,
  .mag__intro[data-theme="dark"] .meta__content a:hover,
  .mag__intro[data-theme="dark"] .meta__content a:active,
  .mag__intro[data-theme="dark"] .mag__nav a:hover,
  .mag__intro[data-theme="dark"] .mag__nav a:active {
    background-image: linear-gradient(to right, #fff 0%, #fff 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px; } }

.mag__intro[data-theme="light"] .mag__cover-title,
.mag__intro[data-theme="light"] .mag__meta {
  color: #1a1a1a; }

@media (min-width: 1025px) {
  .mag__intro[data-theme="light"] .topic a,
  .mag__intro[data-theme="light"] .title--article a,
  .mag__intro[data-theme="light"] .mag__nav a,
  .mag__intro[data-theme="light"] .mag__nav a:hover,
  .mag__intro[data-theme="light"] .mag__nav a:active,
  .mag__intro[data-theme="light"] .meta,
  .mag__intro[data-theme="light"] .meta a {
    color: #1a1a1a; }
  .mag__intro[data-theme="light"] .topic a,
  .mag__intro[data-theme="light"] .mag__nav a:hover,
  .mag__intro[data-theme="light"] .mag__nav a:active,
  .mag__intro[data-theme="light"] .meta a:hover,
  .mag__intro[data-theme="light"] .meta a:active {
    background-image: linear-gradient(to right, #2b3034 0%, #2b3034 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px; }
  .mag__intro[data-theme="light"] .mag__featured-article,
  .mag__intro[data-theme="light"] .mag__nav .menu-item {
    border-color: #5e6367; }
  .mag__intro[data-theme="light"] .scroll-arrow {
    border-color: #2b3034; }
    .mag__intro[data-theme="light"] .scroll-arrow > .svg > * {
      fill: #2b3034; } }

.mag__intro[data-theme="light"] .mag__cover:after {
  background: linear-gradient(to bottom, rgba(240, 245, 247, 0) 0%, #f0f5f7 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001a1a1a', endColorstr='#1a1a1a',GradientType=0 ); }

.mag__intro[data-style="no-gradient"] .mag__cover:after {
  background: none !important; }

.mag__nav {
  display: block;
  width: 100%; }
  @media (min-width: 1025px) {
    .mag__nav {
      width: auto;
      -ms-flex-item-align: end;
      align-self: flex-end; } }
  .mag__nav .menu-item {
    display: block; }
    .mag__nav .menu-item > a {
      position: relative;
      display: block;
      padding: 20px 20px 20px 0;
      font-size: 1rem;
      border-bottom: 1px solid #e3e8ea;
      transition: border-color 125ms cubic-bezier(0.77, 0, 0.175, 1), color 125ms cubic-bezier(0.77, 0, 0.175, 1); }
      .mag__nav .menu-item > a:hover, .mag__nav .menu-item > a:active {
        color: #1a1a1a;
        border-color: #91969a; }
      @media (max-width: 1024px) {
        .mag__nav .menu-item > a {
          color: #2b3034; }
          .mag__nav .menu-item > a:before, .mag__nav .menu-item > a:after {
            content: '';
            position: absolute;
            top: 50%;
            right: 4px;
            height: 2px;
            width: 8px;
            background: #2b3034;
            transform: rotate(-45deg) translateY(4px); }
          .mag__nav .menu-item > a:after {
            transform: rotate(45deg) translateY(-4px); } }
      @media (min-width: 1025px) {
        .mag__nav .menu-item > a {
          padding: 0;
          margin: 8px 10px;
          border: 0;
          font-weight: 500;
          font-size: 0.875rem;
          text-transform: uppercase; } }
    @media (min-width: 1025px) {
      .mag__nav .menu-item {
        display: inline-block;
        border-right: 1px solid #c4c9cd; }
        .mag__nav .menu-item:first-child a {
          margin-left: 0; }
        .mag__nav .menu-item:last-child {
          border: 0; }
          .mag__nav .menu-item:last-child a {
            margin-right: 0; } }

.mag__featured-article {
  margin: 30px 0 0;
  padding: 0 0 30px;
  border-bottom: 1px solid #e3e8ea; }
  .mag__featured-article .title--article {
    margin: 15px 0; }

.count {
  font-weight: 500;
  font-size: 1.875rem; }

.search-term {
  font-weight: 500; }

.mag-column {
  padding: 0 0 30px;
  margin: 0 0 60px;
  border-bottom: 1px solid #c4c9cd;
  text-align: center; }
  .mag-column .column-type {
    text-transform: none;
    font-size: 1.5rem;
    margin: 0;
    font-weight: 300; }
    .mag-column .column-type strong {
      font-weight: 700; }

.progress {
  position: absolute;
  bottom: -3px;
  left: 0;
  width: 100%;
  height: 3px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: transparent;
  color: #2b3034; }
  .progress__container {
    width: 100%;
    background-color: transparent;
    position: fixed;
    top: 0;
    left: 0;
    height: 3px;
    display: block; }
  .progress__bar {
    background-color: #2b3034;
    width: 50%;
    display: block;
    height: inherit; }

progress::-webkit-progress-bar {
  background-color: transparent; }

progress::-webkit-progress-value {
  background-color: #2b3034; }

progress::-moz-progress-bar {
  background-color: #2b3034; }

.modal {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: start;
  justify-content: flex-start;
  padding: 20px; }
  @media (min-width: 768px) {
    .modal {
      -ms-flex-direction: row;
      flex-direction: row; } }
  .modal__image {
    position: relative;
    margin: 0 -20px 0;
    text-align: center; }
    @media (min-width: 768px) {
      .modal__image {
        margin: 0; } }
  @media (min-width: 768px) {
    .modal__content {
      width: calc(100% - 350px);
      margin-left: 50px; } }
  @media (max-width: 767px) {
    .modal__cta {
      position: fixed;
      bottom: 0;
      left: 0;
      width: 100%;
      padding: 20px;
      background: #fff;
      -ms-flex: none;
      flex: none; } }
  .modal__cta .button {
    margin: auto auto 0; }
    @media (max-width: 767px) {
      .modal__cta .button {
        display: block; } }
  .modal .close-modal {
    padding: 0;
    background: none;
    border-radius: 0;
    position: absolute;
    top: 10px;
    right: 10px;
    width: 50px;
    height: 50px; }
    .modal .close-modal:hover {
      background: none;
      box-shadow: none;
      color: inherit; }
    .modal .close-modal > svg {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translateX(-50%) translateY(-50%);
      width: 20px;
      height: 20px; }
    @media (min-width: 768px) {
      .modal .close-modal {
        top: -40px;
        right: -40px; } }

.company__name {
  font-weight: 300;
  font-size: 1.75rem;
  line-height: 1.1;
  margin: 0 0 5px;
  text-transform: none; }

.company__local {
  font-weight: 400;
  font-size: 0.875rem;
  color: #91969a;
  margin: 0; }

.company__desc {
  margin-top: 20px; }

@media (max-width: 767px) {
  .top-categories {
    display: block;
    width: 100%; }
    .top-categories .top__cat {
      display: block; }
      .top-categories .top__cat > .top__link {
        position: relative;
        display: block;
        padding: 20px 20px 20px 0;
        font-size: 1rem;
        color: #2b3034;
        border-bottom: 1px solid #e3e8ea;
        transition: border-color 125ms cubic-bezier(0.77, 0, 0.175, 1), color 125ms cubic-bezier(0.77, 0, 0.175, 1); }
        .top-categories .top__cat > .top__link:hover, .top-categories .top__cat > .top__link:active {
          color: #1a1a1a;
          border-color: #91969a; }
        .top-categories .top__cat > .top__link:before, .top-categories .top__cat > .top__link:after {
          content: '';
          position: absolute;
          top: 50%;
          right: 4px;
          height: 2px;
          width: 8px;
          background: #2b3034;
          transform: rotate(-45deg) translateY(4px); }
        .top-categories .top__cat > .top__link:after {
          transform: rotate(45deg) translateY(-4px); }
        .top-categories .top__cat > .top__link .cat-img {
          display: none; }
      .top-categories .top__cat .actions {
        display: none; } }

@media (min-width: 768px) {
  .top-categories {
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -10px; }
    .top-categories .top__cat {
      box-sizing: border-box;
      -ms-flex-positive: 0;
      flex-grow: 0;
      -ms-flex-negative: 0;
      flex-shrink: 0;
      -ms-flex-preferred-size: calc( 33.3333333333% - 20px);
      flex-basis: calc( 33.3333333333% - 20px);
      max-width: calc( 33.3333333333% - 20px);
      margin: 0 10px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
      flex-direction: column;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-bottom: 20px;
      border: 1px solid #e3e8ea;
      border-radius: 3px; }
    .top-categories .top__link {
      display: block;
      position: relative;
      width: 100%; }
      .top-categories .top__link:after {
        content: '';
        display: block;
        width: 100%;
        padding-top: 100%; }
      .top-categories .top__link .cat-img {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        height: 100%;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 20px;
        text-align: center; }
        .top-categories .top__link .cat-img img {
          display: block;
          max-width: 100%;
          width: auto;
          max-height: 100%;
          height: auto; }
      .top-categories .top__link .cat-name {
        display: none; }
    .top-categories .cat-name {
      font-weight: 500;
      font-size: 1.3125rem;
      text-align: center; }
    .top-categories .actions {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
      flex-direction: column;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -ms-flex-align: center;
      align-items: center;
      padding: 0 10px 20px; }
    .top-categories .secondary-link {
      margin: 10px 0 0; } }

@media (min-width: 1025px) {
  .top-categories .top__cat {
    box-sizing: border-box;
    -ms-flex-positive: 0;
    flex-grow: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: calc( 20% - 20px);
    flex-basis: calc( 20% - 20px);
    max-width: calc( 20% - 20px);
    margin: 0 10px;
    margin-bottom: 20px; } }

.info-module {
  display: none; }
  @media (min-width: 768px) {
    .info-module {
      display: block;
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      width: 100%;
      background: #fff;
      border-top: 1px solid #c4c9cd;
      transform: translateY(100%);
      z-index: 50;
      transition: transform .3s ease; }
      .info-module.show {
        transform: translateY(0); }
      .page-template-custom-topic-landing .info-module {
        display: none; }
      .single .info-module {
        display: none; } }
  .info-module > .wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    align-content: center;
    padding-top: 10px;
    padding-bottom: 10px; }
  .info-module__content {
    margin-right: 10px;
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center; }
  .info-module__cta {
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center;
    white-space: nowrap;
    font-size: 0.75rem; }
  .info-module__snippet {
    margin: 0; }
    .info-module__snippet[data-weight="bold"] {
      font-weight: 700; }

@media (min-width: 768px) {
  body.pad-footer .footer-container {
    padding-bottom: 130px; } }

.toc {
  margin: 0 0 30px 0;
  list-style-type: decimal-leading-zero;
  list-style-position: inside;
  font-weight: 500; }
  .toc__heading {
    margin-bottom: 10px; }
  .toc > li {
    display: list-item; }
    .toc > li > a {
      display: inline-block;
      margin-left: 20px;
      background-image: linear-gradient(to right, #c4c9cd 0%, #c4c9cd 100%);
      background-repeat: repeat-x;
      background-position: 0 100%;
      background-size: 100% 1px;
      font-weight: 300;
      line-height: 1; }

.wiki__heading {
  position: relative;
  text-transform: none; }
  @media (min-width: 768px) {
    .wiki__heading {
      margin: 0 -70px 30px;
      padding: 0 70px; }
      .wiki__heading:hover > span {
        background-image: linear-gradient(to right, #2b3034 0%, #2b3034 100%);
        background-repeat: repeat-x;
        background-position: 0 100%;
        background-size: 100% 1px; }
      .wiki__heading:hover .copy-link {
        left: 0;
        opacity: 1;
        visibility: visible; } }

.wiki .copy-link {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 50px;
  border: 2px solid #2b3034;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  display: inline-block;
  transition: all 125ms cubic-bezier(0.77, 0, 0.175, 1); }
  .wiki .copy-link > svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 25px;
    height: 25px; }

.feedback {
  clear: both;
  padding: 20px 0;
  text-align: center; }
  .feedback__heading {
    margin: 0 0 8px;
    text-transform: none;
    font-weight: 700; }
  .feedback__snippet {
    margin: 0 0 10px; }
  .feedback__form {
    transition: visibility 0s ease, max-height .3s ease, opacity .3s ease;
    transition-delay: 0s; }
    .feedback__form[aria-expanded="true"] {
      max-height: 1000px;
      opacity: 1;
      visibility: visible; }
    .feedback__form[aria-expanded="false"] {
      max-height: 0;
      overflow: hidden;
      opacity: 0;
      visibility: hidden;
      transition-delay: .3s, 0s, 0s; }

.separator--bottom {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #c4c9cd; }

.glossary__nav {
  padding: 30px 0 0;
  margin: 0 0 30px;
  text-align: center;
  width: 100%;
  height: 100px;
  overflow: hidden; }
  @media (min-width: 768px) {
    .glossary__nav {
      padding: 30px 0;
      overflow: auto;
      height: auto;
      max-width: 1000px;
      margin: 0 auto 30px; } }
  .glossary__nav-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-pack: start;
    justify-content: flex-start;
    overflow-x: scroll;
    height: 100px; }
    @media (min-width: 768px) {
      .glossary__nav-list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: center;
        justify-content: center;
        height: auto;
        overflow: auto; } }
  .glossary__nav-item {
    display: inline-block;
    margin: 0 2px 5px; }
  .glossary__nav-link {
    display: block;
    text-align: center;
    font-weight: 500;
    background: #2b3034;
    color: #fff;
    height: 65px;
    width: 65px;
    line-height: 65px;
    font-size: 24px;
    border-radius: 3px; }
    .glossary__nav-link.disabled {
      background: #c4c9cd; }

.glossary__section {
  clear: both;
  margin-bottom: 15px; }
  .glossary__section:after {
    content: "";
    display: table;
    clear: both; }
  .glossary__section-heading {
    text-transform: uppercase;
    font-weight: 400;
    font-size: 3rem;
    border-bottom: 2px solid #2b3034;
    margin: 0 0 30px; }
  .glossary__section-item {
    display: block; }
    @media (min-width: 768px) {
      .glossary__section-item {
        float: left;
        width: 50%;
        margin: 0 0 15px; }
        .glossary__section-item:nth-child(2n+1) {
          clear: left; } }
    @media (min-width: 1025px) {
      .glossary__section-item {
        width: 33%; }
        .glossary__section-item:nth-child(2n+1) {
          clear: none; }
        .glossary__section-item:nth-child(3n+1) {
          clear: left; } }
    .glossary__section-item > a {
      position: relative;
      display: block;
      padding: 20px 20px 20px 0;
      font-size: 1rem;
      border-bottom: 1px solid #c4c9cd;
      transition: border-color 125ms cubic-bezier(0.77, 0, 0.175, 1), color 125ms cubic-bezier(0.77, 0, 0.175, 1); }
      .glossary__section-item > a:hover, .glossary__section-item > a:active {
        border-color: #91969a; }
      @media (max-width: 767px) {
        .glossary__section-item > a:before, .glossary__section-item > a:after {
          content: '';
          position: absolute;
          top: 50%;
          right: 4px;
          height: 2px;
          width: 8px;
          background: #2b3034;
          transform: rotate(-45deg) translateY(4px); }
        .glossary__section-item > a:after {
          transform: rotate(45deg) translateY(-4px); } }
      @media (min-width: 768px) {
        .glossary__section-item > a {
          display: inline-block;
          padding: 0;
          border: 0;
          font-size: 1.1875rem; }
          .glossary__section-item > a:hover, .glossary__section-item > a:active {
            background-image: linear-gradient(to right, #91969a 0%, #91969a 100%);
            background-repeat: repeat-x;
            background-position: 0 100%;
            background-size: 100% 1px; } }

.addthis_share {
  position: fixed;
  bottom: 0;
  left: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  padding: 0 20px;
  background: #fff;
  border-top: 1px solid #c4c9cd;
  z-index: 50;
  transition: padding .15s ease, position .15s ease; }
  @media (min-width: 768px) {
    .addthis_share {
      left: 0;
      top: 220px;
      bottom: auto;
      width: auto;
      border: 0;
      -ms-flex-direction: column;
      flex-direction: column;
      padding: 0 10px; }
      .addthis_share.hide {
        visibility: hidden; } }
  @media (min-width: 1340px) {
    .addthis_share {
      left: 50%;
      transform: translateX(-640px);
      padding: 0; }
      .addthis_share--mag-landscape {
        position: absolute;
        top: 810px; }
        .addthis_share--mag-landscape.fixed {
          position: fixed;
          top: 220px; }
      .addthis_share--mag-portrait {
        left: 40%;
        transform: none; } }
  @media (min-width: 1834px) {
    .addthis_share--mag-portrait {
      left: 733px; } }
  .addthis_share__title {
    margin: 0;
    text-transform: uppercase;
    font-size: 0.875rem;
    line-height: 50px;
    font-weight: 700;
    color: #2b3034; }
    @media (min-width: 768px) {
      .addthis_share__title {
        font-size: 0.75rem; } }
  .addthis_share__container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: center;
    align-items: center; }
    @media (min-width: 768px) {
      .addthis_share__container {
        -ms-flex-direction: column;
        flex-direction: column; } }
  .addthis_share__button {
    position: relative;
    display: block;
    height: 50px;
    width: 50px;
    text-align: center;
    margin: 0;
    color: #91969a; }
    .addthis_share__button * {
      pointer-events: none; }
    .addthis_share__button:hover, .addthis_share__button:active, .addthis_share__button:focus {
      background: #c4c9cd; }
      @media (min-width: 768px) {
        .addthis_share__button:hover, .addthis_share__button:active, .addthis_share__button:focus {
          background: transparent; }
          .addthis_share__button:hover > svg > *, .addthis_share__button:active > svg > *, .addthis_share__button:focus > svg > * {
            fill: #1a1a1a; } }
    .addthis_share__button > svg {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translateX(-50%) translateY(-50%);
      width: 25px;
      height: 25px; }
      .addthis_share__button > svg > * {
        fill: #5e6367; }

.gateway__form {
  position: relative;
  padding: 40px;
  background-color: #e3e8ea; }

.loading {
  text-align: center; }
  .loading .spinner {
    animation: rotate 2s linear infinite;
    z-index: 1;
    width: 50px;
    height: 50px;
    display: inline-block;
    margin: 0 auto; }
    .loading .spinner .path {
      stroke: #2b3034;
      stroke-linecap: square;
      animation: dash 1.5s ease-in-out infinite; }

.load-more {
  padding: 20px 0;
  text-align: center; }

.pdf-embed {
  height: 1100px;
  margin: 0 auto 30px; }
  .page-template-custom-cptm-template .pdf-embed {
    width: 100%;
    margin: 0 auto; }
  @media (min-width: 768px) {
    .pdf-embed {
      margin: 0 -60px 30px; } }
  @media (min-width: 1025px) {
    .pdf-embed {
      margin: 0 -180px 30px; } }
  @media (min-width: 1340px) {
    .pdf-embed {
      margin: 0 -260px 30px; } }

/*!
  Modaal - accessible modals - v0.3.1
  by Humaan, for all humans.
  http://humaan.com
 */
.modaal-noscroll {
  overflow: hidden; }

.modaal-accessible-hide {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden; }

.modaal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  opacity: 0; }

.modaal-wrapper {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: auto;
  opacity: 1;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  transition: all 0.3s ease-in-out; }
  .modaal-wrapper * {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-backface-visibility: hidden; }
  .modaal-wrapper .modaal-close {
    border: none;
    background: transparent;
    padding: 0;
    -webkit-appearance: none; }
  .modaal-wrapper.modaal-start_none {
    display: none;
    opacity: 1; }
  .modaal-wrapper.modaal-start_fade {
    opacity: 0; }
  .modaal-wrapper *[tabindex="0"] {
    outline: none !important; }
  .modaal-wrapper.modaal-fullscreen {
    overflow: hidden; }

.modaal-outer-wrapper {
  display: table;
  position: relative;
  width: 100%;
  height: 100%; }
  .modaal-fullscreen .modaal-outer-wrapper {
    display: block; }

.modaal-inner-wrapper {
  display: table-cell;
  width: 100%;
  height: 100%;
  position: relative;
  vertical-align: middle;
  text-align: center;
  padding: 80px 25px; }
  .modaal-fullscreen .modaal-inner-wrapper {
    padding: 0;
    display: block;
    vertical-align: top; }

.modaal-container {
  position: relative;
  display: inline-block;
  width: 100%;
  margin: auto;
  text-align: left;
  color: #000;
  max-width: 1000px;
  border-radius: 0px;
  background: #fff;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  cursor: auto; }
  .modaal-container.is_loading {
    height: 100px;
    width: 100px;
    overflow: hidden; }
  .modaal-fullscreen .modaal-container {
    max-width: none;
    height: 100%;
    overflow: auto; }

.modaal-close {
  position: fixed;
  right: 20px;
  top: 20px;
  color: #fff;
  cursor: pointer;
  opacity: 1;
  width: 50px;
  height: 50px;
  background: transparent;
  border-radius: 100%;
  transition: all 0.2s ease-in-out; }
  .modaal-close:focus, .modaal-close:hover {
    outline: none;
    background: #fff; }
    .modaal-close:focus:before, .modaal-close:focus:after, .modaal-close:hover:before, .modaal-close:hover:after {
      background: #b93d0c; }
  .modaal-close span {
    position: absolute !important;
    clip: rect(1px 1px 1px 1px);
    /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
    padding: 0 !important;
    border: 0 !important;
    height: 1px !important;
    width: 1px !important;
    overflow: hidden; }
  .modaal-close:before, .modaal-close:after {
    display: block;
    content: " ";
    position: absolute;
    top: 14px;
    left: 23px;
    width: 4px;
    height: 22px;
    border-radius: 4px;
    background: #fff;
    transition: background 0.2s ease-in-out; }
  .modaal-close:before {
    transform: rotate(-45deg); }
  .modaal-close:after {
    transform: rotate(45deg); }
  .modaal-fullscreen .modaal-close {
    background: #afb7bc;
    right: 10px;
    top: 10px; }

.modaal-content-container {
  padding: 30px; }

.modaal-confirm-wrap {
  padding: 30px 0 0;
  text-align: center;
  font-size: 0; }

.modaal-confirm-btn {
  font-size: 14px;
  display: inline-block;
  margin: 0 10px;
  vertical-align: middle;
  cursor: pointer;
  border: none;
  background: transparent; }
  .modaal-confirm-btn.modaal-ok {
    padding: 10px 15px;
    color: #fff;
    background: #555;
    border-radius: 3px;
    transition: background 0.2s ease-in-out; }
    .modaal-confirm-btn.modaal-ok:hover {
      background: #2f2f2f; }
  .modaal-confirm-btn.modaal-cancel {
    text-decoration: underline; }
    .modaal-confirm-btn.modaal-cancel:hover {
      text-decoration: none;
      color: #2f2f2f; }

@keyframes instaReveal {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.modaal-instagram .modaal-container {
  width: auto;
  background: transparent;
  box-shadow: none !important; }

.modaal-instagram .modaal-content-container {
  padding: 0;
  background: transparent; }

.modaal-instagram .modaal-content-container > blockquote {
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important; }

.modaal-instagram iframe {
  opacity: 0;
  margin: -6px !important;
  border-radius: 0 !important;
  width: 1000px !important;
  max-width: 800px !important;
  box-shadow: none !important;
  animation: instaReveal 1s linear forwards; }

.modaal-image .modaal-inner-wrapper {
  padding-left: 140px;
  padding-right: 140px; }

.modaal-image .modaal-container {
  width: auto;
  max-width: 100%; }

.modaal-gallery-wrap {
  position: relative;
  color: #fff; }

.modaal-gallery-item {
  display: none; }
  .modaal-gallery-item img {
    display: block; }
  .modaal-gallery-item.is_active {
    display: block; }

.modaal-gallery-label {
  position: absolute;
  left: 0;
  width: 100%;
  margin: 20px 0 0;
  font-size: 18px;
  text-align: center;
  color: #fff; }
  .modaal-gallery-label:focus {
    outline: none; }

.modaal-gallery-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  opacity: 1;
  cursor: pointer;
  color: #fff;
  width: 50px;
  height: 50px;
  background: transparent;
  border: none;
  border-radius: 100%;
  transition: all 0.2s ease-in-out; }
  .modaal-gallery-control.is_hidden {
    opacity: 0;
    cursor: default; }
  .modaal-gallery-control:focus, .modaal-gallery-control:hover {
    outline: none;
    background: #fff; }
    .modaal-gallery-control:focus:before, .modaal-gallery-control:focus:after, .modaal-gallery-control:hover:before, .modaal-gallery-control:hover:after {
      background: #afb7bc; }
  .modaal-gallery-control span {
    position: absolute !important;
    clip: rect(1px 1px 1px 1px);
    /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
    padding: 0 !important;
    border: 0 !important;
    height: 1px !important;
    width: 1px !important;
    overflow: hidden; }
  .modaal-gallery-control:before, .modaal-gallery-control:after {
    display: block;
    content: " ";
    position: absolute;
    top: 16px;
    left: 25px;
    width: 4px;
    height: 18px;
    border-radius: 4px;
    background: #fff;
    transition: background 0.2s ease-in-out; }
  .modaal-gallery-control:before {
    margin: -5px 0 0;
    transform: rotate(-45deg); }
  .modaal-gallery-control:after {
    margin: 5px 0 0;
    transform: rotate(45deg); }

.modaal-gallery-next {
  left: 100%;
  margin-left: 40px; }

.modaal-gallery-prev {
  right: 100%;
  margin-right: 40px; }
  .modaal-gallery-prev:before, .modaal-gallery-prev:after {
    left: 22px; }
  .modaal-gallery-prev:before {
    margin: 5px 0 0;
    transform: rotate(-45deg); }
  .modaal-gallery-prev:after {
    margin: -5px 0 0;
    transform: rotate(45deg); }

.modaal-video-wrap {
  margin: auto 50px;
  position: relative; }

.modaal-video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  background: #000;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto; }
  .modaal-video-container iframe,
  .modaal-video-container object,
  .modaal-video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.modaal-iframe .modaal-content {
  width: 100%;
  height: 100%; }

.modaal-iframe-elem {
  width: 100%;
  height: 100%;
  display: block; }

@media only screen and (min-width: 1400px) {
  .modaal-video-container {
    padding-bottom: 0;
    height: 731px; } }

@media only screen and (max-width: 1140px) {
  .modaal-image .modaal-inner-wrapper {
    padding-left: 25px;
    padding-right: 25px; }
  .modaal-gallery-control {
    top: auto;
    bottom: 20px;
    transform: none;
    background: rgba(0, 0, 0, 0.7); }
    .modaal-gallery-control:before, .modaal-gallery-control:after {
      background: #fff; }
  .modaal-gallery-next {
    left: auto;
    right: 20px; }
  .modaal-gallery-prev {
    left: 20px;
    right: auto; } }

@media screen and (max-width: 900px) {
  .modaal-instagram iframe {
    width: 500px !important; } }

@media screen and (max-height: 1100px) {
  .modaal-instagram iframe {
    width: 700px !important; } }

@media screen and (max-height: 1000px) {
  .modaal-inner-wrapper {
    padding-top: 60px;
    padding-bottom: 60px; }
  .modaal-instagram iframe {
    width: 600px !important; } }

@media screen and (max-height: 900px) {
  .modaal-instagram iframe {
    width: 500px !important; }
  .modaal-video-container {
    max-width: 900px;
    max-height: 510px; } }

@media only screen and (max-width: 600px) {
  .modaal-instagram iframe {
    width: 280px !important; } }

@media only screen and (max-height: 820px) {
  .modaal-gallery-label {
    display: none; } }

.modaal-loading-spinner {
  background: none;
  position: absolute;
  width: 200px;
  height: 200px;
  top: 50%;
  left: 50%;
  margin: -100px 0 0 -100px;
  transform: scale(0.25); }

@keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    transform: scale(1.5); }
  100% {
    opacity: .1;
    transform: scale(1); } }

.modaal-loading-spinner > div {
  width: 24px;
  height: 24px;
  margin-left: 4px;
  margin-top: 4px;
  position: absolute; }

.modaal-loading-spinner > div > div {
  width: 100%;
  height: 100%;
  border-radius: 15px;
  background: #fff; }

.modaal-loading-spinner > div:nth-of-type(1) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: 0s; }

.modaal-loading-spinner > div:nth-of-type(2) > div, .modaal-loading-spinner > div:nth-of-type(3) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(1) {
  transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(2) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .12s; }

.modaal-loading-spinner > div:nth-of-type(2) {
  transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(3) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .25s; }

.modaal-loading-spinner > div:nth-of-type(4) > div, .modaal-loading-spinner > div:nth-of-type(5) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(3) {
  transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(4) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .37s; }

.modaal-loading-spinner > div:nth-of-type(4) {
  transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(5) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .5s; }

.modaal-loading-spinner > div:nth-of-type(6) > div, .modaal-loading-spinner > div:nth-of-type(7) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(5) {
  transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(6) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .62s; }

.modaal-loading-spinner > div:nth-of-type(6) {
  transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(7) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .75s; }

.modaal-loading-spinner > div:nth-of-type(7) {
  transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(8) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  animation-delay: .87s; }

.modaal-loading-spinner > div:nth-of-type(8) {
  transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); }

@media (max-width: 767px) {
  .modaal-content-container {
    padding: 30px 30px 80px;
    position: fixed;
    height: 100vh;
    overflow-y: scroll; }
  .modaal-wrapper {
    overflow: hidden; }
    .modaal-wrapper .modaal-outer-wrapper {
      display: block; }
    .modaal-wrapper .modaal-inner-wrapper {
      padding: 0;
      display: block;
      vertical-align: top; }
    .modaal-wrapper .modaal-container {
      max-width: none;
      height: 100%;
      overflow: auto; }
    .modaal-wrapper .modaal-close {
      background: #91969a;
      right: 10px;
      top: 10px; } }

@media (max-width: 767px) {
  table.bt th,
  table.bt td {
    padding: 0;
    text-align: left;
    width: 100%; }
  table.bt tbody td:last-child::before,
  table.bt tbody td:last-child .bt-content {
    border-bottom: 0.25rem solid #fff; }
  table.bt thead,
  table.bt tbody th {
    display: none; }
  table.bt tfoot th,
  table.bt tfoot td,
  table.bt tbody td {
    border: none;
    display: block;
    display: -ms-flexbox;
    display: flex;
    vertical-align: top;
    /* IE 9 */
    float: left\9;
    width: 100%\9; }
  table.bt tfoot th::before,
  table.bt tfoot td::before,
  table.bt tbody td::before {
    content: attr(data-th) ": ";
    display: inline-block;
    -ms-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 30%;
    padding: 0.5625rem;
    background-color: #5e6367;
    color: #fff;
    font-size: 0.875rem;
    font-weight: bold;
    line-height: 1.5;
    word-break: break-word; }
  table.bt tfoot th.bt-hide,
  table.bt tfoot td.bt-hide,
  table.bt tbody td.bt-hide {
    display: none; }
  table.bt tfoot th .bt-content,
  table.bt tfoot td .bt-content,
  table.bt tbody td .bt-content {
    display: block;
    width: 100%;
    padding: 0.5625rem;
    border-top: 0.0625rem solid #c4c9cd;
    vertical-align: top; }
  .bt-wrapper.active {
    max-height: 19.375rem;
    overflow: auto;
    -webkit-overflow-scrolling: touch; } }

.lazyload,
.lazyloading {
  opacity: 0; }

.lazyloaded {
  opacity: 1;
  transition: opacity .4s ease; }

.back-to {
  display: inline-block;
  margin: 0 0 40px;
  font-weight: 600;
  transition: transform .3s ease; }
  .back-to:hover span, .back-to:active span {
    background-image: linear-gradient(to right, #2b3034 0%, #2b3034 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px; }
  .back-to:hover .svg,
  .back-to:hover svg, .back-to:active .svg,
  .back-to:active svg {
    transform: translateX(-8px); }
  .back-to span {
    display: inline-block;
    transition: transform .3s ease; }
  .back-to .svg,
  .back-to svg {
    width: 10px;
    height: 10px;
    transition: transform .3s ease; }

.sidebar__menu {
  margin: 0 0 60px; }
  .sidebar__menu .filter__list li a {
    position: relative;
    display: block;
    color: #5e6367;
    font-size: 1rem; }
    .sidebar__menu .filter__list li a:hover, .sidebar__menu .filter__list li a:active {
      color: #2b3034; }
    @media (max-width: 1024px) {
      .sidebar__menu .filter__list li a:before, .sidebar__menu .filter__list li a:after {
        content: '';
        position: absolute;
        top: 50%;
        right: 4px;
        height: 2px;
        width: 8px;
        background: #5e6367;
        transform: rotate(-45deg) translateY(4px); }
      .sidebar__menu .filter__list li a:after {
        transform: rotate(45deg) translateY(-4px); } }
    @media (min-width: 1025px) {
      .sidebar__menu .filter__list li a {
        margin: 0 0 20px;
        padding: 0;
        font-weight: 500; }
        .sidebar__menu .filter__list li a:hover, .sidebar__menu .filter__list li a:active, .sidebar__menu .filter__list li a:focus {
          background-image: linear-gradient(to right, #5e6367 0%, #5e6367 100%);
          background-repeat: repeat-x;
          background-position: 0 100%;
          background-size: 100% 1px;
          transition: background-color 125ms cubic-bezier(0.77, 0, 0.175, 1); } }
  .sidebar__menu .filter__list li.active > a {
    color: #2b3034;
    background-image: linear-gradient(to right, #5e6367 0%, #5e6367 100%);
    background-repeat: repeat-x;
    background-position: 0 100%;
    background-size: 100% 1px;
    transition: background-color 125ms cubic-bezier(0.77, 0, 0.175, 1); }

/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }

.owl-carousel .owl-stage {
  position: relative;
  -ms-touch-action: pan-Y;
  touch-action: manipulation;
  margin: 0 auto;
  -moz-backface-visibility: hidden;
  /* fix firefox animation glitch */ }

.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  /* fix for flashing background */
  -webkit-transform: translate3d(0px, 0px, 0px); }

.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0); }

.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none; }

.owl-carousel .owl-item img {
  display: block;
  width: 100%; }

.owl-carousel .owl-nav.disabled,
.owl-carousel .owl-dots.disabled {
  display: none; }

.owl-carousel .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-dot {
  cursor: pointer;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next,
.owl-carousel button.owl-dot {
  background: none;
  color: inherit;
  border: none;
  padding: 0 !important;
  font: inherit; }

.owl-carousel.owl-loaded {
  display: block; }

.owl-carousel.owl-loading {
  opacity: 0;
  display: block; }

.owl-carousel.owl-hidden {
  opacity: 0; }

.owl-carousel.owl-refresh .owl-item {
  visibility: hidden; }

.owl-carousel.owl-drag .owl-item {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.owl-carousel.owl-grab {
  cursor: move;
  cursor: grab; }

.owl-carousel.owl-rtl {
  direction: rtl; }

.owl-carousel.owl-rtl .owl-item {
  float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
   *  Owl Carousel - Animate Plugin
   */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
   * 	Owl Carousel - Auto Height Plugin
   */
.owl-height {
  transition: height 500ms ease-in-out; }

/*
   * 	Owl Carousel - Lazy Load Plugin
   */
.owl-carousel .owl-item {
  /**
              This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
              calculation of the height of the owl-item that breaks page layouts
           */ }

.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 400ms ease; }

.owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
  max-height: 0; }

.owl-carousel .owl-item img.owl-lazy {
  transform-style: preserve-3d; }

/*
   * 	Owl Carousel - Video Plugin
   */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }

form.post-password-form p:nth-child(2) {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  form.post-password-form p:nth-child(2) label {
    font-size: 0;
    width: 100%; }
  form.post-password-form p:nth-child(2) input, form.post-password-form p:nth-child(2) textarea, form.post-password-form p:nth-child(2) .ginput_container_select select, .ginput_container_select form.post-password-form p:nth-child(2) select, form.post-password-form p:nth-child(2) .ginput_complex .address_country select, .ginput_complex .address_country form.post-password-form p:nth-child(2) select, form.post-password-form p:nth-child(2) .clear-multi .gfield_time_ampm select, .clear-multi .gfield_time_ampm form.post-password-form p:nth-child(2) select, form.post-password-form p:nth-child(2) .ginput_container_multiselect select, .ginput_container_multiselect form.post-password-form p:nth-child(2) select, form.post-password-form p:nth-child(2) .form-field select, .form-field form.post-password-form p:nth-child(2) select {
    font-size: 0.875rem;
    border-radius: 0;
    padding: 15px 10px; }
    form.post-password-form p:nth-child(2) input[name="Submit"], form.post-password-form p:nth-child(2) textarea[name="Submit"], form.post-password-form p:nth-child(2) .ginput_container_select select[name="Submit"], .ginput_container_select form.post-password-form p:nth-child(2) select[name="Submit"], form.post-password-form p:nth-child(2) .ginput_complex .address_country select[name="Submit"], .ginput_complex .address_country form.post-password-form p:nth-child(2) select[name="Submit"], form.post-password-form p:nth-child(2) .clear-multi .gfield_time_ampm select[name="Submit"], .clear-multi .gfield_time_ampm form.post-password-form p:nth-child(2) select[name="Submit"], form.post-password-form p:nth-child(2) .ginput_container_multiselect select[name="Submit"], .ginput_container_multiselect form.post-password-form p:nth-child(2) select[name="Submit"], form.post-password-form p:nth-child(2) .form-field select[name="Submit"], .form-field form.post-password-form p:nth-child(2) select[name="Submit"] {
      width: 33%;
      margin-left: 20px; }

.clear {
  clear: both; }

.block {
  display: block; }

.center {
  text-align: center; }

.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em; }

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em; }

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto; }

.push {
  margin-bottom: 40px; }

.hidden {
  display: none; }

/* Text meant only for screen readers. */
.screen-reader-text, .gfield.gform_hidden {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden; }
  .screen-reader-text:focus, .gfield.gform_hidden:focus {
    background-color: #c4c9cd;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #91969a;
    display: block;
    font-size: 0.0546875rem;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */ }

.gallery {
  margin-bottom: 1.5em; }

.gallery-item {
  display: inline-block;
  text-align: center;
  vertical-align: top;
  width: 100%; }
  .gallery-columns-2 .gallery-item {
    max-width: 50%; }
  .gallery-columns-3 .gallery-item {
    max-width: 33.33%; }
  .gallery-columns-4 .gallery-item {
    max-width: 25%; }
  .gallery-columns-5 .gallery-item {
    max-width: 20%; }
  .gallery-columns-6 .gallery-item {
    max-width: 16.66%; }
  .gallery-columns-7 .gallery-item {
    max-width: 14.28%; }
  .gallery-columns-8 .gallery-item {
    max-width: 12.5%; }
  .gallery-columns-9 .gallery-item {
    max-width: 11.11%; }

.gallery-caption {
  display: block; }

.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%; }
  .wp-caption img[class*="wp-image-"] {
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .wp-caption .wp-caption-text {
    margin: 0.8075em 0; }

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

.note {
  font-size: 0.875rem; }

.home .site-content {
  padding-top: 0; }

.home .content-module {
  margin-bottom: 60px;
  font-size: 1.125rem; }

.error-404 {
  text-align: center; }
  .error-404 .page__header {
    display: inline-block;
    margin: 0 auto; }
    .error-404 .page__header:after {
      display: none; }
  .error-404 .page__desc {
    font-size: 1.1875rem; }
    @media (min-width: 768px) {
      .error-404 .page__desc {
        font-size: 1.3125rem; } }

[data-content="editor"] a {
  background-image: linear-gradient(to right, #2b3034 0%, #2b3034 100%);
  background-repeat: repeat-x;
  background-position: 0 100%;
  background-size: 100% 1px; }
  [data-content="editor"] a:hover, [data-content="editor"] a:focus, [data-content="editor"] a:active {
    color: #5e6367; }
  [data-content="editor"] a > img {
    box-shadow: 0px 5px 0px #fff; }

[data-content="editor"] .gform_fields ul,
[data-content="editor"] .gform_fields ol {
  list-style-type: none;
  margin: 0;
  padding: 0; }

[data-content="editor"] img[class*="align"],
[data-content="editor"] img[class*="wp-image-"] {
  height: auto;
  /* Make sure images with WordPress-added height and width >attributes are scaled correctly */
  width: auto; }

[data-content="editor"] table {
  font-size: 0.9375rem;
  line-height: 1.5;
  border: 0; }
  [data-content="editor"] table td, [data-content="editor"] table th {
    border: 0; }

[data-content="editor"] table.border {
  border-left: 1px solid #c4c9cd;
  border-top: 1px solid #c4c9cd; }
  [data-content="editor"] table.border td, [data-content="editor"] table.border th {
    border-right: 1px solid #c4c9cd;
    border-bottom: 1px solid #c4c9cd; }

.page-template-custom-findcourses {
  padding-top: 80px; }

div[id$="-optin"] {
  height: auto !important;
  max-height: none !important; }
  div[id$="-optin"] div[class$="-form-wrap"] div span {
    word-wrap: break-word !important; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIjMtZ2VuZXJpYy9fbm9ybWFsaXplLnNjc3MiLCJzdHlsZS5jc3MiLCIzLWdlbmVyaWMvX2dsb2JhbC5zY3NzIiwiNC1iYXNlL190eXBvZ3JhcGh5LnNjc3MiLCIxLXNldHRpbmdzL19jb2xvcnMuc2NzcyIsIjEtc2V0dGluZ3MvX3R5cG9ncmFwaHkuc2NzcyIsIjEtc2V0dGluZ3MvX2Z1bmN0aW9ucy5zY3NzIiwiMi10b29scy9fbWVkaWEtcXVlcmllcy5zY3NzIiwiMS1zZXR0aW5ncy9fYW5pbWF0aW9ucy5zY3NzIiwiNC1iYXNlL19hbmltYXRpb25zLnNjc3MiLCI0LWJhc2UvX2Zvcm1zLnNjc3MiLCIyLXRvb2xzL19taXhpbnMuc2NzcyIsIjQtYmFzZS9fbGlzdHMuc2NzcyIsIjEtc2V0dGluZ3MvX21pc2Muc2NzcyIsIjQtYmFzZS9fbWVkaWEuc2NzcyIsIjQtYmFzZS9fdGFibGVzLnNjc3MiLCI1LW9iamVjdHMvX3dyYXBwZXJzLnNjc3MiLCI1LW9iamVjdHMvX2dyaWRzLnNjc3MiLCI1LW9iamVjdHMvX2hlYWRlci5zY3NzIiwiNS1vYmplY3RzL19mb290ZXIuc2NzcyIsIjUtb2JqZWN0cy9fYXJjaGl2ZXMuc2NzcyIsIjUtb2JqZWN0cy9fc2luZ2xlcy5zY3NzIiwiNS1vYmplY3RzL19tYWdhemluZS1zaW5nbGUuc2NzcyIsIjUtb2JqZWN0cy9fd2F0Y2hsaXN0LnNjc3MiLCI1LW9iamVjdHMvX3RvcDIwLnNjc3MiLCI1LW9iamVjdHMvX2N1c3RvbS1zdXBwbGllcnMuc2NzcyIsIjUtb2JqZWN0cy9fY29udGVudC1jb2x1bW5zLnNjc3MiLCI2LWNvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiNi1jb21wb25lbnRzL19idXR0b25zLnNjc3MiLCI2LWNvbXBvbmVudHMvX2ljb25zLnNjc3MiLCI2LWNvbXBvbmVudHMvX3JhdGlvLnNjc3MiLCI2LWNvbXBvbmVudHMvX3BhbmVsLW1lbnUuc2NzcyIsIjYtY29tcG9uZW50cy9fZHJvcGRvd25zLnNjc3MiLCI2LWNvbXBvbmVudHMvX3dpZGdldC5zY3NzIiwiNi1jb21wb25lbnRzL19zd2lwZXIuc2NzcyIsIjYtY29tcG9uZW50cy9fc29jaWFscy5zY3NzIiwiNi1jb21wb25lbnRzL19hZHYtYmxvY2tzLnNjc3MiLCI2LWNvbXBvbmVudHMvX3RpdGxlcy5zY3NzIiwiNi1jb21wb25lbnRzL190aWxlcy5zY3NzIiwiNi1jb21wb25lbnRzL193ZWJpbmFycy5zY3NzIiwiNi1jb21wb25lbnRzL19tZXRhLnNjc3MiLCI2LWNvbXBvbmVudHMvX3RvcGljcy5zY3NzIiwiNi1jb21wb25lbnRzL19jYWxsb3V0cy5zY3NzIiwiNi1jb21wb25lbnRzL19mZWF0dXJlLnNjc3MiLCI2LWNvbXBvbmVudHMvX3Nwb25zb3ItYmFyLnNjc3MiLCI2LWNvbXBvbmVudHMvX2ZpbHRlci5zY3NzIiwiNi1jb21wb25lbnRzL19zb2NpYWwtY2FsbG91dC5zY3NzIiwiNi1jb21wb25lbnRzL190YWdzLnNjc3MiLCI2LWNvbXBvbmVudHMvX2F1dGhvci5zY3NzIiwiNi1jb21wb25lbnRzL19yZWxhdGVkLWNvbnRlbnQuc2NzcyIsIjYtY29tcG9uZW50cy9fcGxhY2Vob2xkZXIuc2NzcyIsIjYtY29tcG9uZW50cy9fcGFnZS1oZWFkZXIuc2NzcyIsIjYtY29tcG9uZW50cy9fcG9zdHR5cGUtY2FsbG91dC5zY3NzIiwiNi1jb21wb25lbnRzL19saXN0aW5ncy5zY3NzIiwiNi1jb21wb25lbnRzL19tYWdhemluZS1pbnRyby5zY3NzIiwiNi1jb21wb25lbnRzL19zZWFyY2gtbWV0YS5zY3NzIiwiNi1jb21wb25lbnRzL19tYWctY29sdW1uLnNjc3MiLCI2LWNvbXBvbmVudHMvX3Byb2dyZXNzLWJhci5zY3NzIiwiNi1jb21wb25lbnRzL19tb2RhbC5zY3NzIiwiNi1jb21wb25lbnRzL19jb21wYW55LnNjc3MiLCI2LWNvbXBvbmVudHMvX3RvcC1jYXRlZ29yaWVzLWxpc3Quc2NzcyIsIjYtY29tcG9uZW50cy9faW5mby1tb2R1bGUuc2NzcyIsIjYtY29tcG9uZW50cy9fdG9jLnNjc3MiLCI2LWNvbXBvbmVudHMvX3dpa2kuc2NzcyIsIjYtY29tcG9uZW50cy9fZmVlZGJhY2suc2NzcyIsIjYtY29tcG9uZW50cy9fc2VwYXJhdG9ycy5zY3NzIiwiNi1jb21wb25lbnRzL19nbG9zc2FyeS5zY3NzIiwiNi1jb21wb25lbnRzL19hZGQtdGhpcy5zY3NzIiwiNi1jb21wb25lbnRzL19nYXRld2F5LnNjc3MiLCI2LWNvbXBvbmVudHMvX2xvYWRpbmcuc2NzcyIsIjYtY29tcG9uZW50cy9fcGRmLWVtYmVkLnNjc3MiLCI2LWNvbXBvbmVudHMvX21vZGFhbC5zY3NzIiwiNi1jb21wb25lbnRzL19iYXNpY3RhYmxlLnNjc3MiLCI2LWNvbXBvbmVudHMvX2xhenlsb2FkLnNjc3MiLCI2LWNvbXBvbmVudHMvX2JhY2suc2NzcyIsIjYtY29tcG9uZW50cy9fbWVudS1hc2lkZS5zY3NzIiwiNi1jb21wb25lbnRzL19vd2wtY2Fyb3VzZWwuc2NzcyIsIjYtY29tcG9uZW50cy9fcHctcHJvdGVjdC1mb3JtLnNjc3MiLCI3LXRydW1wcy9faGVscGVycy5zY3NzIiwiNy10cnVtcHMvX2hvbWVwYWdlLnNjc3MiLCI3LXRydW1wcy9fNDA0LnNjc3MiLCI3LXRydW1wcy9fd3lzaXd5Zy5zY3NzIiwiNy10cnVtcHMvX2ZpbmRjb3Vyc2VzLnNjc3MiLCI3LXRydW1wcy9fb3B0aW5tb25zdGVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEVBQTRFO0FBRTVFOzs7R0FHRztBQUVIO0VBQ0Usd0JBQXdCO0VBQUUsT0FBTztFQUNqQywyQkFBMkI7RUFBRSxPQUFPO0VBQ3BDLCtCQUErQjtFQUFFLE9BQU8sRUFDekM7O0FBRUQ7O0dBRUc7QUFFSDtFQUNFLFVBQVUsRUFDWDs7QUFFRDtnRkFDZ0Y7QUFFaEY7Ozs7R0FJRztBQUVIOzs7Ozs7Ozs7Ozs7RUFXVSxPQUFPO0VBQ2YsZUFBZSxFQUNoQjs7QUFFRDs7R0FFRztBQUVIOzs7O0VBSUUsc0JB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YixpQkFBaUIsRUFDcEI7O0FBN0tUO0VBZ0xRLFVBQVU7RUFDVixpQkFBaUI7RUFDakIsZ0JqQ25IUyxFaUNvSFo7O0FBbkxMO0VBcUxRLG1CQUFtQjtFQUNuQixVQUFVO0VBQ1YsUUFBUTtFQUNSLFlBQVk7RUFDWixhQUFhO0VBQ2IsaUJBQWlCO0VBQ2pCLFdBQVcsRUFvQmQ7RUFuQkc7SUE1TFI7TUE2TFksOEJBQThCO01BQzlCLGNBQWMsRUFpQnJCLEVBQUE7RUEvTUw7SUFrTVksZUFBZTtJQUNmLG1CQUFtQjtJQUNuQixVQUFVLEVBVWI7SXRDNmlJTDtNc0NqaklvQixjbkN6TFEsRW1DMExYO0l0Q2tqSWpCO01zQ25qSW9CLGNuQ3hMUSxFbUN5TFg7SXRDb2pJakI7TXNDcmpJb0IsY25DdExRLEVtQ3VMWDtJdENzaklqQjtNc0N2aklvQixjbkN2TFEsRW1Dd0xYO0l0Q3dqSWpCO01zQ3pqSW9CLGNuQ3JMUSxFbUNzTFg7SXRDMGpJakI7TXNDM2pJb0IsY25DcExRLEVtQ3FMWDtJdEM0aklqQjtNc0M3aklvQixjbkNsTFEsRW1DbUxYO0l0QzhqSWpCO01zQy9qSW9CLGNuQ2hMUSxFbUNpTFg7SXRDZ2tJakI7TXNDamtJb0IsY25DL0tRLEVtQ2dMWDtJdENra0lqQjtNc0Nua0lvQixjbkNqTFEsRW1Da0xYO0l0Q29rSWpCO01zQ3JrSW9CLGNuQzlLUSxFbUMrS1g7SXRDc2tJakI7TXNDdmtJb0IsY25DN0tRLEVtQzhLWDtJdEN3a0lqQjtNc0N6a0lvQixjbkM1S1EsRW1DNktYO0l0QzBrSWpCO01zQzNrSW9CLGNuQzNLUSxFbUM0S1g7SXRDNGtJakI7TXNDN2tJb0IsY25DMUtRLEVtQzJLWDtJdEM4a0lqQjtNc0Mva0lvQixjbkN6S1EsRW1DMEtYOztBQVFyQjtFQUNJLG1CQUFtQjtFQUNuQixzQkFBc0I7RUFDdEIsb0JuQzlNc0IsRW1DdVN6QjtFaEMyUEc7SWdDdlZKO01BTVEsc0JBQXNCLEVBc0Y3QixFQUFBO0VBNUZEO0lBVVEsWW5Ddk5lLEVtQ3dObEI7RUFYTDtJNUI0R0Usc0VBQWlDO0lB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Qjs7QUN2RFQ7RUFFRSxrQkFBa0IsRUFDbkI7O0FDSEQ7RUFDSSx3QkFBd0I7RUFDeEIsNEJBQTRCLEVBSy9CO0VBUEQ7SUFLUSxpQ0FBaUMsRUFDcEMiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohIG5vcm1hbGl6ZS5jc3MgdjQuMS4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gSUUgYW5kIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsIC8qIDEgKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5tYWluLCAvKiAyICovXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkgeyAvKiAxICovXG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbnRlbXBsYXRlLCAvKiAxICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0czsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZS13aWR0aDogMDtcbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICovXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5wcmUsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICovXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250OiBpbmhlcml0OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvbnQgd2VpZ2h0IHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHRleHQgc3R5bGUgb2YgcGxhY2Vob2xkZXJzIGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgb3BhY2l0eTogMC41NDtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59IiwiLyohIG5vcm1hbGl6ZS5jc3MgdjQuMS4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIGFuZCBpT1MuXG4gKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIC8qIDEgKi9cbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xudGVtcGxhdGUsXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmUtd2lkdGg6IDA7IH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAqL1xubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxudGV4dGFyZWEsXG4uZ2lucHV0X2NvbnRhaW5lcl9zZWxlY3Qgc2VsZWN0LFxuLmdpbnB1dF9jb21wbGV4IC5hZGRyZXNzX2NvdW50cnkgc2VsZWN0LFxuLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIHNlbGVjdCxcbi5naW5wdXRfY29udGFpbmVyX211bHRpc2VsZWN0IHNlbGVjdCxcbi5mb3JtLWZpZWxkIHNlbGVjdCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvbnQgd2VpZ2h0IHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5idXR0b24sXG5pbnB1dCxcbnRleHRhcmVhLFxuLmdpbnB1dF9jb250YWluZXJfc2VsZWN0IHNlbGVjdCxcbi5naW5wdXRfY29tcGxleCAuYWRkcmVzc19jb3VudHJ5IHNlbGVjdCxcbi5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3QsXG4uZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCBzZWxlY3QsXG4uZm9ybS1maWVsZCBzZWxlY3Qge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi8gfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICovXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGFuZCBjYW5jZWwgYnV0dG9ucyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgdGV4dCBzdHlsZSBvZiBwbGFjZWhvbGRlcnMgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgb3BhY2l0eTogMC41NDsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuaHRtbCxcbmJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuICBib2R5ICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuYm9keSB7XG4gIGNvbG9yOiAjMWExYTFhO1xuICBmb250LWZhbWlseTogXCJHb3RoYW0gU1NtIEFcIiwgXCJHb3RoYW0gU1NtIEJcIiwgXCJHb3RoYW1cIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImtlcm5cIiwgXCJsaWdhXCIsIFwicG51bVwiO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMTZlbTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGZvbnQtZmFtaWx5OiBcIkdvdGhhbSBTU20gQVwiLCBcIkdvdGhhbSBTU20gQlwiLCBcIkdvdGhhbVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW46IDEuNWVtIDAgMWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbmgxIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDQ4ZW07IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMy44NzVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDYyZW07IH0gfVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzMmVtO1xuICBmb250LXdlaWdodDogNDAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDQ4ZW07IH0gfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyOGVtO1xuICBmb250LXdlaWdodDogMzAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDMyZW07IH0gfVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDI0ZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMjhlbTsgfSB9XG5cbmg1IHtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMjFlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgaDUge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDI0ZW07IH0gfVxuXG5oNiB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDE5ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIGg2IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyMWVtOyB9IH1cblxucCB7XG4gIG1hcmdpbjogMCAwIDEuNWVtOyB9XG5cbmEge1xuICBjb2xvcjogIzFhMWExYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAxMjVtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9XG5cbmhyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlM2U4ZWE7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci10b3A6IDA7XG4gIG1hcmdpbjogMS41ZW0gMDsgfVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZSB7XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGRhc2gge1xuICAwJSB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMSwgMTUwO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwOyB9XG4gIDUwJSB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogOTAsIDE1MDtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogLTM1OyB9XG4gIDEwMCUge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDkwLCAxNTA7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0xMjQ7IH0gfVxuXG5mb3JtIHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sIHRleHRhcmVhW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiwgLmdpbnB1dF9jb250YWluZXJfc2VsZWN0IHNlbGVjdFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sIC5naW5wdXRfY29tcGxleCAuYWRkcmVzc19jb3VudHJ5IHNlbGVjdFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3RbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLCAuZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCBzZWxlY3RbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLCAuZm9ybS1maWVsZCBzZWxlY3RbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxudGV4dGFyZWFbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuLmdpbnB1dF9jb250YWluZXJfc2VsZWN0IHNlbGVjdFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXG4uZ2lucHV0X2NvbXBsZXggLmFkZHJlc3NfY291bnRyeSBzZWxlY3RbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIHNlbGVjdFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXG4uZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCBzZWxlY3RbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxuLmZvcm0tZmllbGQgc2VsZWN0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbWFyZ2luOiAwOyB9XG5cbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIC8qIENocm9tZS9PcGVyYS9TYWZhcmkgKi9cbiAgY29sb3I6ICM5MTk2OWE7IH1cblxuOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgLyogRmlyZWZveCAxOSsgKi9cbiAgY29sb3I6ICM5MTk2OWE7IH1cblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIC8qIElFIDEwKyAqL1xuICBjb2xvcjogIzkxOTY5YTsgfVxuXG46LW1vei1wbGFjZWhvbGRlciB7XG4gIC8qIEZpcmVmb3ggMTgtICovXG4gIGNvbG9yOiAjOTE5NjlhOyB9XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5bdHlwZT1cInN1Ym1pdFwiXSxcblt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSxcbiAgICBbdHlwZT1cImJ1dHRvblwiXSB7XG4gICAgICB3aWR0aDogYXV0bzsgfSB9XG5cbmlucHV0LCB0ZXh0YXJlYSwgLmdpbnB1dF9jb250YWluZXJfc2VsZWN0IHNlbGVjdCwgLmdpbnB1dF9jb21wbGV4IC5hZGRyZXNzX2NvdW50cnkgc2VsZWN0LCAuY2xlYXItbXVsdGkgLmdmaWVsZF90aW1lX2FtcG0gc2VsZWN0LCAuZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCBzZWxlY3QsIC5mb3JtLWZpZWxkIHNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjNGM5Y2Q7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIDEyNW1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSksIGJveC1zaGFkb3cgMTI1bXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTsgfVxuICBpbnB1dDpmb2N1cywgdGV4dGFyZWE6Zm9jdXMsIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCBzZWxlY3Q6Zm9jdXMsIC5naW5wdXRfY29tcGxleCAuYWRkcmVzc19jb3VudHJ5IHNlbGVjdDpmb2N1cywgLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIHNlbGVjdDpmb2N1cywgLmdpbnB1dF9jb250YWluZXJfbXVsdGlzZWxlY3Qgc2VsZWN0OmZvY3VzLCAuZm9ybS1maWVsZCBzZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzVlNjM2NztcbiAgICBvdXRsaW5lOiAwOyB9XG5cbnRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmdmb3JtX3dyYXBwZXIge1xuICBtYXgtd2lkdGg6IDQwcmVtOyB9XG5cbi5nZm9ybV90aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07IH1cblxuLmdmb3JtX2Rlc2NyaXB0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0LjVyZW0gMCAyLjI1cmVtO1xuICBjb2xvcjogIzkxOTY5YTsgfVxuICAuZ2Zvcm1fZGVzY3JpcHRpb246YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMi4zNzVyZW07XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMi43NXJlbTtcbiAgICBoZWlnaHQ6IDAuMjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzkxOTY5YTsgfVxuXG4uZ3NlY3Rpb25fdGl0bGUge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMjBweDsgfVxuXG4uZ2lucHV0X2NvbnRhaW5lcl9kYXRlIH4gLmdmaWVsZF9kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLmdmb3JtX2Zvb3RlciB7XG4gIG1hcmdpbi10b3A6IDIuMjVyZW07IH1cbiAgLmdmb3JtX2Zvb3RlciBmb3JtIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG5cbi5nZm9ybV9maWVsZHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAuZ2Zvcm1fZmllbGRzIGxpIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI2cHgpIHtcbiAgICAgIC5nZm9ybV9maWVsZHMgbGkuc3Bhbi1oYWxmIHtcbiAgICAgICAgd2lkdGg6IDQ4JTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjZweCkge1xuICAgICAgLmdmb3JtX2ZpZWxkcyBsaS5zcGFuLXRoaXJkIHtcbiAgICAgICAgd2lkdGg6IDMxJTsgfSB9XG4gICAgLmdmb3JtX2ZpZWxkcyBsaS5hZHZhbmNlZC1zZWFyY2hfX3NlbGVjdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MXB4KSB7XG4gICAgICAgIC5nZm9ybV9maWVsZHMgbGkuYWR2YW5jZWQtc2VhcmNoX19zZWxlY3Qge1xuICAgICAgICAgIHdpZHRoOiAzMCU7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMzQxcHgpIHtcbiAgICAgIC5nZm9ybV9maWVsZHMgbGkuYWR2YW5jZWQtc2VhcmNoX19pbnB1dCB7XG4gICAgICAgIHdpZHRoOiA2NSU7IH0gfVxuICAgIC5nZm9ybV9maWVsZHMgbGkuYWR2YW5jZWQtc2VhcmNoX19pbnB1dCBsYWJlbCB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLmdmaWVsZCB7XG4gIG1hcmdpbi1ib3R0b206IDE4cHg7IH1cblxuLmFkdmFuY2VkLXNlYXJjaF93cmFwcGVyIC5nZmllbGQge1xuICBwYWRkaW5nOiAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZ2ZpZWxkX3JlcXVpcmVkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG4udmFsaWRhdGlvbl9lcnJvciB7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIG1hcmdpbjogMCAwIDIuMjVyZW07XG4gIGJhY2tncm91bmQ6IHJnYmEoMTY2LCAyNSwgNDYsIDAuMjUpO1xuICBjb2xvcjogI2E2MTkyZTtcbiAgYm9yZGVyOiAxcHggZG90dGVkICNhNjE5MmU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLmdmaWVsZF9kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjNWU2MzY3O1xuICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9XG4gIC5nZmllbGRfZGVzY3JpcHRpb24udmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGNvbG9yOiAjYTYxOTJlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICBib3JkZXI6IDA7IH1cblxuLmdmaWVsZF9sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgY29sb3I6ICM1ZTYzNjc7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLmdmaWVsZF9lcnJvciAuZ2ZpZWxkX2xhYmVsIHtcbiAgICBjb2xvcjogI2E2MTkyZTsgfVxuXG4uZ2lucHV0X2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4uZ2Zvcm1fZHJvcF9hcmVhIHtcbiAgcGFkZGluZzogMi4yNXJlbTtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gZGFzaGVkICM1ZTYzNjc7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZ2Zvcm1fZHJvcF9hcmVhIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMTI1cmVtOyB9XG5cbi5nZmllbGRfbGlzdF9jb250YWluZXIgLmdmaWVsZF9saXN0X2dyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuZ2ZpZWxkX2xpc3RfY29udGFpbmVyIC5nZmllbGRfbGlzdF9ncm91cDpob3ZlciB0ZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmdmaWVsZF9saXN0X2NvbnRhaW5lciAuZ2ZpZWxkX2xpc3RfY2VsbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIuNzVyZW07XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgZmxleC1ncm93OiAyOyB9XG5cbi5nZmllbGRfbGlzdF9jb250YWluZXIgLmdmaWVsZF9saXN0X2ljb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAyLjc1cmVtO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7IH1cbiAgLmdmaWVsZF9saXN0X2NvbnRhaW5lciAuZ2ZpZWxkX2xpc3RfaWNvbnMgaW1nIHtcbiAgICBtYXJnaW4tbGVmdDogMC41NjI1cmVtOyB9XG4gIC5nZmllbGRfbGlzdF9jb250YWluZXIgLmdmaWVsZF9saXN0X2ljb25zIGltZzpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuMTI1cmVtOyB9XG5cbi5naW5wdXRfY29tcGxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5naW5wdXRfY29tcGxleCBsYWJlbCB7XG4gICAgbWFyZ2luLXRvcDogMC41NjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBjb2xvcjogIzVlNjM2NzsgfVxuICAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9mdWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9sZWZ0LFxuICAuZ2lucHV0X2NvbXBsZXggLm5hbWVfZmlyc3QsXG4gIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X3JpZ2h0LFxuICAuZ2lucHV0X2NvbXBsZXggLm5hbWVfbGFzdCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5naW5wdXRfY29tcGxleCAuZ2lucHV0X2xlZnQsXG4gICAgICAuZ2lucHV0X2NvbXBsZXggLm5hbWVfZmlyc3QsXG4gICAgICAuZ2lucHV0X2NvbXBsZXggLmdpbnB1dF9yaWdodCxcbiAgICAgIC5naW5wdXRfY29tcGxleCAubmFtZV9sYXN0IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7IH0gfVxuXG4uY2xlYXItbXVsdGkge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5jbGVhci1tdWx0aSBsYWJlbCB7XG4gICAgbWFyZ2luLXRvcDogMC41NjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBjb2xvcjogIzkxOTY5YTsgfVxuICAuY2xlYXItbXVsdGkgaSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC40Mzc1cmVtO1xuICAgIHJpZ2h0OiAtMC43NXJlbTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7IH1cbiAgLmNsZWFyLW11bHRpID4gZGl2IHtcbiAgICBtYXJnaW4tbGVmdDogMS41cmVtOyB9XG4gIC5jbGVhci1tdWx0aSA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmNsZWFyLW11bHRpIC5naW5wdXRfY29udGFpbmVyX3RpbWUge1xuICAgIGhlaWdodDogNDRweDtcbiAgICB3aWR0aDogNzVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuY2xlYXItbXVsdGkgLmdpbnB1dF9jb250YWluZXJfdGltZSBpbnB1dCwgLmNsZWFyLW11bHRpIC5naW5wdXRfY29udGFpbmVyX3RpbWUgdGV4dGFyZWEsIC5jbGVhci1tdWx0aSAuZ2lucHV0X2NvbnRhaW5lcl90aW1lIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCBzZWxlY3QsIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCAuY2xlYXItbXVsdGkgLmdpbnB1dF9jb250YWluZXJfdGltZSBzZWxlY3QsIC5jbGVhci1tdWx0aSAuZ2lucHV0X2NvbnRhaW5lcl90aW1lIC5naW5wdXRfY29tcGxleCAuYWRkcmVzc19jb3VudHJ5IHNlbGVjdCwgLmdpbnB1dF9jb21wbGV4IC5hZGRyZXNzX2NvdW50cnkgLmNsZWFyLW11bHRpIC5naW5wdXRfY29udGFpbmVyX3RpbWUgc2VsZWN0LCAuY2xlYXItbXVsdGkgLmdpbnB1dF9jb250YWluZXJfdGltZSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3QsIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSAuZ2lucHV0X2NvbnRhaW5lcl90aW1lIHNlbGVjdCwgLmNsZWFyLW11bHRpIC5naW5wdXRfY29udGFpbmVyX3RpbWUgLmdpbnB1dF9jb250YWluZXJfbXVsdGlzZWxlY3Qgc2VsZWN0LCAuZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCAuY2xlYXItbXVsdGkgLmdpbnB1dF9jb250YWluZXJfdGltZSBzZWxlY3QsIC5jbGVhci1tdWx0aSAuZ2lucHV0X2NvbnRhaW5lcl90aW1lIC5mb3JtLWZpZWxkIHNlbGVjdCwgLmZvcm0tZmllbGQgLmNsZWFyLW11bHRpIC5naW5wdXRfY29udGFpbmVyX3RpbWUgc2VsZWN0LCAuY2xlYXItbXVsdGkgLmdpbnB1dF9jb250YWluZXJfdGltZSBzZWxlY3Qge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMC4zMTI1cmVtO1xuICAgICAgYm90dG9tOiAwOyB9XG4gICAgLmNsZWFyLW11bHRpIC5naW5wdXRfY29udGFpbmVyX3RpbWUgbGFiZWwge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMS44NzVyZW07XG4gICAgICBsZWZ0OiAxLjEyNXJlbTtcbiAgICAgIG1hcmdpbjogMDsgfVxuXG4uZ2ZfY2xlYXIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29udGFpbmVyIGlucHV0LCAuZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29udGFpbmVyIHRleHRhcmVhLCAuZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29udGFpbmVyIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCBzZWxlY3QsIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCAuZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29udGFpbmVyIHNlbGVjdCwgLmdmaWVsZF9lcnJvciAuZ2lucHV0X2NvbnRhaW5lciAuZ2lucHV0X2NvbXBsZXggLmFkZHJlc3NfY291bnRyeSBzZWxlY3QsIC5naW5wdXRfY29tcGxleCAuYWRkcmVzc19jb3VudHJ5IC5nZmllbGRfZXJyb3IgLmdpbnB1dF9jb250YWluZXIgc2VsZWN0LCAuZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29udGFpbmVyIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3QsIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSAuZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29udGFpbmVyIHNlbGVjdCwgLmdmaWVsZF9lcnJvciAuZ2lucHV0X2NvbnRhaW5lciAuZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCBzZWxlY3QsIC5naW5wdXRfY29udGFpbmVyX211bHRpc2VsZWN0IC5nZmllbGRfZXJyb3IgLmdpbnB1dF9jb250YWluZXIgc2VsZWN0LCAuZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29udGFpbmVyIC5mb3JtLWZpZWxkIHNlbGVjdCwgLmZvcm0tZmllbGQgLmdmaWVsZF9lcnJvciAuZ2lucHV0X2NvbnRhaW5lciBzZWxlY3Qge1xuICBib3JkZXItY29sb3I6ICNhNjE5MmU7IH1cblxuLmdpbnB1dF9jb250YWluZXJfc2VsZWN0LCAuZ2lucHV0X2NvbXBsZXggLmFkZHJlc3NfY291bnRyeSwgLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdDpiZWZvcmUsIC5naW5wdXRfY29tcGxleCAuYWRkcmVzc19jb3VudHJ5OmJlZm9yZSwgLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtOmJlZm9yZSB7XG4gICAgY29udGVudDogdXJsKC4uL2Fzc2V0cy9pbWcvaWNvbnMvaV9kb3duLWFycm93LnN2Zyk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIGhlaWdodDogMnB4OyB9XG4gIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCBzZWxlY3QsIC5naW5wdXRfY29tcGxleCAuYWRkcmVzc19jb3VudHJ5IHNlbGVjdCwgLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIHNlbGVjdCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBvdmVyZmxvdzogZWxsaXBzaXM7IH1cbiAgICAuZ2lucHV0X2NvbnRhaW5lcl9zZWxlY3Qgc2VsZWN0OjotbXMtZXhwYW5kLCAuZ2lucHV0X2NvbXBsZXggLmFkZHJlc3NfY291bnRyeSBzZWxlY3Q6Oi1tcy1leHBhbmQsIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4uZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCBzZWxlY3Qge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogMTsgfVxuICAgIC5naW5wdXRfY29udGFpbmVyX211bHRpc2VsZWN0IHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5naW5wdXRfY29udGFpbmVyX211bHRpc2VsZWN0IG9wdGlvbiB7XG4gICAgcGFkZGluZzogMTBweDsgfVxuXG4uZ2ZpZWxkX3JhZGlvIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmdmaWVsZF9yYWRpbyBsaSB7XG4gICAgbWFyZ2luOiAwIDAgMTZweDsgfVxuICAuZ2ZpZWxkX3JhZGlvIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMTAwMDBweDtcbiAgICB0b3A6IGF1dG87XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAgIC5nZmllbGRfcmFkaW8gW3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMjBweCAyMHB4IDIwcHggNjBweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjNGM5Y2Q7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5nZmllbGRfcmFkaW8gW3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiB1cmwoLi4vYXNzZXRzL2ltZy9pY29ucy9pX3NlbGVjdGlvbi5zdmcpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBsZWZ0OiAyMHB4O1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDEyNW1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cbiAgICAuZ2ZpZWxkX3JhZGlvIFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpob3ZlcjpiZWZvcmUge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDE5NiwgMjAxLCAyMDUsIDAuNSk7IH1cbiAgICAuZ2ZpZWxkX3JhZGlvIFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6ICM1ZTYzNjc7IH1cbiAgICAuZ2ZpZWxkX3JhZGlvIFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzhmZDFjMztcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTQzLCAyMDksIDE5NSwgMC4xKTsgfVxuICAgIC5nZmllbGRfcmFkaW8gW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybCguLi9hc3NldHMvaW1nL2ljb25zL2lfc2VsZWN0aW9uLXJhZGlvLnN2Zyk7IH1cblxuLmdmaWVsZF9jaGVja2JveCB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5nZmllbGRfY2hlY2tib3ggbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDhweDsgfVxuICAuZ2ZpZWxkX2NoZWNrYm94IFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMTAwMDBweDtcbiAgICB0b3A6IGF1dG87XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAgIC5nZmllbGRfY2hlY2tib3ggW3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDYwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYzRjOWNkO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZ2ZpZWxkX2NoZWNrYm94IFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpiZWZvcmUge1xuICAgICAgY29udGVudDogdXJsKC4uL2Fzc2V0cy9pbWcvaWNvbnMvaV9zZWxlY3Rpb24uc3ZnKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgbGVmdDogMjBweDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAxMjVtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9XG4gICAgLmdmaWVsZF9jaGVja2JveCBbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6aG92ZXI6YmVmb3JlIHtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDAuMjVyZW0gcmdiYSgxOTYsIDIwMSwgMjA1LCAwLjUpOyB9XG4gICAgLmdmaWVsZF9jaGVja2JveCBbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNWU2MzY3OyB9XG4gICAgLmdmaWVsZF9jaGVja2JveCBbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICBib3JkZXItY29sb3I6ICM4ZmQxYzM7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDE0MywgMjA5LCAxOTUsIDAuMSk7IH1cbiAgICAuZ2ZpZWxkX2NoZWNrYm94IFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiB1cmwoLi4vYXNzZXRzL2ltZy9pY29ucy9pX3NlbGVjdGlvbi1jaGVjay5zdmcpOyB9XG5cbi5mb3JtIC5lcnJvcnMge1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBtYXJnaW46IDAgMCAyLjI1cmVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDE2NiwgMjUsIDQ2LCAwLjI1KTtcbiAgY29sb3I6ICNmMjZhMzY7XG4gIGJvcmRlcjogMXB4IGRvdHRlZCAjYTYxOTJlO1xuICBmb250LXdlaWdodDogNTAwOyB9XG5cbi5mb3JtIC5lcnJvciB7XG4gIGNvbG9yOiAjYTYxOTJlO1xuICBmb250LXdlaWdodDogNTAwOyB9XG5cbi5mb3JtLWZpZWxkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCAwIDlweDsgfVxuICAuZm9ybS1maWVsZC5wZC1jaGVja2JveCB7XG4gICAgbGluZS1oZWlnaHQ6IDA7IH1cbiAgLmZvcm0tZmllbGQgKiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmZvcm0tZmllbGQgbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGNvbG9yOiAjNWU2MzY3O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLmZvcm0tZmllbGQgc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZm9ybS1maWVsZC5lbWFpbCBpbnB1dCwgLmZvcm0tZmllbGQuZW1haWwgdGV4dGFyZWEsIC5mb3JtLWZpZWxkLmVtYWlsIHNlbGVjdCwgLmZvcm0tZmllbGQucGQtZW1haWwgaW5wdXQsIC5mb3JtLWZpZWxkLnBkLWVtYWlsIHRleHRhcmVhLCAuZm9ybS1maWVsZC5wZC1lbWFpbCBzZWxlY3Qge1xuICAgIHBhZGRpbmc6IDE3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuZm9ybS1maWVsZC5wZC1jaGVja2JveCAudmFsdWUgc3BhbiB7XG4gICAgbWFyZ2luOiAwIDEwcHggMCAwOyB9XG4gIC5mb3JtLWZpZWxkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSwgLmZvcm0tZmllbGQgdGV4dGFyZWFbdHlwZT1cImNoZWNrYm94XCJdLCAuZm9ybS1maWVsZCBzZWxlY3RbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTEwMDAwcHg7XG4gICAgdG9wOiBhdXRvO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgICAuZm9ybS1maWVsZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCwgLmZvcm0tZmllbGQgdGV4dGFyZWFbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwsIC5mb3JtLWZpZWxkIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCBzZWxlY3RbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwsIC5mb3JtLWZpZWxkIC5naW5wdXRfY29tcGxleCAuYWRkcmVzc19jb3VudHJ5IHNlbGVjdFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCwgLmZvcm0tZmllbGQgLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIHNlbGVjdFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCwgLmZvcm0tZmllbGQgLmdpbnB1dF9jb250YWluZXJfbXVsdGlzZWxlY3Qgc2VsZWN0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsLCAuZm9ybS1maWVsZCBzZWxlY3RbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMjBweCAyMHB4IDIwcHggNjBweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBmb250LXdlaWdodDogMjAwO1xuICAgICAgYm9yZGVyOiAwcHg7IH1cbiAgICAuZm9ybS1maWVsZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpiZWZvcmUsIC5mb3JtLWZpZWxkIHRleHRhcmVhW3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmJlZm9yZSwgLmZvcm0tZmllbGQgLmdpbnB1dF9jb250YWluZXJfc2VsZWN0IHNlbGVjdFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpiZWZvcmUsIC5mb3JtLWZpZWxkIC5naW5wdXRfY29tcGxleCAuYWRkcmVzc19jb3VudHJ5IHNlbGVjdFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpiZWZvcmUsIC5mb3JtLWZpZWxkIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3RbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6YmVmb3JlLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCBzZWxlY3RbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6YmVmb3JlLCAuZm9ybS1maWVsZCBzZWxlY3RbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybCguLi9hc3NldHMvaW1nL2ljb25zL2lfc2VsZWN0aW9uLnN2Zyk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMTI1bXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTsgfVxuICAgIC5mb3JtLWZpZWxkIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmhvdmVyOmJlZm9yZSwgLmZvcm0tZmllbGQgdGV4dGFyZWFbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6aG92ZXI6YmVmb3JlLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9zZWxlY3Qgc2VsZWN0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmhvdmVyOmJlZm9yZSwgLmZvcm0tZmllbGQgLmdpbnB1dF9jb21wbGV4IC5hZGRyZXNzX2NvdW50cnkgc2VsZWN0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmhvdmVyOmJlZm9yZSwgLmZvcm0tZmllbGQgLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIHNlbGVjdFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpob3ZlcjpiZWZvcmUsIC5mb3JtLWZpZWxkIC5naW5wdXRfY29udGFpbmVyX211bHRpc2VsZWN0IHNlbGVjdFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpob3ZlcjpiZWZvcmUsIC5mb3JtLWZpZWxkIHNlbGVjdFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpob3ZlcjpiZWZvcmUge1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMC4yNXJlbSByZ2JhKDE5NiwgMjAxLCAyMDUsIDAuNSk7IH1cbiAgICAuZm9ybS1maWVsZCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpob3ZlciwgLmZvcm0tZmllbGQgdGV4dGFyZWFbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6aG92ZXIsIC5mb3JtLWZpZWxkIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCBzZWxlY3RbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6aG92ZXIsIC5mb3JtLWZpZWxkIC5naW5wdXRfY29tcGxleCAuYWRkcmVzc19jb3VudHJ5IHNlbGVjdFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpob3ZlciwgLmZvcm0tZmllbGQgLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIHNlbGVjdFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbDpob3ZlciwgLmZvcm0tZmllbGQgLmdpbnB1dF9jb250YWluZXJfbXVsdGlzZWxlY3Qgc2VsZWN0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsOmhvdmVyLCAuZm9ybS1maWVsZCBzZWxlY3RbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNWU2MzY3OyB9XG4gICAgLmZvcm0tZmllbGQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbCwgLmZvcm0tZmllbGQgdGV4dGFyZWFbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbCwgLmZvcm0tZmllbGQgLmdpbnB1dF9jb250YWluZXJfc2VsZWN0IHNlbGVjdFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbXBsZXggLmFkZHJlc3NfY291bnRyeSBzZWxlY3RbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbCwgLmZvcm0tZmllbGQgLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIHNlbGVjdFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCBzZWxlY3RbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbCwgLmZvcm0tZmllbGQgc2VsZWN0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjOGZkMWMzO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgxNDMsIDIwOSwgMTk1LCAwLjEpOyB9XG4gICAgLmZvcm0tZmllbGQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsIC5mb3JtLWZpZWxkIHRleHRhcmVhW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9zZWxlY3Qgc2VsZWN0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbXBsZXggLmFkZHJlc3NfY291bnRyeSBzZWxlY3RbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsIC5mb3JtLWZpZWxkIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3RbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsIC5mb3JtLWZpZWxkIC5naW5wdXRfY29udGFpbmVyX211bHRpc2VsZWN0IHNlbGVjdFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSwgLmZvcm0tZmllbGQgc2VsZWN0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybCguLi9hc3NldHMvaW1nL2ljb25zL2lfc2VsZWN0aW9uLWNoZWNrLnN2Zyk7IH1cbiAgLmZvcm0tZmllbGQucGQtcmFkaW8gLnZhbHVlIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCAwIDE2cHg7IH1cbiAgLmZvcm0tZmllbGQgaW5wdXRbdHlwZT1cInJhZGlvXCJdLCAuZm9ybS1maWVsZCB0ZXh0YXJlYVt0eXBlPVwicmFkaW9cIl0sIC5mb3JtLWZpZWxkIHNlbGVjdFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMTAwMDBweDtcbiAgICB0b3A6IGF1dG87XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAgIC5mb3JtLWZpZWxkIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsLCAuZm9ybS1maWVsZCB0ZXh0YXJlYVt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCwgLmZvcm0tZmllbGQgLmdpbnB1dF9jb250YWluZXJfc2VsZWN0IHNlbGVjdFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCwgLmZvcm0tZmllbGQgLmdpbnB1dF9jb21wbGV4IC5hZGRyZXNzX2NvdW50cnkgc2VsZWN0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsLCAuZm9ybS1maWVsZCAuY2xlYXItbXVsdGkgLmdmaWVsZF90aW1lX2FtcG0gc2VsZWN0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCBzZWxlY3RbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwsIC5mb3JtLWZpZWxkIHNlbGVjdFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDYwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYzRjOWNkO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuZm9ybS1maWVsZCBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpiZWZvcmUsIC5mb3JtLWZpZWxkIHRleHRhcmVhW3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOmJlZm9yZSwgLmZvcm0tZmllbGQgLmdpbnB1dF9jb250YWluZXJfc2VsZWN0IHNlbGVjdFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpiZWZvcmUsIC5mb3JtLWZpZWxkIC5naW5wdXRfY29tcGxleCAuYWRkcmVzc19jb3VudHJ5IHNlbGVjdFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpiZWZvcmUsIC5mb3JtLWZpZWxkIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3RbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6YmVmb3JlLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCBzZWxlY3RbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6YmVmb3JlLCAuZm9ybS1maWVsZCBzZWxlY3RbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybCguLi9hc3NldHMvaW1nL2ljb25zL2lfc2VsZWN0aW9uLnN2Zyk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMTI1bXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTsgfVxuICAgIC5mb3JtLWZpZWxkIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOmhvdmVyOmJlZm9yZSwgLmZvcm0tZmllbGQgdGV4dGFyZWFbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6aG92ZXI6YmVmb3JlLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9zZWxlY3Qgc2VsZWN0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOmhvdmVyOmJlZm9yZSwgLmZvcm0tZmllbGQgLmdpbnB1dF9jb21wbGV4IC5hZGRyZXNzX2NvdW50cnkgc2VsZWN0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOmhvdmVyOmJlZm9yZSwgLmZvcm0tZmllbGQgLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIHNlbGVjdFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpob3ZlcjpiZWZvcmUsIC5mb3JtLWZpZWxkIC5naW5wdXRfY29udGFpbmVyX211bHRpc2VsZWN0IHNlbGVjdFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpob3ZlcjpiZWZvcmUsIC5mb3JtLWZpZWxkIHNlbGVjdFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpob3ZlcjpiZWZvcmUge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDE5NiwgMjAxLCAyMDUsIDAuNSk7IH1cbiAgICAuZm9ybS1maWVsZCBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpob3ZlciwgLmZvcm0tZmllbGQgdGV4dGFyZWFbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6aG92ZXIsIC5mb3JtLWZpZWxkIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCBzZWxlY3RbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6aG92ZXIsIC5mb3JtLWZpZWxkIC5naW5wdXRfY29tcGxleCAuYWRkcmVzc19jb3VudHJ5IHNlbGVjdFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpob3ZlciwgLmZvcm0tZmllbGQgLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIHNlbGVjdFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpob3ZlciwgLmZvcm0tZmllbGQgLmdpbnB1dF9jb250YWluZXJfbXVsdGlzZWxlY3Qgc2VsZWN0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOmhvdmVyLCAuZm9ybS1maWVsZCBzZWxlY3RbdHlwZT1cInJhZGlvXCJdICsgbGFiZWw6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNWU2MzY3OyB9XG4gICAgLmZvcm0tZmllbGQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbCwgLmZvcm0tZmllbGQgdGV4dGFyZWFbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbCwgLmZvcm0tZmllbGQgLmdpbnB1dF9jb250YWluZXJfc2VsZWN0IHNlbGVjdFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbXBsZXggLmFkZHJlc3NfY291bnRyeSBzZWxlY3RbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbCwgLmZvcm0tZmllbGQgLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIHNlbGVjdFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCBzZWxlY3RbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbCwgLmZvcm0tZmllbGQgc2VsZWN0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWwge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjOGZkMWMzO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgxNDMsIDIwOSwgMTk1LCAwLjEpOyB9XG4gICAgLmZvcm0tZmllbGQgaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsIC5mb3JtLWZpZWxkIHRleHRhcmVhW3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbnRhaW5lcl9zZWxlY3Qgc2VsZWN0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlLCAuZm9ybS1maWVsZCAuZ2lucHV0X2NvbXBsZXggLmFkZHJlc3NfY291bnRyeSBzZWxlY3RbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsIC5mb3JtLWZpZWxkIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3RbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsIC5mb3JtLWZpZWxkIC5naW5wdXRfY29udGFpbmVyX211bHRpc2VsZWN0IHNlbGVjdFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSwgLmZvcm0tZmllbGQgc2VsZWN0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybCguLi9hc3NldHMvaW1nL2ljb25zL2lfc2VsZWN0aW9uLXJhZGlvLnN2Zyk7IH1cbiAgLmZvcm0tZmllbGQgc2VsZWN0IHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiA0NXB4OyB9XG4gIC5mb3JtLWZpZWxkIC5zdWJtaXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuZm9ybS1maWVsZCAuZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgICAuZm9ybS1maWVsZCAuZGVzY3JpcHRpb24gYSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMyYjMwMzQgMCUsICMyYjMwMzQgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4OyB9XG4gICAgICAuZm9ybS1maWVsZCAuZGVzY3JpcHRpb24gYTpob3ZlciwgLmZvcm0tZmllbGQgLmRlc2NyaXB0aW9uIGE6Zm9jdXMsIC5mb3JtLWZpZWxkIC5kZXNjcmlwdGlvbiBhOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjNWU2MzY3OyB9XG5cbnVsLFxub2wge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICBbZGF0YS1jb250ZW50PVwiZWRpdG9yXCJdIHVsOm5vdCguZ2Zvcm1fZmllbGRzKSB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNWVtOyB9XG4gIFtkYXRhLWNvbnRlbnQ9XCJlZGl0b3JcIl0gb2wge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1ZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVlbTsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVlbTsgfVxuICBkbCBkdCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLXRvcDogMC43NWVtOyB9XG4gIGRsIGRkIHtcbiAgICBtYXJnaW46IDA7IH1cblxuaW1nLFxucGljdHVyZSB7XG4gIG1hcmdpbjogMDtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5maWdjYXB0aW9uIHtcbiAgcGFkZGluZzogMTBweCAwIDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjNWU2MzY3O1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuaWZyYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEyODBweDtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IFwia2VyblwiLCBcImxpZ2FcIiwgXCJ0bnVtXCI7XG4gIG1hcmdpbjogMCAwIDEuNWVtO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjNGM5Y2Q7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2M0YzljZDsgfVxuXG50aCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYzRjOWNkO1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbnRkIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2M0YzljZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjNGM5Y2Q7XG4gIHBhZGRpbmc6IDEwcHg7IH1cblxudHIsXG50ZCxcbnRoIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uaGVhZGVyLWNvbnRhaW5lcixcbi5jb250ZW50LWNvbnRhaW5lcixcbi5mb290ZXItY29udGFpbmVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTsgfVxuICAuaGVhZGVyLWNvbnRhaW5lcjphZnRlcixcbiAgLmNvbnRlbnQtY29udGFpbmVyOmFmdGVyLFxuICAuZm9vdGVyLWNvbnRhaW5lcjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4ud3JhcHBlciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgMzBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDEyNW1zIDEyNW1zOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gIC53cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAwIDMwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAud3JhcHBlciB7XG4gICAgcGFkZGluZzogMCA2MHB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC53cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAwIDYwcHg7IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSBhbmQgKG1heC13aWR0aDogMTMzOXB4KSB7XG4gIC53cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAwIDYwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgLndyYXBwZXIge1xuICAgICAgbWF4LXdpZHRoOiAxMjgwcHg7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgIC53cmFwcGVyLS1mdWxsIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgMTAwcHg7IH0gfVxuXG4uY29udGFpbmVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDAgLTEwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMjBweDsgfSB9XG5cbi5zaXRlLWNvbnRlbnQucHVzaGVkIHtcbiAgbWFyZ2luLXRvcDogMTAwcHg7IH1cblxuLmdyaWQge1xuICB3aWR0aDogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDAgLTEwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MXB4KSB7XG4gICAgLmdyaWQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlM2U4ZWE7IH1cbiAgICAgIC5ncmlkOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXI6IDA7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgLmdyaWQge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMjBweDsgfSB9XG4gIC5ncmlkX19oZWFkZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoIDEwMCUgLSAyMHB4KTtcbiAgICBtYXgtd2lkdGg6IGNhbGMoIDEwMCUgLSAyMHB4KTtcbiAgICBtYXJnaW46IDAgMTBweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2MzlweCkge1xuICAgICAgLmdyaWRfX2hlYWRlciB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuZ3JpZF9faGVhZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtOyB9IH1cbiAgICAuZ3JpZF9faGVhZGVyLS10b3BpYyB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKCAxMDAlIC0gMjBweCk7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoIDEwMCUgLSAyMHB4KTtcbiAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgICAgICAgLmdyaWRfX2hlYWRlci0tdG9waWMge1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbjogMDsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLmdyaWRfX2hlYWRlci0tdG9waWMge1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoIDEwMCUgLSA0MHB4KTtcbiAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoIDEwMCUgLSA0MHB4KTtcbiAgICAgICAgICBtYXJnaW46IDAgMjBweDtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgbWluLWhlaWdodDogODVweDsgfSB9XG4gIC5ncmlkX19pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogY2FsYyggMTAwJSAtIDFlbSk7XG4gICAgbWF4LXdpZHRoOiBjYWxjKCAxMDAlIC0gMWVtKTtcbiAgICBtYXJnaW46IDAgMC41ZW0gMWVtOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gICAgICAuZ3JpZF9faXRlbSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTNlOGVhOyB9XG4gICAgICAgIC5ncmlkX19jb250YWluZXItLXRvcGljcyAuZ3JpZF9faXRlbSB7XG4gICAgICAgICAgYm9yZGVyOiAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5ncmlkX19pdGVtW2RhdGEtc2l6ZT1cIjFcIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoIDUwJSAtIDIwcHgpO1xuICAgIG1heC13aWR0aDogY2FsYyggNTAlIC0gMjBweCk7XG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5ncmlkX19pdGVtW2RhdGEtc2l6ZT1cIjFcIl06bGFzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDMwcHg7XG4gICAgICBib3R0b206IDMwcHg7XG4gICAgICBsZWZ0OiAtMTBweDtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTNlOGVhOyB9XG4gICAgW2RhdGEtY29scz1cIjRcIl0gLmdyaWRfX2l0ZW1bZGF0YS1zaXplPVwiMVwiXTpudGgtY2hpbGQoZXZlbik6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAzMHB4O1xuICAgICAgYm90dG9tOiAzMHB4O1xuICAgICAgbGVmdDogLTEwcHg7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgYmFja2dyb3VuZDogI2UzZThlYTsgfVxuICAgIFtkYXRhLWNvbHM9XCI0XCJdIC5ncmlkX19pdGVtW2RhdGEtc2l6ZT1cIjFcIl06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlM2U4ZWE7IH1cbiAgICBbZGF0YS1jb2xzPVwiNFwiXSAuZ3JpZF9faXRlbVtkYXRhLXNpemU9XCIxXCJdOm50aC1jaGlsZCgyKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UzZThlYTsgfVxuICAgICAgW2RhdGEtY29scz1cIjRcIl0gLmdyaWRfX2l0ZW1bZGF0YS1zaXplPVwiMVwiXTpudGgtY2hpbGQoMik6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IC0xcHg7XG4gICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLSAxcHgpO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlM2U4ZWE7IH1cbiAgLmdyaWRfX2l0ZW1bZGF0YS1zaXplPVwiMlwiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogY2FsYyggMTAwJSAtIDIwcHgpO1xuICAgIG1heC13aWR0aDogY2FsYyggMTAwJSAtIDIwcHgpO1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTNlOGVhOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkgYW5kIChtYXgtd2lkdGg6IDEzMzlweCkge1xuICAuZ3JpZF9faXRlbVtkYXRhLXNpemU9XCIxXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKCAyNSUgLSAyMHB4KTtcbiAgICBtYXgtd2lkdGg6IGNhbGMoIDI1JSAtIDIwcHgpO1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIG1heC13aWR0aDogY2FsYygyNSUgLSAyMHB4KTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAuZ3JpZF9faXRlbVtkYXRhLXNpemU9XCIxXCJdOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMzBweDtcbiAgICAgIGJvdHRvbTogMzBweDtcbiAgICAgIGxlZnQ6IC0xMHB4O1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIGJhY2tncm91bmQ6ICNlM2U4ZWE7IH1cbiAgICAuZ3JpZF9faXRlbVtkYXRhLXNpemU9XCIxXCJdOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5ncmlkX19pdGVtW2RhdGEtc2l6ZT1cIjJcIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoIDUwJSAtIDIwcHgpO1xuICAgIG1heC13aWR0aDogY2FsYyggNTAlIC0gMjBweCk7XG4gICAgbWFyZ2luOiAwIDEwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMzQwcHgpIHtcbiAgICAgIC5ncmlkX19pdGVtW2RhdGEtc2l6ZT1cIjFcIl0ge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKCAyNSUgLSA0MHB4KTtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKCAyNSUgLSA0MHB4KTtcbiAgICAgICAgbWFyZ2luOiAwIDIwcHg7XG4gICAgICAgIG1heC13aWR0aDogY2FsYygyNSUgLSA0MHB4KTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgICAuZ3JpZF9faXRlbVtkYXRhLXNpemU9XCIxXCJdOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgICBib3R0b206IDMwcHg7XG4gICAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTNlOGVhOyB9XG4gICAgICAgIC5ncmlkX19pdGVtW2RhdGEtc2l6ZT1cIjFcIl06Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuZ3JpZF9faXRlbVtkYXRhLXNpemU9XCIyXCJdIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgZmxleC1iYXNpczogY2FsYyggNTAlIC0gNDBweCk7XG4gICAgICAgIG1heC13aWR0aDogY2FsYyggNTAlIC0gNDBweCk7XG4gICAgICAgIG1hcmdpbjogMCAyMHB4OyB9IH1cblxuLmdyaWQtLXRvcGljcy1jb2xzIC5ncmlkX19oZWFkZXItLXRvcGljIHtcbiAgZmxleDogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLXRvcDogMzBweDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgICAuZ3JpZC0tdG9waWNzLWNvbHMgLmdyaWRfX2hlYWRlci0tdG9waWMge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlM2U4ZWE7IH0gfVxuXG4uc2l0ZV9fYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDYwcHg7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjYzRjOWNkO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB6LWluZGV4OiAxMDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgIC5zaXRlX19iYXIge1xuICAgICAgaGVpZ2h0OiA4MHB4OyB9IH1cbiAgLnNpdGVfX2JhciA+IFtkYXRhLWl0ZW1+PVwiZmxleFwiXSB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cblxuLnNpdGVfX2JyYW5kaW5nIHtcbiAgb3JkZXI6IDI7IH1cbiAgLnNpdGVfX2JyYW5kaW5nIC5zaXRlX190aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMDsgfVxuICAgIC5zaXRlX19icmFuZGluZyAuc2l0ZV9fdGl0bGUgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMzdweDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2Fzc2V0cy9pbWcvbG9nb3MvdGktbG9nby1zdGFja2VkLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTM3cHggNjBweDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgICAgICAuc2l0ZV9fYnJhbmRpbmcgLnNpdGVfX3RpdGxlIGEge1xuICAgICAgICAgIHdpZHRoOiAxODJweDtcbiAgICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxODJweCA4MHB4OyB9IH1cblxuLnRvZ2dsZV9fbWVudSB7XG4gIG9yZGVyOiAxO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHdpZHRoOiA1MHB4O1xuICBmb250LXNpemU6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudG9nZ2xlX19tZW51OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgLnRvZ2dsZV9fbWVudTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgLnRvZ2dsZV9fbWVudSB7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogNjVweDsgfSB9XG4gIC50b2dnbGVfX21lbnUgPiBzcGFuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgY29sb3I6ICMyYjMwMzQ7XG4gICAgbWFyZ2luOiAtNXB4IDAgMCAtMTBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMTI1bXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnRvZ2dsZV9fbWVudSA+IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtOyB9IH1cbiAgICAudG9nZ2xlX19tZW51ID4gc3BhbjpiZWZvcmUsIC50b2dnbGVfX21lbnUgPiBzcGFuOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDEyNW1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cbiAgICAudG9nZ2xlX19tZW51ID4gc3BhbjpiZWZvcmUge1xuICAgICAgdG9wOiAxNSU7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzJiMzAzNDtcbiAgICAgIHdpZHRoOiAxNXB4OyB9XG4gICAgLnRvZ2dsZV9fbWVudSA+IHNwYW46YWZ0ZXIge1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICMyYjMwMzQ7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzJiMzAzNDsgfVxuICAudG9nZ2xlX19tZW51OmhvdmVyID4gc3BhbjpiZWZvcmUge1xuICAgIHdpZHRoOiAyMHB4OyB9XG4gIC50b2dnbGVfX21lbnVbYXJpYS1wcmVzc2VkPVwidHJ1ZVwiXSA+IHNwYW46YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJiMzAzNDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgdG9wOiAzMCU7IH1cbiAgLnRvZ2dsZV9fbWVudVthcmlhLXByZXNzZWQ9XCJ0cnVlXCJdID4gc3BhbjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0b3A6IDMwJTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJiMzAzNDtcbiAgICBoZWlnaHQ6IDJweDsgfVxuXG4uc2l0ZV9fcGFnZS10aXRsZSB7XG4gIG9yZGVyOiAzO1xuICBmbGV4LWdyb3c6IDE7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgIC5zaXRlX19wYWdlLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4MCUpO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEyNW1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSksIG9wYWNpdHkgMTI1bXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTsgfVxuICAgICAgLnNpdGVfX3BhZ2UtdGl0bGUuc2hvdy10aXRsZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfSB9XG5cbi5zdWJzY3JpYmVfX2J0biB7XG4gIG9yZGVyOiA1O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMjVweCAzMHB4OyB9XG4gIC5zdWJzY3JpYmVfX2J0biAuc3Vic2NyaWJlX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1NThjO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuc3Vic2NyaWJlX19idG4gLnN1YnNjcmliZV9fbGluayB7XG4gICAgICB3aWR0aDogaW5pdGlhbDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMzQwcHgpIHtcbiAgICAuc3Vic2NyaWJlX19idG4ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgICAgLnN1YnNjcmliZV9fYnRuIC5zdWJzY3JpYmVfX2xpbmsge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgLnN1YnNjcmliZV9fYnRuLS1tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5zdWJzY3JpYmVfX2J0bi0tZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMzQwcHgpIHtcbiAgICAgIC5zdWJzY3JpYmVfX2J0bi0tZGVza3RvcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLnRvZ2dsZV9fc2VhcmNoIHtcbiAgb3JkZXI6IDY7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGhlaWdodDogNTBweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGZvbnQtc2l6ZTogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC50b2dnbGVfX3NlYXJjaDpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIC50b2dnbGVfX3NlYXJjaDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgLnRvZ2dsZV9fc2VhcmNoIHtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIHdpZHRoOiA2MHB4OyB9IH1cbiAgLnRvZ2dsZV9fc2VhcmNoIHN2ZyxcbiAgLnRvZ2dsZV9fc2VhcmNoIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxMjVtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9XG4gIC50b2dnbGVfX3NlYXJjaCAuY2xvc2Utc2VhcmNoIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IC0xOyB9XG4gIC50b2dnbGVfX3NlYXJjaFthcmlhLXByZXNzZWQ9XCJ0cnVlXCJdIC5vcGVuLXNlYXJjaCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB6LWluZGV4OiAtMTsgfVxuICAudG9nZ2xlX19zZWFyY2hbYXJpYS1wcmVzc2VkPVwidHJ1ZVwiXSAuY2xvc2Utc2VhcmNoIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDE7IH1cblxuLnBhbmVsX19zZWFyY2gsXG4ucGFuZWxfX21lbnUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogNjBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDYwcHgpO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogLTE7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxMjVtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCB6LWluZGV4IDEyNW1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgIC5wYW5lbF9fc2VhcmNoLFxuICAgIC5wYW5lbF9fbWVudSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA4MHB4KTtcbiAgICAgIHRvcDogODBweDsgfSB9XG4gIC5wYW5lbF9fc2VhcmNoW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdLFxuICAucGFuZWxfX21lbnVbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgei1pbmRleDogOTA7XG4gICAgcG9pbnRlci1ldmVudHM6IGluaXRpYWw7IH1cblxuLnBhbmVsX19tZW51IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogNjBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnBhbmVsX19tZW51IHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpO1xuICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7IH0gfVxuICAucGFuZWxfX21lbnVbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjYzRjOWNkOyB9XG5cbi5wYW5lbF9fc2VhcmNoIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHg7IH1cbiAgLnBhbmVsX19zZWFyY2ggLnNlYXJjaC1mb3JtIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5wYW5lbF9fc2VhcmNoIC5zZWFyY2gtZm9ybV9fbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAwOyB9XG4gICAgLnBhbmVsX19zZWFyY2ggLnNlYXJjaC1mb3JtX19pbnB1dCB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA2NGVtOyB9XG4gICAgICAucGFuZWxfX3NlYXJjaCAuc2VhcmNoLWZvcm1fX2lucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgb3BhY2l0eTogLjI7IH1cbiAgICAgIC5wYW5lbF9fc2VhcmNoIC5zZWFyY2gtZm9ybV9faW5wdXQ6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgIG9wYWNpdHk6IC4yOyB9XG4gICAgICAucGFuZWxfX3NlYXJjaCAuc2VhcmNoLWZvcm1fX2lucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgb3BhY2l0eTogLjI7IH1cbiAgICAgIC5wYW5lbF9fc2VhcmNoIC5zZWFyY2gtZm9ybV9faW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgb3BhY2l0eTogLjI7IH1cbiAgICAgIC5wYW5lbF9fc2VhcmNoIC5zZWFyY2gtZm9ybV9faW5wdXQ6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIG9wYWNpdHk6IC4yOyB9XG4gICAgICAucGFuZWxfX3NlYXJjaCAuc2VhcmNoLWZvcm1fX2lucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgICAgIG9wYWNpdHk6IC4yOyB9XG4gICAgICAucGFuZWxfX3NlYXJjaCAuc2VhcmNoLWZvcm1fX2lucHV0OmFjdGl2ZSwgLnBhbmVsX19zZWFyY2ggLnNlYXJjaC1mb3JtX19pbnB1dDpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAucGFuZWxfX3NlYXJjaCAuc2VhcmNoLWZvcm1fX2lucHV0IHtcbiAgICAgICAgICBmb250LXNpemU6IDZyZW07IH0gfVxuICAgIC5wYW5lbF9fc2VhcmNoIC5zZWFyY2gtZm9ybV9fc3VibWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuYm9keS5maXhlZCB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG4uZm9vdGVyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDYwcHggMCAzMHB4O1xuICBiYWNrZ3JvdW5kOiAjMmIzMDM0O1xuICBjb2xvcjogI2ZmZjsgfVxuICAuZm9vdGVyLWNvbnRhaW5lcl9fd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAuZm9vdGVyLWNvbnRhaW5lcl9fd3JhcCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH0gfVxuXG4uZm9vdGVyLWJyYW5kIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5mb290ZXItYnJhbmQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBmbGV4LWJhc2lzOiA0NSU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmZvb3Rlci1icmFuZCB7XG4gICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICBmbGV4LXNocmluazogMTtcbiAgICAgIGZsZXgtYmFzaXM6IDI4MHB4O1xuICAgICAgb3JkZXI6IDE7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDExNTBweCkge1xuICAgIC5mb290ZXItYnJhbmQge1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBmbGV4LWJhc2lzOiAyMDBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMzQwcHgpIHtcbiAgICAuZm9vdGVyLWJyYW5kIHtcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgZmxleC1iYXNpczogMzUwcHg7IH0gfVxuICAuZm9vdGVyLWJyYW5kX19sb2dvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTg1cHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBtYXJnaW46IDAgYXV0byAzMHB4O1xuICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2Fzc2V0cy9pbWcvbG9nb3MvdGktbG9nby1zdGFja2VkLS1pbnZlcnNlLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5mb290ZXItYnJhbmRfX2xvZ28ge1xuICAgICAgICBtYXJnaW46IDAgMCAzMHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgICAuZm9vdGVyLWJyYW5kX19sb2dvIHtcbiAgICAgICAgd2lkdGg6IDMzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2Fzc2V0cy9pbWcvbG9nb3MvdGktbG9nby1ob3Jpem9udGFsLS1pbnZlcnNlLnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJTsgfSB9XG4gIC5mb290ZXItYnJhbmRfX3RhZ2xpbmUge1xuICAgIG1hcmdpbjogMDsgfVxuXG4uZm9vdGVyLW1hZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIG1hcmdpbjogMCAwIDUwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmZvb3Rlci1tYWcge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBmbGV4LWJhc2lzOiA0NSU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmZvb3Rlci1tYWcge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBmbGV4LWJhc2lzOiAyNTBweDtcbiAgICAgIG9yZGVyOiA1O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMzQwcHgpIHtcbiAgICAuZm9vdGVyLW1hZyB7XG4gICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICBmbGV4LXNocmluazogMTtcbiAgICAgIGZsZXgtYmFzaXM6IDMwMHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDExNTBweCkge1xuICAgIC5mb290ZXItbWFnIHtcbiAgICAgIG9yZGVyOiAzOyB9IH1cbiAgLmZvb3Rlci1tYWdfX2xpbmsge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNWU2MzY3OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDExNTBweCkge1xuICAgICAgLmZvb3Rlci1tYWdfX2xpbmsge1xuICAgICAgICBib3JkZXI6IDA7IH0gfVxuICAuZm9vdGVyLW1hZ19faGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gIC5mb290ZXItbWFnX19pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG5cbmRpdi5zb2NpYWxzLS1mb290ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICBkaXYuc29jaWFscy0tZm9vdGVyIHtcbiAgICAgIG1hcmdpbjogNTBweCBhdXRvO1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBmbGV4LWJhc2lzOiAyNjBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICBkaXYuc29jaWFscy0tZm9vdGVyIHtcbiAgICAgIG9yZGVyOiAzO1xuICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDExNTBweCkge1xuICAgIGRpdi5zb2NpYWxzLS1mb290ZXIge1xuICAgICAgb3JkZXI6IDQ7XG4gICAgICBtYXJnaW46IDA7IH0gfVxuXG4uZm9vdGVyX19sZWdhbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmZvb3Rlcl9fbGVnYWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgd2lkdGg6IDU1JTtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICBvcmRlcjogNDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMTUwcHgpIHtcbiAgICAuZm9vdGVyX19sZWdhbCB7XG4gICAgICBvcmRlcjogNTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzVlNjM2NzsgfSB9XG5cbi5mb290ZXJfX25hdixcbi5sZWdhbF9fbmF2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5mb290ZXJfX25hdiAubWVudS1pdGVtLFxuICAubGVnYWxfX25hdiAubWVudS1pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5mb290ZXJfX25hdiAubWVudS1pdGVtID4gYSxcbiAgICAubGVnYWxfX25hdiAubWVudS1pdGVtID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDA7XG4gICAgICBjb2xvcjogI2YwZjVmNztcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNWU2MzY3O1xuICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDEyNW1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSksIGNvbG9yIDEyNW1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cbiAgICAgIC5mb290ZXJfX25hdiAubWVudS1pdGVtID4gYTpob3ZlciwgLmZvb3Rlcl9fbmF2IC5tZW51LWl0ZW0gPiBhOmFjdGl2ZSxcbiAgICAgIC5sZWdhbF9fbmF2IC5tZW51LWl0ZW0gPiBhOmhvdmVyLFxuICAgICAgLmxlZ2FsX19uYXYgLm1lbnUtaXRlbSA+IGE6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgICAuZm9vdGVyX19uYXYgLm1lbnUtaXRlbSA+IGEsXG4gICAgICAgIC5sZWdhbF9fbmF2IC5tZW51LWl0ZW0gPiBhIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH0gfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICAuZm9vdGVyX19uYXYgLm1lbnUtaXRlbSA+IGE6YmVmb3JlLCAuZm9vdGVyX19uYXYgLm1lbnUtaXRlbSA+IGE6YWZ0ZXIsXG4gICAgICAgIC5sZWdhbF9fbmF2IC5tZW51LWl0ZW0gPiBhOmJlZm9yZSxcbiAgICAgICAgLmxlZ2FsX19uYXYgLm1lbnUtaXRlbSA+IGE6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICByaWdodDogNHB4O1xuICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVkoNHB4KTsgfVxuICAgICAgICAuZm9vdGVyX19uYXYgLm1lbnUtaXRlbSA+IGE6YWZ0ZXIsXG4gICAgICAgIC5sZWdhbF9fbmF2IC5tZW51LWl0ZW0gPiBhOmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWSgtNHB4KTsgfSB9XG5cbi5mb290ZXJfX25hdiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5mb290ZXJfX25hdiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgZmxleC1iYXNpczogMTUwcHg7XG4gICAgICBvcmRlcjogMjsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgLmxlZ2FsX19uYXYge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMTtcbiAgICBmbGV4LWJhc2lzOiA2MCU7XG4gICAgb3JkZXI6IDI7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAubGVnYWxfX25hdiAubWVudS1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gICAgICAubGVnYWxfX25hdiAubWVudS1pdGVtID4gYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjb2xvcjogI2M0YzljZDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAgICAgLmxlZ2FsX19uYXYgLm1lbnUtaXRlbSA+IGE6aG92ZXIsIC5sZWdhbF9fbmF2IC5tZW51LWl0ZW0gPiBhOmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH0gfVxuXG4uY29weXJpZ2h0IHtcbiAgbWFyZ2luOiA1MHB4IDAgMDtcbiAgY29sb3I6ICNjNGM5Y2Q7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5jb3B5cmlnaHQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBmbGV4LWJhc2lzOiAzNSU7XG4gICAgICBvcmRlcjogMTsgfSB9XG5cbi5hcmNoaXZlX19sYXlvdXQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMCAtMTBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmFyY2hpdmVfX2xheW91dCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIG1hcmdpbjogMCAtMzBweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLmFyY2hpdmVfX2xpc3Qge1xuICAgIG9yZGVyOiAyOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAuYXJjaGl2ZV9fbGlzdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogY2FsYyggNzUlIC0gNjBweCk7XG4gICAgbWF4LXdpZHRoOiBjYWxjKCA3NSUgLSA2MHB4KTtcbiAgICBtYXJnaW46IDAgMzBweCA2MHB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuYXJjaGl2ZV9fYXNpZGUge1xuICAgIG9yZGVyOiAxOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAuYXJjaGl2ZV9fYXNpZGUge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoIDI1JSAtIDYwcHgpO1xuICAgIG1heC13aWR0aDogY2FsYyggMjUlIC0gNjBweCk7XG4gICAgbWFyZ2luOiAwIDMwcHggNjBweDsgfSB9XG5cbi5zaW5nbGVfX2NvbnRlbnQge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA2MjBweDsgfVxuICAuc2luZ2xlX19jb250ZW50LS1wdWxsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgICAuc2luZ2xlX19jb250ZW50LS1wdWxsIHtcbiAgICAgICAgbWFyZ2luOiAwIC0xMTBweCA2MHB4IDA7IH0gfVxuICAuc2luZ2xlX19jb250ZW50LmFydGljbGVzIHtcbiAgICBtYXgtd2lkdGg6IDgwMHB4OyB9XG4gICAgLnNpbmdsZV9fY29udGVudC5hcnRpY2xlcyAuc2luZ2xlX19maWd1cmUtLWZlYXR1cmVkIHtcbiAgICAgIG1hcmdpbjogMzBweCBhdXRvIDMwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5zaW5nbGVfX2NvbnRlbnQtLWZ1bGwge1xuICAgICAgbWF4LXdpZHRoOiA4NSU7IH0gfVxuXG4uc2luZ2xlIC5wYWdlX19oZWFkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5zaW5nbGVfX2ZpZ3VyZSB7XG4gIG1hcmdpbjogMzBweCBhdXRvIDMwcHg7IH1cbiAgLnNpbmdsZV9fZmlndXJlLS1mZWF0dXJlZCB7XG4gICAgbWFyZ2luOiAwIC0zMHB4IDMwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgICAgIC5zaW5nbGVfX2ZpZ3VyZS0tZmVhdHVyZWQge1xuICAgICAgICBtYXJnaW46IDAgLTYwcHggNjBweDsgfSB9XG4gICAgLnNpbmdsZV9fZmlndXJlLS1mZWF0dXJlZCBmaWdjYXB0aW9uIHtcbiAgICAgIG1hcmdpbjogMCAzMHB4IDA7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAgICAgICAuc2luZ2xlX19maWd1cmUtLWZlYXR1cmVkIGZpZ2NhcHRpb24ge1xuICAgICAgICAgIG1hcmdpbjogMCA2MHB4IDA7IH0gfVxuXG4uc2luZ2xlX19jb250ZW50IHtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyOyB9XG5cbi5tYWdhemluZS1zaW5nbGUtLXBvcnRyYWl0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDMwcHg7IH1cbiAgLm1hZ2F6aW5lLXNpbmdsZS0tcG9ydHJhaXQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgLm1hZ2F6aW5lLXNpbmdsZS0tcG9ydHJhaXQge1xuICAgICAgcGFkZGluZzogMCA2MHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5tYWdhemluZS1zaW5nbGUtLXBvcnRyYWl0IHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAubWFnYXppbmUtc2luZ2xlLS1wb3J0cmFpdCAubWFnYXppbmUtc2luZ2xlX19mZWF0dXJlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgICAgLm1hZ2F6aW5lLXNpbmdsZS0tcG9ydHJhaXQgLm1hZ2F6aW5lLXNpbmdsZV9fZmVhdHVyZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDczM3B4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cbiAgICAgICAgLm1hZ2F6aW5lLXNpbmdsZS0tcG9ydHJhaXQgLm1hZ2F6aW5lLXNpbmdsZV9fZmVhdHVyZS5zY3JvbGwge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgYm90dG9tOiAtMjAwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMzQwcHgpIHtcbiAgICAubWFnYXppbmUtc2luZ2xlLS1wb3J0cmFpdCAubWFnYXppbmUtc2luZ2xlX19jb250ZW50IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luOiAwIDAgMCA0MCU7XG4gICAgICB3aWR0aDogNjAlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDE3MzBweCkge1xuICAgIC5tYWdhemluZS1zaW5nbGUtLXBvcnRyYWl0IC5tYWdhemluZS1zaW5nbGVfX2NvbnRlbnQge1xuICAgICAgbWFyZ2luOiAwIDAgMCA4NTBweDtcbiAgICAgIHdpZHRoOiA3NTBweDsgfSB9XG4gIC5tYWdhemluZS1zaW5nbGUtLXBvcnRyYWl0IC5tYWdhemluZS1zaW5nbGVfX2NvbnRlbnQgLnNpbmdsZV9fY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7IH1cbiAgLm1hZ2F6aW5lLXNpbmdsZS0tcG9ydHJhaXQgLm1hZ2F6aW5lLXNpbmdsZV9fY29udGVudCAuaGVhZGVyX19hZHYgKyAuc2luZ2xlX19jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMzQwcHgpIHtcbiAgICAubWFnYXppbmUtc2luZ2xlLS1wb3J0cmFpdCAuc2luZ2xlX19maWd1cmUtLWZlYXR1cmVkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubWFnYXppbmUtc2luZ2xlLS1sYW5kc2NhcGUge1xuICBwYWRkaW5nOiAwIDMwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgLm1hZ2F6aW5lLXNpbmdsZS0tbGFuZHNjYXBlIHtcbiAgICAgIHBhZGRpbmc6IDAgNjBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAubWFnYXppbmUtc2luZ2xlLS1sYW5kc2NhcGUge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG4gIC5tYWdhemluZS1zaW5nbGUtLWxhbmRzY2FwZSAubWFnYXppbmUtc2luZ2xlX19mZWF0dXJlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgICAgLm1hZ2F6aW5lLXNpbmdsZS0tbGFuZHNjYXBlIC5tYWdhemluZS1zaW5nbGVfX2ZlYXR1cmUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA2NTBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gICAgICAgIC5tYWdhemluZS1zaW5nbGUtLWxhbmRzY2FwZSAubWFnYXppbmUtc2luZ2xlX19mZWF0dXJlW2RhdGEtdGhlbWU9XCJkYXJrXCJdOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20ocmdiYSgyNiwgMjYsIDI2LCAwKSksIHRvKCMxYTFhMWEpKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDI2LCAyNiwgMjYsIDApIDAlLCAjMWExYTFhIDEwMCUpO1xuICAgICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDAxYTFhMWEnLCBlbmRDb2xvcnN0cj0nIzFhMWExYScsR3JhZGllbnRUeXBlPTAgKTsgfVxuICAgICAgICAubWFnYXppbmUtc2luZ2xlLS1sYW5kc2NhcGUgLm1hZ2F6aW5lLXNpbmdsZV9fZmVhdHVyZVtkYXRhLXRoZW1lPVwiZGFya1wiXSAudG9waWMgYSxcbiAgICAgICAgLm1hZ2F6aW5lLXNpbmdsZS0tbGFuZHNjYXBlIC5tYWdhemluZS1zaW5nbGVfX2ZlYXR1cmVbZGF0YS10aGVtZT1cImRhcmtcIl0gLnRpdGxlLS1zaW5nbGUsXG4gICAgICAgIC5tYWdhemluZS1zaW5nbGUtLWxhbmRzY2FwZSAubWFnYXppbmUtc2luZ2xlX19mZWF0dXJlW2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5tZXRhLFxuICAgICAgICAubWFnYXppbmUtc2luZ2xlLS1sYW5kc2NhcGUgLm1hZ2F6aW5lLXNpbmdsZV9fZmVhdHVyZVtkYXRhLXRoZW1lPVwiZGFya1wiXSAubWV0YSBhIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICAubWFnYXppbmUtc2luZ2xlLS1sYW5kc2NhcGUgLm1hZ2F6aW5lLXNpbmdsZV9fZmVhdHVyZVtkYXRhLXRoZW1lPVwiZGFya1wiXSAudG9waWMgYSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjOTE5NjlhIDAlLCAjOTE5NjlhIDEwMCUpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDFweDsgfVxuICAgICAgICAubWFnYXppbmUtc2luZ2xlLS1sYW5kc2NhcGUgLm1hZ2F6aW5lLXNpbmdsZV9fZmVhdHVyZVtkYXRhLXRoZW1lPVwiZGFya1wiXSAucGFnZV9faGVhZGVyOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gICAgICAgIC5tYWdhemluZS1zaW5nbGUtLWxhbmRzY2FwZSAubWFnYXppbmUtc2luZ2xlX19mZWF0dXJlW2RhdGEtdGhlbWU9XCJsaWdodFwiXTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKHJnYmEoMjQwLCAyNDUsIDI0NywgMCkpLCB0bygjZjBmNWY3KSk7XG4gICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNDAsIDI0NSwgMjQ3LCAwKSAwJSwgI2YwZjVmNyAxMDAlKTtcbiAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwMWExYTFhJywgZW5kQ29sb3JzdHI9JyMxYTFhMWEnLEdyYWRpZW50VHlwZT0wICk7IH1cbiAgICAgICAgLm1hZ2F6aW5lLXNpbmdsZS0tbGFuZHNjYXBlIC5tYWdhemluZS1zaW5nbGVfX2ZlYXR1cmVbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5tZXRhLFxuICAgICAgICAubWFnYXppbmUtc2luZ2xlLS1sYW5kc2NhcGUgLm1hZ2F6aW5lLXNpbmdsZV9fZmVhdHVyZVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLm1ldGEgYSB7XG4gICAgICAgICAgY29sb3I6ICMyYjMwMzQ7IH1cbiAgICAgICAgLm1hZ2F6aW5lLXNpbmdsZS0tbGFuZHNjYXBlIC5tYWdhemluZS1zaW5nbGVfX2ZlYXR1cmVbZGF0YS1zdHlsZT1cIm5vLWdyYWRpZW50XCJdOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLm1hZ2F6aW5lLXNpbmdsZS0tbGFuZHNjYXBlIC5tYWdhemluZS1zaW5nbGVfX2ZlYXR1cmUgLnBhZ2VfX2hlYWRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICB3aWR0aDogODUwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHotaW5kZXg6IDU7IH1cbiAgICAgICAgICAubWFnYXppbmUtc2luZ2xlLS1sYW5kc2NhcGUgLm1hZ2F6aW5lLXNpbmdsZV9fZmVhdHVyZSAucGFnZV9faGVhZGVyOmFmdGVyIHtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9IH1cbiAgLm1hZ2F6aW5lLXNpbmdsZS0tbGFuZHNjYXBlIC5tYWdhemluZS1zaW5nbGVfX2NvbnRlbnQgLnNpbmdsZV9fY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7IH1cbiAgLm1hZ2F6aW5lLXNpbmdsZS0tbGFuZHNjYXBlIC5tYWdhemluZS1zaW5nbGVfX2NvbnRlbnQgLmhlYWRlcl9fYWR2ICsgLnNpbmdsZV9fY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgLm1hZ2F6aW5lLXNpbmdsZS0tbGFuZHNjYXBlIC5zaW5nbGVfX2ZpZ3VyZS0tZmVhdHVyZWQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMzQwcHgpIHtcbiAgICAubWFnYXppbmUtc2luZ2xlLS1sYW5kc2NhcGUgLnBhZ2VfX2hlYWRlci5oaWRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4udmlldy0tbW9iaWxlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgIC52aWV3LS1tb2JpbGUge1xuICAgICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaGVpZ2h0OiAwcHg7XG4gICAgICB3aWR0aDogMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMzQwcHgpIHtcbiAgLmZvb3Rlcl9fYWR2LnBvcy1yIHtcbiAgICBtYXJnaW4tbGVmdDogNDAlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE3MzBweCkge1xuICAuZm9vdGVyX19hZHYucG9zLXIge1xuICAgIG1hcmdpbi1sZWZ0OiA4NTBweDtcbiAgICB3aWR0aDogNzUwcHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLndhdGNobGlzdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDAgLTEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgIC53YXRjaGxpc3RfX2l0ZW0ge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgZmxleC1iYXNpczogY2FsYyggNTAlIC0gMWVtKTtcbiAgICAgIG1heC13aWR0aDogY2FsYyggNTAlIC0gMWVtKTtcbiAgICAgIG1hcmdpbjogMCAwLjVlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTNlOGVhOyB9XG4gICAgICAud2F0Y2hsaXN0X19pdGVtOm50aC1jaGlsZChldmVuKTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDMwcHg7XG4gICAgICAgIGJvdHRvbTogMzBweDtcbiAgICAgICAgbGVmdDogLTEwcHg7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlM2U4ZWE7IH1cbiAgICAgIC53YXRjaGxpc3RfX2l0ZW06bnRoLWNoaWxkKGV2ZW4pID4gLnJhdGlvLWdyaWRfX2l0ZW0tY29udGVudDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtIDFweCk7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2UzZThlYTsgfVxuICAgIC53YXRjaGxpc3RfX2NvbXBhbnkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTk5OTllbTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH0gfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLndhdGNobGlzdCB7XG4gICAgbWFyZ2luOiAwIDAgMzBweDsgfVxuICAgIC53YXRjaGxpc3QgLnJhdGlvLWdyaWRfX2l0ZW06YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC53YXRjaGxpc3QgLnJhdGlvLWdyaWRfX2l0ZW0tY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAud2F0Y2hsaXN0IC53YXRjaGxpc3RfX2l0ZW0ge1xuICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlM2U4ZWE7IH1cbiAgICAud2F0Y2hsaXN0IC53YXRjaGxpc3RfX2NvbXBhbnkge1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxODBweCk7IH1cbiAgICAud2F0Y2hsaXN0IC53YXRjaGxpc3RfX2xvZ28ge1xuICAgICAgd2lkdGg6IDE4MHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UzZThlYTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDsgfSB9XG5cbi53YXRjaGxpc3QtbG9nbyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAud2F0Y2hsaXN0LWxvZ28gPiBpbWcge1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbi50b3AtY29tcGFuaWVzX19sb2dvIHtcbiAgcGFkZGluZzogMjBweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnRvcC1jb21wYW5pZXMge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAwIC0xMHB4OyB9XG4gICAgLnRvcC1jb21wYW5pZXNfX2l0ZW0ge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgZmxleC1iYXNpczogY2FsYyggNTAlIC0gMjBweCk7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoIDUwJSAtIDIwcHgpO1xuICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UzZThlYTsgfVxuICAgICAgLnRvcC1jb21wYW5pZXNfX2l0ZW06bnRoLWNoaWxkKGV2ZW4pOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgYm90dG9tOiAzMHB4O1xuICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2UzZThlYTsgfVxuICAgICAgLnRvcC1jb21wYW5pZXNfX2l0ZW06bnRoLWNoaWxkKGV2ZW4pID4gLnJhdGlvLWdyaWRfX2l0ZW0tY29udGVudDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtIDFweCk7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2UzZThlYTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wLWNvbXBhbmllcyB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDAgLTEwcHg7IH1cbiAgICAudG9wLWNvbXBhbmllc19faXRlbSB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKCAzMy4zMzMzMzMzMzMzJSAtIDIwcHgpO1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKCAzMy4zMzMzMzMzMzMzJSAtIDIwcHgpO1xuICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgICAudG9wLWNvbXBhbmllc19faXRlbTpudGgtY2hpbGQoMSkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICB3aWR0aDogY2FsYygzMy4zMyUgLSAxMHB4KTsgfVxuICAgICAgLnRvcC1jb21wYW5pZXNfX2l0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDIxNXB4O1xuICAgICAgICByaWdodDogLTEwcHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDEwcHgpOyB9XG4gICAgLnRvcC1jb21wYW5pZXNfX2xvZ28ge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2UzZThlYTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAxMjVtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9XG4gICAgICAudG9wLWNvbXBhbmllc19fbG9nbzpob3ZlciwgLnRvcC1jb21wYW5pZXNfX2xvZ286Zm9jdXMsIC50b3AtY29tcGFuaWVzX19sb2dvOmFjdGl2ZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzJiMzAzNDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMzQwcHgpIHtcbiAgLnRvcC1jb21wYW5pZXNfX2l0ZW0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoIDI1JSAtIDIwcHgpO1xuICAgIG1heC13aWR0aDogY2FsYyggMjUlIC0gMjBweCk7XG4gICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIC50b3AtY29tcGFuaWVzX19pdGVtOm50aC1jaGlsZCgxKSB7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogY2FsYygyNSUgLSA1cHgpO1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMTVweCk7IH1cbiAgICAudG9wLWNvbXBhbmllc19faXRlbTpudGgtY2hpbGQoMikge1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMTVweCk7IH1cbiAgICAudG9wLWNvbXBhbmllc19faXRlbTpudGgtY2hpbGQoMykge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAyMTVweDtcbiAgICAgIHJpZ2h0OiBjYWxjKDI1JSAtIDVweCk7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxNXB4KTsgfVxuICAgIC50b3AtY29tcGFuaWVzX19pdGVtOm50aC1jaGlsZCg0KSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDIxNXB4O1xuICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMTVweCk7IH0gfVxuXG4udG9wMjBfX3N1bW1hcnksXG4ud2F0Y2hsaXN0X19zdW1tYXJ5IHtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG5cbi50b3AyMC1sb2dvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC50b3AyMC1sb2dvID4gaW1nIHtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnRvcDIwLWxvZ28gPiBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnRvcDIwLWxvZ28ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogNjYuNjYlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgICAgLnRvcDIwLWxvZ286YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTAwJTsgfVxuICAgICAgLnRvcDIwLWxvZ28gPiBpbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBtYXgtaGVpZ2h0OiA2MCU7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgIC50b3AyMC1sb2dvIHtcbiAgICAgIHdpZHRoOiA1MCU7IH0gfVxuXG4udG9wLWNvbXBhbmllcy1jdGEgPiAqOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwIDAgMjBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAudG9wLWNvbXBhbmllcy1jdGEgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDsgfSB9XG5cbi5zaW5nbGUtdG9wX2NvbXBhbmllcyAuY29sdW1uX19mbG9hdCB7XG4gIHBhZGRpbmc6IDAgMjBweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnNpbmdsZS10b3BfY29tcGFuaWVzIC5jb2x1bW5fX2Zsb2F0IHtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgLnNpbmdsZS10b3BfY29tcGFuaWVzIC5jb2x1bW5fX2Zsb2F0IHtcbiAgICAgIHBhZGRpbmc6IDAgMCAwIDgwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnNpbmdsZS10b3BfY29tcGFuaWVzIC5jb2x1bW5fX2Zsb2F0LS1wcmltYXJ5IHtcbiAgICAgIG1hcmdpbi10b3A6IDIyOHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDE0NzBweCkge1xuICAgIC5zaW5nbGUtdG9wX2NvbXBhbmllcyAuY29sdW1uX19mbG9hdCAuYWRkdGhpc19zaGFyZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTcxMHB4KTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgLnBvc3QtdHlwZS1hcmNoaXZlLXRvcF9jb21wYW5pZXMgLmNvbHVtbl9fZmxvYXQtLXByaW1hcnkge1xuICAgIG1hcmdpbjogNjBweCAzMHB4IDA7IH0gfVxuXG4uY3Mge1xuICBtYXJnaW4tdG9wOiAxMDBweDsgfVxuXG4uc3VwcGxpZXItZXh0ZXJuYWwge1xuICBib3JkZXI6IDA7XG4gIG1pbi1oZWlnaHQ6IDgwMHB4OyB9XG5cbi5zdXBwbGllci1jdXN0b20tcGFnZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5zdXBwbGllci1jdXN0b20tcGFnZSB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIG1hcmdpbjogMCAtMzBweDsgfSB9XG4gIC5zdXBwbGllci1jdXN0b20tcGFnZSAuc3VwcGxpZXJfX21haW46b25seS1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5zdXBwbGllci1jdXN0b20tcGFnZSAuc3VwcGxpZXJfX21haW4ge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgZmxleC1iYXNpczogY2FsYyggNzUlIC0gNjBweCk7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoIDc1JSAtIDYwcHgpO1xuICAgICAgbWFyZ2luOiAwIDMwcHggNjBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuc3VwcGxpZXItY3VzdG9tLXBhZ2UgLnN1cHBsaWVyX19zaWRlYmFyIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIGZsZXgtYmFzaXM6IGNhbGMoIDI1JSAtIDYwcHgpO1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKCAyNSUgLSA2MHB4KTtcbiAgICAgIG1hcmdpbjogMCAzMHB4IDYwcHg7IH0gfVxuXG4uc3VwcGxpZXJfX3NlY3Rpb24ge1xuICBjbGVhcjogYm90aDsgfVxuICAuc3VwcGxpZXJfX3NlY3Rpb24gLnN1cHBsaWVyX19oZWFkaW5nIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtOyB9XG5cbi5jb2x1bW5fX2xheW91dCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAwIC0xMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuY29sdW1uX19sYXlvdXQge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBtYXJnaW46IDAgLTMwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmNvbHVtbl9fbGF5b3V0LS1tYWluIHtcbiAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDM7XG4gICAgICAtbXMtZmxleC1vcmRlcjogMjtcbiAgICAgIG9yZGVyOiAyOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5jb2x1bW5fX2xheW91dC0tbWFpbiB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKCA3NSUgLSA2MHB4KTtcbiAgICAgIG1heC13aWR0aDogY2FsYyggNzUlIC0gNjBweCk7XG4gICAgICBtYXJnaW46IDAgMzBweCA2MHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5jb2x1bW5fX2xheW91dC0tYXNpZGUge1xuICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMjtcbiAgICAgIC1tcy1mbGV4LW9yZGVyOiAxO1xuICAgICAgb3JkZXI6IDE7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmNvbHVtbl9fbGF5b3V0LS1hc2lkZSB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKCAyNSUgLSA2MHB4KTtcbiAgICAgIG1heC13aWR0aDogY2FsYyggMjUlIC0gNjBweCk7XG4gICAgICBtYXJnaW46IDAgMzBweCA2MHB4OyB9IH1cblxuLmNvbHVtbl9fZmxvYXQge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLmNvbHVtbl9fZmxvYXQge1xuICAgICAgbWFyZ2luOiAwIC0zMHB4OyB9XG4gICAgICAuY29sdW1uX19mbG9hdC0tcHJpbWFyeSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IGNhbGMoIDI1JSAtIDYwcHgpO1xuICAgICAgICBtYXJnaW46IDAgMzBweCAwOyB9XG4gICAgICAuY29sdW1uX19mbG9hdC0tc2Vjb25kYXJ5IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiBjYWxjKCA3NSUgLSA2MHB4KTtcbiAgICAgICAgbWFyZ2luOiAwIDMwcHggNjBweDsgfVxuICAgICAgLmNvbHVtbl9fZmxvYXQtLXRlcnRpYXJ5IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBjbGVhcjogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiBjYWxjKCAyNSUgLSA2MHB4KTtcbiAgICAgICAgbWFyZ2luOiAwIDMwcHggNjBweDsgfSB9XG5cbi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5tZW51LXRvZ2dsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5tZW51LXRvZ2dsZTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICBib3R0b206IDVweDtcbiAgICAgIHdpZHRoOiA2cHg7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgIzVlNjM2NztcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjNWU2MzY3O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZSwgbWFyZ2luIC4zcyBlYXNlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtdG9nZ2xlX19jb250YWluZXIge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7IH1cbiAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4uYWN0aXZlIC5tZW51LXRvZ2dsZTphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDA1ZGVnKTsgfVxuICAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiBhOmJlZm9yZSwgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gYTphZnRlciB7XG4gICAgY29udGVudDogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5zdWItbWVudSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIC5zdWItbWVudSAubWVudS1pdGVtIGEge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAgICAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLnN1Yi1tZW51IC5tZW51LWl0ZW0gYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLmJ1dHRvbixcbmJ1dHRvbixcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sIHRleHRhcmVhW3R5cGU9XCJzdWJtaXRcIl0sIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCBzZWxlY3RbdHlwZT1cInN1Ym1pdFwiXSwgLmdpbnB1dF9jb21wbGV4IC5hZGRyZXNzX2NvdW50cnkgc2VsZWN0W3R5cGU9XCJzdWJtaXRcIl0sIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3RbdHlwZT1cInN1Ym1pdFwiXSwgLmdpbnB1dF9jb250YWluZXJfbXVsdGlzZWxlY3Qgc2VsZWN0W3R5cGU9XCJzdWJtaXRcIl0sIC5mb3JtLWZpZWxkIHNlbGVjdFt0eXBlPVwic3VibWl0XCJdLCAubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmJ1dHRvbi0taW52ZXJ0ZWQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDE4cHggNTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFhMWExYTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IFwiR290aGFtIFNTbSBBXCIsIFwiR290aGFtIFNTbSBCXCIsIFwiR290aGFtXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDE0ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxMjVtcyAxMjVtczsgfVxuICAuYnV0dG9uOmhvdmVyLFxuICBidXR0b246aG92ZXIsXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsIHRleHRhcmVhW3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCBzZWxlY3RbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciwgLmdpbnB1dF9jb21wbGV4IC5hZGRyZXNzX2NvdW50cnkgc2VsZWN0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3RbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciwgLmdpbnB1dF9jb250YWluZXJfbXVsdGlzZWxlY3Qgc2VsZWN0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsIC5mb3JtLWZpZWxkIHNlbGVjdFt0eXBlPVwic3VibWl0XCJdOmhvdmVyLCAubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmJ1dHRvbi0taW52ZXJ0ZWQ6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYjMwMzQ7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMjYsIDI2LCAyNiwgMC4yNSk7IH1cblxuLmJ1dHRvbi0taW52ZXJ0ZWQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDE4cHggNTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogIzFhMWExYTtcbiAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICMxYTFhMWE7XG4gIGZvbnQtZmFtaWx5OiBcIkdvdGhhbSBTU20gQVwiLCBcIkdvdGhhbSBTU20gQlwiLCBcIkdvdGhhbVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxNGVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTI1bXMgMTI1bXM7IH1cbiAgLmJ1dHRvbi0taW52ZXJ0ZWQ6aG92ZXIge1xuICAgIGNvbG9yOiByZ2JhKDI2LCAyNiwgMjYsIDAuOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNiwgMjYsIDI2LCAwLjgpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDI2LCAyNiwgMjYsIDAuMjUpOyB9XG5cbi5idXR0b24tLWdob3N0LCAuZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmZlYXR1cmVfX2J0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMThweCA1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogIzFhMWExYTtcbiAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY29sb3I6ICMxYTFhMWE7XG4gIGZvbnQtZmFtaWx5OiBcIkdvdGhhbSBTU20gQVwiLCBcIkdvdGhhbSBTU20gQlwiLCBcIkdvdGhhbVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxNGVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTI1bXMgMTI1bXM7IH1cbiAgLmJ1dHRvbi0tZ2hvc3Q6aG92ZXIsIC5mZWF0dXJlX19hcnRpY2xlW2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuZmVhdHVyZV9fYnRuOmhvdmVyIHtcbiAgICBjb2xvcjogcmdiYSgyNiwgMjYsIDI2LCAwLjgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNiwgMjYsIDI2LCAwLjgpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCByZ2JhKDI2LCAyNiwgMjYsIDAuMjUpOyB9XG5cbi5idXR0b24tLWdob3N0LWludmVydGVkLCAuZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuZmVhdHVyZV9fYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAxOHB4IDUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IFwiR290aGFtIFNTbSBBXCIsIFwiR290aGFtIFNTbSBCXCIsIFwiR290aGFtXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDE0ZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxMjVtcyAxMjVtczsgfVxuICAuYnV0dG9uLS1naG9zdC1pbnZlcnRlZDpob3ZlciwgLmZlYXR1cmVfX2FydGljbGVbZGF0YS10aGVtZT1cImRhcmtcIl0gLmZlYXR1cmVfX2J0bjpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmJsb2NrZWQtLW1vYmlsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uYnV0dG9uLS1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgcGFkZGluZzogMTJweCAyMHB4OyB9XG5cbi5zZWNvbmRhcnktbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNjNGM5Y2QgMCUsICNjNGM5Y2QgMTAwJSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4O1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG5cbi5pY29uLFxuLmljb246YmVmb3JlLFxuLmljb246YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlOyB9XG5cbi5pLWNhcmV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDsgfVxuICAuaS1jYXJldDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTNweDtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogMTRweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG4gIC5pLWNhcmV0OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTNweDtcbiAgICByaWdodDogYXV0bztcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogMTRweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4uaS1tZW51IHtcbiAgY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjsgfVxuICAuaS1tZW51OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTdweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjsgfVxuICAuaS1tZW51OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA3cHg7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7IH1cblxuLmktY2xvc2Uge1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7IH1cbiAgLmktY2xvc2U6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMHB4O1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG4gIC5pLWNsb3NlOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMHB4O1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cblxuLmktYXJyb3ctcmlnaHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4OyB9XG4gIC5pLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAycHg7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDI2cHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAuaS1hcnJvdy1yaWdodDphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBib3JkZXItdG9wOiBzb2xpZCAycHggY3VycmVudENvbG9yO1xuICAgIGJvcmRlci1yaWdodDogc29saWQgMnB4IGN1cnJlbnRDb2xvcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgcmlnaHQ7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG5cbi5pLWFycm93LWxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4OyB9XG4gIC5pLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMnB4O1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAyNnB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLmktYXJyb3ctbGVmdDphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDhweDtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4IGN1cnJlbnRDb2xvcjtcbiAgICBib3JkZXItbGVmdDogc29saWQgMnB4IGN1cnJlbnRDb2xvcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgcmlnaHQ7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG5cbi5yYXRpby1ncmlkX19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5yYXRpby1ncmlkX19pdGVtOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMTAwJTsgfVxuICAucmF0aW8tZ3JpZF9faXRlbS1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLnJhdGlvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnJhdGlvOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMTAwJTsgfVxuICAucmF0aW8tLXdpZGU6YWZ0ZXIge1xuICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7IH1cbiAgLnJhdGlvLS10cmFkaXRpb25hbDphZnRlciB7XG4gICAgcGFkZGluZy10b3A6IDc1JTsgfVxuICAucmF0aW9fX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAyMHB4OyB9XG5cbi5wYW5lbF9fbWVudS13cmFwcGVyIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAucGFuZWxfX21lbnUtd3JhcHBlciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDAgLTAuNWVtO1xuICAgIHBhZGRpbmc6IDYwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiA5MDBweDsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAucGFuZWxfX21lbnUtd3JhcHBlciB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwIC0wLjVlbTtcbiAgICAgIHBhZGRpbmc6IDMwcHggNjBweDsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAucGFuZWxfX21lbnUtd3JhcHBlciA+ICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IGNhbGMoIDUwJSAtIDIwcHgpO1xuICAgIG1heC13aWR0aDogY2FsYyggNTAlIC0gMjBweCk7XG4gICAgbWFyZ2luOiAwIDEwcHggMjBweDsgfVxuICAgIC5wYW5lbF9fbWVudS13cmFwcGVyID4gKi5uYXZfX2dyb3VwIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luOiAwIC0wLjVlbTtcbiAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC5wYW5lbF9fbWVudS13cmFwcGVyID4gKi5uYXZfX2dyb3VwID4gKiB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoIDUwJSAtIDIwcHgpO1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoIDUwJSAtIDIwcHgpO1xuICAgICAgICBtYXJnaW46IDAgMTBweCAyMHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5wYW5lbF9fbWVudS13cmFwcGVyID4gKiB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKCAyMCUgLSAyMHB4KTtcbiAgICAgIG1heC13aWR0aDogY2FsYyggMjAlIC0gMjBweCk7XG4gICAgICBtYXJnaW46IDAgMTBweCAyMHB4OyB9XG4gICAgICAucGFuZWxfX21lbnUtd3JhcHBlciA+ICoubmF2X19ncm91cCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luOiAwIC0wLjVlbTtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHg7IH0gfVxuXG4ubmF2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2M0YzljZDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubmF2IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7IH0gfVxuICAubmF2X19oZWFkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMjBweCAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAjMmIzMDM0O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5uYXZfX2hlYWRlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjNGM5Y2Q7IH1cbiAgICAgICAgLm5hdl9faGVhZGVyOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgIzJiMzAzNDtcbiAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgIzJiMzAzNDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZSwgbWFyZ2luIC4zcyBlYXNlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC02cHg7IH1cbiAgICAgICAgLm5hdl9faGVhZGVyW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdOmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5uYXZfX2hlYWRlciB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDsgfSB9XG4gIC5uYXZfX3NlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDI1cHggMzBweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLm5hdl9fc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAgIC5uYXZfX3NlY3Rpb24gdWwgPiBsaS5ib2xkID4gYSB7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgLm5hdl9fc2VjdGlvbiB1bCA+IGxpID4gYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4xOyB9XG4gICAgICAubmF2X19zZWN0aW9uIHVsID4gbGkgPiBhOmhvdmVyLCAubmF2X19zZWN0aW9uIHVsID4gbGkgPiBhOmFjdGl2ZSwgLm5hdl9fc2VjdGlvbiB1bCA+IGxpID4gYTpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLm5hdl9fc2VjdGlvbiB1bCA+IGxpID4gYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nOiA2cHggMDsgfSB9XG4gIC5uYXZfX3dyYXAge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgLm5hdl9fd3JhcCB7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOyB9XG4gICAgICAgIC5uYXZfX3dyYXBbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgICAgIGhlaWdodDogYXV0bzsgfSB9XG4gIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tY29tcGxpYW5jZSBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tY29tcGxpYW5jZSBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjYTYxOTJlO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZTsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tY29tcGxpYW5jZSBhOmhvdmVyOmJlZm9yZSwgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1jb21wbGlhbmNlIGE6YWN0aXZlOmJlZm9yZSwgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1jb21wbGlhbmNlIGE6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICNhNjE5MmU7IH1cbiAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1jb250ZW50LWRldmVsb3BtZW50IGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG4gICAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1jb250ZW50LWRldmVsb3BtZW50IGE6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNmMjZhMzY7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlOyB9XG4gICAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1jb250ZW50LWRldmVsb3BtZW50IGE6aG92ZXI6YmVmb3JlLCAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLWNvbnRlbnQtZGV2ZWxvcG1lbnQgYTphY3RpdmU6YmVmb3JlLCAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLWNvbnRlbnQtZGV2ZWxvcG1lbnQgYTpmb2N1czpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogI2YyNmEzNjsgfVxuICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLWRpdmVyc2l0eS1lcXVpdHktYW5kLWluY2x1c2lvbiBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tZGl2ZXJzaXR5LWVxdWl0eS1hbmQtaW5jbHVzaW9uIGE6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM3NjIzMmY7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlOyB9XG4gICAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1kaXZlcnNpdHktZXF1aXR5LWFuZC1pbmNsdXNpb24gYTpob3ZlcjpiZWZvcmUsIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tZGl2ZXJzaXR5LWVxdWl0eS1hbmQtaW5jbHVzaW9uIGE6YWN0aXZlOmJlZm9yZSwgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1kaXZlcnNpdHktZXF1aXR5LWFuZC1pbmNsdXNpb24gYTpmb2N1czpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogIzc2MjMyZjsgfVxuICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLWUtbGVhcm5pbmcgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLWUtbGVhcm5pbmcgYTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgI2ZmOGYxYztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2U7IH1cbiAgICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLWUtbGVhcm5pbmcgYTpob3ZlcjpiZWZvcmUsIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tZS1sZWFybmluZyBhOmFjdGl2ZTpiZWZvcmUsIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tZS1sZWFybmluZyBhOmZvY3VzOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmY4ZjFjOyB9XG4gIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0taXQtYW5kLXRlY2huaWNhbC10cmFpbmluZyBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0taXQtYW5kLXRlY2huaWNhbC10cmFpbmluZyBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjYjk0NzAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZTsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0taXQtYW5kLXRlY2huaWNhbC10cmFpbmluZyBhOmhvdmVyOmJlZm9yZSwgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1pdC1hbmQtdGVjaG5pY2FsLXRyYWluaW5nIGE6YWN0aXZlOmJlZm9yZSwgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1pdC1hbmQtdGVjaG5pY2FsLXRyYWluaW5nIGE6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICNiOTQ3MDA7IH1cbiAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1sZWFkZXJzaGlwIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG4gICAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1sZWFkZXJzaGlwIGE6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNkYWFhMDA7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlOyB9XG4gICAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1sZWFkZXJzaGlwIGE6aG92ZXI6YmVmb3JlLCAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLWxlYWRlcnNoaXAgYTphY3RpdmU6YmVmb3JlLCAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLWxlYWRlcnNoaXAgYTpmb2N1czpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogI2RhYWEwMDsgfVxuICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLWxlYXJuaW5nLXRlY2hub2xvZ2llcyBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tbGVhcm5pbmctdGVjaG5vbG9naWVzIGE6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM4MmMzNDE7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlOyB9XG4gICAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1sZWFybmluZy10ZWNobm9sb2dpZXMgYTpob3ZlcjpiZWZvcmUsIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tbGVhcm5pbmctdGVjaG5vbG9naWVzIGE6YWN0aXZlOmJlZm9yZSwgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1sZWFybmluZy10ZWNobm9sb2dpZXMgYTpmb2N1czpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogIzgyYzM0MTsgfVxuICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLW1lYXN1cmVtZW50LWFuZC1hbmFseXRpY3MgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLW1lYXN1cmVtZW50LWFuZC1hbmFseXRpY3MgYTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzAwYjA5ODtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2U7IH1cbiAgICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLW1lYXN1cmVtZW50LWFuZC1hbmFseXRpY3MgYTpob3ZlcjpiZWZvcmUsIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tbWVhc3VyZW1lbnQtYW5kLWFuYWx5dGljcyBhOmFjdGl2ZTpiZWZvcmUsIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tbWVhc3VyZW1lbnQtYW5kLWFuYWx5dGljcyBhOmZvY3VzOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDBiMDk4OyB9XG4gIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tb3V0c291cmNpbmcgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLW91dHNvdXJjaW5nIGE6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICMwMDgyNjQ7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlOyB9XG4gICAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1vdXRzb3VyY2luZyBhOmhvdmVyOmJlZm9yZSwgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1vdXRzb3VyY2luZyBhOmFjdGl2ZTpiZWZvcmUsIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tb3V0c291cmNpbmcgYTpmb2N1czpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogIzAwODI2NDsgfVxuICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLW9uYm9hcmRpbmcgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLW9uYm9hcmRpbmcgYTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzhmZDFjMztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2U7IH1cbiAgICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLW9uYm9hcmRpbmcgYTpob3ZlcjpiZWZvcmUsIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tb25ib2FyZGluZyBhOmFjdGl2ZTpiZWZvcmUsIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tb25ib2FyZGluZyBhOmZvY3VzOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjOGZkMWMzOyB9XG4gIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tcGVyZm9ybWFuY2UtbWFuYWdlbWVudCBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tcGVyZm9ybWFuY2UtbWFuYWdlbWVudCBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjMDBiY2U3O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZTsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tcGVyZm9ybWFuY2UtbWFuYWdlbWVudCBhOmhvdmVyOmJlZm9yZSwgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1wZXJmb3JtYW5jZS1tYW5hZ2VtZW50IGE6YWN0aXZlOmJlZm9yZSwgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1wZXJmb3JtYW5jZS1tYW5hZ2VtZW50IGE6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMGJjZTc7IH1cbiAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1wcm9mZXNzaW9uYWwtZGV2ZWxvcG1lbnQgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLXByb2Zlc3Npb25hbC1kZXZlbG9wbWVudCBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjMDA1NThjO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZTsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tcHJvZmVzc2lvbmFsLWRldmVsb3BtZW50IGE6aG92ZXI6YmVmb3JlLCAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLXByb2Zlc3Npb25hbC1kZXZlbG9wbWVudCBhOmFjdGl2ZTpiZWZvcmUsIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tcHJvZmVzc2lvbmFsLWRldmVsb3BtZW50IGE6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDU1OGM7IH1cbiAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1yZW1vdGUtbGVhcm5pbmcgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLXJlbW90ZS1sZWFybmluZyBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjMDA3MDk2O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZTsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tcmVtb3RlLWxlYXJuaW5nIGE6aG92ZXI6YmVmb3JlLCAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLXJlbW90ZS1sZWFybmluZyBhOmFjdGl2ZTpiZWZvcmUsIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tcmVtb3RlLWxlYXJuaW5nIGE6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDcwOTY7IH1cbiAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1zYWxlcyBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tc2FsZXMgYTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzY3NTZhNTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2U7IH1cbiAgICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLXNhbGVzIGE6aG92ZXI6YmVmb3JlLCAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLXNhbGVzIGE6YWN0aXZlOmJlZm9yZSwgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1zYWxlcyBhOmZvY3VzOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjNjc1NmE1OyB9XG4gIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tc3RyYXRlZ3ktYWxpZ25tZW50LWFuZC1wbGFubmluZyBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tc3RyYXRlZ3ktYWxpZ25tZW50LWFuZC1wbGFubmluZyBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjNzcyNTgzO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZTsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0tc3RyYXRlZ3ktYWxpZ25tZW50LWFuZC1wbGFubmluZyBhOmhvdmVyOmJlZm9yZSwgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1zdHJhdGVneS1hbGlnbm1lbnQtYW5kLXBsYW5uaW5nIGE6YWN0aXZlOmJlZm9yZSwgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS1zdHJhdGVneS1hbGlnbm1lbnQtYW5kLXBsYW5uaW5nIGE6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICM3NzI1ODM7IH1cbiAgLm5hdl9fc2VjdGlvbi0tdG9waWNzIGxpLnRvcGljLS13b3JrZm9yY2UtZGV2ZWxvcG1lbnQgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgICAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLXdvcmtmb3JjZS1kZXZlbG9wbWVudCBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjOWIyNmI2O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZTsgfVxuICAgIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0td29ya2ZvcmNlLWRldmVsb3BtZW50IGE6aG92ZXI6YmVmb3JlLCAubmF2X19zZWN0aW9uLS10b3BpY3MgbGkudG9waWMtLXdvcmtmb3JjZS1kZXZlbG9wbWVudCBhOmFjdGl2ZTpiZWZvcmUsIC5uYXZfX3NlY3Rpb24tLXRvcGljcyBsaS50b3BpYy0td29ya2ZvcmNlLWRldmVsb3BtZW50IGE6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICM5YjI2YjY7IH1cblxuLm5hdl9fZHJvcGRvd25zIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgLm5hdl9fZHJvcGRvd25zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvcmRlcjogNDtcbiAgICAgIG1hcmdpbi1yaWdodDogNTBweDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2U7IH1cbiAgICAgIC5uYXZfX2Ryb3Bkb3ducy5oaWRlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG5cbi5kcm9wZG93biB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAgMCA0MHB4OyB9XG4gIC5kcm9wZG93bl9fdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwIDIwcHggMCAwOyB9XG4gICAgLmRyb3Bkb3duX190aXRsZTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogOHB4O1xuICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICMyYjMwMzQ7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzJiMzAzNDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2UsIG1hcmdpbiAuM3MgZWFzZTtcbiAgICAgIG1hcmdpbi10b3A6IC02cHg7IH1cbiAgLmRyb3Bkb3duX19saXN0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAyNjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgei1pbmRleDogMTUwOyB9XG4gICAgLmRyb3Bkb3duX19saXN0IGxpIHtcbiAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgICAgLmRyb3Bkb3duX19saXN0IGxpIGE6aG92ZXIsIC5kcm9wZG93bl9fbGlzdCBsaSBhOmFjdGl2ZSwgLmRyb3Bkb3duX19saXN0IGxpIGE6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuZHJvcGRvd246aG92ZXIgLmRyb3Bkb3duX19saXN0IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjYzRjOWNkO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNmZmY7IH1cblxuLndpZGdldF9fYmxvY2sge1xuICBtYXJnaW46IDAgMCAzMHB4O1xuICBwYWRkaW5nOiAzMHB4O1xuICBiYWNrZ3JvdW5kOiAjZjBmNWY3OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC53aWRnZXRfX2Jsb2NrIHtcbiAgICAgIG1hcmdpbjogMCAwIDYwcHg7IH0gfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAud2lkZ2V0X19ibG9jay0tZmlsdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH0gfVxuICAud2lkZ2V0X19ibG9jay0tZmlsdGVyIC53aWRnZXRfX3RpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAud2lkZ2V0X19ibG9jay0tZmlsdGVyIC53aWRnZXRfX3RpdGxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4ud2lkZ2V0X190aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICBtYXJnaW46IDAgMCAzMHB4O1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLndpZGdldF9fdGl0bGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogODBweDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBiYWNrZ3JvdW5kOiAjMmIzMDM0OyB9XG5cbi8qKlxuICogU3dpcGVyIDMuNC4yXG4gKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9uc1xuICogXG4gKiBodHRwOi8vd3d3LmlkYW5nZXJvLnVzL3N3aXBlci9cbiAqIFxuICogQ29weXJpZ2h0IDIwMTcsIFZsYWRpbWlyIEtoYXJsYW1waWRpXG4gKiBUaGUgaURhbmdlcm8udXNcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvXG4gKiBcbiAqIExpY2Vuc2VkIHVuZGVyIE1JVFxuICogXG4gKiBSZWxlYXNlZCBvbjogTWFyY2ggMTAsIDIwMTdcbiAqL1xuLnN3aXBlci1jb250YWluZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIEZpeCBvZiBXZWJraXQgZmxpY2tlcmluZyAqL1xuICB6LWluZGV4OiAxOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLW5vLWZsZXhib3ggLnN3aXBlci1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLW1vei1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uc3dpcGVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbW96LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiAtbW96LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW8tdHJhbnNmb3JtO1xuICAtbXMtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW1zLXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLW11bHRpcm93ID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtbGluZXM6IG11bHRpcGxlO1xuICAtbW96LWJveC1saW5lczogbXVsdGlwbGU7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cblxuLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtbXMtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtZmxleC1zaHJpbms6IDA7XG4gIC1tcy1mbGV4OiAwIDAgYXV0bztcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4vKiBBdXRvIEhlaWdodCAqL1xuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcbiAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0O1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybSwgaGVpZ2h0O1xuICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IC1tb3otdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiAtby10cmFuc2Zvcm07XG4gIC1tcy10cmFuc2l0aW9uLXByb3BlcnR5OiAtbXMtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDsgfVxuXG4vKiBhMTF5ICovXG4uc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLW5vdGlmaWNhdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogLTEwMDA7IH1cblxuLyogSUUxMCBXaW5kb3dzIFBob25lIDggRml4ZXMgKi9cbi5zd2lwZXItd3A4LWhvcml6b250YWwge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTsgfVxuXG4uc3dpcGVyLXdwOC12ZXJ0aWNhbCB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi14O1xuICB0b3VjaC1hY3Rpb246IHBhbi14OyB9XG5cbi8qIEFycm93cyAqL1xuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItYnV0dG9uLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogMjdweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBtYXJnaW4tdG9wOiAtMjJweDtcbiAgei1pbmRleDogMTA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IDI3cHggNDRweDtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDI3cHggNDRweDtcbiAgYmFja2dyb3VuZC1zaXplOiAyN3B4IDQ0cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWQsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM1O1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0bzsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tYmxhY2ssXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWJsYWNrIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00wJTJDMjJMMjIlMkMwbDIuMSUyQzIuMUw0LjIlMkMyMmwxOS45JTJDMTkuOUwyMiUyQzQ0TDAlMkMyMkwwJTJDMjJMMCUyQzIyeiclMjBmaWxsJTNEJyUyMzAwMDAwMCclMkYlM0UlM0MlMkZzdmclM0VcIik7IH1cblxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLXdoaXRlLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICByaWdodDogMTBweDtcbiAgbGVmdDogYXV0bzsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tYmxhY2ssXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWJsYWNrIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00yNyUyQzIyTDI3JTJDMjJMNSUyQzQ0bC0yLjEtMi4xTDIyLjglMkMyMkwyLjklMkMyLjFMNSUyQzBMMjclMkMyMkwyNyUyQzIyeiclMjBmaWxsJTNEJyUyMzAwMDAwMCclMkYlM0UlM0MlMkZzdmclM0VcIik7IH1cblxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLXdoaXRlLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi8qIFBhZ2luYXRpb24gU3R5bGVzICovXG4uc3dpcGVyLXBhZ2luYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAzMDBtcztcbiAgLW1vei10cmFuc2l0aW9uOiAzMDBtcztcbiAgLW8tdHJhbnNpdGlvbjogMzAwbXM7XG4gIHRyYW5zaXRpb246IDMwMG1zO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVuIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKiBDb21tb24gU3R5bGVzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24sXG4uc3dpcGVyLXBhZ2luYXRpb24tY3VzdG9tLFxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4vKiBCdWxsZXRzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMC4yOyB9XG5cbmJ1dHRvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24td2hpdGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kOiAjMDA3YWZmOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwMDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IDVweCAwO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogMCA1cHg7IH1cblxuLyogUHJvZ3Jlc3MgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzcyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3MgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgYmFja2dyb3VuZDogIzAwN2FmZjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLW8tdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3MgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xuICAtby10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3Mge1xuICB3aWR0aDogNHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3Muc3dpcGVyLXBhZ2luYXRpb24td2hpdGUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzLnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6ICMwMDA7IH1cblxuLyogM0QgQ29udGFpbmVyICovXG4uc3dpcGVyLWNvbnRhaW5lci0zZCB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IDEyMDBweDtcbiAgLW1vei1wZXJzcGVjdGl2ZTogMTIwMHB4O1xuICAtby1wZXJzcGVjdGl2ZTogMTIwMHB4O1xuICBwZXJzcGVjdGl2ZTogMTIwMHB4OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItd3JhcHBlcixcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLWN1YmUtc2hhZG93IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAtbW96LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIC1tcy10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTA7IH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBmcm9tKHJnYmEoMCwgMCwgMCwgMC41KSksIHRvKHRyYW5zcGFyZW50KSk7XG4gIC8qIFNhZmFyaSA0KywgQ2hyb21lICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogQ2hyb21lIDEwKywgU2FmYXJpIDUuMSssIGlPUyA1KyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCB0cmFuc3BhcmVudCk7XG4gIC8qIEZpcmVmb3ggMy42LTE1ICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCB0cmFuc3BhcmVudCk7XG4gIC8qIE9wZXJhIDExLjEwLTEyLjAwICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogRmlyZWZveCAxNissIElFMTAsIE9wZXJhIDEyLjUwKyAqLyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIHJpZ2h0IHRvcCwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8odHJhbnNwYXJlbnQpKTtcbiAgLyogU2FmYXJpIDQrLCBDaHJvbWUgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCB0cmFuc3BhcmVudCk7XG4gIC8qIENocm9tZSAxMCssIFNhZmFyaSA1LjErLCBpT1MgNSsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCB0cmFuc3BhcmVudCk7XG4gIC8qIEZpcmVmb3ggMy42LTE1ICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogT3BlcmEgMTEuMTAtMTIuMDAgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogRmlyZWZveCAxNissIElFMTAsIE9wZXJhIDEyLjUwKyAqLyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8odHJhbnNwYXJlbnQpKTtcbiAgLyogU2FmYXJpIDQrLCBDaHJvbWUgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogQ2hyb21lIDEwKywgU2FmYXJpIDUuMSssIGlPUyA1KyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgdHJhbnNwYXJlbnQpO1xuICAvKiBGaXJlZm94IDMuNi0xNSAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogT3BlcmEgMTEuMTAtMTIuMDAgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCB0cmFuc3BhcmVudCk7XG4gIC8qIEZpcmVmb3ggMTYrLCBJRTEwLCBPcGVyYSAxMi41MCsgKi8gfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCBib3R0b20sIGxlZnQgdG9wLCBmcm9tKHJnYmEoMCwgMCwgMCwgMC41KSksIHRvKHRyYW5zcGFyZW50KSk7XG4gIC8qIFNhZmFyaSA0KywgQ2hyb21lICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCB0cmFuc3BhcmVudCk7XG4gIC8qIENocm9tZSAxMCssIFNhZmFyaSA1LjErLCBpT1MgNSsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHRyYW5zcGFyZW50KTtcbiAgLyogRmlyZWZveCAzLjYtMTUgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCB0cmFuc3BhcmVudCk7XG4gIC8qIE9wZXJhIDExLjEwLTEyLjAwICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgdHJhbnNwYXJlbnQpO1xuICAvKiBGaXJlZm94IDE2KywgSUUxMCwgT3BlcmEgMTIuNTArICovIH1cblxuLyogQ292ZXJmbG93ICovXG4uc3dpcGVyLWNvbnRhaW5lci1jb3ZlcmZsb3cgLnN3aXBlci13cmFwcGVyLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXdyYXBwZXIge1xuICAvKiBXaW5kb3dzIDggSUUgMTAgZml4ICovXG4gIC1tcy1wZXJzcGVjdGl2ZTogMTIwMHB4OyB9XG5cbi8qIEN1YmUgKyBGbGlwICovXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlLFxuLnN3aXBlci1jb250YWluZXItZmxpcCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKiBDdWJlICovXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1wcmV2LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQgKyAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMC42O1xuICAtd2Via2l0LWZpbHRlcjogYmx1cig1MHB4KTtcbiAgZmlsdGVyOiBibHVyKDUwcHgpO1xuICB6LWluZGV4OiAwOyB9XG5cbi8qIEZhZGUgKi9cbi5zd2lwZXItY29udGFpbmVyLWZhZGUuc3dpcGVyLWNvbnRhaW5lci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW1zLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cblxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuXG4uc3dpcGVyLXpvb20tY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gIC1tb3otYm94LXBhY2s6IGNlbnRlcjtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1vei1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGltZyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBzdmcsXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluOyB9XG5cbi8qIFNjcm9sbGJhciAqL1xuLnN3aXBlci1zY3JvbGxiYXIge1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDElO1xuICBib3R0b206IDNweDtcbiAgei1pbmRleDogNTA7XG4gIGhlaWdodDogNXB4O1xuICB3aWR0aDogOTglOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAzcHg7XG4gIHRvcDogMSU7XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogNXB4O1xuICBoZWlnaHQ6IDk4JTsgfVxuXG4uc3dpcGVyLXNjcm9sbGJhci1kcmFnIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDsgfVxuXG4uc3dpcGVyLXNjcm9sbGJhci1jdXJzb3ItZHJhZyB7XG4gIGN1cnNvcjogbW92ZTsgfVxuXG4vKiBQcmVsb2FkZXIgKi9cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjFweDtcbiAgbWFyZ2luLXRvcDogLTIxcHg7XG4gIHotaW5kZXg6IDEwO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7IH1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlcjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMTIwJTIwMTIwJyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB4bWxucyUzQXhsaW5rJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhsaW5rJyUzRSUzQ2RlZnMlM0UlM0NsaW5lJTIwaWQlM0QnbCclMjB4MSUzRCc2MCclMjB4MiUzRCc2MCclMjB5MSUzRCc3JyUyMHkyJTNEJzI3JyUyMHN0cm9rZSUzRCclMjM2YzZjNmMnJTIwc3Ryb2tlLXdpZHRoJTNEJzExJyUyMHN0cm9rZS1saW5lY2FwJTNEJ3JvdW5kJyUyRiUzRSUzQyUyRmRlZnMlM0UlM0NnJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoNjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDkwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxMjAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE1MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjM3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTgwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNDYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyMTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy41NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI0MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjY2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjcwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNzUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy44NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMzMCUyMDYwJTJDNjApJyUyRiUzRSUzQyUyRmclM0UlM0MlMkZzdmclM0VcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRlOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIwdmlld0JveCUzRCcwJTIwMCUyMDEyMCUyMDEyMCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIweG1sbnMlM0F4bGluayUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4bGluayclM0UlM0NkZWZzJTNFJTNDbGluZSUyMGlkJTNEJ2wnJTIweDElM0QnNjAnJTIweDIlM0QnNjAnJTIweTElM0QnNyclMjB5MiUzRCcyNyclMjBzdHJva2UlM0QnJTIzZmZmJyUyMHN0cm9rZS13aWR0aCUzRCcxMSclMjBzdHJva2UtbGluZWNhcCUzRCdyb3VuZCclMkYlM0UlM0MlMkZkZWZzJTNFJTNDZyUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDYwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg5MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTIwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxNTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4zNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE4MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjQ2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjEwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNTYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy42NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI3MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjc1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuODUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMzAlMjA2MCUyQzYwKSclMkYlM0UlM0MlMkZnJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG4uc29jaWFscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1heC13aWR0aDogMjYwcHg7XG4gIG1hcmdpbjogMCBhdXRvIDUwcHg7IH1cbiAgLnBhbmVsX19tZW51IC5zb2NpYWxzIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTVweCAzMHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLnBhbmVsX19tZW51IC5zb2NpYWxzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5zb2NpYWxzX19saW5rIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMTI1bXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTsgfVxuICAgIC5zb2NpYWxzX19saW5rOmhvdmVyLCAuc29jaWFsc19fbGluazphY3RpdmUge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTsgfVxuICAgIC5zb2NpYWxzX19saW5rIHN2ZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDI1cHg7IH1cbiAgICAgIC5zb2NpYWxzX19saW5rIHN2ZyAqIHtcbiAgICAgICAgZmlsbDogI2ZmZjsgfVxuICAgICAgICAucGFuZWxfX21lbnUgLnNvY2lhbHNfX2xpbmsgc3ZnICoge1xuICAgICAgICAgIGZpbGw6ICMyYjMwMzQ7IH1cblxuLmFkdl9fYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuYWR2X19ibG9jay0tbGVhZGVyYm9hcmQge1xuICAgIHdpZHRoOiAzMjBweDtcbiAgICBoZWlnaHQ6IDUwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgICAgIC5hZHZfX2Jsb2NrLS1sZWFkZXJib2FyZCB7XG4gICAgICAgIHdpZHRoOiA0NjhweDtcbiAgICAgICAgaGVpZ2h0OiA2MHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5hZHZfX2Jsb2NrLS1sZWFkZXJib2FyZCB7XG4gICAgICAgIHdpZHRoOiA3MjhweDtcbiAgICAgICAgaGVpZ2h0OiA5MHB4OyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAuYWR2X19ibG9jay0tbGVhZGVyYm9hcmQge1xuICAgICAgICB3aWR0aDogOTcwcHg7XG4gICAgICAgIGhlaWdodDogOTBweDsgfSB9XG4gIC5hZHZfX2Jsb2NrLS1zcXVhcmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5hZHZfX2Jsb2NrLS1zcXVhcmUgKyAuYWR2X19ibG9jay0tc3F1YXJlIHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgLnRpbGUgLmFkdl9fYmxvY2sgaWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLm1hZ2F6aW5lLXNpbmdsZS0tcG9ydHJhaXQgLmFkdl9fYmxvY2stLWxlYWRlcmJvYXJkIHtcbiAgICAgIHdpZHRoOiA3MjhweDtcbiAgICAgIGhlaWdodDogOTBweDsgfSB9XG5cbi5mb290ZXJfX2FkdiB7XG4gIG1hcmdpbjogMTAwcHggYXV0byAxMHB4OyB9XG4gIC5lcnJvcjQwNCAuZm9vdGVyX19hZHYge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhlYWRlcl9fYWR2IHtcbiAgbWFyZ2luOiA5MHB4IGF1dG8gMzBweDsgfVxuXG4uYXNpZGVfX2FkdiB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5hc2lkZV9fYWR2IGlmcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87IH1cblxuLnRpdGxlLS1wYWdlIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbWFyZ2luOiAwOyB9XG5cbi50aXRsZS0taXNzdWUge1xuICBmb250LXNpemU6IDNyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi50aXRsZS0tc2luZ2xlIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS4xMztcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIG1hcmdpbjogMjBweCAwOyB9XG5cbi50aXRsZS0tdG9waWMge1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBtYXJnaW46IDAgMCAxMHB4OyB9XG5cbi50aXRsZS0tc2VjdGlvbiB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIG1hcmdpbjogMCAwIDMwcHg7IH1cbiAgLnRpdGxlLS1zZWN0aW9uID4gc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDEwMDsgfVxuXG4udGl0bGUtLWFydGljbGUge1xuICBmb250LXNpemU6IDEuMzEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIG1hcmdpbjogMzBweCAwOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudGl0bGUtLXBhZ2Uge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9XG4gIC50aXRsZS0taXNzdWUge1xuICAgIGZvbnQtc2l6ZTogNXJlbTsgfVxuICAudGl0bGUtLXRvcGljIHtcbiAgICBmb250LXNpemU6IDIuODEyNXJlbTsgfVxuICAudGl0bGUtLXNlY3Rpb24ge1xuICAgIGZvbnQtc2l6ZTogMnJlbTsgfVxuICAgIC50aXRsZS0tc2VjdGlvbiA+IHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAudGl0bGUtLXRvcGljIHtcbiAgICBmb250LXNpemU6IDRyZW07IH0gfVxuXG4udGlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMzBweCAwIDMwcHg7IH1cbiAgLnRpbGVfX2ltZy1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0byAzMHB4OyB9XG4gICAgLnRpbGVfX2ltZy1saW5rIHBpY3R1cmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG4gICAgICAvKiAxNjo5IEFzcGVjdCBSYXRpbyAqLyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgICAgLnRpbGVfX2ltZy1saW5rIHBpY3R1cmUge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA3NSU7XG4gICAgICAgICAgLyogNDozIEFzcGVjdCBSYXRpbyAqLyB9IH1cbiAgICAgIC50aWxlX19pbWctbGluayBwaWN0dXJlIGltZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC50aWxlX19pbWctbGluayBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAudGlsZV9faW5mbywgLnRpbGVfX2NvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC50aWxlX190aXRsZSB7XG4gICAgbWFyZ2luOiAzMHB4IDA7IH1cbiAgICAudGlsZV9fdGl0bGUgPiBhOmhvdmVyLCAudGlsZV9fdGl0bGUgPiBhOmZvY3VzLCAudGlsZV9fdGl0bGUgPiBhOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMyYjMwMzQgMCUsICMyYjMwMzQgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4OyB9XG4gIC50aWxlX19zbmlwcGV0IHtcbiAgICBtYXJnaW46IDMwcHggMCAwOyB9XG5cbi50aWxlLS1sYXJnZSAudGlsZV9fdGl0bGUge1xuICBmb250LXNpemU6IDJyZW07IH1cblxuLnRpbGUtLWxhcmdlIC50aWxlX19zbmlwcGV0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udGlsZS0tbWVkaXVtLXdpZGUgLnRpbGVfX2luZm8ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMCAtMC41ZW07IH1cblxuLnRpbGUtLW1lZGl1bS13aWRlIC50aWxlX19zbmlwcGV0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLnRpbGUtLW1lZGl1bS13aWRlIC50aWxlX19pbWctbGluayxcbiAgLnRpbGUtLW1lZGl1bS13aWRlIC50aWxlX19jb250ZW50IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKCA1MCUgLSAyMHB4KTtcbiAgICBtYXgtd2lkdGg6IGNhbGMoIDUwJSAtIDIwcHgpO1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIG1heC13aWR0aDogY2FsYyg1MCUgLSAyMHB4KTsgfSB9XG5cbi50aWxlLS1tZWRpdW0td2lkZSAudGlsZV9fY29udGVudCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cblxuLnRpbGUtLXNtYWxsIC50aWxlX19jb250ZW50IHtcbiAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4udGlsZS0tc21hbGwgLnRpbGVfX2ltZy1saW5rLFxuLnRpbGUtLXNtYWxsIC50aWxlX19zbmlwcGV0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udGlsZS0tbGlzdCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAwIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTNlOGVhOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC50aWxlLS1saXN0LnNob3dUaHVtYiAudGlsZV9faW5mbyB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKCA2Ni42NjY2NjY2NjY3JSAtIDIwcHgpO1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKCA2Ni42NjY2NjY2NjY3JSAtIDIwcHgpO1xuICAgICAgb3JkZXI6IDE7XG4gICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgIG1heC13aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAyMHB4KTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC50aWxlLS1saXN0LnNob3dUaHVtYiAudGlsZV9faW1nLWxpbmsge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgZmxleC1iYXNpczogY2FsYyggMzMuMzMzMzMzMzMzMyUgLSAyMHB4KTtcbiAgICAgIG1heC13aWR0aDogY2FsYyggMzMuMzMzMzMzMzMzMyUgLSAyMHB4KTtcbiAgICAgIG9yZGVyOiAyO1xuICAgICAgbWFyZ2luOiAwIDEwcHg7IH0gfVxuICAudGlsZS0tbGlzdCAudGlsZV9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBtYXJnaW46IDE1cHggMDsgfVxuICAudGlsZS0tbGlzdCAudGlsZV9fc25pcHBldCB7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4uYXJjaGl2ZV9fbGlzdCAudGlsZS0tbGlzdC5mZWF0dXJlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogbm9uZTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5hcmNoaXZlX19saXN0IC50aWxlLS1saXN0LmZlYXR1cmVkIC50aWxlX19pbWctbGluayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZmxleDogbm9uZTsgfVxuICAgIC5hcmNoaXZlX19saXN0IC50aWxlLS1saXN0LmZlYXR1cmVkIC50aWxlX19pbmZvIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBmbGV4OiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMzBweCAzMHB4IDYwcHg7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgIC5hcmNoaXZlX19saXN0IC50aWxlLS1saXN0LmZlYXR1cmVkIC50aWxlX190aXRsZSBhLFxuICAgIC5hcmNoaXZlX19saXN0IC50aWxlLS1saXN0LmZlYXR1cmVkIC5tZXRhLFxuICAgIC5hcmNoaXZlX19saXN0IC50aWxlLS1saXN0LmZlYXR1cmVkIC5tZXRhIGEsXG4gICAgLmFyY2hpdmVfX2xpc3QgLnRpbGUtLWxpc3QuZmVhdHVyZWQgLnRvcGljIGEge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYXJjaGl2ZV9fbGlzdCAudGlsZS0tbGlzdC5mZWF0dXJlZCAudG9waWMgYSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYgMCUsICNmZmYgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmFyY2hpdmVfX2xpc3QgLnRpbGUtLWxpc3QuZmVhdHVyZWQgLnRpbGVfX2luZm8ge1xuICAgICAgbWF4LXdpZHRoOiA3NSU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgLmFyY2hpdmVfX2xpc3QgLnRpbGUtLWxpc3QuZmVhdHVyZWQgLnRpbGVfX2luZm8ge1xuICAgICAgcGFkZGluZzogMzBweCAzMHB4IDkwcHggNjBweDsgfSB9XG4gIC5hcmNoaXZlX19saXN0IC50aWxlLS1saXN0LmZlYXR1cmVkIC50aWxlX19pbWctbGluayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmFyY2hpdmVfX2xpc3QgLnRpbGUtLWxpc3QuZmVhdHVyZWQgLnRpbGVfX2ltZy1saW5rID4gaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAgIC5hcmNoaXZlX19saXN0IC50aWxlLS1saXN0LmZlYXR1cmVkIC50aWxlX19pbWctbGluazphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI2LCAyNiwgMjYsIDApIDAlLCAjMWExYTFhIDEwMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjYsIDI2LCAyNiwgMCkgMCUsICMxYTFhMWEgMTAwJSk7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjYsIDI2LCAyNiwgMCkgMCUsICMxYTFhMWEgMTAwJSk7XG4gICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDAxYTFhMWEnLCBlbmRDb2xvcnN0cj0nIzFhMWExYScsR3JhZGllbnRUeXBlPTAgKTsgfSB9XG4gIC5hcmNoaXZlX19saXN0IC50aWxlLS1saXN0LmZlYXR1cmVkIC50aWxlX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIG1hcmdpbjogMTVweCAwO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmFyY2hpdmVfX2xpc3QgLnRpbGUtLWxpc3QuZmVhdHVyZWQgLnRpbGVfX3RpdGxlID4gYTpob3ZlciwgLmFyY2hpdmVfX2xpc3QgLnRpbGUtLWxpc3QuZmVhdHVyZWQgLnRpbGVfX3RpdGxlID4gYTpmb2N1cywgLmFyY2hpdmVfX2xpc3QgLnRpbGUtLWxpc3QuZmVhdHVyZWQgLnRpbGVfX3RpdGxlID4gYTphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZmZmIDAlLCAjZmZmIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDFweDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgLmFyY2hpdmVfX2xpc3QgLnRpbGUtLWxpc3QuZmVhdHVyZWQgLnRpbGVfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuYXJjaGl2ZV9fbGlzdCAudGlsZS0tbGlzdC5mZWF0dXJlZCAudGlsZV9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIuNXJlbTsgfSB9XG4gIC5hcmNoaXZlX19saXN0IC50aWxlLS1saXN0LmZlYXR1cmVkIC50aWxlX19zbmlwcGV0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5ncmlkX19jb250YWluZXItLXRvcGljcyAudG9waWMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5ncmlkX19jb250YWluZXItLXRvcGljcyAudGlsZV9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5ncmlkX19jb250YWluZXItLXRvcGljcyBbZGF0YS10b3BpYz1cImNvbXBsaWFuY2VcIl0gLnRpbGVfX2ltZy1saW5rIHtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICNhNjE5MmU7IH1cblxuLmdyaWRfX2NvbnRhaW5lci0tdG9waWNzIFtkYXRhLXRvcGljPVwiY29udGVudC1kZXZlbG9wbWVudFwiXSAudGlsZV9faW1nLWxpbmsge1xuICBib3JkZXItdG9wOiA0cHggc29saWQgI2YyNmEzNjsgfVxuXG4uZ3JpZF9fY29udGFpbmVyLS10b3BpY3MgW2RhdGEtdG9waWM9XCJkaXZlcnNpdHktZXF1aXR5LWFuZC1pbmNsdXNpb25cIl0gLnRpbGVfX2ltZy1saW5rIHtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICM3NjIzMmY7IH1cblxuLmdyaWRfX2NvbnRhaW5lci0tdG9waWNzIFtkYXRhLXRvcGljPVwiZS1sZWFybmluZ1wiXSAudGlsZV9faW1nLWxpbmsge1xuICBib3JkZXItdG9wOiA0cHggc29saWQgI2ZmOGYxYzsgfVxuXG4uZ3JpZF9fY29udGFpbmVyLS10b3BpY3MgW2RhdGEtdG9waWM9XCJpdC1hbmQtdGVjaG5pY2FsLXRyYWluaW5nXCJdIC50aWxlX19pbWctbGluayB7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCAjYjk0NzAwOyB9XG5cbi5ncmlkX19jb250YWluZXItLXRvcGljcyBbZGF0YS10b3BpYz1cImxlYWRlcnNoaXBcIl0gLnRpbGVfX2ltZy1saW5rIHtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICNkYWFhMDA7IH1cblxuLmdyaWRfX2NvbnRhaW5lci0tdG9waWNzIFtkYXRhLXRvcGljPVwibGVhcm5pbmctdGVjaG5vbG9naWVzXCJdIC50aWxlX19pbWctbGluayB7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCAjODJjMzQxOyB9XG5cbi5ncmlkX19jb250YWluZXItLXRvcGljcyBbZGF0YS10b3BpYz1cIm1lYXN1cmVtZW50LWFuZC1hbmFseXRpY3NcIl0gLnRpbGVfX2ltZy1saW5rIHtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICMwMGIwOTg7IH1cblxuLmdyaWRfX2NvbnRhaW5lci0tdG9waWNzIFtkYXRhLXRvcGljPVwib3V0c291cmNpbmdcIl0gLnRpbGVfX2ltZy1saW5rIHtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICMwMDgyNjQ7IH1cblxuLmdyaWRfX2NvbnRhaW5lci0tdG9waWNzIFtkYXRhLXRvcGljPVwib25ib2FyZGluZ1wiXSAudGlsZV9faW1nLWxpbmsge1xuICBib3JkZXItdG9wOiA0cHggc29saWQgIzhmZDFjMzsgfVxuXG4uZ3JpZF9fY29udGFpbmVyLS10b3BpY3MgW2RhdGEtdG9waWM9XCJwZXJmb3JtYW5jZS1tYW5hZ2VtZW50XCJdIC50aWxlX19pbWctbGluayB7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCAjMDBiY2U3OyB9XG5cbi5ncmlkX19jb250YWluZXItLXRvcGljcyBbZGF0YS10b3BpYz1cInByb2Zlc3Npb25hbC1kZXZlbG9wbWVudFwiXSAudGlsZV9faW1nLWxpbmsge1xuICBib3JkZXItdG9wOiA0cHggc29saWQgIzAwNTU4YzsgfVxuXG4uZ3JpZF9fY29udGFpbmVyLS10b3BpY3MgW2RhdGEtdG9waWM9XCJyZW1vdGUtbGVhcm5pbmdcIl0gLnRpbGVfX2ltZy1saW5rIHtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICMwMDcwOTY7IH1cblxuLmdyaWRfX2NvbnRhaW5lci0tdG9waWNzIFtkYXRhLXRvcGljPVwic2FsZXNcIl0gLnRpbGVfX2ltZy1saW5rIHtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICM2NzU2YTU7IH1cblxuLmdyaWRfX2NvbnRhaW5lci0tdG9waWNzIFtkYXRhLXRvcGljPVwic3RyYXRlZ3ktYWxpZ25tZW50LWFuZC1wbGFubmluZ1wiXSAudGlsZV9faW1nLWxpbmsge1xuICBib3JkZXItdG9wOiA0cHggc29saWQgIzc3MjU4MzsgfVxuXG4uZ3JpZF9fY29udGFpbmVyLS10b3BpY3MgW2RhdGEtdG9waWM9XCJ3b3JrZm9yY2UtZGV2ZWxvcG1lbnRcIl0gLnRpbGVfX2ltZy1saW5rIHtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICM5YjI2YjY7IH1cblxuLmdyaWQtLXRvcGljcy1jb2xzIC50aWxlIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlM2U4ZWE7IH1cbiAgLmdyaWQtLXRvcGljcy1jb2xzIC50aWxlOm50aC1jaGlsZCgyKSB7XG4gICAgYm9yZGVyLXRvcDogMDsgfVxuICAgIC5ncmlkLS10b3BpY3MtY29scyAudGlsZTpudGgtY2hpbGQoMikgLnRpbGVfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zMTI1cmVtOyB9XG4gICAgLmdyaWQtLXRvcGljcy1jb2xzIC50aWxlOm50aC1jaGlsZCgyKSAudGlsZV9faW1nLWxpbmsge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmdyaWQtLXRvcGljcy1jb2xzIC50aWxlX190aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG4uZ3JpZC0tdG9waWNzLWNvbHMgLnRpbGVfX2NvbnRlbnQge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi50aWxlW2RhdGEtdHlwZT1cInRvcF9jb21wYW5pZXNcIl0gLnRpbGVfX2ltZy1saW5rIHtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAudGlsZVtkYXRhLXR5cGU9XCJ0b3BfY29tcGFuaWVzXCJdIC50aWxlX19pbWctbGluayAucGxhY2Vob2xkZXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgICAudGlsZVtkYXRhLXR5cGU9XCJ0b3BfY29tcGFuaWVzXCJdIC50aWxlX19pbWctbGluayAucGxhY2Vob2xkZXIgPiAuc3ZnIHtcbiAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAgIC50aWxlW2RhdGEtdHlwZT1cInRvcF9jb21wYW5pZXNcIl0gLnRpbGVfX2ltZy1saW5rIC5wbGFjZWhvbGRlciA+IC5zdmcgKiB7XG4gICAgICAgIGZpbGw6ICMyYjMwMzQ7IH1cbiAgICAudGlsZVtkYXRhLXR5cGU9XCJ0b3BfY29tcGFuaWVzXCJdIC50aWxlX19pbWctbGluayAucGxhY2Vob2xkZXIgLnRvcC1jb21wYW55X19wYXR0ZXJuIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLnRpbGVbZGF0YS10eXBlPVwidG9wX2NvbXBhbmllc1wiXSAudGlsZV9faW1nLWxpbmsgLnBsYWNlaG9sZGVyIC50b3AtY29tcGFueV9fcGF0dGVybiAuc3ZnIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgLnRpbGVbZGF0YS10eXBlPVwidG9wX2NvbXBhbmllc1wiXSAudGlsZV9faW1nLWxpbmsgLnBsYWNlaG9sZGVyIC50b3AtY29tcGFueV9fcGF0dGVybiAuc3ZnICoge1xuICAgICAgICAgIGZpbGw6ICNlNmU2ZTY7IH1cbiAgLnRpbGVbZGF0YS10eXBlPVwidG9wX2NvbXBhbmllc1wiXSAudGlsZV9faW1nLWxpbmsgLnRpbGVfX2ltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBtYXgtaGVpZ2h0OiA4MCU7XG4gICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgei1pbmRleDogMjsgfVxuXG4ud2ViaW5hcl9fdGlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBmbGV4LWdyb3c6IDE7XG4gIHBhZGRpbmc6IDAgMCAzMHB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQ6ICMyYjMwMzQ7XG4gIGNvbG9yOiAjZmZmO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC53ZWJpbmFyX190aWxlIGEge1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC53ZWJpbmFyX190aWxlIC53ZWJpbmFyX19kYXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAzMHB4O1xuICAgIGxlZnQ6IDMwcHg7XG4gICAgei1pbmRleDogMTsgfVxuXG4ud2ViaW5hcl9fZGF0ZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IGF1dG87XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC53ZWJpbmFyX19kYXRlIC5kYXkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBwYWRkaW5nOiAwIDVweCAwIDA7IH1cbiAgLndlYmluYXJfX2RhdGUgLmRhdGVfX3dyYXAge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAud2ViaW5hcl9fZGF0ZSAubW9udGgsXG4gIC53ZWJpbmFyX19kYXRlIC55ZWFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEuMTg3NXJlbTsgfVxuICAud2ViaW5hcl9fZGF0ZSAudGltZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luLXRvcDogNXB4OyB9XG5cbi53ZWJpbmFyX190aW1lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2M0YzljZDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XG4gIC53ZWJpbmFyX190aW1lIC5zdGFydHRpbWUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAud2ViaW5hcl9fdGltZSAubGVuZ3RoIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ud2ViaW5hcl9faWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzMHB4O1xuICByaWdodDogMzBweDtcbiAgd2lkdGg6IDI2cHg7XG4gIGhlaWdodDogMjZweDtcbiAgbWFyZ2luOiA1cHggMCAwIDA7IH1cbiAgLndlYmluYXJfX2ljb24gc3ZnICoge1xuICAgIGZpbGw6ICNmZmY7IH1cblxuLndlYmluYXJfX3BsYWNlaG9sZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG4gIC8qIDE2OjkgQXNwZWN0IFJhdGlvICovXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLndlYmluYXJfX3BsYWNlaG9sZGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA3NSU7XG4gICAgICAvKiA0OjMgQXNwZWN0IFJhdGlvICovIH0gfVxuXG4ud2ViaW5hcl9faW5mbyB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi53ZWJpbmFyX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDMwcHg7XG4gIHotaW5kZXg6IDE7IH1cbiAgLndlYmluYXJfX2NvbnRlbnQgLnRvcGljIGEge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzkxOTY5YSAwJSwgIzkxOTY5YSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxcHg7IH1cblxuLndlYmluYXJfX3RpdGxlIHtcbiAgbWFyZ2luOiAzMHB4IDA7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAud2ViaW5hcl9fdGl0bGUgPiBhOmhvdmVyLCAud2ViaW5hcl9fdGl0bGUgPiBhOmZvY3VzLCAud2ViaW5hcl9fdGl0bGUgPiBhOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZmZmIDAlLCAjZmZmIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDFweDsgfVxuXG4ud2ViaW5hcl9fZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDMwcHg7XG4gIHotaW5kZXg6IDE7IH1cbiAgLndlYmluYXJfX2Zvb3RlciAuYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBhZGRpbmc6IDE4cHggMjBweDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ud2ViaW5hcl9fc3BvbnNvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAud2ViaW5hcl9fc3BvbnNvciBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIC53ZWJpbmFyX19zcG9uc29yIHN0cm9uZyB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLndlYmluYXJfX3Nwb25zb3ItaW1nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWdyb3c6IDE7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiA2NXB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBoZWlnaHQ6IDY1cHg7XG4gIHdpZHRoOiA2NXB4O1xuICBtYXgtd2lkdGg6IDY1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcGFkZGluZzogOHB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAud2ViaW5hcl9fc3BvbnNvci1pbWcgPiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC53ZWJpbmFyX19zcG9uc29yLWltZy0tZnVsbCB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDE1MHB4O1xuICAgIHdpZHRoOiAxNTBweDtcbiAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi53ZWJpbmFyX19zcG9uc29yLXRleHQge1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG4ud2ViaW5hcl9fcGF0dGVybiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAwOyB9XG4gIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgLndlYmluYXJfX3BhdHRlcm4ge1xuICAgICAgLyogSUUxMCsgQ1NTIHN0eWxlcyBnbyBoZXJlICovXG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLndlYmluYXJfX3BhdHRlcm4gc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwOyB9XG4gICAgW2RhdGEtdG9waWM9XCJjb21wbGlhbmNlXCJdIC53ZWJpbmFyX19wYXR0ZXJuIHN2ZyAqIHtcbiAgICAgIGZpbGw6ICNhNjE5MmU7IH1cbiAgICBbZGF0YS10b3BpYz1cImNvbnRlbnQtZGV2ZWxvcG1lbnRcIl0gLndlYmluYXJfX3BhdHRlcm4gc3ZnICoge1xuICAgICAgZmlsbDogI2YyNmEzNjsgfVxuICAgIFtkYXRhLXRvcGljPVwiZGl2ZXJzaXR5LWVxdWl0eS1hbmQtaW5jbHVzaW9uXCJdIC53ZWJpbmFyX19wYXR0ZXJuIHN2ZyAqIHtcbiAgICAgIGZpbGw6ICM3NjIzMmY7IH1cbiAgICBbZGF0YS10b3BpYz1cImUtbGVhcm5pbmdcIl0gLndlYmluYXJfX3BhdHRlcm4gc3ZnICoge1xuICAgICAgZmlsbDogI2ZmOGYxYzsgfVxuICAgIFtkYXRhLXRvcGljPVwiaXQtYW5kLXRlY2huaWNhbC10cmFpbmluZ1wiXSAud2ViaW5hcl9fcGF0dGVybiBzdmcgKiB7XG4gICAgICBmaWxsOiAjYjk0NzAwOyB9XG4gICAgW2RhdGEtdG9waWM9XCJsZWFkZXJzaGlwXCJdIC53ZWJpbmFyX19wYXR0ZXJuIHN2ZyAqIHtcbiAgICAgIGZpbGw6ICNkYWFhMDA7IH1cbiAgICBbZGF0YS10b3BpYz1cImxlYXJuaW5nLXRlY2hub2xvZ2llc1wiXSAud2ViaW5hcl9fcGF0dGVybiBzdmcgKiB7XG4gICAgICBmaWxsOiAjODJjMzQxOyB9XG4gICAgW2RhdGEtdG9waWM9XCJtZWFzdXJlbWVudC1hbmQtYW5hbHl0aWNzXCJdIC53ZWJpbmFyX19wYXR0ZXJuIHN2ZyAqIHtcbiAgICAgIGZpbGw6ICMwMGIwOTg7IH1cbiAgICBbZGF0YS10b3BpYz1cIm91dHNvdXJjaW5nXCJdIC53ZWJpbmFyX19wYXR0ZXJuIHN2ZyAqIHtcbiAgICAgIGZpbGw6ICMwMDgyNjQ7IH1cbiAgICBbZGF0YS10b3BpYz1cIm9uYm9hcmRpbmdcIl0gLndlYmluYXJfX3BhdHRlcm4gc3ZnICoge1xuICAgICAgZmlsbDogIzhmZDFjMzsgfVxuICAgIFtkYXRhLXRvcGljPVwicGVyZm9ybWFuY2UtbWFuYWdlbWVudFwiXSAud2ViaW5hcl9fcGF0dGVybiBzdmcgKiB7XG4gICAgICBmaWxsOiAjMDBiY2U3OyB9XG4gICAgW2RhdGEtdG9waWM9XCJwcm9mZXNzaW9uYWwtZGV2ZWxvcG1lbnRcIl0gLndlYmluYXJfX3BhdHRlcm4gc3ZnICoge1xuICAgICAgZmlsbDogIzAwNTU4YzsgfVxuICAgIFtkYXRhLXRvcGljPVwicmVtb3RlLWxlYXJuaW5nXCJdIC53ZWJpbmFyX19wYXR0ZXJuIHN2ZyAqIHtcbiAgICAgIGZpbGw6ICMwMDcwOTY7IH1cbiAgICBbZGF0YS10b3BpYz1cInNhbGVzXCJdIC53ZWJpbmFyX19wYXR0ZXJuIHN2ZyAqIHtcbiAgICAgIGZpbGw6ICM2NzU2YTU7IH1cbiAgICBbZGF0YS10b3BpYz1cInN0cmF0ZWd5LWFsaWdubWVudC1hbmQtcGxhbm5pbmdcIl0gLndlYmluYXJfX3BhdHRlcm4gc3ZnICoge1xuICAgICAgZmlsbDogIzc3MjU4MzsgfVxuICAgIFtkYXRhLXRvcGljPVwid29ya2ZvcmNlLWRldmVsb3BtZW50XCJdIC53ZWJpbmFyX19wYXR0ZXJuIHN2ZyAqIHtcbiAgICAgIGZpbGw6ICM5YjI2YjY7IH1cblxuLndlYmluYXItLWZlYXR1cmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAyMDBweCAwIDMwcHg7XG4gIGJhY2tncm91bmQ6ICMyYjMwMzQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC53ZWJpbmFyLS1mZWF0dXJlZCB7XG4gICAgICBwYWRkaW5nOiAxMjBweCAwIDYwcHg7IH0gfVxuICAud2ViaW5hci0tZmVhdHVyZWQgYSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLndlYmluYXItLWZlYXR1cmVkIC50b3BpYyBhIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM5MTk2OWEgMCUsICM5MTk2OWEgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4OyB9XG4gIC53ZWJpbmFyLS1mZWF0dXJlZCAud2ViaW5hcl9faW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLndlYmluYXItLWZlYXR1cmVkIC53ZWJpbmFyX19pbmZvIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cbiAgLndlYmluYXItLWZlYXR1cmVkIC53ZWJpbmFyX19oZWFkaW5nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC53ZWJpbmFyLS1mZWF0dXJlZCAud2ViaW5hcl9faGVhZGluZyB7XG4gICAgICAgIGZsZXg6IDAgMSA1NSU7IH0gfVxuICAgIC53ZWJpbmFyLS1mZWF0dXJlZCAud2ViaW5hcl9faGVhZGluZyAud2ViaW5hcl9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAycmVtOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAgIC53ZWJpbmFyLS1mZWF0dXJlZCAud2ViaW5hcl9faGVhZGluZyAud2ViaW5hcl9fdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTsgfSB9XG4gIC53ZWJpbmFyLS1mZWF0dXJlZCAud2ViaW5hcl9fY2FyZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcGFkZGluZzogMzBweCAwIDA7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAud2ViaW5hci0tZmVhdHVyZWQgLndlYmluYXJfX2NhcmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICBjb2xvcjogIzJiMzAzNDtcbiAgICAgICAgbWluLXdpZHRoOiA0MDBweDsgfSB9XG4gIC53ZWJpbmFyLS1mZWF0dXJlZCAud2ViaW5hcl9fc3RhcnQge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBtYXJnaW46IDMwcHggMDsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC53ZWJpbmFyLS1mZWF0dXJlZCAud2ViaW5hcl9fc3RhcnQge1xuICAgICAgICBtYXJnaW46IDQwcHggMDsgfSB9XG4gICAgLndlYmluYXItLWZlYXR1cmVkIC53ZWJpbmFyX19zdGFydCAud2ViaW5hcl9fdGltZSB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLndlYmluYXItLWZlYXR1cmVkIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC53ZWJpbmFyLS1mZWF0dXJlZCAucmVnaXN0cmF0aW9uLWVuZHMge1xuICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAud2ViaW5hci0tZmVhdHVyZWQgLnJlZ2lzdHJhdGlvbi1lbmRzIHtcbiAgICAgICAgY29sb3I6ICM5MTk2OWE7IH0gfVxuICAud2ViaW5hci0tZmVhdHVyZWQgLndlYmluYXJfX3BhdHRlcm4ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDYwJTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC53ZWJpbmFyLS1mZWF0dXJlZCAud2ViaW5hcl9fcGF0dGVybiB7XG4gICAgICAgIHdpZHRoOiA1MDBweDsgfSB9XG5cbi53ZWJpbmFyLS1mZWF0dXJlZFtkYXRhLXRvcGljPVwiY29tcGxpYW5jZVwiXSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E2MTkyZTsgfVxuXG4ud2ViaW5hci0tZmVhdHVyZWRbZGF0YS10b3BpYz1cImNvbnRlbnQtZGV2ZWxvcG1lbnRcIl0gLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMjZhMzY7IH1cblxuLndlYmluYXItLWZlYXR1cmVkW2RhdGEtdG9waWM9XCJkaXZlcnNpdHktZXF1aXR5LWFuZC1pbmNsdXNpb25cIl0gLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3NjIzMmY7IH1cblxuLndlYmluYXItLWZlYXR1cmVkW2RhdGEtdG9waWM9XCJlLWxlYXJuaW5nXCJdIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY4ZjFjOyB9XG5cbi53ZWJpbmFyLS1mZWF0dXJlZFtkYXRhLXRvcGljPVwiaXQtYW5kLXRlY2huaWNhbC10cmFpbmluZ1wiXSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I5NDcwMDsgfVxuXG4ud2ViaW5hci0tZmVhdHVyZWRbZGF0YS10b3BpYz1cImxlYWRlcnNoaXBcIl0gLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYWFhMDA7IH1cblxuLndlYmluYXItLWZlYXR1cmVkW2RhdGEtdG9waWM9XCJsZWFybmluZy10ZWNobm9sb2dpZXNcIl0gLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MmMzNDE7IH1cblxuLndlYmluYXItLWZlYXR1cmVkW2RhdGEtdG9waWM9XCJtZWFzdXJlbWVudC1hbmQtYW5hbHl0aWNzXCJdIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiMDk4OyB9XG5cbi53ZWJpbmFyLS1mZWF0dXJlZFtkYXRhLXRvcGljPVwib3V0c291cmNpbmdcIl0gLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDgyNjQ7IH1cblxuLndlYmluYXItLWZlYXR1cmVkW2RhdGEtdG9waWM9XCJvbmJvYXJkaW5nXCJdIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGZkMWMzOyB9XG5cbi53ZWJpbmFyLS1mZWF0dXJlZFtkYXRhLXRvcGljPVwicGVyZm9ybWFuY2UtbWFuYWdlbWVudFwiXSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYmNlNzsgfVxuXG4ud2ViaW5hci0tZmVhdHVyZWRbZGF0YS10b3BpYz1cInByb2Zlc3Npb25hbC1kZXZlbG9wbWVudFwiXSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTU4YzsgfVxuXG4ud2ViaW5hci0tZmVhdHVyZWRbZGF0YS10b3BpYz1cInJlbW90ZS1sZWFybmluZ1wiXSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzA5NjsgfVxuXG4ud2ViaW5hci0tZmVhdHVyZWRbZGF0YS10b3BpYz1cInNhbGVzXCJdIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjc1NmE1OyB9XG5cbi53ZWJpbmFyLS1mZWF0dXJlZFtkYXRhLXRvcGljPVwic3RyYXRlZ3ktYWxpZ25tZW50LWFuZC1wbGFubmluZ1wiXSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc3MjU4MzsgfVxuXG4ud2ViaW5hci0tZmVhdHVyZWRbZGF0YS10b3BpYz1cIndvcmtmb3JjZS1kZXZlbG9wbWVudFwiXSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzliMjZiNjsgfVxuXG4ud2ViaW5hcl9faW50cm8ge1xuICBtYXJnaW46IDAgMCA4MHB4O1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDI7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC53ZWJpbmFyX19pbnRybyB7XG4gICAgICBjb2x1bW4tY291bnQ6IDI7IH0gfVxuICAud2ViaW5hcl9faW50cm8gKyAuY29udGVudC1tb2R1bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuXG4uc2luZ2xlLXdlYmluYXJzIC5wYWdlX19oZWFkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4uc2luZ2xlLXdlYmluYXJzIC50aXRsZS0tc2luZ2xlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uc2luZ2xlLXdlYmluYXJzIC5zcG9uc29yX19iYXIgLnNwb25zb3JfX2Jsb2NrOm9ubHktY2hpbGQge1xuICBmbGV4LWJhc2lzOiAzMDBweDtcbiAgbWF4LXdpZHRoOiAzMDBweDsgfVxuXG4ubWV0YSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjNWU2MzY3O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5tZXRhX193cmFwIHtcbiAgICBmbGV4OiAxO1xuICAgIG1pbi13aWR0aDogMDsgfVxuICAubWV0YV9fY29udGVudCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG4gICAgLm1ldGFfX2NvbnRlbnQgPiAqOm5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcMjAyMic7XG4gICAgICBtYXJnaW46IDAgOHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC50aWxlIC5tZXRhX19wdWItZGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAubWV0YV9fYXV0aG9yW2hyZWZdIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgY29sb3I6ICM1ZTYzNjc7IH1cbiAgICAubWV0YV9fYXV0aG9yW2hyZWZdOmhvdmVyLCAubWV0YV9fYXV0aG9yW2hyZWZdOmZvY3VzLCAubWV0YV9fYXV0aG9yW2hyZWZdOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM1ZTYzNjcgMCUsICM1ZTYzNjcgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4OyB9XG5cbi50b3BpYyB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgY29sb3I6ICMyYjMwMzQ7IH1cbiAgLnRvcGljID4gYSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYzRjOWNkIDAlLCAjYzRjOWNkIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDFweDsgfVxuICAgIC50b3BpYyA+IGE6aG92ZXIsIC50b3BpYyA+IGE6Zm9jdXMsIC50b3BpYyA+IGE6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAwO1xuICAgICAgY29sb3I6ICM1ZTYzNjc7IH1cblxuLnBhZ2UtdGVtcGxhdGUtY3VzdG9tLXRvcGljLWxhbmRpbmcgLmNvbnRlbnQtbW9kdWxlIHtcbiAgcGFkZGluZy10b3A6IDUwcHg7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cblxuLmNhbGxvdXQge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiA2MHB4IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZjBmNWY3OyB9XG4gIC5jYWxsb3V0OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5jYWxsb3V0X19jb250YWluZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwIC0wLjVlbTtcbiAgICBwYWRkaW5nOiA2MHB4IDMwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jYWxsb3V0X19jb250YWluZXIge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luOiAwIC0wLjVlbTsgfSB9XG4gIC5jYWxsb3V0X19pdGVtIHtcbiAgICBmbGV4OiAwIDEgMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWF4LXdpZHRoOiA3MDBweDsgfVxuICAgIC5jYWxsb3V0X19pdGVtLS1pbWcge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5jYWxsb3V0X19pdGVtLS1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuY2FsbG91dF9faXRlbS0tY29udGVudCAuY2FsbG91dF9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gICAgICAgIC5jYWxsb3V0X19pdGVtLS1jb250ZW50IC5jYWxsb3V0X190aXRsZS0tbGluayA+IGE6aG92ZXIsIC5jYWxsb3V0X19pdGVtLS1jb250ZW50IC5jYWxsb3V0X190aXRsZS0tbGluayA+IGE6Zm9jdXMsIC5jYWxsb3V0X19pdGVtLS1jb250ZW50IC5jYWxsb3V0X190aXRsZS0tbGluayA+IGE6YWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMyYjMwMzQgMCUsICMyYjMwMzQgMTAwJSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4OyB9XG4gICAgICAuY2FsbG91dF9faXRlbS0tY29udGVudCAuY2FsbG91dF9fc25pcHBldCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xODc1cmVtOyB9XG4gICAgLmNhbGxvdXRfX2l0ZW0tLWN0YSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmNhbGxvdXRfX2l0ZW0tLWN0YSAuYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY2FsbG91dF9faXRlbSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgICAuY2FsbG91dF9faXRlbS0tY29udGVudCB7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgZmxleC1iYXNpczogY2FsYyggNjYuNjY2NjY2NjY2NyUgLSAyMHB4KTtcbiAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoIDY2LjY2NjY2NjY2NjclIC0gMjBweCk7XG4gICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgICAgICAuY2FsbG91dF9faXRlbS0tY29udGVudCAuY2FsbG91dF9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVlbTsgfVxuICAgICAgICAgIC5jYWxsb3V0X19pdGVtLS1jb250ZW50IC5jYWxsb3V0X19zbmlwcGV0IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgICAuY2FsbG91dF9faXRlbS0tY3RhIHtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKCAzMy4zMzMzMzMzMzMzJSAtIDIwcHgpO1xuICAgICAgICAgIG1heC13aWR0aDogY2FsYyggMzMuMzMzMzMzMzMzMyUgLSAyMHB4KTtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luOiAwIDEwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5jYWxsb3V0X19pdGVtLS1pbWcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKCAyNSUgLSAyMHB4KTtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKCAyNSUgLSAyMHB4KTtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4OyB9XG4gICAgICAgIC5jYWxsb3V0X19pdGVtLS1pbWcgaW1nIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAtNjBweDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAyODBweDsgfVxuICAgICAgLmNhbGxvdXRfX2l0ZW0tLWNvbnRlbnQge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKCA1MCUgLSAyMHB4KTtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKCA1MCUgLSAyMHB4KTtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgMTBweDsgfVxuICAgICAgLmNhbGxvdXRfX2l0ZW0tLWN0YSB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoIDI1JSAtIDIwcHgpO1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoIDI1JSAtIDIwcHgpO1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4OyB9IH1cbiAgLmNhbGxvdXRfX2xpbms6aG92ZXIsIC5jYWxsb3V0X19saW5rOmFjdGl2ZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmNhbGxvdXQtLW1hZ2F6aW5lIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjBmNWY3OyB9XG5cbi5wYWdlX19oZWFkZXIgKyAuY2FsbG91dCB7XG4gIG1hcmdpbi10b3A6IDEwMHB4OyB9XG5cbi5mZWF0dXJlX19hcnRpY2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5mZWF0dXJlX19hcnRpY2xlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgIC5mZWF0dXJlX19hcnRpY2xlIC53cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgei1pbmRleDogMjsgfSB9XG5cbi5mZWF0dXJlX19pbWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZlYXR1cmVfX2ltZyA+IHBpY3R1cmUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAuZmVhdHVyZV9faW1nOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI2LCAyNiwgMjYsIDApIDAlLCAjMWExYTFhIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI2LCAyNiwgMjYsIDApIDAlLCAjMWExYTFhIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNiwgMjYsIDI2LCAwKSAwJSwgIzFhMWExYSAxMDAlKTtcbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDAxYTFhMWEnLCBlbmRDb2xvcnN0cj0nIzFhMWExYScsR3JhZGllbnRUeXBlPTAgKTsgfSB9XG5cbi5mZWF0dXJlX19pbmZvIHtcbiAgcGFkZGluZzogMzBweCAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UzZThlYTtcbiAgY29sb3I6ICNmZmY7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmZlYXR1cmVfX2luZm8ge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfSB9XG5cbi5mZWF0dXJlX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbWFyZ2luOiAzMHB4IDA7IH1cbiAgLmZlYXR1cmVfX3RpdGxlID4gYTpob3ZlciwgLmZlYXR1cmVfX3RpdGxlID4gYTpmb2N1cywgLmZlYXR1cmVfX3RpdGxlID4gYTphY3RpdmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzJiMzAzNCAwJSwgIzJiMzAzNCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgLmZlYXR1cmVfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuZmVhdHVyZV9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyLjgxMjVyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgLmZlYXR1cmVfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMy42MjVyZW07XG4gICAgICBtYXgtd2lkdGg6IDYwJTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgIC5mZWF0dXJlX190aXRsZS0tcmVzaXplZCB7XG4gICAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZlYXR1cmVfX3RpdGxlLS1yZXNpemVkIHtcbiAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAuZmVhdHVyZV9fdGl0bGUtLXJlc2l6ZWQge1xuICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICAgIG1heC13aWR0aDogNjAlOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgIC5mZWF0dXJlX190aXRsZS0tcmVzaXplZCB7XG4gICAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgICBtYXgtd2lkdGg6IDYwJTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAuZmVhdHVyZV9fYnRuIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAuZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuZmVhdHVyZV9fdGl0bGUgYSxcbiAgLmZlYXR1cmVfX2FydGljbGVbZGF0YS10aGVtZT1cImRhcmtcIl0gLm1ldGEsXG4gIC5mZWF0dXJlX19hcnRpY2xlW2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5tZXRhIGEsXG4gIC5mZWF0dXJlX19hcnRpY2xlW2RhdGEtdGhlbWU9XCJkYXJrXCJdIC50b3BpYyBhIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAuZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXRoZW1lPVwiZGFya1wiXSAudG9waWMgYSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZmZmIDAlLCAjZmZmIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDFweDsgfVxuICAuZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXRoZW1lPVwiZGFya1wiXSBhOm5vdCguZmVhdHVyZV9fYnRuKTpob3ZlciwgLmZlYXR1cmVfX2FydGljbGVbZGF0YS10aGVtZT1cImRhcmtcIl0gYTpub3QoLmZlYXR1cmVfX2J0bik6YWN0aXZlLCAuZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXRoZW1lPVwiZGFya1wiXSBhOm5vdCguZmVhdHVyZV9fYnRuKTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZmZmIDAlLCAjZmZmIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDFweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2MzlweCkge1xuICAuZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuZmVhdHVyZV9fYnRuIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5mZWF0dXJlX19hcnRpY2xlW2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuZmVhdHVyZV9fdGl0bGUgYSxcbiAgLmZlYXR1cmVfX2FydGljbGVbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5tZXRhLFxuICAuZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLm1ldGEgYSxcbiAgLmZlYXR1cmVfX2FydGljbGVbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC50b3BpYyBhIHtcbiAgICBjb2xvcjogIzJiMzAzNDsgfVxuICAuZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gYTpub3QoLmZlYXR1cmVfX2J0bik6aG92ZXIsIC5mZWF0dXJlX19hcnRpY2xlW2RhdGEtdGhlbWU9XCJsaWdodFwiXSBhOm5vdCguZmVhdHVyZV9fYnRuKTphY3RpdmUsIC5mZWF0dXJlX19hcnRpY2xlW2RhdGEtdGhlbWU9XCJsaWdodFwiXSBhOm5vdCguZmVhdHVyZV9fYnRuKTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMmIzMDM0IDAlLCAjMmIzMDM0IDEwMCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDFweDsgfVxuICAuZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmZlYXR1cmVfX2ltZzphZnRlciB7XG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI0MCwgMjQ1LCAyNDcsIDApIDAlLCAjZjBmNWY3IDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNDAsIDI0NSwgMjQ3LCAwKSAwJSwgI2YwZjVmNyAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDI0MCwgMjQ1LCAyNDcsIDApIDAlLCAjZjBmNWY3IDEwMCUpO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDAxYTFhMWEnLCBlbmRDb2xvcnN0cj0nIzFhMWExYScsR3JhZGllbnRUeXBlPTAgKTsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2MzlweCkge1xuICAuZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmZlYXR1cmVfX2J0biB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5mZWF0dXJlX19hcnRpY2xlW2RhdGEtc3R5bGU9XCJuby1ncmFkaWVudFwiXSAuZmVhdHVyZV9faW1nOmFmdGVyIHtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5zcG9uc29yX19iYXIge1xuICBwYWRkaW5nOiAxNXB4IDAgMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAuc3BvbnNvcl9fYmFyIC53cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNwb25zb3JfX2JhciAub3dsLW5leHQsXG4gIC5zcG9uc29yX19iYXIgLm93bC1wcmV2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjMmIzMDM0ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMyYjMwMzQgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAuc3BvbnNvcl9fYmFyIC5vd2wtbmV4dCBzcGFuLFxuICAgIC5zcG9uc29yX19iYXIgLm93bC1wcmV2IHNwYW4ge1xuICAgICAgdGV4dC1pbmRlbnQ6IDEwMSU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNwb25zb3JfX2JhciAub3dsLXByZXYge1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTsgfVxuICAuc3BvbnNvcl9fYmFyIC5vd2wtbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuICAuc3BvbnNvcl9fYmFyIC5jbG9zZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuc3BvbnNvcl9fYmFyLmNsb3NlZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgLnNwb25zb3JfX2Jhci5maXhlZCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjNGM5Y2Q7IH0gfVxuICAuc3BvbnNvcl9fYmFyLmZpeGVkIC5jbG9zZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTI3cHg7XG4gICAgcmlnaHQ6IC01MHB4O1xuICAgIHBhZGRpbmc6IDBweCA4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UzZThlYTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuc3BvbnNvcl9fYmFyLmZpeGVkIC5pY29uIHtcbiAgICB3aWR0aDogMTBweDsgfVxuXG4uc3BvbnNvcl9fYmFyLXdyYXBbZGF0YS1jb3VudD1cIjFcIl0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uc3BvbnNvcl9fYmFyLXdyYXAub3dsLWNhcm91c2VsIGltZyB7XG4gIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLnNwb25zb3JfX2hlYWRpbmcge1xuICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5zcG9uc29yX19oZWFkaW5nIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5zcG9uc29yX19oZWFkaW5nIGEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7IH0gfVxuXG4uc3BvbnNvcl9fYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuc3BvbnNvcl9fYmxvY2sgPiBkaXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuc3BvbnNvcl9fYmxvY2sgLnJhdGlvX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7IH1cblxuLnNwb25zb3JfX2xvZ28ge1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEyNW1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cbiAgLnNwb25zb3JfX2xvZ286aG92ZXIsIC5zcG9uc29yX19sb2dvOmZvY3VzLCAuc3BvbnNvcl9fbG9nbzphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfVxuXG4uZmlsdGVyOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZmlsdGVyX19oZWFkaW5nIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogYXV0bzsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZmlsdGVyX19jb250cm9scy0tZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZmlsdGVyX19jb250cm9scy0tbW9iaWxlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjlweCkge1xuICAuZmlsdGVyX19jb250cm9scy0tZGVza3RvcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5maWx0ZXJfX2NvbnRyb2xzLS1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uZmlsdGVyX19sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4uZmlsdGVyX19zZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDAgMTBweDsgfVxuXG4uZmlsdGVyX190b2dnbGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDAgMzBweDsgfVxuXG4uZmlsdGVyX19saXN0IHtcbiAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAxMjVtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG4gIC5maWx0ZXJfX2xpc3RbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdIHtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmZpbHRlcl9fbGlzdFthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgbWF4LWhlaWdodDogMTAwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmZpbHRlcl9fbGlzdCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAgIC5maWx0ZXJfX2xpc3QgbGk6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAuZmlsdGVyX19saXN0IGxpLmFjdGl2ZSBhIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzVlNjM2NyAwJSwgIzVlNjM2NyAxMDAlKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxcHg7IH1cbiAgICAuZmlsdGVyX19saXN0IGxpIGEge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYzRjOWNkIDAlLCAjYzRjOWNkIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDFweDsgfVxuICAgICAgLmZpbHRlcl9fbGlzdCBsaSBhOmhvdmVyLCAuZmlsdGVyX19saXN0IGxpIGE6YWN0aXZlLCAuZmlsdGVyX19saXN0IGxpIGE6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMDtcbiAgICAgICAgY29sb3I6ICM1ZTYzNjc7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZpbHRlcl9fbGlzdCB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuXG4uc29jaWFsX19jYWxsb3V0IHtcbiAgbWFyZ2luOiA2MHB4IDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBjb2xvcjogIzVlNjM2NztcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5zb2NpYWxfX2NhbGxvdXQge1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9IH1cbiAgLnNvY2lhbF9fY2FsbG91dC1xdW90ZSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5zb2NpYWxfX2NhbGxvdXQtbGluayB7XG4gICAgY29sb3I6ICM1ZTYzNjc7IH1cbiAgICAuc29jaWFsX19jYWxsb3V0LWxpbms6aG92ZXIsIC5zb2NpYWxfX2NhbGxvdXQtbGluazpmb2N1cywgLnNvY2lhbF9fY2FsbG91dC1saW5rOmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMyYjMwMzQgMCUsICMyYjMwMzQgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4OyB9XG4gIC5zb2NpYWxfX2NhbGxvdXQgc3ZnLFxuICAuc29jaWFsX19jYWxsb3V0IC5pY29uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDEwcHggYXV0byAwO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDsgfVxuICAgIC5zb2NpYWxfX2NhbGxvdXQgc3ZnICosXG4gICAgLnNvY2lhbF9fY2FsbG91dCAuaWNvbiAqIHtcbiAgICAgIGZpbGw6ICM4ZmQxYzM7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5zb2NpYWxfX2NhbGxvdXQgc3ZnLFxuICAgICAgLnNvY2lhbF9fY2FsbG91dCAuaWNvbiB7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7IH0gfVxuXG4udGFncyB7XG4gIGNsZWFyOiBib3RoO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDYwcHggMCAwO1xuICBtYXJnaW46IDYwcHggMCAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2UzZThlYTsgfVxuICAudGFnczpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IHVybChcIi4uL2Fzc2V0cy9pbWcvbG9nb3MvdGktbG9nby1lbWJsZW0uc3ZnXCIpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xNHB4O1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTVweCk7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAzMHB4OyB9XG4gIC50YWdzX19saXN0IHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UzZThlYTsgfVxuICAudGFnc19faXRlbSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC50YWdzX19pdGVtIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgMCAxMHB4OyB9IH1cbiAgICAudGFnc19faXRlbSA+IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjBmNWY3O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBjb2xvcjogIzVlNjM2NztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDEyNW1zICNiYXNlLWFuaW1hdGlvbi1lYXNpbmc7IH1cbiAgICAgIC50YWdzX19pdGVtID4gYTpob3ZlciwgLnRhZ3NfX2l0ZW0gPiBhOmFjdGl2ZSwgLnRhZ3NfX2l0ZW0gPiBhOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2UzZThlYTsgfVxuXG4uYXV0aG9yIHtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmc6IDYwcHggMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hdXRob3Ige1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gIC5hdXRob3JfX3BpYyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogNzVweDtcbiAgICB3aWR0aDogNzVweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW46IDAgYXV0byAzMHB4OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuYXV0aG9yX19waWMge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwIDQwcHggMCAwOyB9IH1cbiAgLmF1dGhvcl9fYmlvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5hdXRob3JfX2JpbyB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgMTE1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAgIC5hdXRob3JfX2JpbyBbaXRlbXByb3A9XCJuYW1lXCJdIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW46IDAgMCAxMHB4OyB9XG4gIC5hdXRob3JfX21vcmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzJiMzAzNCAwJSwgIzJiMzAzNCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxcHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4ucmVsYXRlZC1jb250ZW50IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDAgLTIwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5yZWxhdGVkLWNvbnRlbnQgLnRpbGUge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgZmxleC1iYXNpczogY2FsYyggMzMuMzMzMzMzMzMzMyUgLSA0MHB4KTtcbiAgICAgIG1heC13aWR0aDogY2FsYyggMzMuMzMzMzMzMzMzMyUgLSA0MHB4KTtcbiAgICAgIG1hcmdpbjogMCAyMHB4OyB9IH1cblxuLnBsYWNlaG9sZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDU2LjI1JTtcbiAgLyogMTY6OSBBc3BlY3QgUmF0aW8gKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogI2UzZThlYTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgICAucGxhY2Vob2xkZXIge1xuICAgICAgcGFkZGluZy10b3A6IDc1JTtcbiAgICAgIC8qIDQ6MyBBc3BlY3QgUmF0aW8gKi8gfSB9XG4gIC50aWxlLS1sYXJnZSAucGxhY2Vob2xkZXIsXG4gIC5mZWF0dXJlZCAucGxhY2Vob2xkZXIge1xuICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG4gICAgLyogMTY6OSBBc3BlY3QgUmF0aW8gKi8gfVxuICBbZGF0YS10b3BpYz1cImNvbXBsaWFuY2VcIl0gLnBsYWNlaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYxOTJlOyB9XG4gIFtkYXRhLXRvcGljPVwiY29udGVudC1kZXZlbG9wbWVudFwiXSAucGxhY2Vob2xkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMjZhMzY7IH1cbiAgW2RhdGEtdG9waWM9XCJkaXZlcnNpdHktZXF1aXR5LWFuZC1pbmNsdXNpb25cIl0gLnBsYWNlaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzYyMzJmOyB9XG4gIFtkYXRhLXRvcGljPVwiZS1sZWFybmluZ1wiXSAucGxhY2Vob2xkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjhmMWM7IH1cbiAgW2RhdGEtdG9waWM9XCJpdC1hbmQtdGVjaG5pY2FsLXRyYWluaW5nXCJdIC5wbGFjZWhvbGRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2I5NDcwMDsgfVxuICBbZGF0YS10b3BpYz1cImxlYWRlcnNoaXBcIl0gLnBsYWNlaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGFhYTAwOyB9XG4gIFtkYXRhLXRvcGljPVwibGVhcm5pbmctdGVjaG5vbG9naWVzXCJdIC5wbGFjZWhvbGRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzgyYzM0MTsgfVxuICBbZGF0YS10b3BpYz1cIm1lYXN1cmVtZW50LWFuZC1hbmFseXRpY3NcIl0gLnBsYWNlaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiMDk4OyB9XG4gIFtkYXRhLXRvcGljPVwib3V0c291cmNpbmdcIl0gLnBsYWNlaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4MjY0OyB9XG4gIFtkYXRhLXRvcGljPVwib25ib2FyZGluZ1wiXSAucGxhY2Vob2xkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4ZmQxYzM7IH1cbiAgW2RhdGEtdG9waWM9XCJwZXJmb3JtYW5jZS1tYW5hZ2VtZW50XCJdIC5wbGFjZWhvbGRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYmNlNzsgfVxuICBbZGF0YS10b3BpYz1cInByb2Zlc3Npb25hbC1kZXZlbG9wbWVudFwiXSAucGxhY2Vob2xkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU1OGM7IH1cbiAgW2RhdGEtdG9waWM9XCJyZW1vdGUtbGVhcm5pbmdcIl0gLnBsYWNlaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3MDk2OyB9XG4gIFtkYXRhLXRvcGljPVwic2FsZXNcIl0gLnBsYWNlaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjc1NmE1OyB9XG4gIFtkYXRhLXRvcGljPVwic3RyYXRlZ3ktYWxpZ25tZW50LWFuZC1wbGFubmluZ1wiXSAucGxhY2Vob2xkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3NzI1ODM7IH1cbiAgW2RhdGEtdG9waWM9XCJ3b3JrZm9yY2UtZGV2ZWxvcG1lbnRcIl0gLnBsYWNlaG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWIyNmI2OyB9XG4gIC5wbGFjZWhvbGRlciA+IC5zdmcge1xuICAgIHdpZHRoOiAxMjBweDtcbiAgICBoZWlnaHQ6IDEyMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgICAucGxhY2Vob2xkZXIgPiAuc3ZnICoge1xuICAgICAgZmlsbDogI2ZmZjsgfVxuICAgICAgW2RhdGEtdG9waWM9XCJsZWFkZXJzaGlwXCJdIC5wbGFjZWhvbGRlciA+IC5zdmcgKiB7XG4gICAgICAgIGZpbGw6ICMxYTFhMWE7IH1cblxuLnBhZ2VfX2hlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMCAwIDQwcHg7XG4gIG1hcmdpbjogMCAwIDYwcHg7IH1cbiAgLnBhZ2VfX2hlYWRlcjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxODBweDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBiYWNrZ3JvdW5kOiAjMmIzMDM0OyB9XG4gIC5wYWdlLXRlbXBsYXRlLWRlZmF1bHQgLnBhZ2VfX2hlYWRlciB7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgLnBhZ2UtdGVtcGxhdGUtZGVmYXVsdCAucGFnZV9faGVhZGVyOmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5hcnRpY2xlcyAucGFnZV9faGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5hcnRpY2xlcyAucGFnZV9faGVhZGVyOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnBhZ2VfX2hlYWRlciB7XG4gICAgICBtYXgtd2lkdGg6IDc1JTsgfSB9XG4gIC5wYWdlX19oZWFkZXItLXRvcGljIHtcbiAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgIHBhZGRpbmc6IDAgNTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAucGFnZV9faGVhZGVyLS10b3BpYyB7XG4gICAgICAgIHBhZGRpbmc6IDAgODBweDsgfSB9XG4gICAgLnBhZ2VfX2hlYWRlci0tdG9waWM6YWZ0ZXIge1xuICAgICAgY29udGVudDogbm9uZTsgfVxuICAgIC5wYWdlX19oZWFkZXItLXRvcGljW2RhdGEtdG9waWM9XCJjb21wbGlhbmNlXCJdOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNhNjE5MmU7IH1cbiAgICAucGFnZV9faGVhZGVyLS10b3BpY1tkYXRhLXRvcGljPVwiY29udGVudC1kZXZlbG9wbWVudFwiXTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjI2YTM2OyB9XG4gICAgLnBhZ2VfX2hlYWRlci0tdG9waWNbZGF0YS10b3BpYz1cImRpdmVyc2l0eS1lcXVpdHktYW5kLWluY2x1c2lvblwiXTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjNzYyMzJmOyB9XG4gICAgLnBhZ2VfX2hlYWRlci0tdG9waWNbZGF0YS10b3BpYz1cImUtbGVhcm5pbmdcIl06YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZmOGYxYzsgfVxuICAgIC5wYWdlX19oZWFkZXItLXRvcGljW2RhdGEtdG9waWM9XCJpdC1hbmQtdGVjaG5pY2FsLXRyYWluaW5nXCJdOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNiOTQ3MDA7IH1cbiAgICAucGFnZV9faGVhZGVyLS10b3BpY1tkYXRhLXRvcGljPVwibGVhZGVyc2hpcFwiXTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZGFhYTAwOyB9XG4gICAgLnBhZ2VfX2hlYWRlci0tdG9waWNbZGF0YS10b3BpYz1cImxlYXJuaW5nLXRlY2hub2xvZ2llc1wiXTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjODJjMzQxOyB9XG4gICAgLnBhZ2VfX2hlYWRlci0tdG9waWNbZGF0YS10b3BpYz1cIm1lYXN1cmVtZW50LWFuZC1hbmFseXRpY3NcIl06YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzAwYjA5ODsgfVxuICAgIC5wYWdlX19oZWFkZXItLXRvcGljW2RhdGEtdG9waWM9XCJvdXRzb3VyY2luZ1wiXTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDA4MjY0OyB9XG4gICAgLnBhZ2VfX2hlYWRlci0tdG9waWNbZGF0YS10b3BpYz1cIm9uYm9hcmRpbmdcIl06YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzhmZDFjMzsgfVxuICAgIC5wYWdlX19oZWFkZXItLXRvcGljW2RhdGEtdG9waWM9XCJwZXJmb3JtYW5jZS1tYW5hZ2VtZW50XCJdOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMGJjZTc7IH1cbiAgICAucGFnZV9faGVhZGVyLS10b3BpY1tkYXRhLXRvcGljPVwicHJvZmVzc2lvbmFsLWRldmVsb3BtZW50XCJdOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDU1OGM7IH1cbiAgICAucGFnZV9faGVhZGVyLS10b3BpY1tkYXRhLXRvcGljPVwicmVtb3RlLWxlYXJuaW5nXCJdOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDcwOTY7IH1cbiAgICAucGFnZV9faGVhZGVyLS10b3BpY1tkYXRhLXRvcGljPVwic2FsZXNcIl06YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzY3NTZhNTsgfVxuICAgIC5wYWdlX19oZWFkZXItLXRvcGljW2RhdGEtdG9waWM9XCJzdHJhdGVneS1hbGlnbm1lbnQtYW5kLXBsYW5uaW5nXCJdOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICM3NzI1ODM7IH1cbiAgICAucGFnZV9faGVhZGVyLS10b3BpY1tkYXRhLXRvcGljPVwid29ya2ZvcmNlLWRldmVsb3BtZW50XCJdOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICM5YjI2YjY7IH1cbiAgLnBhZ2VfX2hlYWRlci0tY29udGFjdCAuY29udGFjdC1zcG9uc29yIHtcbiAgICBtYXJnaW46IDIwcHggMCAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5wYWdlX19oZWFkZXItLWNvbnRhY3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLnBhZ2VfX2hlYWRlci0tY29udGFjdCAudGl0bGUtLXBhZ2Uge1xuICAgICAgICBtYXgtd2lkdGg6IDYwJTsgfVxuICAgICAgLnBhZ2VfX2hlYWRlci0tY29udGFjdCAuY29udGFjdC1zcG9uc29yIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgICAgIC5wYWdlX19oZWFkZXItLWNvbnRhY3QgLnBhZ2VfX2Rlc2Mge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb3JkZXI6IDM7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLnBhZ2VfX2hlYWRlci0tY29udGFjdCAudGl0bGUtLXBhZ2Uge1xuICAgICAgbWF4LXdpZHRoOiA3NSU7IH0gfVxuXG4ucGFnZV9fZGVzYyB7XG4gIG1hcmdpbjogMTBweCAwIDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBjb2xvcjogIzVlNjM2NzsgfVxuXG4ucG9zdHR5cGUtY2FsbG91dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbjogMCAwIDMwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYzRjOWNkOyB9XG4gIC5wb3N0dHlwZS1jYWxsb3V0X19pbmZvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIC5wb3N0dHlwZS1jYWxsb3V0X19jdGEge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgLnBvc3R0eXBlLWNhbGxvdXQge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC5wb3N0dHlwZS1jYWxsb3V0X19pbmZvLCAucG9zdHR5cGUtY2FsbG91dF9fY3RhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG5cbi5wdWJsaXNoZWQtaXNzdWUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAucHVibGlzaGVkLWlzc3VlX19pbWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgIG1pbi13aWR0aDogMDsgfVxuICAucHVibGlzaGVkLWlzc3VlX19pbmZvIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgLnB1Ymxpc2hlZC1pc3N1ZV9faW5mbyBzdHJvbmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgLnB1Ymxpc2hlZC1pc3N1ZV9faW1nICsgLnB1Ymxpc2hlZC1pc3N1ZV9faW5mbyB7XG4gICAgcGFkZGluZzogMCAyMHB4OyB9XG5cbi5yZWdpc3RyYXRpb24tZW5kcyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IC02MHB4IDAgNjBweDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgY29sb3I6ICM5MTk2OWE7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4ubGlzdF9faXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlM2U4ZWE7IH1cblxuLmxpc3RfX2xpbmsge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwYWRkaW5nOiAzMHB4IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMTI1bXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubGlzdF9fbGluayB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luOiAwIC00MHB4O1xuICAgICAgcGFkZGluZzogMzBweCA0MHB4OyB9XG4gICAgICAubGlzdF9fbGluazpob3ZlciwgLmxpc3RfX2xpbms6YWN0aXZlLCAubGlzdF9fbGluazpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyYjMwMzQ7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAgIC5saXN0X19saW5rOmhvdmVyIC5idXR0b24sIC5saXN0X19saW5rOmFjdGl2ZSAuYnV0dG9uLCAubGlzdF9fbGluazpmb2N1cyAuYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogMThweCA1MHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMWExYTFhO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBjb2xvcjogIzFhMWExYTtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJHb3RoYW0gU1NtIEFcIiwgXCJHb3RoYW0gU1NtIEJcIiwgXCJHb3RoYW1cIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxNGVtO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTI1bXMgMTI1bXM7IH1cbiAgICAgICAgICAubGlzdF9fbGluazpob3ZlciAuYnV0dG9uOmhvdmVyLCAubGlzdF9fbGluazphY3RpdmUgLmJ1dHRvbjpob3ZlciwgLmxpc3RfX2xpbms6Zm9jdXMgLmJ1dHRvbjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogcmdiYSgyNiwgMjYsIDI2LCAwLjgpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI2LCAyNiwgMjYsIDAuOCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSgyNiwgMjYsIDI2LCAwLjI1KTsgfSB9XG5cbi5saXN0X19pbmZvIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmxpc3RfX2luZm8ge1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBmbGV4LWJhc2lzOiAxNDBweDsgfSB9XG5cbi5saXN0X190aXRsZSB7XG4gIG1hcmdpbjogMjVweCAwIDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubGlzdF9fdGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLSAzMDBweCk7IH0gfVxuXG4ubGlzdF9fYWN0aW9uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAubGlzdF9fYWN0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgZmxleC1iYXNpczogMTUwcHg7IH0gfVxuXG4ubWFnX19pbnRybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubWFnX19jb3ZlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgcGFkZGluZzogNTBweCAzMHB4IDYwcHg7XG4gIGhlaWdodDogMTAwdmg7IH1cbiAgLm1hZ19fY292ZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI2LCAyNiwgMjYsIDApIDAlLCAjMWExYTFhIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNiwgMjYsIDI2LCAwKSAwJSwgIzFhMWExYSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDI2LCAyNiwgMjYsIDApIDAlLCAjMWExYTFhIDEwMCUpO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDAxYTFhMWEnLCBlbmRDb2xvcnN0cj0nIzFhMWExYScsR3JhZGllbnRUeXBlPTAgKTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgLm1hZ19fY292ZXIge1xuICAgICAgcGFkZGluZzogNTBweCA2MHB4IDYwcHg7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTM0MHB4KSB7XG4gICAgLm1hZ19fY292ZXIge1xuICAgICAgcGFkZGluZzogODBweCAxMDBweCAxMjBweDsgfSB9XG4gIC5tYWdfX2NvdmVyID4gaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAubWFnX19jb3ZlciA+IGhlYWRlciAuc2Nyb2xsLWFycm93IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMzQwcHgpIHtcbiAgICAgICAgLm1hZ19fY292ZXIgPiBoZWFkZXIgLnNjcm9sbC1hcnJvdyB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IC04MHB4O1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmOyB9XG4gICAgICAgICAgLm1hZ19fY292ZXIgPiBoZWFkZXIgLnNjcm9sbC1hcnJvdyA+IC5zdmcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxM3B4OyB9XG4gICAgICAgICAgICAubWFnX19jb3ZlciA+IGhlYWRlciAuc2Nyb2xsLWFycm93ID4gLnN2ZyA+ICoge1xuICAgICAgICAgICAgICBmaWxsOiAjZmZmOyB9IH1cbiAgLm1hZ19fY292ZXIgLm1hZ19fbWV0YSB7XG4gICAgb3JkZXI6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAubWFnX19jb3ZlciAubWFnX19tZXRhIC5lZGl0aW9uIHtcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luOiAwIDAgMCAyMHB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLm1hZ19fY292ZXIgLm1hZ19fbWV0YSAuZWRpdGlvbiB7XG4gICAgICAgICAgZmxleDogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVgoLTEwMCUpOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgICAgLm1hZ19fY292ZXIgLm1hZ19fbWV0YSAuZWRpdGlvbiB7XG4gICAgICAgICAgbGVmdDogLTQwcHg7IH0gfVxuICAgIC5tYWdfX2NvdmVyIC5tYWdfX21ldGEgLm1hZy1pbnRyb19fbG9nbyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNiwgMjYsIDI2LCAwLjc1KTtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAubWFnX19jb3ZlciAubWFnX19tZXRhIC5tYWctaW50cm9fX2xvZ28ge1xuICAgICAgICAgIHdpZHRoOiAyNTBweDtcbiAgICAgICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDMwcHg7IH0gfVxuICAgICAgLm1hZ19fY292ZXIgLm1hZ19fbWV0YSAubWFnLWludHJvX19sb2dvID4gLnN2ZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLm1hZ19fY292ZXIgLm1hZ19fY292ZXItdGl0bGUge1xuICAgIG9yZGVyOiAyO1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAubWFnX19jb3ZlciAubWFnX19jb3Zlci10aXRsZSB7XG4gICAgICAgIG1heC13aWR0aDogNTUlOyB9IH1cbiAgLm1hZ19fY292ZXIgLm1hZ19fY3RhIHtcbiAgICBvcmRlcjogMzsgfVxuXG4ubWFnX19mZWF0dXJlcyB7XG4gIHBhZGRpbmc6IDEwcHggMzBweCAzMHB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAubWFnX19mZWF0dXJlcyB7XG4gICAgICBwYWRkaW5nOiA4MHB4IDYwcHggNjBweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDcwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgIC5tYWdfX2ZlYXR1cmVzIHtcbiAgICAgIHBhZGRpbmc6IDkwcHggMTAwcHggMTIwcHggMHB4OyB9IH1cblxuLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImRhcmtcIl0gLm1hZ19fY292ZXItdGl0bGUsXG4ubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwiZGFya1wiXSAubWFnX19tZXRhIHtcbiAgY29sb3I6ICNmZmY7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwiZGFya1wiXSAudG9waWMgYSxcbiAgLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImRhcmtcIl0gLnRpdGxlLS1hcnRpY2xlIGEsXG4gIC5tYWdfX2ludHJvW2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5tZXRhX19jb250ZW50LFxuICAubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwiZGFya1wiXSAubWV0YV9fY29udGVudCBhLFxuICAubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwiZGFya1wiXSAubWFnX19uYXYgYSxcbiAgLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImRhcmtcIl0gLm1hZ19fbmF2IGE6aG92ZXIsXG4gIC5tYWdfX2ludHJvW2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5tYWdfX25hdiBhOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImRhcmtcIl0gLnRvcGljIGEsXG4gIC5tYWdfX2ludHJvW2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5tZXRhX19jb250ZW50IGE6aG92ZXIsXG4gIC5tYWdfX2ludHJvW2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5tZXRhX19jb250ZW50IGE6YWN0aXZlLFxuICAubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwiZGFya1wiXSAubWFnX19uYXYgYTpob3ZlcixcbiAgLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImRhcmtcIl0gLm1hZ19fbmF2IGE6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYgMCUsICNmZmYgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4OyB9IH1cblxuLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5tYWdfX2NvdmVyLXRpdGxlLFxuLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5tYWdfX21ldGEge1xuICBjb2xvcjogIzFhMWExYTsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gIC5tYWdfX2ludHJvW2RhdGEtdGhlbWU9XCJsaWdodFwiXSAudG9waWMgYSxcbiAgLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImxpZ2h0XCJdIC50aXRsZS0tYXJ0aWNsZSBhLFxuICAubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwibGlnaHRcIl0gLm1hZ19fbmF2IGEsXG4gIC5tYWdfX2ludHJvW2RhdGEtdGhlbWU9XCJsaWdodFwiXSAubWFnX19uYXYgYTpob3ZlcixcbiAgLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5tYWdfX25hdiBhOmFjdGl2ZSxcbiAgLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5tZXRhLFxuICAubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwibGlnaHRcIl0gLm1ldGEgYSB7XG4gICAgY29sb3I6ICMxYTFhMWE7IH1cbiAgLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImxpZ2h0XCJdIC50b3BpYyBhLFxuICAubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwibGlnaHRcIl0gLm1hZ19fbmF2IGE6aG92ZXIsXG4gIC5tYWdfX2ludHJvW2RhdGEtdGhlbWU9XCJsaWdodFwiXSAubWFnX19uYXYgYTphY3RpdmUsXG4gIC5tYWdfX2ludHJvW2RhdGEtdGhlbWU9XCJsaWdodFwiXSAubWV0YSBhOmhvdmVyLFxuICAubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwibGlnaHRcIl0gLm1ldGEgYTphY3RpdmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzJiMzAzNCAwJSwgIzJiMzAzNCAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxcHg7IH1cbiAgLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5tYWdfX2ZlYXR1cmVkLWFydGljbGUsXG4gIC5tYWdfX2ludHJvW2RhdGEtdGhlbWU9XCJsaWdodFwiXSAubWFnX19uYXYgLm1lbnUtaXRlbSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjNWU2MzY3OyB9XG4gIC5tYWdfX2ludHJvW2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2Nyb2xsLWFycm93IHtcbiAgICBib3JkZXItY29sb3I6ICMyYjMwMzQ7IH1cbiAgICAubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNjcm9sbC1hcnJvdyA+IC5zdmcgPiAqIHtcbiAgICAgIGZpbGw6ICMyYjMwMzQ7IH0gfVxuXG4ubWFnX19pbnRyb1tkYXRhLXRoZW1lPVwibGlnaHRcIl0gLm1hZ19fY292ZXI6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjQwLCAyNDUsIDI0NywgMCkgMCUsICNmMGY1ZjcgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNDAsIDI0NSwgMjQ3LCAwKSAwJSwgI2YwZjVmNyAxMDAlKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNDAsIDI0NSwgMjQ3LCAwKSAwJSwgI2YwZjVmNyAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDFhMWExYScsIGVuZENvbG9yc3RyPScjMWExYTFhJyxHcmFkaWVudFR5cGU9MCApOyB9XG5cbi5tYWdfX2ludHJvW2RhdGEtc3R5bGU9XCJuby1ncmFkaWVudFwiXSAubWFnX19jb3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ubWFnX19uYXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5tYWdfX25hdiB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9IH1cbiAgLm1hZ19fbmF2IC5tZW51LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLm1hZ19fbmF2IC5tZW51LWl0ZW0gPiBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMjBweCAyMHB4IDIwcHggMDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTNlOGVhO1xuICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDEyNW1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSksIGNvbG9yIDEyNW1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cbiAgICAgIC5tYWdfX25hdiAubWVudS1pdGVtID4gYTpob3ZlciwgLm1hZ19fbmF2IC5tZW51LWl0ZW0gPiBhOmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjMWExYTFhO1xuICAgICAgICBib3JkZXItY29sb3I6ICM5MTk2OWE7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgLm1hZ19fbmF2IC5tZW51LWl0ZW0gPiBhIHtcbiAgICAgICAgICBjb2xvcjogIzJiMzAzNDsgfVxuICAgICAgICAgIC5tYWdfX25hdiAubWVudS1pdGVtID4gYTpiZWZvcmUsIC5tYWdfX25hdiAubWVudS1pdGVtID4gYTphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgcmlnaHQ6IDRweDtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyYjMwMzQ7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVkoNHB4KTsgfVxuICAgICAgICAgIC5tYWdfX25hdiAubWVudS1pdGVtID4gYTphZnRlciB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWSgtNHB4KTsgfSB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAgIC5tYWdfX25hdiAubWVudS1pdGVtID4gYSB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBtYXJnaW46IDhweCAxMHB4O1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfSB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgICAgLm1hZ19fbmF2IC5tZW51LWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjNGM5Y2Q7IH1cbiAgICAgICAgLm1hZ19fbmF2IC5tZW51LWl0ZW06Zmlyc3QtY2hpbGQgYSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAgICAgLm1hZ19fbmF2IC5tZW51LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyOiAwOyB9XG4gICAgICAgICAgLm1hZ19fbmF2IC5tZW51LWl0ZW06bGFzdC1jaGlsZCBhIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5tYWdfX2ZlYXR1cmVkLWFydGljbGUge1xuICBtYXJnaW46IDMwcHggMCAwO1xuICBwYWRkaW5nOiAwIDAgMzBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlM2U4ZWE7IH1cbiAgLm1hZ19fZmVhdHVyZWQtYXJ0aWNsZSAudGl0bGUtLWFydGljbGUge1xuICAgIG1hcmdpbjogMTVweCAwOyB9XG5cbi5jb3VudCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07IH1cblxuLnNlYXJjaC10ZXJtIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4ubWFnLWNvbHVtbiB7XG4gIHBhZGRpbmc6IDAgMCAzMHB4O1xuICBtYXJnaW46IDAgMCA2MHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2M0YzljZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tYWctY29sdW1uIC5jb2x1bW4tdHlwZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgICAubWFnLWNvbHVtbiAuY29sdW1uLXR5cGUgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLnByb2dyZXNzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0zcHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDNweDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMyYjMwMzQ7IH1cbiAgLnByb2dyZXNzX19jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAucHJvZ3Jlc3NfX2JhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJiMzAzNDtcbiAgICB3aWR0aDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogaW5oZXJpdDsgfVxuXG5wcm9ncmVzczo6LXdlYmtpdC1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5wcm9ncmVzczo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYjMwMzQ7IH1cblxucHJvZ3Jlc3M6Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJiMzAzNDsgfVxuXG4ubW9kYWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHBhZGRpbmc6IDIwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm1vZGFsIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAubW9kYWxfX2ltYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIC0yMHB4IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAubW9kYWxfX2ltYWdlIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLm1vZGFsX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzNTBweCk7XG4gICAgICBtYXJnaW4tbGVmdDogNTBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5tb2RhbF9fY3RhIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgZmxleDogbm9uZTsgfSB9XG4gIC5tb2RhbF9fY3RhIC5idXR0b24ge1xuICAgIG1hcmdpbjogYXV0byBhdXRvIDA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIC5tb2RhbF9fY3RhIC5idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5tb2RhbCAuY2xvc2UtbW9kYWwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwcHg7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4OyB9XG4gICAgLm1vZGFsIC5jbG9zZS1tb2RhbDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gICAgLm1vZGFsIC5jbG9zZS1tb2RhbCA+IHN2ZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5tb2RhbCAuY2xvc2UtbW9kYWwge1xuICAgICAgICB0b3A6IC00MHB4O1xuICAgICAgICByaWdodDogLTQwcHg7IH0gfVxuXG4uY29tcGFueV9fbmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgbWFyZ2luOiAwIDAgNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4uY29tcGFueV9fbG9jYWwge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzkxOTY5YTtcbiAgbWFyZ2luOiAwOyB9XG5cbi5jb21wYW55X19kZXNjIHtcbiAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnRvcC1jYXRlZ29yaWVzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC50b3AtY2F0ZWdvcmllcyAudG9wX19jYXQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC50b3AtY2F0ZWdvcmllcyAudG9wX19jYXQgPiAudG9wX19saW5rIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDIwcHggMDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBjb2xvcjogIzJiMzAzNDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlM2U4ZWE7XG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAxMjVtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCBjb2xvciAxMjVtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9XG4gICAgICAgIC50b3AtY2F0ZWdvcmllcyAudG9wX19jYXQgPiAudG9wX19saW5rOmhvdmVyLCAudG9wLWNhdGVnb3JpZXMgLnRvcF9fY2F0ID4gLnRvcF9fbGluazphY3RpdmUge1xuICAgICAgICAgIGNvbG9yOiAjMWExYTFhO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogIzkxOTY5YTsgfVxuICAgICAgICAudG9wLWNhdGVnb3JpZXMgLnRvcF9fY2F0ID4gLnRvcF9fbGluazpiZWZvcmUsIC50b3AtY2F0ZWdvcmllcyAudG9wX19jYXQgPiAudG9wX19saW5rOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgcmlnaHQ6IDRweDtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMyYjMwMzQ7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGVZKDRweCk7IH1cbiAgICAgICAgLnRvcC1jYXRlZ29yaWVzIC50b3BfX2NhdCA+IC50b3BfX2xpbms6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKC00cHgpOyB9XG4gICAgICAgIC50b3AtY2F0ZWdvcmllcyAudG9wX19jYXQgPiAudG9wX19saW5rIC5jYXQtaW1nIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAudG9wLWNhdGVnb3JpZXMgLnRvcF9fY2F0IC5hY3Rpb25zIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wLWNhdGVnb3JpZXMge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAwIC0xMHB4OyB9XG4gICAgLnRvcC1jYXRlZ29yaWVzIC50b3BfX2NhdCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKCAzMy4zMzMzMzMzMzMzJSAtIDIwcHgpO1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKCAzMy4zMzMzMzMzMzMzJSAtIDIwcHgpO1xuICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTNlOGVhO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG4gICAgLnRvcC1jYXRlZ29yaWVzIC50b3BfX2xpbmsge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLnRvcC1jYXRlZ29yaWVzIC50b3BfX2xpbms6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTAwJTsgfVxuICAgICAgLnRvcC1jYXRlZ29yaWVzIC50b3BfX2xpbmsgLmNhdC1pbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgICAudG9wLWNhdGVnb3JpZXMgLnRvcF9fbGluayAuY2F0LWltZyBpbWcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgICAgLnRvcC1jYXRlZ29yaWVzIC50b3BfX2xpbmsgLmNhdC1uYW1lIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC50b3AtY2F0ZWdvcmllcyAuY2F0LW5hbWUge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnRvcC1jYXRlZ29yaWVzIC5hY3Rpb25zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDAgMTBweCAyMHB4OyB9XG4gICAgLnRvcC1jYXRlZ29yaWVzIC5zZWNvbmRhcnktbGluayB7XG4gICAgICBtYXJnaW46IDEwcHggMCAwOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAudG9wLWNhdGVnb3JpZXMgLnRvcF9fY2F0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKCAyMCUgLSAyMHB4KTtcbiAgICBtYXgtd2lkdGg6IGNhbGMoIDIwJSAtIDIwcHgpO1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuXG4uaW5mby1tb2R1bGUge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5pbmZvLW1vZHVsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYzRjOWNkO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgICAgei1pbmRleDogNTA7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7IH1cbiAgICAgIC5pbmZvLW1vZHVsZS5zaG93IHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG4gICAgICAucGFnZS10ZW1wbGF0ZS1jdXN0b20tdG9waWMtbGFuZGluZyAuaW5mby1tb2R1bGUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuc2luZ2xlIC5pbmZvLW1vZHVsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuaW5mby1tb2R1bGUgPiAud3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cbiAgLmluZm8tbW9kdWxlX19jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyOyB9XG4gIC5pbmZvLW1vZHVsZV9fY3RhIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLmluZm8tbW9kdWxlX19zbmlwcGV0IHtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAuaW5mby1tb2R1bGVfX3NuaXBwZXRbZGF0YS13ZWlnaHQ9XCJib2xkXCJdIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkucGFkLWZvb3RlciAuZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDEzMHB4OyB9IH1cblxuLnRvYyB7XG4gIG1hcmdpbjogMCAwIDMwcHggMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsLWxlYWRpbmctemVybztcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuICBmb250LXdlaWdodDogNTAwOyB9XG4gIC50b2NfX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgLnRvYyA+IGxpIHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cbiAgICAudG9jID4gbGkgPiBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjYzRjOWNkIDAlLCAjYzRjOWNkIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDFweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuXG4ud2lraV9faGVhZGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLndpa2lfX2hlYWRpbmcge1xuICAgICAgbWFyZ2luOiAwIC03MHB4IDMwcHg7XG4gICAgICBwYWRkaW5nOiAwIDcwcHg7IH1cbiAgICAgIC53aWtpX19oZWFkaW5nOmhvdmVyID4gc3BhbiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzJiMzAzNCAwJSwgIzJiMzAzNCAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxcHg7IH1cbiAgICAgIC53aWtpX19oZWFkaW5nOmhvdmVyIC5jb3B5LWxpbmsge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9IH1cblxuLndpa2kgLmNvcHktbGluayB7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBsZWZ0OiA1MHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjMmIzMDM0O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogYWxsIDEyNW1zIGN1YmljLWJlemllcigwLjc3LCAwLCAwLjE3NSwgMSk7IH1cbiAgLndpa2kgLmNvcHktbGluayA+IHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7IH1cblxuLmZlZWRiYWNrIHtcbiAgY2xlYXI6IGJvdGg7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5mZWVkYmFja19faGVhZGluZyB7XG4gICAgbWFyZ2luOiAwIDAgOHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLmZlZWRiYWNrX19zbmlwcGV0IHtcbiAgICBtYXJnaW46IDAgMCAxMHB4OyB9XG4gIC5mZWVkYmFja19fZm9ybSB7XG4gICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAwcyBlYXNlLCBtYXgtaGVpZ2h0IC4zcyBlYXNlLCBvcGFjaXR5IC4zcyBlYXNlO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gICAgLmZlZWRiYWNrX19mb3JtW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMDBweDtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLmZlZWRiYWNrX19mb3JtW2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSB7XG4gICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuM3MsIDBzLCAwczsgfVxuXG4uc2VwYXJhdG9yLS1ib3R0b20ge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjNGM5Y2Q7IH1cblxuLmdsb3NzYXJ5X19uYXYge1xuICBwYWRkaW5nOiAzMHB4IDAgMDtcbiAgbWFyZ2luOiAwIDAgMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZ2xvc3NhcnlfX25hdiB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDA7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1heC13aWR0aDogMTAwMHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMzBweDsgfSB9XG4gIC5nbG9zc2FyeV9fbmF2LWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgIGhlaWdodDogMTAwcHg7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5nbG9zc2FyeV9fbmF2LWxpc3Qge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG92ZXJmbG93OiBhdXRvOyB9IH1cbiAgLmdsb3NzYXJ5X19uYXYtaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAycHggNXB4OyB9XG4gIC5nbG9zc2FyeV9fbmF2LWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGJhY2tncm91bmQ6ICMyYjMwMzQ7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgaGVpZ2h0OiA2NXB4O1xuICAgIHdpZHRoOiA2NXB4O1xuICAgIGxpbmUtaGVpZ2h0OiA2NXB4O1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7IH1cbiAgICAuZ2xvc3NhcnlfX25hdi1saW5rLmRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQ6ICNjNGM5Y2Q7IH1cblxuLmdsb3NzYXJ5X19zZWN0aW9uIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgLmdsb3NzYXJ5X19zZWN0aW9uOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5nbG9zc2FyeV9fc2VjdGlvbi1oZWFkaW5nIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMmIzMDM0O1xuICAgIG1hcmdpbjogMCAwIDMwcHg7IH1cbiAgLmdsb3NzYXJ5X19zZWN0aW9uLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuZ2xvc3NhcnlfX3NlY3Rpb24taXRlbSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW46IDAgMCAxNXB4OyB9XG4gICAgICAgIC5nbG9zc2FyeV9fc2VjdGlvbi1pdGVtOm50aC1jaGlsZCgybisxKSB7XG4gICAgICAgICAgY2xlYXI6IGxlZnQ7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5nbG9zc2FyeV9fc2VjdGlvbi1pdGVtIHtcbiAgICAgICAgd2lkdGg6IDMzJTsgfVxuICAgICAgICAuZ2xvc3NhcnlfX3NlY3Rpb24taXRlbTpudGgtY2hpbGQoMm4rMSkge1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIC5nbG9zc2FyeV9fc2VjdGlvbi1pdGVtOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICAgICAgY2xlYXI6IGxlZnQ7IH0gfVxuICAgIC5nbG9zc2FyeV9fc2VjdGlvbi1pdGVtID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDA7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2M0YzljZDtcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAxMjVtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpLCBjb2xvciAxMjVtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9XG4gICAgICAuZ2xvc3NhcnlfX3NlY3Rpb24taXRlbSA+IGE6aG92ZXIsIC5nbG9zc2FyeV9fc2VjdGlvbi1pdGVtID4gYTphY3RpdmUge1xuICAgICAgICBib3JkZXItY29sb3I6ICM5MTk2OWE7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAuZ2xvc3NhcnlfX3NlY3Rpb24taXRlbSA+IGE6YmVmb3JlLCAuZ2xvc3NhcnlfX3NlY3Rpb24taXRlbSA+IGE6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICByaWdodDogNHB4O1xuICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzJiMzAzNDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVkoNHB4KTsgfVxuICAgICAgICAuZ2xvc3NhcnlfX3NlY3Rpb24taXRlbSA+IGE6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKC00cHgpOyB9IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuZ2xvc3NhcnlfX3NlY3Rpb24taXRlbSA+IGEge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBmb250LXNpemU6IDEuMTg3NXJlbTsgfVxuICAgICAgICAgIC5nbG9zc2FyeV9fc2VjdGlvbi1pdGVtID4gYTpob3ZlciwgLmdsb3NzYXJ5X19zZWN0aW9uLWl0ZW0gPiBhOmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM5MTk2OWEgMCUsICM5MTk2OWEgMTAwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4OyB9IH1cblxuLmFkZHRoaXNfc2hhcmUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjNGM5Y2Q7XG4gIHotaW5kZXg6IDUwO1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIC4xNXMgZWFzZSwgcG9zaXRpb24gLjE1cyBlYXNlOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hZGR0aGlzX3NoYXJlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDIyMHB4O1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgcGFkZGluZzogMCAxMHB4OyB9XG4gICAgICAuYWRkdGhpc19zaGFyZS5oaWRlIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgIC5hZGR0aGlzX3NoYXJlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNjQwcHgpO1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLmFkZHRoaXNfc2hhcmUtLW1hZy1sYW5kc2NhcGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogODEwcHg7IH1cbiAgICAgICAgLmFkZHRoaXNfc2hhcmUtLW1hZy1sYW5kc2NhcGUuZml4ZWQge1xuICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICB0b3A6IDIyMHB4OyB9XG4gICAgICAuYWRkdGhpc19zaGFyZS0tbWFnLXBvcnRyYWl0IHtcbiAgICAgICAgbGVmdDogNDAlO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTgzNHB4KSB7XG4gICAgLmFkZHRoaXNfc2hhcmUtLW1hZy1wb3J0cmFpdCB7XG4gICAgICBsZWZ0OiA3MzNweDsgfSB9XG4gIC5hZGR0aGlzX3NoYXJlX190aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjMmIzMDM0OyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuYWRkdGhpc19zaGFyZV9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07IH0gfVxuICAuYWRkdGhpc19zaGFyZV9fY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5hZGR0aGlzX3NoYXJlX19jb250YWluZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cbiAgLmFkZHRoaXNfc2hhcmVfX2J1dHRvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogNTBweDtcbiAgICB3aWR0aDogNTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiAjOTE5NjlhOyB9XG4gICAgLmFkZHRoaXNfc2hhcmVfX2J1dHRvbiAqIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgLmFkZHRoaXNfc2hhcmVfX2J1dHRvbjpob3ZlciwgLmFkZHRoaXNfc2hhcmVfX2J1dHRvbjphY3RpdmUsIC5hZGR0aGlzX3NoYXJlX19idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogI2M0YzljZDsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5hZGR0aGlzX3NoYXJlX19idXR0b246aG92ZXIsIC5hZGR0aGlzX3NoYXJlX19idXR0b246YWN0aXZlLCAuYWRkdGhpc19zaGFyZV9fYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAgIC5hZGR0aGlzX3NoYXJlX19idXR0b246aG92ZXIgPiBzdmcgPiAqLCAuYWRkdGhpc19zaGFyZV9fYnV0dG9uOmFjdGl2ZSA+IHN2ZyA+ICosIC5hZGR0aGlzX3NoYXJlX19idXR0b246Zm9jdXMgPiBzdmcgPiAqIHtcbiAgICAgICAgICAgIGZpbGw6ICMxYTFhMWE7IH0gfVxuICAgIC5hZGR0aGlzX3NoYXJlX19idXR0b24gPiBzdmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgaGVpZ2h0OiAyNXB4OyB9XG4gICAgICAuYWRkdGhpc19zaGFyZV9fYnV0dG9uID4gc3ZnID4gKiB7XG4gICAgICAgIGZpbGw6ICM1ZTYzNjc7IH1cblxuLmdhdGV3YXlfX2Zvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDQwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlM2U4ZWE7IH1cblxuLmxvYWRpbmcge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxvYWRpbmcgLnNwaW5uZXIge1xuICAgIGFuaW1hdGlvbjogcm90YXRlIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAubG9hZGluZyAuc3Bpbm5lciAucGF0aCB7XG4gICAgICBzdHJva2U6ICMyYjMwMzQ7XG4gICAgICBzdHJva2UtbGluZWNhcDogc3F1YXJlO1xuICAgICAgYW5pbWF0aW9uOiBkYXNoIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7IH1cblxuLmxvYWQtbW9yZSB7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5wZGYtZW1iZWQge1xuICBoZWlnaHQ6IDExMDBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMzBweDsgfVxuICAucGFnZS10ZW1wbGF0ZS1jdXN0b20tY3B0bS10ZW1wbGF0ZSAucGRmLWVtYmVkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAucGRmLWVtYmVkIHtcbiAgICAgIG1hcmdpbjogMCAtNjBweCAzMHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjVweCkge1xuICAgIC5wZGYtZW1iZWQge1xuICAgICAgbWFyZ2luOiAwIC0xODBweCAzMHB4OyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEzNDBweCkge1xuICAgIC5wZGYtZW1iZWQge1xuICAgICAgbWFyZ2luOiAwIC0yNjBweCAzMHB4OyB9IH1cblxuLyohXG4gIE1vZGFhbCAtIGFjY2Vzc2libGUgbW9kYWxzIC0gdjAuMy4xXG4gIGJ5IEh1bWFhbiwgZm9yIGFsbCBodW1hbnMuXG4gIGh0dHA6Ly9odW1hYW4uY29tXG4gKi9cbi5tb2RhYWwtbm9zY3JvbGwge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5tb2RhYWwtYWNjZXNzaWJsZS1oaWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMXB4IDFweCAxcHggMXB4KTtcbiAgLyogSUU2LCBJRTcgKi9cbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm1vZGFhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTtcbiAgb3BhY2l0eTogMDsgfVxuXG4ubW9kYWFsLXdyYXBwZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTk7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBvcGFjaXR5OiAxO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0OyB9XG4gIC5tb2RhYWwtd3JhcHBlciAqIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLm1vZGFhbC13cmFwcGVyIC5tb2RhYWwtY2xvc2Uge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuICAubW9kYWFsLXdyYXBwZXIubW9kYWFsLXN0YXJ0X25vbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgb3BhY2l0eTogMTsgfVxuICAubW9kYWFsLXdyYXBwZXIubW9kYWFsLXN0YXJ0X2ZhZGUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLm1vZGFhbC13cmFwcGVyICpbdGFiaW5kZXg9XCIwXCJdIHtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLm1vZGFhbC13cmFwcGVyLm1vZGFhbC1mdWxsc2NyZWVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5tb2RhYWwtb3V0ZXItd3JhcHBlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLm1vZGFhbC1mdWxsc2NyZWVuIC5tb2RhYWwtb3V0ZXItd3JhcHBlciB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLm1vZGFhbC1pbm5lci13cmFwcGVyIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDgwcHggMjVweDsgfVxuICAubW9kYWFsLWZ1bGxzY3JlZW4gLm1vZGFhbC1pbm5lci13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuLm1vZGFhbC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICMwMDA7XG4gIG1heC13aWR0aDogMTAwMHB4O1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBjdXJzb3I6IGF1dG87IH1cbiAgLm1vZGFhbC1jb250YWluZXIuaXNfbG9hZGluZyB7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubW9kYWFsLWZ1bGxzY3JlZW4gLm1vZGFhbC1jb250YWluZXIge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLm1vZGFhbC1jbG9zZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDIwcHg7XG4gIHRvcDogMjBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogMTtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gIC5tb2RhYWwtY2xvc2U6Zm9jdXMsIC5tb2RhYWwtY2xvc2U6aG92ZXIge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAgIC5tb2RhYWwtY2xvc2U6Zm9jdXM6YmVmb3JlLCAubW9kYWFsLWNsb3NlOmZvY3VzOmFmdGVyLCAubW9kYWFsLWNsb3NlOmhvdmVyOmJlZm9yZSwgLm1vZGFhbC1jbG9zZTpob3ZlcjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjYjkzZDBjOyB9XG4gIC5tb2RhYWwtY2xvc2Ugc3BhbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgY2xpcDogcmVjdCgxcHggMXB4IDFweCAxcHgpO1xuICAgIC8qIElFNiwgSUU3ICovXG4gICAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5tb2RhYWwtY2xvc2U6YmVmb3JlLCAubW9kYWFsLWNsb3NlOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxNHB4O1xuICAgIGxlZnQ6IDIzcHg7XG4gICAgd2lkdGg6IDRweDtcbiAgICBoZWlnaHQ6IDIycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gIC5tb2RhYWwtY2xvc2U6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG4gIC5tb2RhYWwtY2xvc2U6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTsgfVxuICAubW9kYWFsLWZ1bGxzY3JlZW4gLm1vZGFhbC1jbG9zZSB7XG4gICAgYmFja2dyb3VuZDogI2FmYjdiYztcbiAgICByaWdodDogMTBweDtcbiAgICB0b3A6IDEwcHg7IH1cblxuLm1vZGFhbC1jb250ZW50LWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDMwcHg7IH1cblxuLm1vZGFhbC1jb25maXJtLXdyYXAge1xuICBwYWRkaW5nOiAzMHB4IDAgMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDA7IH1cblxuLm1vZGFhbC1jb25maXJtLWJ0biB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMTBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5tb2RhYWwtY29uZmlybS1idG4ubW9kYWFsLW9rIHtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogIzU1NTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgLm1vZGFhbC1jb25maXJtLWJ0bi5tb2RhYWwtb2s6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzJmMmYyZjsgfVxuICAubW9kYWFsLWNvbmZpcm0tYnRuLm1vZGFhbC1jYW5jZWwge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLm1vZGFhbC1jb25maXJtLWJ0bi5tb2RhYWwtY2FuY2VsOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAjMmYyZjJmOyB9XG5cbkBrZXlmcmFtZXMgaW5zdGFSZXZlYWwge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQC1vLWtleWZyYW1lcyBpbnN0YVJldmVhbCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG5ALW1vei1rZXlmcmFtZXMgaW5zdGFSZXZlYWwge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGluc3RhUmV2ZWFsIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkAtbXMta2V5ZnJhbWVzIGluc3RhUmV2ZWFsIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbi5tb2RhYWwtaW5zdGFncmFtIC5tb2RhYWwtY29udGFpbmVyIHtcbiAgd2lkdGg6IGF1dG87XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLm1vZGFhbC1pbnN0YWdyYW0gLm1vZGFhbC1jb250ZW50LWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5tb2RhYWwtaW5zdGFncmFtIC5tb2RhYWwtY29udGVudC1jb250YWluZXIgPiBibG9ja3F1b3RlIHtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7IH1cblxuLm1vZGFhbC1pbnN0YWdyYW0gaWZyYW1lIHtcbiAgb3BhY2l0eTogMDtcbiAgbWFyZ2luOiAtNnB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMDBweCAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IDgwMHB4ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uOiBpbnN0YVJldmVhbCAxcyBsaW5lYXIgZm9yd2FyZHM7IH1cblxuLm1vZGFhbC1pbWFnZSAubW9kYWFsLWlubmVyLXdyYXBwZXIge1xuICBwYWRkaW5nLWxlZnQ6IDE0MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNDBweDsgfVxuXG4ubW9kYWFsLWltYWdlIC5tb2RhYWwtY29udGFpbmVyIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4ubW9kYWFsLWdhbGxlcnktd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICNmZmY7IH1cblxuLm1vZGFhbC1nYWxsZXJ5LWl0ZW0ge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1pdGVtIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm1vZGFhbC1nYWxsZXJ5LWl0ZW0uaXNfYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubW9kYWFsLWdhbGxlcnktbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDIwcHggMCAwO1xuICBmb250LXNpemU6IDE4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLm1vZGFhbC1nYWxsZXJ5LWxhYmVsOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG5cbi5tb2RhYWwtZ2FsbGVyeS1jb250cm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBvcGFjaXR5OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAubW9kYWFsLWdhbGxlcnktY29udHJvbC5pc19oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmZvY3VzLCAubW9kYWFsLWdhbGxlcnktY29udHJvbDpob3ZlciB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gICAgLm1vZGFhbC1nYWxsZXJ5LWNvbnRyb2w6Zm9jdXM6YmVmb3JlLCAubW9kYWFsLWdhbGxlcnktY29udHJvbDpmb2N1czphZnRlciwgLm1vZGFhbC1nYWxsZXJ5LWNvbnRyb2w6aG92ZXI6YmVmb3JlLCAubW9kYWFsLWdhbGxlcnktY29udHJvbDpob3ZlcjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjYWZiN2JjOyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sIHNwYW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIGNsaXA6IHJlY3QoMXB4IDFweCAxcHggMXB4KTtcbiAgICAvKiBJRTYsIElFNyAqL1xuICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubW9kYWFsLWdhbGxlcnktY29udHJvbDpiZWZvcmUsIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxNnB4O1xuICAgIGxlZnQ6IDI1cHg7XG4gICAgd2lkdGg6IDRweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmJlZm9yZSB7XG4gICAgbWFyZ2luOiAtNXB4IDAgMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmFmdGVyIHtcbiAgICBtYXJnaW46IDVweCAwIDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG5cbi5tb2RhYWwtZ2FsbGVyeS1uZXh0IHtcbiAgbGVmdDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDQwcHg7IH1cblxuLm1vZGFhbC1nYWxsZXJ5LXByZXYge1xuICByaWdodDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiA0MHB4OyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1wcmV2OmJlZm9yZSwgLm1vZGFhbC1nYWxsZXJ5LXByZXY6YWZ0ZXIge1xuICAgIGxlZnQ6IDIycHg7IH1cbiAgLm1vZGFhbC1nYWxsZXJ5LXByZXY6YmVmb3JlIHtcbiAgICBtYXJnaW46IDVweCAwIDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuICAubW9kYWFsLWdhbGxlcnktcHJldjphZnRlciB7XG4gICAgbWFyZ2luOiAtNXB4IDAgMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cblxuLm1vZGFhbC12aWRlby13cmFwIHtcbiAgbWFyZ2luOiBhdXRvIDUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubW9kYWFsLXZpZGVvLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgbWF4LXdpZHRoOiAxMzAwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLm1vZGFhbC12aWRlby1jb250YWluZXIgaWZyYW1lLFxuICAubW9kYWFsLXZpZGVvLWNvbnRhaW5lciBvYmplY3QsXG4gIC5tb2RhYWwtdmlkZW8tY29udGFpbmVyIGVtYmVkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5tb2RhYWwtaWZyYW1lIC5tb2RhYWwtY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLm1vZGFhbC1pZnJhbWUtZWxlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5tb2RhYWwtdmlkZW8tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDczMXB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTQwcHgpIHtcbiAgLm1vZGFhbC1pbWFnZSAubW9kYWFsLWlubmVyLXdyYXBwZXIge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sIHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAyMHB4O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cbiAgICAubW9kYWFsLWdhbGxlcnktY29udHJvbDpiZWZvcmUsIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgLm1vZGFhbC1nYWxsZXJ5LW5leHQge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDIwcHg7IH1cbiAgLm1vZGFhbC1nYWxsZXJ5LXByZXYge1xuICAgIGxlZnQ6IDIwcHg7XG4gICAgcmlnaHQ6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAubW9kYWFsLWluc3RhZ3JhbSBpZnJhbWUge1xuICAgIHdpZHRoOiA1MDBweCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDExMDBweCkge1xuICAubW9kYWFsLWluc3RhZ3JhbSBpZnJhbWUge1xuICAgIHdpZHRoOiA3MDBweCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDEwMDBweCkge1xuICAubW9kYWFsLWlubmVyLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4OyB9XG4gIC5tb2RhYWwtaW5zdGFncmFtIGlmcmFtZSB7XG4gICAgd2lkdGg6IDYwMHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogOTAwcHgpIHtcbiAgLm1vZGFhbC1pbnN0YWdyYW0gaWZyYW1lIHtcbiAgICB3aWR0aDogNTAwcHggIWltcG9ydGFudDsgfVxuICAubW9kYWFsLXZpZGVvLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5MDBweDtcbiAgICBtYXgtaGVpZ2h0OiA1MTBweDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgLm1vZGFhbC1pbnN0YWdyYW0gaWZyYW1lIHtcbiAgICB3aWR0aDogMjgwcHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDgyMHB4KSB7XG4gIC5tb2RhYWwtZ2FsbGVyeS1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMjAwcHg7XG4gIGhlaWdodDogMjAwcHg7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTEwMHB4IDAgMCAtMTAwcHg7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4yNSk7IH1cblxuQC1tcy1rZXlmcmFtZXMgbW9kYWFsLWxvYWRpbmctc3Bpbm5lciB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAuMTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfSB9XG5cbkAtbW96LWtleWZyYW1lcyBtb2RhYWwtbG9hZGluZy1zcGlubmVyIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IC4xO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogLjE7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG5ALW8ta2V5ZnJhbWVzIG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogLjE7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogLjE7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdiB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2ID4gZGl2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSgxKSA+IGRpdiB7XG4gIC1tcy1hbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtbW96LWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW8tYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogMHM7XG4gIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDBzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IDBzO1xuICBhbmltYXRpb24tZGVsYXk6IDBzOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2Om50aC1vZi10eXBlKDIpID4gZGl2LCAubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSgzKSA+IGRpdiB7XG4gIC1tcy1hbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtbW96LWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW8tYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSgxKSB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKDcwcHgsIDApOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2Om50aC1vZi10eXBlKDIpID4gZGl2IHtcbiAgYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogLjEycztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IC4xMnM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuMTJzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IC4xMnM7XG4gIGFuaW1hdGlvbi1kZWxheTogLjEyczsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSgyKSB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2Om50aC1vZi10eXBlKDMpID4gZGl2IHtcbiAgYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogLjI1cztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IC4yNXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuMjVzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IC4yNXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLjI1czsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSg0KSA+IGRpdiwgLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgPiBkaXY6bnRoLW9mLXR5cGUoNSkgPiBkaXYge1xuICAtbXMtYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtd2Via2l0LWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIC1vLWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7IH1cblxuLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgPiBkaXY6bnRoLW9mLXR5cGUoMykge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDEzNWRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgxMzVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMTM1ZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgxMzVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDEzNWRlZykgdHJhbnNsYXRlKDcwcHgsIDApOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2Om50aC1vZi10eXBlKDQpID4gZGl2IHtcbiAgYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogLjM3cztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IC4zN3M7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuMzdzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IC4zN3M7XG4gIGFuaW1hdGlvbi1kZWxheTogLjM3czsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSg0KSB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7IH1cblxuLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgPiBkaXY6bnRoLW9mLXR5cGUoNSkgPiBkaXYge1xuICBhbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtbXMtYW5pbWF0aW9uLWRlbGF5OiAuNXM7XG4gIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAuNXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuNXM7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogLjVzO1xuICBhbmltYXRpb24tZGVsYXk6IC41czsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSg2KSA+IGRpdiwgLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgPiBkaXY6bnRoLW9mLXR5cGUoNykgPiBkaXYge1xuICAtbXMtYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtd2Via2l0LWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIC1vLWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7IH1cblxuLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgPiBkaXY6bnRoLW9mLXR5cGUoNSkge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDIyNWRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgyMjVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMjI1ZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgyMjVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDIyNWRlZykgdHJhbnNsYXRlKDcwcHgsIDApOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2Om50aC1vZi10eXBlKDYpID4gZGl2IHtcbiAgYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogLjYycztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IC42MnM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuNjJzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IC42MnM7XG4gIGFuaW1hdGlvbi1kZWxheTogLjYyczsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSg2KSB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMjcwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDI3MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDI3MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMjcwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7IH1cblxuLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgPiBkaXY6bnRoLW9mLXR5cGUoNykgPiBkaXYge1xuICBhbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtbXMtYW5pbWF0aW9uLWRlbGF5OiAuNzVzO1xuICAtbW96LWFuaW1hdGlvbi1kZWxheTogLjc1cztcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC43NXM7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogLjc1cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuNzVzOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2Om50aC1vZi10eXBlKDcpIHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgzMTVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMzE1ZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDMxNWRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMzE1ZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgzMTVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSg4KSA+IGRpdiB7XG4gIC1tcy1hbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtbW96LWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW8tYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogLjg3cztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IC44N3M7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuODdzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IC44N3M7XG4gIGFuaW1hdGlvbi1kZWxheTogLjg3czsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSg4KSB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMzYwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDM2MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgzNjBkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDM2MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMzYwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5tb2RhYWwtY29udGVudC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDMwcHggMzBweCA4MHB4O1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuICAubW9kYWFsLXdyYXBwZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAubW9kYWFsLXdyYXBwZXIgLm1vZGFhbC1vdXRlci13cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLm1vZGFhbC13cmFwcGVyIC5tb2RhYWwtaW5uZXItd3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgLm1vZGFhbC13cmFwcGVyIC5tb2RhYWwtY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBhdXRvOyB9XG4gICAgLm1vZGFhbC13cmFwcGVyIC5tb2RhYWwtY2xvc2Uge1xuICAgICAgYmFja2dyb3VuZDogIzkxOTY5YTtcbiAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgdG9wOiAxMHB4OyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIHRhYmxlLmJ0IHRoLFxuICB0YWJsZS5idCB0ZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIHRhYmxlLmJ0IHRib2R5IHRkOmxhc3QtY2hpbGQ6OmJlZm9yZSxcbiAgdGFibGUuYnQgdGJvZHkgdGQ6bGFzdC1jaGlsZCAuYnQtY29udGVudCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMC4yNXJlbSBzb2xpZCAjZmZmOyB9XG4gIHRhYmxlLmJ0IHRoZWFkLFxuICB0YWJsZS5idCB0Ym9keSB0aCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICB0YWJsZS5idCB0Zm9vdCB0aCxcbiAgdGFibGUuYnQgdGZvb3QgdGQsXG4gIHRhYmxlLmJ0IHRib2R5IHRkIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAvKiBJRSA5ICovXG4gICAgZmxvYXQ6IGxlZnRcXDk7XG4gICAgd2lkdGg6IDEwMCVcXDk7IH1cbiAgdGFibGUuYnQgdGZvb3QgdGg6OmJlZm9yZSxcbiAgdGFibGUuYnQgdGZvb3QgdGQ6OmJlZm9yZSxcbiAgdGFibGUuYnQgdGJvZHkgdGQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogYXR0cihkYXRhLXRoKSBcIjogXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6IDA7XG4gICAgLW1zLWZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiAzMCU7XG4gICAgcGFkZGluZzogMC41NjI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZTYzNjc7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cbiAgdGFibGUuYnQgdGZvb3QgdGguYnQtaGlkZSxcbiAgdGFibGUuYnQgdGZvb3QgdGQuYnQtaGlkZSxcbiAgdGFibGUuYnQgdGJvZHkgdGQuYnQtaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICB0YWJsZS5idCB0Zm9vdCB0aCAuYnQtY29udGVudCxcbiAgdGFibGUuYnQgdGZvb3QgdGQgLmJ0LWNvbnRlbnQsXG4gIHRhYmxlLmJ0IHRib2R5IHRkIC5idC1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwLjU2MjVyZW07XG4gICAgYm9yZGVyLXRvcDogMC4wNjI1cmVtIHNvbGlkICNjNGM5Y2Q7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAuYnQtd3JhcHBlci5hY3RpdmUge1xuICAgIG1heC1oZWlnaHQ6IDE5LjM3NXJlbTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH0gfVxuXG4ubGF6eWxvYWQsXG4ubGF6eWxvYWRpbmcge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5sYXp5bG9hZGVkIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNHMgZWFzZTsgfVxuXG4uYmFjay10byB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIDAgNDBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlOyB9XG4gIC5iYWNrLXRvOmhvdmVyIHNwYW4sIC5iYWNrLXRvOmFjdGl2ZSBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMyYjMwMzQgMCUsICMyYjMwMzQgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4OyB9XG4gIC5iYWNrLXRvOmhvdmVyIC5zdmcsXG4gIC5iYWNrLXRvOmhvdmVyIHN2ZywgLmJhY2stdG86YWN0aXZlIC5zdmcsXG4gIC5iYWNrLXRvOmFjdGl2ZSBzdmcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtOHB4KTsgfVxuICAuYmFjay10byBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlOyB9XG4gIC5iYWNrLXRvIC5zdmcsXG4gIC5iYWNrLXRvIHN2ZyB7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZTsgfVxuXG4uc2lkZWJhcl9fbWVudSB7XG4gIG1hcmdpbjogMCAwIDYwcHg7IH1cbiAgLnNpZGViYXJfX21lbnUgLmZpbHRlcl9fbGlzdCBsaSBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICM1ZTYzNjc7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgLnNpZGViYXJfX21lbnUgLmZpbHRlcl9fbGlzdCBsaSBhOmhvdmVyLCAuc2lkZWJhcl9fbWVudSAuZmlsdGVyX19saXN0IGxpIGE6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjMmIzMDM0OyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgLnNpZGViYXJfX21lbnUgLmZpbHRlcl9fbGlzdCBsaSBhOmJlZm9yZSwgLnNpZGViYXJfX21lbnUgLmZpbHRlcl9fbGlzdCBsaSBhOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHJpZ2h0OiA0cHg7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjNWU2MzY3O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVkoNHB4KTsgfVxuICAgICAgLnNpZGViYXJfX21lbnUgLmZpbHRlcl9fbGlzdCBsaSBhOmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVkoLTRweCk7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI1cHgpIHtcbiAgICAgIC5zaWRlYmFyX19tZW51IC5maWx0ZXJfX2xpc3QgbGkgYSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAgICAgLnNpZGViYXJfX21lbnUgLmZpbHRlcl9fbGlzdCBsaSBhOmhvdmVyLCAuc2lkZWJhcl9fbWVudSAuZmlsdGVyX19saXN0IGxpIGE6YWN0aXZlLCAuc2lkZWJhcl9fbWVudSAuZmlsdGVyX19saXN0IGxpIGE6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzVlNjM2NyAwJSwgIzVlNjM2NyAxMDAlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxcHg7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxMjVtcyBjdWJpYy1iZXppZXIoMC43NywgMCwgMC4xNzUsIDEpOyB9IH1cbiAgLnNpZGViYXJfX21lbnUgLmZpbHRlcl9fbGlzdCBsaS5hY3RpdmUgPiBhIHtcbiAgICBjb2xvcjogIzJiMzAzNDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICM1ZTYzNjcgMCUsICM1ZTYzNjcgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMXB4O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTI1bXMgY3ViaWMtYmV6aWVyKDAuNzcsIDAsIDAuMTc1LCAxKTsgfVxuXG4vKipcbiAqIE93bCBDYXJvdXNlbCB2Mi4zLjRcbiAqIENvcHlyaWdodCAyMDEzLTIwMTggRGF2aWQgRGV1dHNjaFxuICogTGljZW5zZWQgdW5kZXI6IFNFRSBMSUNFTlNFIElOIGh0dHBzOi8vZ2l0aHViLmNvbS9Pd2xDYXJvdXNlbDIvT3dsQ2Fyb3VzZWwyL2Jsb2IvbWFzdGVyL0xJQ0VOU0VcbiAqL1xuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBDb3JlXG4gKi9cbi5vd2wtY2Fyb3VzZWwge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogcG9zaXRpb24gcmVsYXRpdmUgYW5kIHotaW5kZXggZml4IHdlYmtpdCByZW5kZXJpbmcgZm9udHMgaXNzdWUgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLVk7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBtYXJnaW46IDAgYXV0bztcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi8gfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2U6YWZ0ZXIge1xuICBjb250ZW50OiBcIi5cIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBoZWlnaHQ6IDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAvKiBmaXggZm9yIGZsYXNoaW5nIGJhY2tncm91bmQgKi9cbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC13cmFwcGVyLFxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBmbG9hdDogbGVmdDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLW5hdi5kaXNhYmxlZCxcbi5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzLmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldixcbi5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1uZXh0LFxuLm93bC1jYXJvdXNlbCAub3dsLWRvdCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1wcmV2LFxuLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24ub3dsLW5leHQsXG4ub3dsLWNhcm91c2VsIGJ1dHRvbi5vd2wtZG90IHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBmb250OiBpbmhlcml0OyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWxvYWRpbmcge1xuICBvcGFjaXR5OiAwO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1oaWRkZW4ge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJlZnJlc2ggLm93bC1pdGVtIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWRyYWcgLm93bC1pdGVtIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtZ3JhYiB7XG4gIGN1cnNvcjogbW92ZTtcbiAgY3Vyc29yOiBncmFiOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCB7XG4gIGRpcmVjdGlvbjogcnRsOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCAub3dsLWl0ZW0ge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLyogTm8gSnMgKi9cbi5uby1qcyAub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAgICogIE93bCBDYXJvdXNlbCAtIEFuaW1hdGUgUGx1Z2luXG4gICAqL1xuLm93bC1jYXJvdXNlbCAuYW5pbWF0ZWQge1xuICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtYW5pbWF0ZWQtaW4ge1xuICB6LWluZGV4OiAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1vdXQge1xuICB6LWluZGV4OiAxOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLmZhZGVPdXQge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dDsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLypcbiAgICogXHRPd2wgQ2Fyb3VzZWwgLSBBdXRvIEhlaWdodCBQbHVnaW5cbiAgICovXG4ub3dsLWhlaWdodCB7XG4gIHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDsgfVxuXG4vKlxuICAgKiBcdE93bCBDYXJvdXNlbCAtIExhenkgTG9hZCBQbHVnaW5cbiAgICovXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gIC8qKlxuICAgICAgICAgICAgICBUaGlzIGlzIGludHJvZHVjZWQgZHVlIHRvIGEgYnVnIGluIElFMTEgd2hlcmUgbGF6eSBsb2FkaW5nIGNvbWJpbmVkIHdpdGggYXV0b2hlaWdodCBwbHVnaW4gY2F1c2VzIGEgd3JvbmdcbiAgICAgICAgICAgICAgY2FsY3VsYXRpb24gb2YgdGhlIGhlaWdodCBvZiB0aGUgb3dsLWl0ZW0gdGhhdCBicmVha3MgcGFnZSBsYXlvdXRzXG4gICAgICAgICAgICovIH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLm93bC1sYXp5IHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eVtzcmNePVwiXCJdLCAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenk6bm90KFtzcmNdKSB7XG4gIG1heC1oZWlnaHQ6IDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nLm93bC1sYXp5IHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsgfVxuXG4vKlxuICAgKiBcdE93bCBDYXJvdXNlbCAtIFZpZGVvIFBsdWdpblxuICAgKi9cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiA4MHB4O1xuICB3aWR0aDogODBweDtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwib3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbjpob3ZlciB7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjMsIDEuMyk7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby10bixcbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tcGxheS1pY29uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tdG4ge1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1mcmFtZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTsgfVxuXG5mb3JtLnBvc3QtcGFzc3dvcmQtZm9ybSBwOm50aC1jaGlsZCgyKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICBmb3JtLnBvc3QtcGFzc3dvcmQtZm9ybSBwOm50aC1jaGlsZCgyKSBsYWJlbCB7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIGZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHA6bnRoLWNoaWxkKDIpIGlucHV0LCBmb3JtLnBvc3QtcGFzc3dvcmQtZm9ybSBwOm50aC1jaGlsZCgyKSB0ZXh0YXJlYSwgZm9ybS5wb3N0LXBhc3N3b3JkLWZvcm0gcDpudGgtY2hpbGQoMikgLmdpbnB1dF9jb250YWluZXJfc2VsZWN0IHNlbGVjdCwgLmdpbnB1dF9jb250YWluZXJfc2VsZWN0IGZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHA6bnRoLWNoaWxkKDIpIHNlbGVjdCwgZm9ybS5wb3N0LXBhc3N3b3JkLWZvcm0gcDpudGgtY2hpbGQoMikgLmdpbnB1dF9jb21wbGV4IC5hZGRyZXNzX2NvdW50cnkgc2VsZWN0LCAuZ2lucHV0X2NvbXBsZXggLmFkZHJlc3NfY291bnRyeSBmb3JtLnBvc3QtcGFzc3dvcmQtZm9ybSBwOm50aC1jaGlsZCgyKSBzZWxlY3QsIGZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHA6bnRoLWNoaWxkKDIpIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3QsIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBmb3JtLnBvc3QtcGFzc3dvcmQtZm9ybSBwOm50aC1jaGlsZCgyKSBzZWxlY3QsIGZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHA6bnRoLWNoaWxkKDIpIC5naW5wdXRfY29udGFpbmVyX211bHRpc2VsZWN0IHNlbGVjdCwgLmdpbnB1dF9jb250YWluZXJfbXVsdGlzZWxlY3QgZm9ybS5wb3N0LXBhc3N3b3JkLWZvcm0gcDpudGgtY2hpbGQoMikgc2VsZWN0LCBmb3JtLnBvc3QtcGFzc3dvcmQtZm9ybSBwOm50aC1jaGlsZCgyKSAuZm9ybS1maWVsZCBzZWxlY3QsIC5mb3JtLWZpZWxkIGZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHA6bnRoLWNoaWxkKDIpIHNlbGVjdCB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHBhZGRpbmc6IDE1cHggMTBweDsgfVxuICAgIGZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHA6bnRoLWNoaWxkKDIpIGlucHV0W25hbWU9XCJTdWJtaXRcIl0sIGZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHA6bnRoLWNoaWxkKDIpIHRleHRhcmVhW25hbWU9XCJTdWJtaXRcIl0sIGZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHA6bnRoLWNoaWxkKDIpIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCBzZWxlY3RbbmFtZT1cIlN1Ym1pdFwiXSwgLmdpbnB1dF9jb250YWluZXJfc2VsZWN0IGZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHA6bnRoLWNoaWxkKDIpIHNlbGVjdFtuYW1lPVwiU3VibWl0XCJdLCBmb3JtLnBvc3QtcGFzc3dvcmQtZm9ybSBwOm50aC1jaGlsZCgyKSAuZ2lucHV0X2NvbXBsZXggLmFkZHJlc3NfY291bnRyeSBzZWxlY3RbbmFtZT1cIlN1Ym1pdFwiXSwgLmdpbnB1dF9jb21wbGV4IC5hZGRyZXNzX2NvdW50cnkgZm9ybS5wb3N0LXBhc3N3b3JkLWZvcm0gcDpudGgtY2hpbGQoMikgc2VsZWN0W25hbWU9XCJTdWJtaXRcIl0sIGZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHA6bnRoLWNoaWxkKDIpIC5jbGVhci1tdWx0aSAuZ2ZpZWxkX3RpbWVfYW1wbSBzZWxlY3RbbmFtZT1cIlN1Ym1pdFwiXSwgLmNsZWFyLW11bHRpIC5nZmllbGRfdGltZV9hbXBtIGZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHA6bnRoLWNoaWxkKDIpIHNlbGVjdFtuYW1lPVwiU3VibWl0XCJdLCBmb3JtLnBvc3QtcGFzc3dvcmQtZm9ybSBwOm50aC1jaGlsZCgyKSAuZ2lucHV0X2NvbnRhaW5lcl9tdWx0aXNlbGVjdCBzZWxlY3RbbmFtZT1cIlN1Ym1pdFwiXSwgLmdpbnB1dF9jb250YWluZXJfbXVsdGlzZWxlY3QgZm9ybS5wb3N0LXBhc3N3b3JkLWZvcm0gcDpudGgtY2hpbGQoMikgc2VsZWN0W25hbWU9XCJTdWJtaXRcIl0sIGZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHA6bnRoLWNoaWxkKDIpIC5mb3JtLWZpZWxkIHNlbGVjdFtuYW1lPVwiU3VibWl0XCJdLCAuZm9ybS1maWVsZCBmb3JtLnBvc3QtcGFzc3dvcmQtZm9ybSBwOm50aC1jaGlsZCgyKSBzZWxlY3RbbmFtZT1cIlN1Ym1pdFwiXSB7XG4gICAgICB3aWR0aDogMzMlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cblxuLmNsZWFyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYWxpZ25sZWZ0IHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVlbTsgfVxuXG4uYWxpZ25yaWdodCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMS41ZW07IH1cblxuLmFsaWduY2VudGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5wdXNoIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzLiAqL1xuLnNjcmVlbi1yZWFkZXItdGV4dCwgLmdmaWVsZC5nZm9ybV9oaWRkZW4ge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzLCAuZ2ZpZWxkLmdmb3JtX2hpZGRlbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M0YzljZDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzkxOTY5YTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDAuMDU0Njg3NXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRvcDogNXB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHotaW5kZXg6IDEwMDAwMDtcbiAgICAvKiBBYm92ZSBXUCB0b29sYmFyLiAqLyB9XG5cbi5nYWxsZXJ5IHtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07IH1cblxuLmdhbGxlcnktaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aWR0aDogMTAwJTsgfVxuICAuZ2FsbGVyeS1jb2x1bW5zLTIgLmdhbGxlcnktaXRlbSB7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLmdhbGxlcnktY29sdW1ucy0zIC5nYWxsZXJ5LWl0ZW0ge1xuICAgIG1heC13aWR0aDogMzMuMzMlOyB9XG4gIC5nYWxsZXJ5LWNvbHVtbnMtNCAuZ2FsbGVyeS1pdGVtIHtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAuZ2FsbGVyeS1jb2x1bW5zLTUgLmdhbGxlcnktaXRlbSB7XG4gICAgbWF4LXdpZHRoOiAyMCU7IH1cbiAgLmdhbGxlcnktY29sdW1ucy02IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIG1heC13aWR0aDogMTYuNjYlOyB9XG4gIC5nYWxsZXJ5LWNvbHVtbnMtNyAuZ2FsbGVyeS1pdGVtIHtcbiAgICBtYXgtd2lkdGg6IDE0LjI4JTsgfVxuICAuZ2FsbGVyeS1jb2x1bW5zLTggLmdhbGxlcnktaXRlbSB7XG4gICAgbWF4LXdpZHRoOiAxMi41JTsgfVxuICAuZ2FsbGVyeS1jb2x1bW5zLTkgLmdhbGxlcnktaXRlbSB7XG4gICAgbWF4LXdpZHRoOiAxMS4xMSU7IH1cblxuLmdhbGxlcnktY2FwdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi53cC1jYXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICAud3AtY2FwdGlvbiBpbWdbY2xhc3MqPVwid3AtaW1hZ2UtXCJdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLndwLWNhcHRpb24gLndwLWNhcHRpb24tdGV4dCB7XG4gICAgbWFyZ2luOiAwLjgwNzVlbSAwOyB9XG5cbi53cC1jYXB0aW9uLXRleHQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLm5vdGUge1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG5cbi5ob21lIC5zaXRlLWNvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogMDsgfVxuXG4uaG9tZSAuY29udGVudC1tb2R1bGUge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG5cbi5lcnJvci00MDQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmVycm9yLTQwNCAucGFnZV9faGVhZGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAuZXJyb3ItNDA0IC5wYWdlX19oZWFkZXI6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAuZXJyb3ItNDA0IC5wYWdlX19kZXNjIHtcbiAgICBmb250LXNpemU6IDEuMTg3NXJlbTsgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmVycm9yLTQwNCAucGFnZV9fZGVzYyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zMTI1cmVtOyB9IH1cblxuW2RhdGEtY29udGVudD1cImVkaXRvclwiXSBhIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMmIzMDM0IDAlLCAjMmIzMDM0IDEwMCUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDFweDsgfVxuICBbZGF0YS1jb250ZW50PVwiZWRpdG9yXCJdIGE6aG92ZXIsIFtkYXRhLWNvbnRlbnQ9XCJlZGl0b3JcIl0gYTpmb2N1cywgW2RhdGEtY29udGVudD1cImVkaXRvclwiXSBhOmFjdGl2ZSB7XG4gICAgY29sb3I6ICM1ZTYzNjc7IH1cbiAgW2RhdGEtY29udGVudD1cImVkaXRvclwiXSBhID4gaW1nIHtcbiAgICBib3gtc2hhZG93OiAwcHggNXB4IDBweCAjZmZmOyB9XG5cbltkYXRhLWNvbnRlbnQ9XCJlZGl0b3JcIl0gLmdmb3JtX2ZpZWxkcyB1bCxcbltkYXRhLWNvbnRlbnQ9XCJlZGl0b3JcIl0gLmdmb3JtX2ZpZWxkcyBvbCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbltkYXRhLWNvbnRlbnQ9XCJlZGl0b3JcIl0gaW1nW2NsYXNzKj1cImFsaWduXCJdLFxuW2RhdGEtY29udGVudD1cImVkaXRvclwiXSBpbWdbY2xhc3MqPVwid3AtaW1hZ2UtXCJdIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICAvKiBNYWtlIHN1cmUgaW1hZ2VzIHdpdGggV29yZFByZXNzLWFkZGVkIGhlaWdodCBhbmQgd2lkdGggPmF0dHJpYnV0ZXMgYXJlIHNjYWxlZCBjb3JyZWN0bHkgKi9cbiAgd2lkdGg6IGF1dG87IH1cblxuW2RhdGEtY29udGVudD1cImVkaXRvclwiXSB0YWJsZSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXI6IDA7IH1cbiAgW2RhdGEtY29udGVudD1cImVkaXRvclwiXSB0YWJsZSB0ZCwgW2RhdGEtY29udGVudD1cImVkaXRvclwiXSB0YWJsZSB0aCB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbltkYXRhLWNvbnRlbnQ9XCJlZGl0b3JcIl0gdGFibGUuYm9yZGVyIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjYzRjOWNkO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2M0YzljZDsgfVxuICBbZGF0YS1jb250ZW50PVwiZWRpdG9yXCJdIHRhYmxlLmJvcmRlciB0ZCwgW2RhdGEtY29udGVudD1cImVkaXRvclwiXSB0YWJsZS5ib3JkZXIgdGgge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjNGM5Y2Q7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjNGM5Y2Q7IH1cblxuLnBhZ2UtdGVtcGxhdGUtY3VzdG9tLWZpbmRjb3Vyc2VzIHtcbiAgcGFkZGluZy10b3A6IDgwcHg7IH1cblxuZGl2W2lkJD1cIi1vcHRpblwiXSB7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgZGl2W2lkJD1cIi1vcHRpblwiXSBkaXZbY2xhc3MkPVwiLWZvcm0td3JhcFwiXSBkaXYgc3BhbiB7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkICFpbXBvcnRhbnQ7IH1cbiIsImh0bWwsXG5ib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuYm9keSB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIC8vIEFsbG93IE1vYmlsZSBFbGFzdGljaXR5XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICoge1xuICAgICAgICAvLyBTZXQgYm9yZGVyLWJveCBvbiBhbGwgZWxlbWVudHNcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG59IiwiYm9keSB7XG4gIGNvbG9yOiAkYmFzZS1mb250LWNvbG9yO1xuICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogXCJrZXJuXCIsIFwibGlnYVwiLCBcInBudW1cIjtcbiAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkYmFzZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRiYXNlLWxpbmUtaGVpZ2h0O1xuICBsZXR0ZXItc3BhY2luZzogbGV0dGVyLXNwYWNpbmcoMTYpO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZy1saW5lLWhlaWdodDtcbiAgbWFyZ2luOiAxLjVlbSAwIDFlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuaDEge1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IHJlbSg0OCk7XG4gIGxldHRlci1zcGFjaW5nOiBsZXR0ZXItc3BhY2luZyg0OCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIGZvbnQtc2l6ZTogcmVtKDYyKTtcbiAgICBsZXR0ZXItc3BhY2luZzogbGV0dGVyLXNwYWNpbmcoNjIpO1xuICB9XG59XG5oMiB7XG4gIGZvbnQtc2l6ZTogcmVtKDMyKTtcbiAgbGV0dGVyLXNwYWNpbmc6IGxldHRlci1zcGFjaW5nKDMyKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgZm9udC1zaXplOiByZW0oNDgpO1xuICAgIGxldHRlci1zcGFjaW5nOiBsZXR0ZXItc3BhY2luZyg0OCk7XG4gIH1cbn1cbmgzIHtcbiAgZm9udC1zaXplOiByZW0oMjgpO1xuICBsZXR0ZXItc3BhY2luZzogbGV0dGVyLXNwYWNpbmcoMjgpO1xuICBmb250LXdlaWdodDogMzAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICBmb250LXNpemU6IHJlbSgzMik7XG4gICAgbGV0dGVyLXNwYWNpbmc6IGxldHRlci1zcGFjaW5nKDMyKTtcbiAgfVxufVxuaDQge1xuICBmb250LXNpemU6IHJlbSgyNCk7XG4gIGxldHRlci1zcGFjaW5nOiBsZXR0ZXItc3BhY2luZygyNCk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGFwdG9wJykge1xuICAgIGZvbnQtc2l6ZTogcmVtKDI4KTtcbiAgICBsZXR0ZXItc3BhY2luZzogbGV0dGVyLXNwYWNpbmcoMjgpO1xuICB9XG59XG5oNSB7XG4gIGZvbnQtc2l6ZTogcmVtKDIxKTtcbiAgbGV0dGVyLXNwYWNpbmc6IGxldHRlci1zcGFjaW5nKDIxKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgZm9udC1zaXplOiByZW0oMjQpO1xuICAgIGxldHRlci1zcGFjaW5nOiBsZXR0ZXItc3BhY2luZygyNCk7XG4gIH1cbn1cbmg2IHtcbiAgZm9udC1zaXplOiByZW0oMTkpO1xuICBsZXR0ZXItc3BhY2luZzogbGV0dGVyLXNwYWNpbmcoMTkpO1xuICBmb250LXdlaWdodDogNDAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PWxhcHRvcCcpIHtcbiAgICBmb250LXNpemU6IHJlbSgyMSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IGxldHRlci1zcGFjaW5nKDIxKTtcbiAgfVxufVxuXG5cbnAge1xuICBtYXJnaW46IDAgMCAxLjVlbTtcbn1cblxuYSB7XG4gIGNvbG9yOiAkYWN0aW9uLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xufVxuXG5cbmJsb2NrcXVvdGUge31cbmNpdGUge31cblxuaHIge1xuICBib3JkZXItYm90dG9tOiAkYmFzZS1ib3JkZXI7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci10b3A6IDA7XG4gIG1hcmdpbjogJGJhc2Utc3BhY2luZyAwO1xufVxuIiwiLy8gQ29sb3JzXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4vLyBVc2FnZTogY29sb3I6IGdldC1jb2xvcihibHVlKTsgb3IgY29sb3I6IGdldC1hY2NlbnQoY3lhbik7XG5cbi8vIGNvbG9yIHZhcmlhYmxlIG1hcFxuJGNvbG9yczogKFxuICAgIGJsdWU6ICAgICAgICAgICMwMDU1OGMsXG4gICAgd2hpdGU6ICAgICAgICAgI2ZmZixcbiAgICBibGFjazogICAgICAgICAjMWExYTFhLFxuICAgIGNoYXJjb2FsOiAgICAgICMyYjMwMzQsXG4gICAgZGFyay1ncmF5OiAgICAgIzVlNjM2NyxcbiAgICBncmF5OiAgICAgICAgICAjOTE5NjlhLFxuICAgIGxpZ2h0LWdyYXk6ICAgICNjNGM5Y2QsXG4gICAgbGlnaHRlci1ncmF5OiAgI2UzZThlYSxcbiAgICBvZmYtd2hpdGU6ICAgICAjZjBmNWY3LFxuKTtcblxuJGFjY2VudHM6IChcbiAgICByZWQ6ICAgICAgICAgICAgICAgICAjYTYxOTJlLFxuICAgIG9yYW5nZTogICAgICAgICAgICAgICNmMjZhMzYsXG4gICAgY2Fycm90LW9yYW5nZTogICAgICAgI2ZmOGYxYyxcbiAgICBkYXJrLXJlZDogICAgICAgICAgICAjNzYyMzJmLFxuICAgIGNhcnJvdC1vcmFuZ2Utc2hhZGU6ICNiOTQ3MDAsXG4gICAgeWVsbG93LXNoYWRlOiAgICAgICAgI2RhYWEwMCxcbiAgICB5ZWxsb3c6ICAgICAgICAgICAgICAjZmNkNjBiLFxuICAgIHRpLWdyZWVuOiAgICAgICAgICAgICM4MmMzNDEsXG4gICAgYXF1YTogICAgICAgICAgICAgICAgIzhmZDFjMyxcbiAgICB0ZWFsOiAgICAgICAgICAgICAgICAjMDBiMDk4LFxuICAgIHRlYWwtc2hhZGU6ICAgICAgICAgICMwMDgyNjQsXG4gICAgYnJpZ2h0LWJsdWU6ICAgICAgICAgIzAwYmNlNyxcbiAgICB0aS1ibHVlOiAgICAgICAgICAgICAjMDA1NThjLFxuICAgIGJyaWdodC1ibHVlLXNoYWRlOiAgICMwMDcwOTYsXG4gICAgcHVycGxlOiAgICAgICAgICAgICAgIzY3NTZhNSxcbiAgICBieXphbnRpbmUtc2hhZGU6ICAgICAjNzcyNTgzLFxuICAgIGJ5emFudGluZTogICAgICAgICAgICM5YjI2YjYsXG4pO1xuXG4kdG9waWNzOiAoXG4gICAgY29tcGxpYW5jZTogICAgICAgICAgICAgICAgICAgICAgIGdldC1hY2NlbnQocmVkKSxcbiAgICBjb250ZW50LWRldmVsb3BtZW50OiAgICAgICAgICAgICAgZ2V0LWFjY2VudChvcmFuZ2UpLFxuICAgIGRpdmVyc2l0eS1lcXVpdHktYW5kLWluY2x1c2lvbjogICBnZXQtYWNjZW50KGRhcmstcmVkKSxcbiAgICBlLWxlYXJuaW5nOiAgICAgICAgICAgICAgICAgICAgICAgZ2V0LWFjY2VudChjYXJyb3Qtb3JhbmdlKSxcbiAgICBpdC1hbmQtdGVjaG5pY2FsLXRyYWluaW5nOiAgICAgICAgZ2V0LWFjY2VudChjYXJyb3Qtb3JhbmdlLXNoYWRlKSxcbiAgICBsZWFkZXJzaGlwOiAgICAgICAgICAgICAgICAgICAgICAgZ2V0LWFjY2VudCh5ZWxsb3ctc2hhZGUpLFxuICAgIGxlYXJuaW5nLXRlY2hub2xvZ2llczogICAgICAgICAgICBnZXQtYWNjZW50KHRpLWdyZWVuKSxcbiAgICBtZWFzdXJlbWVudC1hbmQtYW5hbHl0aWNzOiAgICAgICAgZ2V0LWFjY2VudCh0ZWFsKSxcbiAgICBvdXRzb3VyY2luZzogICAgICAgICAgICAgICAgICAgICAgZ2V0LWFjY2VudCh0ZWFsLXNoYWRlKSxcbiAgICBvbmJvYXJkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgZ2V0LWFjY2VudChhcXVhKSxcbiAgICBwZXJmb3JtYW5jZS1tYW5hZ2VtZW50OiAgICAgICAgICAgZ2V0LWFjY2VudChicmlnaHQtYmx1ZSksXG4gICAgcHJvZmVzc2lvbmFsLWRldmVsb3BtZW50OiAgICAgICAgIGdldC1hY2NlbnQodGktYmx1ZSksXG4gICAgcmVtb3RlLWxlYXJuaW5nOiAgICAgICAgICAgICAgICAgIGdldC1hY2NlbnQoYnJpZ2h0LWJsdWUtc2hhZGUpLFxuICAgIHNhbGVzOiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnZXQtYWNjZW50KHB1cnBsZSksXG4gICAgc3RyYXRlZ3ktYWxpZ25tZW50LWFuZC1wbGFubmluZzogIGdldC1hY2NlbnQoYnl6YW50aW5lLXNoYWRlKSxcbiAgICB3b3JrZm9yY2UtZGV2ZWxvcG1lbnQ6ICAgICAgICAgICAgZ2V0LWFjY2VudChieXphbnRpbmUpLFxuKTtcbiIsIi8vIFR5cG9ncmFwaHlcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiRnb3RoYW06IFwiR290aGFtIFNTbSBBXCIsIFwiR290aGFtIFNTbSBCXCIsIFwiR290aGFtXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRiYXNlLWZvbnQtZmFtaWx5OiAkZ290aGFtO1xuJGhlYWRpbmctZm9udC1mYW1pbHk6ICRnb3RoYW07XG5cbi8vIEZvbnQgU2l6ZXNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiRiYXNlLWZvbnQtc2l6ZTogcmVtKDE2KTtcbiRmb250c2l6ZS1yb290OiAkYmFzZS1mb250LXNpemU7XG5cbi8vIExpbmUgaGVpZ2h0IGFuZCBsZXR0ZXIgc3BhY2luZ1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuJGJhc2UtbGluZS1oZWlnaHQ6IDEuNTtcbiRoZWFkaW5nLWxpbmUtaGVpZ2h0OiAxLjI1O1xuXG4vLyBGb250IFdlaWdodFxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuJGJhc2UtZm9udC13ZWlnaHQ6IDIwMDsgLy8gR290aGFtIEV4dHJhIExpZ2h0XG4vLyAyMDAgPSBFeHRyYSBMaWdodFxuLy8gMzAwID0gTGlnaHRcbi8vIDQwMCA9IEJvb2tcbi8vIDUwMCA9IE1lZGl1bVxuLy8gNzAwID0gQm9sZFxuXG4vLyBGb250IENvbG9yc1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuJGJhc2UtZm9udC1jb2xvcjogZ2V0LWNvbG9yKGJsYWNrKTtcbiRhY3Rpb24tY29sb3I6IGdldC1jb2xvcihibGFjayk7XG4iLCIvLyBMZXR0ZXIgU3BhY2luZ1xuLy8gVXBkYXRlIHBob3Rvc2hvcCBsZXR0ZXIgc3BhY2luZyB2YWx1ZSBpbiBlbXNcbkBmdW5jdGlvbiBsZXR0ZXItc3BhY2luZygkdmFsKSB7XG4gIEByZXR1cm4gKCAkdmFsIC8gMTAwMCApICogLTFlbTtcbn1cblxuXG4vLyBIZWFkaW5nc1xuLy9cbi8vIFF1aWNrbHkgcGFzcyBDU1MgcnVsZXMgdG8gaGVhZGluZ3MuIENhbiBzcGVjaWZ5IHJhbmdlcy5cbi8vXG4vLyBNYXJrdXA6XG4vLyAvL1xuLy8gLy8gRnVuY3Rpb246IEhlYWRpbmdzXG4vLyAvLyAje2hlYWRpbmdzKCAkZnJvbSwgJHRvICl9IHsgLi4uIH1cbi8vIC8vXG4vLyAvLyAkZnJvbTogJ251bWJlcidcbi8vIC8vICR0bzogICAnbnVtYmVyJ1xuLy8gLy9cbi8vICN7aGVhZGluZ3MoMSw2KX0ge1xuLy8gICBjb2xvcjogd2hpdGU7XG4vLyB9XG4vL1xuLy8gU3R5bGVndWlkZSBGdW5jdGlvbnMgLSBIZWFkaW5nc1xuXG5AZnVuY3Rpb24gaGVhZGluZ3MoJGZyb206IDEsICR0bzogNikge1xuICBAaWYgJGZyb20gPT0gJHRvIHtcbiAgICBAcmV0dXJuICdoI3skZnJvbX0nO1xuICB9IEBlbHNlIHtcbiAgICBAcmV0dXJuICdoI3skZnJvbX0sJyArIGhlYWRpbmdzKCRmcm9tKzEsICR0byk7XG4gIH1cbn1cblxuLy8vIFN0cmlwcyB0aGUgdW5pdCBmcm9tIGEgbnVtYmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXIgKFdpdGggVW5pdCl9ICR2YWx1ZVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAkZGltZW5zaW9uOiBzdHJpcC11bml0cygxMGVtKTtcbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgICRkaW1lbnNpb246IDEwO1xuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyIChVbml0bGVzcyl9XG5cbkBmdW5jdGlvbiBzdHJpcC11bml0cygkdmFsdWUpIHtcbiAgQHJldHVybiAoJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAxKSk7XG59XG5cblxuLy8gQ29udmVydCBwaXhlbHMgdG8gcmVtc1xuLy8gZWcuIGZvciBhIHJlbGF0aW9uYWwgdmFsdWUgb2YgMTJweCB3cml0ZSByZW0oMTIpXG4vLyBBc3N1bWVzICRlbS1iYXNlIGlzIHRoZSBmb250LXNpemUgb2YgPGh0bWw+XG4kZW0tYmFzZTogMTZweCAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIHJlbSgkcHh2YWwpIHtcbiAgQGlmIG5vdCB1bml0bGVzcygkcHh2YWwpIHtcbiAgICAkcHh2YWw6IHN0cmlwLXVuaXRzKCRweHZhbCk7XG4gIH1cblxuICAkYmFzZTogJGVtLWJhc2U7XG4gIEBpZiBub3QgdW5pdGxlc3MoJGJhc2UpIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdHMoJGJhc2UpO1xuICB9XG4gIEByZXR1cm4gKCRweHZhbCAvICRiYXNlKSAqIDFyZW07XG59XG5cblxuLy8gR2V0IENvbG9yICYgR2V0IEFjY2VudCBDb2xvclxuLy9cbi8vIFJldHJpZXZlIGEgY29sb3IgdmFsdWUgZnJvbSBhIFNhc3MgbWFwLlxuLy9cbi8vIE1hcmt1cDpcbi8vIC8vXG4vLyAvLyBGdW5jdGlvbjogR2V0IENvbG9yXG4vLyAvLyBnZXQtY29sb3IoICRjb2xvciApO1xuLy8gLy8gZ2V0LWFjY2VudCggJGNvbG9yICk7XG4vLyAvL1xuLy8gLy8gJGNvbG9yOiAnc3RyaW5nJ1xuLy8gLy9cbi8vIGNvbG9yOiBnZXQtY29sb3Iob3JhbmdlKTtcbi8vIGNvbG9yOiBnZXQtYWNjZW50KG9yYW5nZSk7XG4vL1xuLy8gU3R5bGVndWlkZSBGdW5jdGlvbnMgLSBHZXQgQ29sb3JcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGNvbG9yKSB7XG5cbiAgQGlmIG1hcC1oYXMta2V5KCRjb2xvcnMsICRjb2xvcikge1xuICAgICRjb2xvcjogbWFwLWdldCgkY29sb3JzLCAkY29sb3IpO1xuICB9IEBlbHNlIHtcbiAgICBAaWYgdHlwZS1vZigkY29sb3IpICE9IGNvbG9yIHtcbiAgICAgIEBlcnJvciAnQ29sb3IgbmFtZTogYCN7JGNvbG9yfWAgbm90IGZvdW5kLic7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGNvbG9yO1xufVxuXG5AZnVuY3Rpb24gZ2V0LWFjY2VudCgkY29sb3IpIHtcbiAgXG4gIEBpZiBtYXAtaGFzLWtleSgkYWNjZW50cywgJGNvbG9yKSB7XG4gICAgJGNvbG9yOiBtYXAtZ2V0KCRhY2NlbnRzLCAkY29sb3IpO1xuICB9IEBlbHNlIHtcbiAgICBAaWYgdHlwZS1vZigkY29sb3IpICE9IGNvbG9yIHtcbiAgICAgIEBlcnJvciAnQ29sb3IgbmFtZTogYCN7JGNvbG9yfWAgbm90IGZvdW5kLic7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGNvbG9yO1xufSIsIi8vIE1lZGlhIFF1ZXJpZXMgYW5kIEJyZWFrcG9pbnRzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cblxuLy8gICAgIF8gICAgICAgICAgICBfICAgICAgICAgICBfICAgICAgICAgICAgICAgICAgICAgICAgICAgXyBfXG4vLyAgICAoXykgICAgICAgICAgfCB8ICAgICAgICAgfCB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgKF8pXG4vLyAgICAgXyBfIF9fICAgX19ffCB8XyAgIF8gIF9ffCB8IF9fXyAgIF8gX18gX19fICAgX19fICBfX3wgfF8gIF9fIF9cbi8vICAgIHwgfCAnXyBcXCAvIF9ffCB8IHwgfCB8LyBfYCB8LyBfIFxcIHwgJ18gYCBfIFxcIC8gXyBcXC8gX2AgfCB8LyBfYCB8XG4vLyAgICB8IHwgfCB8IHwgKF9ffCB8IHxffCB8IChffCB8ICBfXy8gfCB8IHwgfCB8IHwgIF9fLyAoX3wgfCB8IChffCB8XG4vLyAgICB8X3xffCB8X3xcXF9fX3xffFxcX18sX3xcXF9fLF98XFxfX198IHxffCB8X3wgfF98XFxfX198XFxfXyxffF98XFxfXyxffFxuLy9cbi8vICAgICAgU2ltcGxlLCBlbGVnYW50IGFuZCBtYWludGFpbmFibGUgbWVkaWEgcXVlcmllcyBpbiBTYXNzXG4vLyAgICAgICAgICAgICAgICAgICAgICAgIHYxLjQuMlxuLy9cbi8vICAgICAgICAgICAgICAgIGh0dHA6Ly9pbmNsdWRlLW1lZGlhLmNvbVxuLy9cbi8vICAgICAgICAgQXV0aG9yczogRWR1YXJkbyBCb3VjYXMgKEBlZHVhcmRvYm91Y2FzKVxuLy8gICAgICAgICAgICAgICAgICBIdWdvIEdpcmF1ZGVsIChAaHVnb2dpcmF1ZGVsKVxuLy9cbi8vICAgICAgVGhpcyBwcm9qZWN0IGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgTUlUIGxpY2Vuc2VcblxuXG4vLy8vXG4vLy8gaW5jbHVkZS1tZWRpYSBsaWJyYXJ5IHB1YmxpYyBjb25maWd1cmF0aW9uXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8vXG5cblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2YgZ2xvYmFsIGJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHdpdGggdGhlIGxhYmVsIGBwaG9uZWBcbi8vLyAgJGJyZWFrcG9pbnRzOiAoJ3Bob25lJzogMzIwcHgpO1xuLy8vXG4kYnJlYWtwb2ludHM6IChcbiAgJ3Bob25lJzogMzIwcHgsXG4gICd0YWJsZXQnOiA3NjhweCxcbiAgJ2Rlc2t0b3AnOiAxMDI0cHhcbikgIWRlZmF1bHQ7XG5cblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2Ygc3RhdGljIGV4cHJlc3Npb25zIG9yIG1lZGlhIHR5cGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBtZWRpYSB0eXBlIChzY3JlZW4pXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nOiAnc2NyZWVuJyk7XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHN0YXRpYyBleHByZXNzaW9uIHdpdGggbG9naWNhbCBkaXNqdW5jdGlvbiAoT1Igb3BlcmF0b3IpXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKFxuLy8vICAgICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJ1xuLy8vICApO1xuLy8vXG4kbWVkaWEtZXhwcmVzc2lvbnM6IChcbiAgJ3NjcmVlbic6ICdzY3JlZW4nLFxuICAncHJpbnQnOiAncHJpbnQnLFxuICAnaGFuZGhlbGQnOiAnaGFuZGhlbGQnLFxuICAnbGFuZHNjYXBlJzogJyhvcmllbnRhdGlvbjogbGFuZHNjYXBlKScsXG4gICdwb3J0cmFpdCc6ICcob3JpZW50YXRpb246IHBvcnRyYWl0KScsXG4gICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJyxcbiAgJ3JldGluYTN4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDMpLCAobWluLXJlc29sdXRpb246IDM1MGRwaSknXG4pICFkZWZhdWx0O1xuXG5cbi8vL1xuLy8vIERlZmluZXMgYSBudW1iZXIgdG8gYmUgYWRkZWQgb3Igc3VidHJhY3RlZCBmcm9tIGVhY2ggdW5pdCB3aGVuIGRlY2xhcmluZyBicmVha3BvaW50cyB3aXRoIGV4Y2x1c2l2ZSBpbnRlcnZhbHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcGl4ZWxzIGlzIGRlZmluZWQgYXMgYDFgIGJ5IGRlZmF1bHRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4xMjhweCcpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMTI5cHgpIHt9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIGVtcyBpcyBkZWZpbmVkIGFzIGAwLjAxYCBieSBkZWZhdWx0XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MjBlbScpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMjAuMDFlbSkge31cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgcmVtcyBpcyBkZWZpbmVkIGFzIGAwLjFgIGJ5IGRlZmF1bHQsIHRvIGJlIHVzZWQgd2l0aCBgZm9udC1zaXplOiA2Mi41JTtgXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+Mi4wcmVtJykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyLjFyZW0pIHt9XG4vLy9cbiR1bml0LWludGVydmFsczogKFxuICAncHgnOiAxLFxuICAnZW0nOiAwLjAxLFxuICAncmVtJzogMC4xXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBEZWZpbmVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBhdmFpbGFibGUsIHVzZWZ1bCBmb3IgY3JlYXRpbmcgc2VwYXJhdGUgc3R5bGVzaGVldHNcbi8vLyBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IG1lZGlhIHF1ZXJpZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGlzYWJsZXMgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbiRpbS1tZWRpYS1zdXBwb3J0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIGJyZWFrcG9pbnQgdG8gZW11bGF0ZSB3aGVuIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgZGlzYWJsZWQuIE1lZGlhIHF1ZXJpZXMgdGhhdCBzdGFydCBhdCBvclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgZG9lcyBub3QgaW50ZXJjZXB0IHRoZSBkZXNrdG9wIGJyZWFrcG9pbnRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXG4vLy8gYXJlIG5vdCBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3NjcmVlbicpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgIC5mb28ge1xuLy8vICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdyZXRpbmEyeCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nLCAncG9ydHJhaXQnLCAnbGFuZHNjYXBlJykgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBDcm9zcy1lbmdpbmUgbG9nZ2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBMb2cgYSBtZXNzYWdlIGVpdGhlciB3aXRoIGBAZXJyb3JgIGlmIHN1cHBvcnRlZFxuLy8vIGVsc2Ugd2l0aCBgQHdhcm5gLCB1c2luZyBgZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJylgXG4vLy8gdG8gZGV0ZWN0IHN1cHBvcnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AZnVuY3Rpb24gbG9nKCRtZXNzYWdlKSB7XG4gIEBpZiBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKSB7XG4gICAgQGVycm9yICRtZXNzYWdlO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAkbWVzc2FnZTtcbiAgICAkXzogbm9vcCgpO1xuICB9XG5cbiAgQHJldHVybiAkbWVzc2FnZTtcbn1cblxuXG4vLy9cbi8vLyBXcmFwcGVyIG1peGluIGZvciB0aGUgbG9nIGZ1bmN0aW9uIHNvIGl0IGNhbiBiZSB1c2VkIHdpdGggYSBtb3JlIGZyaWVuZGx5XG4vLy8gQVBJIHRoYW4gYEBpZiBsb2coJy4uJykge31gIG9yIGAkXzogbG9nKCcuLicpYC4gQmFzaWNhbGx5LCB1c2UgdGhlIGZ1bmN0aW9uXG4vLy8gd2l0aGluIGZ1bmN0aW9ucyBiZWNhdXNlIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW4gYSBmdW5jdGlvblxuLy8vIGFuZCB1c2UgdGhlIG1peGluIGV2ZXJ5d2hlcmUgZWxzZSBiZWNhdXNlIGl0J3MgbXVjaCBtb3JlIGVsZWdhbnQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1lc3NhZ2UgLSBNZXNzYWdlIHRvIGxvZ1xuLy8vXG5AbWl4aW4gbG9nKCRtZXNzYWdlKSB7XG4gIEBpZiBsb2coJG1lc3NhZ2UpIHt9XG59XG5cblxuLy8vXG4vLy8gRnVuY3Rpb24gd2l0aCBubyBgQHJldHVybmAgY2FsbGVkIG5leHQgdG8gYEB3YXJuYCBpbiBTYXNzIDMuM1xuLy8vIHRvIHRyaWdnZXIgYSBjb21waWxpbmcgZXJyb3IgYW5kIHN0b3AgdGhlIHByb2Nlc3MuXG4vLy9cbkBmdW5jdGlvbiBub29wKCkge31cblxuLy8vXG4vLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbGlzdCBvZiBjb25kaXRpb25zIGlzIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy9cbkBmdW5jdGlvbiBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSB7XG4gICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xuXG4gIEBpZiBub3QgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUge1xuICAgIEBpZiBsb2coJ2AjeyRpbS1uby1tZWRpYS1icmVha3BvaW50fWAgaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludC4nKSB7fVxuICB9XG5cbiAgQGVhY2ggJGNvbmRpdGlvbiBpbiAkY29uZGl0aW9ucyB7XG4gICAgQGlmIG5vdCBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGNvbmRpdGlvbik7XG4gICAgICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcblxuICAgICAgLy8gc2Nzcy1saW50OmRpc2FibGUgU3BhY2VBcm91bmRPcGVyYXRvclxuICAgICAgQGlmICgkcHJlZml4ID09ICdtYXgnIGFuZCAkdmFsdWUgPD0gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yXG4gICAgICAgICAgKCRwcmVmaXggPT0gJ21pbicgYW5kICR2YWx1ZSA+ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSB7XG4gICAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfSBAZWxzZSBpZiBub3QgaW5kZXgoJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zLCAkY29uZGl0aW9uKSB7XG4gICAgICBAcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gdHJ1ZTtcbn1cblxuLy8vL1xuLy8vIFBhcnNpbmcgZW5naW5lXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cblxuLy8vXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gQW55IG9mIGA+PWAsIGA+YCwgYDw9YCwgYDxgLCBg4omlYCwgYOKJpGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XG4gIEBlYWNoICRvcGVyYXRvciBpbiAoJz49JywgJz4nLCAnPD0nLCAnPCcsICfiiaUnLCAn4omkJykge1xuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAvLyByZWx5IG9uIHRoZSBgbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBsb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAkXzogbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IGRpbWVuc2lvbiBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGB3aWR0aGAgb3IgYGhlaWdodGAgKG9yIHBvdGVudGlhbGx5IGFueXRoaW5nIGVsc2UpXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XG4gICRkaW1lbnNpb246ICd3aWR0aCc7XG5cbiAgQGlmIHN0ci1sZW5ndGgoJHBhcnNlZC1kaW1lbnNpb24pID4gMCB7XG4gICAgJGRpbWVuc2lvbjogJHBhcnNlZC1kaW1lbnNpb247XG4gIH1cblxuICBAcmV0dXJuICRkaW1lbnNpb247XG59XG5cblxuLy8vXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvclxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGBtaW5gIG9yIGBtYXhgXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XG4gIEByZXR1cm4gaWYoaW5kZXgoKCc8JywgJzw9JywgJ+KJpCcpLCAkb3BlcmF0b3IpLCAnbWF4JywgJ21pbicpO1xufVxuXG5cbi8vL1xuLy8vIEdldCB2YWx1ZSBvZiBhbiBleHByZXNzaW9uLCBiYXNlZCBvbiBhIGZvdW5kIG9wZXJhdG9yXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIGV4dHJhY3QgdmFsdWUgZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBBIG51bWVyaWMgdmFsdWVcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICR2YWx1ZTogc3RyLXNsaWNlKCRleHByZXNzaW9uLCAkb3BlcmF0b3ItaW5kZXggKyBzdHItbGVuZ3RoKCRvcGVyYXRvcikpO1xuXG4gIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgICR2YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICR2YWx1ZSk7XG4gIH0gQGVsc2Uge1xuICAgICR2YWx1ZTogdG8tbnVtYmVyKCR2YWx1ZSk7XG4gIH1cblxuICAkaW50ZXJ2YWw6IG1hcC1nZXQoJHVuaXQtaW50ZXJ2YWxzLCB1bml0KCR2YWx1ZSkpO1xuXG4gIEBpZiBub3QgJGludGVydmFsIHtcbiAgICAvLyBJdCBpcyBub3QgcG9zc2libGUgdG8gaW5jbHVkZSBhIG1peGluIGluc2lkZSBhIGZ1bmN0aW9uLCBzbyB3ZSBoYXZlIHRvXG4gICAgLy8gcmVseSBvbiB0aGUgYGxvZyguLilgIGZ1bmN0aW9uIHJhdGhlciB0aGFuIHRoZSBgbG9nKC4uKWAgbWl4aW4uIEJlY2F1c2VcbiAgICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgICAvLyBhIGR1bW15IHZhcmlhYmxlLCBzdWNoIGFzIGAkX2AuIElmIGFueWJvZHkgZXZlciByYWlzZSBhIHNjb3BpbmcgaXNzdWUgd2l0aFxuICAgIC8vIFNhc3MgMy4zLCBjaGFuZ2UgdGhpcyBsaW5lIGluIGBAaWYgbG9nKC4uKSB7fWAgaW5zdGVhZC5cbiAgICAkXzogbG9nKCdVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuJyk7XG4gIH1cblxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgKyAkaW50ZXJ2YWw7XG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuXG4vLy9cbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gcGFyc2Vcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxuLy8vXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xuICAvLyBJZiBpdCBpcyBwYXJ0IG9mICRtZWRpYS1leHByZXNzaW9ucywgaXQgaGFzIG5vIG9wZXJhdG9yXG4gIC8vIHRoZW4gdGhlcmUgaXMgbm8gbmVlZCB0byBnbyBhbnkgZnVydGhlciwganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gIEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pO1xuICB9XG5cbiAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbik7XG4gICRkaW1lbnNpb246IGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XG4gICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG5cbiAgQHJldHVybiAnKCN7JHByZWZpeH0tI3skZGltZW5zaW9ufTogI3skdmFsdWV9KSc7XG59XG5cbi8vL1xuLy8vIFNsaWNlIGAkbGlzdGAgYmV0d2VlbiBgJHN0YXJ0YCBhbmQgYCRlbmRgIGluZGV4ZXNcbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdCAtIExpc3QgdG8gc2xpY2Vcbi8vLyBAcGFyYW0ge051bWJlcn0gJHN0YXJ0IFsxXSAtIFN0YXJ0IGluZGV4XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRlbmQgW2xlbmd0aCgkbGlzdCldIC0gRW5kIGluZGV4XG4vLy9cbi8vLyBAcmV0dXJuIHtMaXN0fSBTbGljZWQgbGlzdFxuLy8vXG5AZnVuY3Rpb24gc2xpY2UoJGxpc3QsICRzdGFydDogMSwgJGVuZDogbGVuZ3RoKCRsaXN0KSkge1xuICBAaWYgbGVuZ3RoKCRsaXN0KSA8IDEgb3IgJHN0YXJ0ID4gJGVuZCB7XG4gICAgQHJldHVybiAoKTtcbiAgfVxuXG4gICRyZXN1bHQ6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcbiAgICAkcmVzdWx0OiBhcHBlbmQoJHJlc3VsdCwgbnRoKCRsaXN0LCAkaSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVzdWx0O1xufVxuXG4vLy8vXG4vLy8gU3RyaW5nIHRvIG51bWJlciBjb252ZXJ0ZXJcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuXG4vLy9cbi8vLyBDYXN0cyBhIHN0cmluZyBpbnRvIGEgbnVtYmVyXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYmUgcGFyc2VkXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XG4vLy9cbkBmdW5jdGlvbiB0by1udW1iZXIoJHZhbHVlKSB7XG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnc3RyaW5nJyB7XG4gICAgJF86IGxvZygnVmFsdWUgZm9yIGB0by1udW1iZXJgIHNob3VsZCBiZSBhIG51bWJlciBvciBhIHN0cmluZy4nKTtcbiAgfVxuXG4gICRyZXN1bHQ6IDA7XG4gICRkaWdpdHM6IDA7XG4gICRtaW51czogc3RyLXNsaWNlKCR2YWx1ZSwgMSwgMSkgPT0gJy0nO1xuICAkbnVtYmVyczogKCcwJzogMCwgJzEnOiAxLCAnMic6IDIsICczJzogMywgJzQnOiA0LCAnNSc6IDUsICc2JzogNiwgJzcnOiA3LCAnOCc6IDgsICc5JzogOSk7XG5cbiAgQGZvciAkaSBmcm9tIGlmKCRtaW51cywgMiwgMSkgdGhyb3VnaCBzdHItbGVuZ3RoKCR2YWx1ZSkge1xuICAgICRjaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsICRpLCAkaSk7XG5cbiAgICBAaWYgbm90IChpbmRleChtYXAta2V5cygkbnVtYmVycyksICRjaGFyYWN0ZXIpIG9yICRjaGFyYWN0ZXIgPT0gJy4nKSB7XG4gICAgICBAcmV0dXJuIHRvLWxlbmd0aChpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KSwgc3RyLXNsaWNlKCR2YWx1ZSwgJGkpKVxuICAgIH1cblxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XG4gICAgICAkZGlnaXRzOiAxO1xuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpIC8gJGRpZ2l0cztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpO1xufVxuXG5cbi8vL1xuLy8vIEFkZCBgJHVuaXRgIHRvIGAkdmFsdWVgXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYWRkIHVuaXQgdG9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHVuaXQgLSBTdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIHVuaXRcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBgJHZhbHVlYCBleHByZXNzZWQgaW4gYCR1bml0YFxuLy8vXG5AZnVuY3Rpb24gdG8tbGVuZ3RoKCR2YWx1ZSwgJHVuaXQpIHtcbiAgJHVuaXRzOiAoJ3B4JzogMXB4LCAnY20nOiAxY20sICdtbSc6IDFtbSwgJyUnOiAxJSwgJ2NoJzogMWNoLCAncGMnOiAxcGMsICdpbic6IDFpbiwgJ2VtJzogMWVtLCAncmVtJzogMXJlbSwgJ3B0JzogMXB0LCAnZXgnOiAxZXgsICd2dyc6IDF2dywgJ3ZoJzogMXZoLCAndm1pbic6IDF2bWluLCAndm1heCc6IDF2bWF4KTtcblxuICBAaWYgbm90IGluZGV4KG1hcC1rZXlzKCR1bml0cyksICR1bml0KSB7XG4gICAgJF86IGxvZygnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJyk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZSAqIG1hcC1nZXQoJHVuaXRzLCAkdW5pdCk7XG59XG5cbi8vL1xuLy8vIFRoaXMgbWl4aW4gYWltcyBhdCByZWRlZmluaW5nIHRoZSBjb25maWd1cmF0aW9uIGp1c3QgZm9yIHRoZSBzY29wZSBvZlxuLy8vIHRoZSBjYWxsLiBJdCBpcyBoZWxwZnVsIHdoZW4gaGF2aW5nIGEgY29tcG9uZW50IG5lZWRpbmcgYW4gZXh0ZW5kZWRcbi8vLyBjb25maWd1cmF0aW9uIHN1Y2ggYXMgY3VzdG9tIGJyZWFrcG9pbnRzIChyZWZlcnJlZCB0byBhcyB0d2Vha3BvaW50cylcbi8vLyBmb3IgaW5zdGFuY2UuXG4vLy9cbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWtwb2ludHMgWygpXSAtIE1hcCBvZiB0d2Vha3BvaW50cyB0byBiZSBtZXJnZWQgd2l0aCBgJGJyZWFrcG9pbnRzYFxuLy8vIEBwYXJhbSB7TWFwfSAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnMgWygpXSAtIE1hcCBvZiB0d2Vha2VkIG1lZGlhIGV4cHJlc3Npb25zIHRvIGJlIG1lcmdlZCB3aXRoIGAkbWVkaWEtZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBicmVha3BvaW50cyB3aXRoIGEgdHdlYWtwb2ludFxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9Y3VzdG9tJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIG1lZGlhIGV4cHJlc3Npb25zIHdpdGggYSBjdXN0b20gb25lXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoJ2FsbCc6ICdhbGwnKSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIGJvdGggY29uZmlndXJhdGlvbiBtYXBzXG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCksICgnYWxsJzogJ2FsbCcpKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScsICc8PWN1c3RvbScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuQG1peGluIG1lZGlhLWNvbnRleHQoJHR3ZWFrcG9pbnRzOiAoKSwgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zOiAoKSkge1xuICAvLyBTYXZlIGdsb2JhbCBjb25maWd1cmF0aW9uXG4gICRnbG9iYWwtYnJlYWtwb2ludHM6ICRicmVha3BvaW50cztcbiAgJGdsb2JhbC1tZWRpYS1leHByZXNzaW9uczogJG1lZGlhLWV4cHJlc3Npb25zO1xuXG4gIC8vIFVwZGF0ZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkYnJlYWtwb2ludHMsICR0d2Vha3BvaW50cykgIWdsb2JhbDtcbiAgJG1lZGlhLWV4cHJlc3Npb25zOiBtYXAtbWVyZ2UoJG1lZGlhLWV4cHJlc3Npb25zLCAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnMpICFnbG9iYWw7XG5cbiAgQGNvbnRlbnQ7XG5cbiAgLy8gUmVzdG9yZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkYnJlYWtwb2ludHM6ICRnbG9iYWwtYnJlYWtwb2ludHMgIWdsb2JhbDtcbiAgJG1lZGlhLWV4cHJlc3Npb25zOiAkZ2xvYmFsLW1lZGlhLWV4cHJlc3Npb25zICFnbG9iYWw7XG59XG5cbi8vLy9cbi8vLyBpbmNsdWRlLW1lZGlhIHB1YmxpYyBleHBvc2VkIEFQSVxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vL1xuXG5cbi8vL1xuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IGJhc2VkIG9uIGEgbGlzdCBvZiBjb25kaXRpb25zXG4vLy9cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICAgJGNvbmRpdGlvbnMgIC0gTWVkaWEgcXVlcnkgY29uZGl0aW9uc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzaW5nbGUgc2V0IGJyZWFrcG9pbnRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggdHdvIHNldCBicmVha3BvaW50c1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9dGFibGV0JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBjdXN0b20gdmFsdWVzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1OHB4JywgJzw4NTBweCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggc2V0IGJyZWFrcG9pbnRzIHdpdGggY3VzdG9tIHZhbHVlc1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPmRlc2t0b3AnLCAnPD0xMzUwcHgnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc3RhdGljIGV4cHJlc3Npb25cbi8vLyAgQGluY2x1ZGUgbWVkaWEoJ3JldGluYTJ4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gTWl4aW5nIGV2ZXJ5dGhpbmdcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzUwcHgnLCAnPHRhYmxldCcsICdyZXRpbmEzeCcpIHsgfVxuLy8vXG5AbWl4aW4gbWVkaWEoJGNvbmRpdGlvbnMuLi4pIHtcbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgU3BhY2VBcm91bmRPcGVyYXRvclxuICBAaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID09IDApIG9yXG4gICAgICAobm90ICRpbS1tZWRpYS1zdXBwb3J0IGFuZCBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSkge1xuICAgIEBjb250ZW50O1xuICB9IEBlbHNlIGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGVuZ3RoKCRjb25kaXRpb25zKSA+IDApIHtcbiAgICBAbWVkaWEgI3t1bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obnRoKCRjb25kaXRpb25zLCAxKSkpfSB7XG4gICAgICAvLyBSZWN1cnNpdmUgY2FsbFxuICAgICAgQGluY2x1ZGUgbWVkaWEoc2xpY2UoJGNvbmRpdGlvbnMsIDIpLi4uKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbiIsIi8vIEFuaW1hdGlvbnMgJiBUcmFuc2l0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRhbmltYXRpb24tZmFzdDogMTI1bXM7XG4kYW5pbWF0aW9uLWF2ZXJhZ2U6IDI1MG1zO1xuJGFuaW1hdGlvbi1zbG93OiA1MDBtcztcblxuJGJhc2UtYW5pbWF0aW9uLXNwZWVkOiAkYW5pbWF0aW9uLWZhc3Q7XG4kYmFzZS1hbmltYXRpb24tZWFzaW5nOiBjdWJpYy1iZXppZXIoLjc3LCAwLCAuMTc1LCAxKTtcbiIsIkBrZXlmcmFtZXMgcm90YXRlIHtcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGRhc2gge1xuICAwJSB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMSwgMTUwO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogOTAsIDE1MDtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogLTM1O1xuICB9XG4gIDEwMCUge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDkwLCAxNTA7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0xMjQ7XG4gIH1cbn1cbiIsIi8vIEZvcm1cbmZvcm0geyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi8vIERpc2FibGUgd2Via2l0IHNwaW5uZXJzIGZvciBudW1iZXIgaW5wdXRzXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cblxuXG4vLyBQbGFjZWhvbGRlciBmb3JtYXR0aW5nXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBDaHJvbWUvT3BlcmEvU2FmYXJpICovXG4gIGNvbG9yOiBnZXQtY29sb3IoZ3JheSk7XG59XG46Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE5KyAqL1xuICBjb2xvcjogZ2V0LWNvbG9yKGdyYXkpO1xufVxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIElFIDEwKyAqL1xuICBjb2xvcjogZ2V0LWNvbG9yKGdyYXkpO1xufVxuOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xuICBjb2xvcjogZ2V0LWNvbG9yKGdyYXkpO1xufVxuXG5cbi8vIFJlc2V0IHNlYXJjaCBpbnB1dHNcblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuW3R5cGU9XCJzdWJtaXRcIl0sXG5bdHlwZT1cImJ1dHRvblwiXSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbn1cblxuaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3Iod2hpdGUpO1xuICBib3JkZXI6IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgdHJhbnNpdGlvbjpcbiAgICBib3JkZXIgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgYm94LXNoYWRvdyAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IGdldC1jb2xvcihkYXJrLWdyYXkpO1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8gVGV4dGFyZWFcbnRleHRhcmVhIHtcbiAgQGV4dGVuZCBpbnB1dDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cblxuLy8gR1JBVklUWSBGT1JNIFNUWUxFUyBCRUxPV1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gR3Jhdml0eUZvcm1zOiBXcmFwcGVyXG4uZ2Zvcm1fd3JhcHBlciB7XG4gIG1heC13aWR0aDogcmVtKDY0MCk7XG59XG5cblxuLy8gR3Jhdml0eUZvcm1zOiBUaXRsZVxuLmdmb3JtX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogcmVtKDM2KTtcbn1cblxuXG4vLyBHcmF2aXR5Rm9ybXM6IEZvcm0gRGVzY3JpcHRpb25cbi5nZm9ybV9kZXNjcmlwdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogcmVtKDcyKSAwIHJlbSgzNik7XG4gIGNvbG9yOiBnZXQtY29sb3IoZ3JheSk7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IHJlbSgtMzgpO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHJlbSg0NCk7XG4gICAgaGVpZ2h0OiByZW0oNCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKGdyYXkpO1xuICB9XG59XG5cbi8vIEdyYXZpdHlGb3JtczogU2VjdGlvbiBUaXRsZVxuLmdzZWN0aW9uX3RpdGxlIHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG5cbn1cblxuLmdpbnB1dF9jb250YWluZXJfZGF0ZSB7XG4gIH4gLmdmaWVsZF9kZXNjcmlwdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cblxuXG4vLyBHRm9ybSBGb290ZXJcbi5nZm9ybV9mb290ZXIge1xuICBtYXJnaW4tdG9wOiByZW0oMzYpO1xuXG4gIGZvcm0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuXG4uZ2Zvcm1fZmllbGRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgbGkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgICYuc3Bhbi1oYWxmIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPmxhcHRvcFwiKXtcbiAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5zcGFuLXRoaXJkIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPmxhcHRvcFwiKXtcbiAgICAgICAgd2lkdGg6IDMxJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFkdmFuY2VkLXNlYXJjaF9fc2VsZWN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj5kZXNrdG9wXCIpe1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYWR2YW5jZWQtc2VhcmNoX19pbnB1dCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj5kZXNrdG9wXCIpe1xuICAgICAgICB3aWR0aDogNjUlO1xuICAgICAgfVxuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmdmaWVsZCB7XG4gIG1hcmdpbi1ib3R0b206IDE4cHg7XG59XG4uYWR2YW5jZWQtc2VhcmNoX3dyYXBwZXIge1xuICAuZ2ZpZWxkIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4uZ2ZpZWxkLmdmb3JtX2hpZGRlbiB7XG4gIEBleHRlbmQgLnNjcmVlbi1yZWFkZXItdGV4dDtcbn1cbi5nZmllbGRfcmVxdWlyZWQge1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuXG4vLyBHcmF2aXR5Rm9ybXM6IEVycm9yIFZhbGlkYXRpb25cbi52YWxpZGF0aW9uX2Vycm9yIHtcbiAgcGFkZGluZzogcmVtKDIwKTtcbiAgbWFyZ2luOiAwIDAgcmVtKDM2KTtcbiAgYmFja2dyb3VuZDogcmdiYShnZXQtYWNjZW50KHJlZCksIC4yNSk7XG4gIGNvbG9yOiBnZXQtYWNjZW50KHJlZCk7XG4gIGJvcmRlcjogMXB4IGRvdHRlZCBnZXQtYWNjZW50KHJlZCk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cblxuLy8gR3Jhdml0eUZvcm1zOiBEZXNjcmlwdGlvblxuLmdmaWVsZF9kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgY29sb3I6IGdldC1jb2xvcihkYXJrLWdyYXkpO1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuXG4gICYudmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGNvbG9yOiBnZXQtYWNjZW50KHJlZCk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5cbi8vIExhYmVsXG4uZ2ZpZWxkX2xhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgZm9udC1zaXplOiByZW0oMTYpO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBjb2xvcjogZ2V0LWNvbG9yKGRhcmstZ3JheSk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgQGF0LXJvb3QgLmdmaWVsZF9lcnJvciAuZ2ZpZWxkX2xhYmVsIHtcbiAgICBjb2xvcjogZ2V0LWFjY2VudChyZWQpO1xuICB9XG59XG5cblxuLy8gR3Jhdml0eUZvcm1zOiBJbnB1dCBDb250YWluZXJcbi5naW5wdXRfY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uZ2Zvcm1fZHJvcF9hcmVhIHtcbiAgcGFkZGluZzogcmVtKDM2KTtcbiAgYm9yZGVyOiByZW0oMSkgZGFzaGVkIGdldC1jb2xvcihkYXJrLWdyYXkpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDE4KTtcbiAgfVxufVxuXG5cbi8vIEdyYXZpdHlGb3JtczogTGlzdCBDb250YWluZXJcbi5nZmllbGRfbGlzdF9jb250YWluZXIge1xuXG4gIC5nZmllbGRfbGlzdF9ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjpob3ZlciB0ZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuZ2ZpZWxkX2xpc3RfY2VsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiByZW0oNDQpO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGZsZXgtZ3JvdzogMjtcbiAgfVxuICAuZ2ZpZWxkX2xpc3RfaWNvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IHJlbSg0NCk7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG5cbiAgICBpbWcge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbSg5KTtcbiAgICB9XG4gICAgaW1nOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0oMTgpO1xuICAgIH1cbiAgfVxuXG59XG5cblxuLy8gR3Jhdml0eUZvcm1zOiBDb21wbGV4L0FkZHJlc3MgYW5kIENvbXBsZXgvTmFtZVxuLmdpbnB1dF9jb21wbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgbGFiZWwge1xuICAgIG1hcmdpbi10b3A6IHJlbSg5KTtcbiAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgY29sb3I6IGdldC1jb2xvcihkYXJrLWdyYXkpO1xuICB9XG5cbiAgLy8gc2l6ZXNcbiAgLmdpbnB1dF9mdWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuZ2lucHV0X2xlZnQsXG4gIC5uYW1lX2ZpcnN0LFxuICAuZ2lucHV0X3JpZ2h0LFxuICAubmFtZV9sYXN0IHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgIH1cbiAgfVxuXG4gIC8vIGFkZHJlc3MgY291bnRyeVxuICAuYWRkcmVzc19jb3VudHJ5IHtcbiAgICBAZXh0ZW5kIC5naW5wdXRfY29udGFpbmVyX3NlbGVjdDtcbiAgfVxuXG59XG5cblxuLy8gR3Jhdml0eUZvcm1zOiBUaW1lXG4uY2xlYXItbXVsdGkge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIGxhYmVsIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oOSk7XG4gICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgIGNvbG9yOiBnZXQtY29sb3IoZ3JheSk7XG4gIH1cblxuICBpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiByZW0oNyk7XG4gICAgcmlnaHQ6IHJlbSgtMTIpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxuXG4gID4gZGl2IHtcbiAgICBtYXJnaW4tbGVmdDogcmVtKDI0KTtcbiAgfVxuICA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZ2lucHV0X2NvbnRhaW5lcl90aW1lIHtcbiAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgd2lkdGg6IDc1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgaW5wdXQsIHNlbGVjdCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiByZW0oNSk7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICAgIGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogcmVtKC0zMHB4KTtcbiAgICAgIGxlZnQ6IHJlbSgxOCk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLmdmaWVsZF90aW1lX2FtcG0ge1xuICAgIEBleHRlbmQgLmdpbnB1dF9jb250YWluZXJfc2VsZWN0O1xuICB9XG59XG5cblxuLy8gR3Jhdml0eUZvcm1zOiBDbGVhcmZpeFxuLmdmX2NsZWFyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIElucHV0c1xuLmdpbnB1dF9jb250YWluZXIgaW5wdXQge1xuXG4gIC5nZmllbGRfZXJyb3IgJiB7XG4gICAgYm9yZGVyLWNvbG9yOiBnZXQtYWNjZW50KHJlZCk7XG4gIH1cbn1cblxuXG4vLyBTZWxlY3Rcbi5naW5wdXRfY29udGFpbmVyX3NlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogdXJsKC4uL2Fzc2V0cy9pbWcvaWNvbnMvaV9kb3duLWFycm93LnN2Zyk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIGhlaWdodDogMnB4O1xuICB9XG5cbiAgc2VsZWN0IHtcbiAgICBAZXh0ZW5kIGlucHV0O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4gICAgJjo6LW1zLWV4cGFuZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICBvcHRpb24ge31cbn1cblxuXG4vLyBNdWx0aSBTZWxlY3Rcbi5naW5wdXRfY29udGFpbmVyX211bHRpc2VsZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIHNlbGVjdCB7XG4gICAgQGV4dGVuZCBpbnB1dDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICAmOjotbXMtZXhwYW5kIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIG9wdGlvbiB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxufVxuXG5cbi8vIFJhZGlvc1xuLmdmaWVsZF9yYWRpbyB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIGxpIHtcbiAgICBtYXJnaW46IDAgMCAxNnB4O1xuICB9XG5cbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgQGluY2x1ZGUgaGlkZS1vZmYtc2NyZWVuO1xuICAgIGRpc3BsYXk6IGlubGluZTtcblxuICAgICsgbGFiZWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMjBweCA2MHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0LWdyYXkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBmb250LXNpemU6IHJlbSgxOSk7XG4gICAgICBsaW5lLWhlaWdodDogcmVtKDI0KTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgY29udGVudDogdXJsKC4uL2Fzc2V0cy9pbWcvaWNvbnMvaV9zZWxlY3Rpb24uc3ZnKTtcbiAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcjtcbiAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG4gICAgfVxuICAgICsgbGFiZWw6aG92ZXI6YmVmb3JlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIHJlbSg0KSByZ2JhKGdldC1jb2xvcihsaWdodC1ncmF5KSwgLjUpO1xuICAgIH1cbiAgICArIGxhYmVsOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogZ2V0LWNvbG9yKGRhcmstZ3JheSk7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHt9XG4gICAgJjpjaGVja2VkICsgbGFiZWwge1xuICAgICAgYm9yZGVyLWNvbG9yOiBnZXQtYWNjZW50KGN5YW4pO1xuICAgICAgYmFja2dyb3VuZDogcmdiYShnZXQtYWNjZW50KGN5YW4pLCAuMSk7XG4gICAgfVxuICAgICY6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiB1cmwoLi4vYXNzZXRzL2ltZy9pY29ucy9pX3NlbGVjdGlvbi1yYWRpby5zdmcpO1xuICAgIH1cblxuICAgICY6Zm9jdXMge31cbiAgICAmOmZvY3VzICsgbGFiZWwge31cbiAgICAmOmZvY3VzICsgbGFiZWw6YmVmb3JlIHtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveGVzXG4uZ2ZpZWxkX2NoZWNrYm94IHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDhweDtcbiAgfVxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIEBpbmNsdWRlIGhpZGUtb2ZmLXNjcmVlbjtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG5cbiAgICArIGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDYwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDE5KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0oMTYpO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybCguLi9hc3NldHMvaW1nL2ljb25zL2lfc2VsZWN0aW9uLnN2Zyk7XG4gICAgICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XG4gICAgICBsZWZ0OiAyMHB4O1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93ICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICAgIH1cbiAgICArIGxhYmVsOmhvdmVyOmJlZm9yZSB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCByZW0oNCkgcmdiYShnZXQtY29sb3IobGlnaHQtZ3JheSksIC41KTtcbiAgICB9XG4gICAgKyBsYWJlbDpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6IGdldC1jb2xvcihkYXJrLWdyYXkpO1xuICAgIH1cblxuICAgICY6Y2hlY2tlZCB7fVxuICAgICY6Y2hlY2tlZCArIGxhYmVsIHtcbiAgICAgIGJvcmRlci1jb2xvcjogZ2V0LWFjY2VudChjeWFuKTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoZ2V0LWFjY2VudChjeWFuKSwgLjEpO1xuICAgIH1cbiAgICAmOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgICAgY29udGVudDogdXJsKC4uL2Fzc2V0cy9pbWcvaWNvbnMvaV9zZWxlY3Rpb24tY2hlY2suc3ZnKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHt9XG4gICAgJjpmb2N1cyArIGxhYmVsIHt9XG4gICAgJjpmb2N1cyArIGxhYmVsOmJlZm9yZSB7XG4gICAgfVxuICB9XG5cbn1cblxuLy8gUEFSRE9UIEZPUk0gU1RZTEVTIEJFTE9XXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PVxuLmZvcm0gLmVycm9ycyB7XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgICBtYXJnaW46IDAgMCAyLjI1cmVtO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoZ2V0LWFjY2VudChyZWQpLCAuMjUpO1xuICAgIGNvbG9yOiAjZjI2YTM2O1xuICAgIGJvcmRlcjogMXB4IGRvdHRlZCBnZXQtYWNjZW50KHJlZCk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLmZvcm0gLmVycm9yIHtcbiAgICBjb2xvcjogZ2V0LWFjY2VudChyZWQpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5mb3JtLWZpZWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgMCA5cHg7XG4gICAgJi5wZC1jaGVja2JveCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICB9XG5cbiAgICAqIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBjb2xvcjogIzVlNjM2NztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmLmVtYWlsLCAmLnBkLWVtYWlsIHtcbiAgICAgIGlucHV0IHtcbiAgICAgICAgcGFkZGluZzogMTdweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2hlY2tib3ggd3JhcHBlcnNcbiAgICAmLnBkLWNoZWNrYm94IC52YWx1ZSB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2hlY2tib3hlcyAoc2FtZSBhcyBHZm9ybXMpXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1vZmYtc2NyZWVuO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG5cbiAgICAgICAgKyBsYWJlbCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMjBweCA2MHB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICBmb250LXdlaWdodDogMjAwO1xuICAgICAgICAgIGJvcmRlcjogMHB4O1xuICAgICAgICB9XG4gICAgICAgICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiB1cmwoLi4vYXNzZXRzL2ltZy9pY29ucy9pX3NlbGVjdGlvbi5zdmcpO1xuICAgICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcjtcbiAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICAgICAgfVxuICAgICAgICArIGxhYmVsOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgcmVtKDQpIHJnYmEoZ2V0LWNvbG9yKGxpZ2h0LWdyYXkpLCAuNSk7XG4gICAgICAgIH1cbiAgICAgICAgKyBsYWJlbDpob3ZlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBnZXQtY29sb3IoZGFyay1ncmF5KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Y2hlY2tlZCB7fVxuICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBnZXQtYWNjZW50KGN5YW4pO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoZ2V0LWFjY2VudChjeWFuKSwgLjEpO1xuICAgICAgICB9XG4gICAgICAgICY6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogdXJsKC4uL2Fzc2V0cy9pbWcvaWNvbnMvaV9zZWxlY3Rpb24tY2hlY2suc3ZnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJhZGlvIHdyYXBwZXJzXG4gICAgJi5wZC1yYWRpbyAudmFsdWUge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAxNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1vZmYtc2NyZWVuO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG5cbiAgICAgICAgKyBsYWJlbCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDYwcHg7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0LWdyYXkpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBmb250LXNpemU6IHJlbSgxOSk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgyNCk7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG4gICAgICAgICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiB1cmwoLi4vYXNzZXRzL2ltZy9pY29ucy9pX3NlbGVjdGlvbi5zdmcpO1xuICAgICAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcjtcbiAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICAgICAgfVxuICAgICAgICArIGxhYmVsOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgcmVtKDQpIHJnYmEoZ2V0LWNvbG9yKGxpZ2h0LWdyYXkpLCAuNSk7XG4gICAgICAgIH1cbiAgICAgICAgKyBsYWJlbDpob3ZlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBnZXQtY29sb3IoZGFyay1ncmF5KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Y2hlY2tlZCB7fVxuICAgICAgICAmOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBnZXQtYWNjZW50KGN5YW4pO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoZ2V0LWFjY2VudChjeWFuKSwgLjEpO1xuICAgICAgICB9XG4gICAgICAgICY6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogdXJsKC4uL2Fzc2V0cy9pbWcvaWNvbnMvaV9zZWxlY3Rpb24tcmFkaW8uc3ZnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNlbGVjdCBkcm9wZG93bnNcbiAgICBzZWxlY3Qge1xuICAgICAgICBAZXh0ZW5kIGlucHV0O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgfVxuXG4gICAgLnN1Ym1pdCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB1bmRlcmxpbmUoKTtcbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBnZXQtY29sb3IoZGFyay1ncmF5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEZsZXhib3ggR3JpZCBNaXhpbnNcbi8vIFZlcnNpb24gMC4xLjNcbi8vIERlc2NyaXB0aW9uOiBTYXNzIE1peGlucyB0byBnZW5lcmF0ZSBGbGV4Ym94IGdyaWRcbi8vIEF1dGhvcjogdGhpbmdzeW1cbi8vIEdpdEh1YjogaHR0cHM6Ly9naXRodWIuY29tL3RoaW5nc3ltL2ZsZXhib3gtZ3JpZC1taXhpbnNcbi8vIE1JVCBMaWNlbnNlXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBjaGFyc2V0ICd1dGYtOCc7XG5cbkBtaXhpbiBncmlkKCRkaXNwbGF5OiBmbGV4LCAkZmxleC1kaXJlY3Rpb246IG51bGwsICRmbGV4LXdyYXA6IHdyYXAsICRmbGV4LWZsb3c6IG51bGwsICRqdXN0aWZ5LWNvbnRlbnQ6IG51bGwsICRhbGlnbi1pdGVtczogbnVsbCwgJGFsaWduLWNvbnRlbnQ6IG51bGwsICRndXR0ZXI6IDFlbSwgJGdyaWQtdHlwZTogc2tlbGV0b24pXG57XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgQGlmICRkaXNwbGF5IHtcbiAgICBkaXNwbGF5OiAkZGlzcGxheTtcbiAgfVxuXG4gIEBpZiAkZmxleC1kaXJlY3Rpb24ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiAkZmxleC1kaXJlY3Rpb247XG4gIH1cbiAgQGlmICRmbGV4LXdyYXAge1xuICAgIGZsZXgtd3JhcDogJGZsZXgtd3JhcDtcbiAgfVxuXG4gIEBpZiAkZmxleC1mbG93IHtcbiAgICBmbGV4LWZsb3c6ICRmbGV4LWZsb3c7XG4gIH1cblxuICBAaWYgJGp1c3RpZnktY29udGVudCB7XG4gICAganVzdGlmeS1jb250ZW50OiAkanVzdGlmeS1jb250ZW50O1xuICB9XG4gIEBpZiAkYWxpZ24taXRlbXMge1xuICAgIGFsaWduLWl0ZW1zOiAkYWxpZ24taXRlbXM7XG4gIH1cbiAgQGlmICRhbGlnbi1jb250ZW50IHtcbiAgICBhbGlnbi1jb250ZW50OiAkYWxpZ24tY29udGVudDtcbiAgfVxuXG4gIEBpZiAkZ3JpZC10eXBlID09IHNrZWxldG9uIHtcbiAgICBAaWYgJGd1dHRlciB7XG4gICAgICBAaW5jbHVkZSBncmlkLW1hcmdpbigkbWFyZ2luOiAwICRndXR0ZXIgLyAyICogLTEpO1xuICAgIH1cbiAgfVxuXG4gIEBjb250ZW50O1xufVxuXG5AbWl4aW4gZ3JpZC1jb2woJGNvbDogbnVsbCwgJGdyaWQtY29sdW1uczogMTIsICRjb2wtb2Zmc2V0OiBudWxsLCAkZ3V0dGVyOiAxZW0sICRjb25kZW5zZWQ6IGZhbHNlLCAkYWxpZ24tc2VsZjogbnVsbCwgJGZsZXgtZ3JvdzogMCwgJGZsZXgtc2hyaW5rOiAxLCAkZmxleC1iYXNpczogYXV0bywgJG9yZGVyOiBudWxsLCAkZ3JpZC10eXBlOiBza2VsZXRvbiwgJGxhc3QtY2hpbGQ6IGZhbHNlKVxue1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gIEBpZiB0eXBlLW9mKCRjb2wpID09IG51bWJlciBhbmQgdW5pdGxlc3MoJGNvbCkgPT0gdHJ1ZSB7XG4gICAgJGZsZXgtZ3JvdzogMDtcbiAgICAkZmxleC1zaHJpbms6IDA7XG4gICAgJGZsZXgtYmFzaXM6IHBlcmNlbnRhZ2UoJGNvbCAvICRncmlkLWNvbHVtbnMpO1xuXG4gICAgQGlmICRncmlkLXR5cGUgPT0gc2tlbGV0b24ge1xuICAgICAgQGlmICRndXR0ZXIgYW5kIHVuaXQoJGd1dHRlcikgPT0gJyUnIHtcbiAgICAgICAgJGZsZXgtYmFzaXM6ICRmbGV4LWJhc2lzIC0gJGd1dHRlcjtcbiAgICAgIH0gQGVsc2UgaWYgJGd1dHRlciBhbmQgdW5pdGxlc3MoJGd1dHRlcikgPT0gZmFsc2Uge1xuICAgICAgICAkZmxleC1iYXNpczogY2FsYyggI3skZmxleC1iYXNpc30gLSAjeyRndXR0ZXJ9KTtcbiAgICAgIH1cblxuICAgIH0gQGVsc2UgaWYgJGdyaWQtdHlwZSA9PSBtYXJnaW4tb2Zmc2V0IHtcbiAgICAgIEBpZiAkZ3V0dGVyIGFuZCB1bml0KCRndXR0ZXIpID09ICclJyB7XG4gICAgICAgICRmbGV4LWJhc2lzOiAoMTAwJSAtICgkZ3V0dGVyICogKCRncmlkLWNvbHVtbnMgLyAkY29sIC0gMSkpKSAvICgkZ3JpZC1jb2x1bW5zIC8gJGNvbCk7XG4gICAgICB9IEBlbHNlIGlmICRndXR0ZXIgYW5kIHVuaXRsZXNzKCRndXR0ZXIpID09IGZhbHNlIHtcbiAgICAgICAgJGZsZXgtYmFzaXM6IGNhbGMoICN7JGZsZXgtYmFzaXN9IC0gI3skZ3V0dGVyICogKCRncmlkLWNvbHVtbnMgLyAkY29sIC0gMSkgLyAoJGdyaWQtY29sdW1ucyAvICRjb2wpfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRjb2wtb2Zmc2V0IGFuZCB1bml0KCRjb2wtb2Zmc2V0KSA9PSAnJScge1xuICAgICAgJGZsZXgtYmFzaXM6ICRmbGV4LWJhc2lzICsgJGNvbC1vZmZzZXQ7XG4gICAgfSBAZWxzZSBpZiAkY29sLW9mZnNldCBhbmQgdW5pdGxlc3MoJGNvbC1vZmZzZXQpID09IGZhbHNlIHtcbiAgICAgICRmbGV4LWJhc2lzOiBjYWxjKCAjeyRmbGV4LWJhc2lzfSArICN7JGNvbC1vZmZzZXR9KTtcbiAgICB9XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkY29sKSA9PSBudW1iZXIgYW5kIHVuaXRsZXNzKCRjb2wpID09IGZhbHNlIHtcbiAgICAkZmxleC1ncm93OiAwO1xuICAgICRmbGV4LXNocmluazogMDtcbiAgICAkZmxleC1iYXNpczogJGNvbDtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRjb2wpID09IHN0cmluZyBhbmQgJGNvbCA9PSAnYXV0bycge1xuICAgICRmbGV4LWdyb3c6IDE7XG4gICAgJGZsZXgtc2hyaW5rOiAxO1xuICAgICRmbGV4LWJhc2lzOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogYXV0bztcbiAgLy8gZmxleDogMTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRjb2wpID09IHN0cmluZyBhbmQgJGNvbCA9PSAnZXF1YWwnIHtcbiAgICAkZmxleC1ncm93OiAxO1xuICAgICRmbGV4LXNocmluazogMTtcbiAgICAkZmxleC1iYXNpczogMDtcbiAgLy8gZmxleDogbm9uZTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRjb2wpID09IHN0cmluZyBhbmQgJGNvbCA9PSAnbm9uZScge1xuICAgICRmbGV4LWdyb3c6IDA7XG4gICAgJGZsZXgtc2hyaW5rOiAwO1xuICAgICRmbGV4LWJhc2lzOiBhdXRvO1xuICAvLyBmbGV4OiBpbml0aWFsO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJGNvbCkgPT0gc3RyaW5nIGFuZCAkY29sID09ICdpbml0aWFsJyB7XG4gICAgJGZsZXgtZ3JvdzogMDtcbiAgICAkZmxleC1zaHJpbms6IDE7XG4gICAgJGZsZXgtYmFzaXM6IGF1dG87XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkY29sKSA9PSBzdHJpbmcgYW5kICRjb2wgPT0gJ2JyZWFrcG9pbnQnIHtcbiAgICAkZmxleC1ncm93OiAwO1xuICAgICRmbGV4LXNocmluazogMTtcbiAgICAkZmxleC1iYXNpczogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIGZsZXgtZ3JvdzogJGZsZXgtZ3JvdztcbiAgZmxleC1zaHJpbms6ICRmbGV4LXNocmluaztcbiAgZmxleC1iYXNpczogJGZsZXgtYmFzaXM7XG4gIG1heC13aWR0aDogJGZsZXgtYmFzaXM7XG5cbiAgQGlmICRhbGlnbi1zZWxmIHtcbiAgICBhbGlnbi1zZWxmOiAkYWxpZ24tc2VsZjtcbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCRvcmRlcikgPT0gbnVtYmVyIHtcbiAgICBvcmRlcjogJG9yZGVyO1xuICB9XG5cbiAgQGlmICRndXR0ZXIgYW5kIHVuaXRsZXNzKCRndXR0ZXIpID09IGZhbHNlIHtcbiAgICBAaWYgJGdyaWQtdHlwZSA9PSBza2VsZXRvbiB7XG4gICAgICBAaWYgJGNvbmRlbnNlZCA9PSB0cnVlIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtbWFyZ2luKCRtYXJnaW46IDAgJGd1dHRlciAvIDIpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLW1hcmdpbigkbWFyZ2luOiAwICRndXR0ZXIgLyAyICRndXR0ZXIpO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJGdyaWQtdHlwZSA9PSBtYXJnaW4tb2Zmc2V0IHtcbiAgICAgIEBpZiB0eXBlLW9mKCRjb2wpID09IHN0cmluZyBhbmQgJGNvbCA9PSAnYnJlYWtwb2ludCcge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1tYXJnaW4oJG1hcmdpbi1yaWdodDogMCk7XG4gICAgICB9IEBlbHNlIGlmICRsYXN0LWNoaWxkIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtbWFyZ2luKCRtYXJnaW4tcmlnaHQ6IDApO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLW1hcmdpbigkbWFyZ2luLXJpZ2h0OiAkZ3V0dGVyKTtcbiAgICAgIH1cblxuICAgICAgQGlmICRjb25kZW5zZWQgPT0gZmFsc2Uge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1tYXJnaW4oJG1hcmdpbi1ib3R0b206ICRndXR0ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBjb250ZW50O1xufVxuXG5AbWl4aW4gZ3JpZC1tYXJnaW4oJG1hcmdpbjogbnVsbCwgJG1hcmdpbi10b3A6IG51bGwsICRtYXJnaW4tcmlnaHQ6IG51bGwsICRtYXJnaW4tYm90dG9tOiBudWxsLCAkbWFyZ2luLWxlZnQ6IG51bGwpXG57XG4gIEBpZiAkbWFyZ2luICE9IG51bGwge1xuICAgIG1hcmdpbjogJG1hcmdpbjtcbiAgfVxuICBAaWYgJG1hcmdpbi10b3AgIT0gbnVsbCB7XG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gIH1cbiAgQGlmICRtYXJnaW4tYm90dG9tICE9IG51bGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuICB9XG4gIEBpZiAkbWFyZ2luLWxlZnQgIT0gbnVsbCB7XG4gICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW4tbGVmdDtcbiAgfVxuICBAaWYgJG1hcmdpbi1yaWdodCAhPSBudWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW4tcmlnaHQ7XG4gIH1cbn1cblxuQG1peGluIGdyaWQtY29sLW1hcmdpbigkbWFyZ2luOiBudWxsLCAkbWFyZ2luLXRvcDogbnVsbCwgJG1hcmdpbi1yaWdodDogbnVsbCwgJG1hcmdpbi1ib3R0b206IG51bGwsICRtYXJnaW4tbGVmdDogbnVsbClcbntcbiAgQGluY2x1ZGUgZ3JpZC1tYXJnaW4oJG1hcmdpbiwgJG1hcmdpbi10b3AsICRtYXJnaW4tcmlnaHQsICRtYXJnaW4tYm90dG9tLCAkbWFyZ2luLWxlZnQpO1xufVxuXG5cblxuQG1peGluIGJ1dHRvbihcbiAgICAkYnRuLWJnLWNvbG9yOiBnZXQtY29sb3IoYmxhY2spLFxuICAgICRidG4tYmctY29sb3ItaG92ZXI6IGdldC1jb2xvcihjaGFyY29hbCksXG4gICAgJGJ0bi10ZXh0LWNvbG9yOiBnZXQtY29sb3Iod2hpdGUpLFxuICAgICRidG4tdGV4dC1jb2xvci1ob3ZlcjogZ2V0LWNvbG9yKHdoaXRlKSxcbiAgICAkYnRuLWJvcmRlcjogbnVsbCxcbiAgICAkYnRuLWJvcmRlci1jb2xvcjogbnVsbCxcbiAgICAkYnRuLWJvcmRlci1jb2xvci1ob3ZlcjogbnVsbCxcbiAgICAkYnRuLWJvcmRlci1yYWRpdXM6IDI1cHgsXG4gICAgJGJ0bi1ib3gtc2hhZG93OiBub25lLFxuICAgICRidG4tYm94LXNoYWRvdy1ob3ZlcjogcmdiYShnZXQtY29sb3IoYmxhY2spLCAuMjUpLFxuICAgICRkaXNhYmxlZDogZmFsc2UpIHtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAxOHB4IDUwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1iZy1jb2xvcjtcbiAgICBAaWYgJGJ0bi1ib3JkZXIgPT0gbnVsbCB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3JkZXI6ICRidG4tYm9yZGVyO1xuICAgIH1cbiAgICBib3JkZXItY29sb3I6ICRidG4tYm9yZGVyLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6ICRidG4tYm9yZGVyLXJhZGl1cztcbiAgICBib3gtc2hhZG93OiAkYnRuLWJveC1zaGFkb3c7XG4gICAgY29sb3I6ICRidG4tdGV4dC1jb2xvcjtcbiAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbGV0dGVyLXNwYWNpbmc6IGxldHRlci1zcGFjaW5nKDE0KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tc3BlZWQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRidG4tdGV4dC1jb2xvci1ob3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1iZy1jb2xvci1ob3ZlcjtcblxuICAgICAgICBAaWYgJGJ0bi1ib3JkZXIgIT0gMCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRidG4tYm9yZGVyLWNvbG9yLWhvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgQGlmICRidG4tYm94LXNoYWRvdy1ob3ZlciAhPSBudWxsIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDRweCAkYnRuLWJveC1zaGFkb3ctaG92ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFJlc2V0IEJ1dHRvblxuLy9cbi8vIFplcm8gb3V0IGJ1dHRvbiBwcm9wZXJ0aWVzLlxuXG5AbWl4aW4gcmVzZXQtYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuQG1peGluIGNsZWFyZml4IHtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbn1cblxuLy8gSGlkZSBPZmYgU2NyZWVuXG4vL1xuLy8gUG9zaXRpb24gYW4gZWxlbWVudCBvZmYtc2NyZWVuIGZvciBzY3JlZW4tcmVhZGVycy5cblxuQG1peGluIGhpZGUtb2ZmLXNjcmVlbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTEwMDAwcHg7XG4gIHRvcDogYXV0bztcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cblxuLy8gUG9zaXRpb24gYW4gZWxlbWVudCB2ZXJ0aWNhbGx5IGFuZCBob3Jpem9udGFsbHkgY2VudGVyZWRcbi8vIFVzYWdlOiBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4vLyBOb3RlOiBwYXJlbnQgZWxlbWVudCBzaG91bGQgdXNlIHBvc2l0aW9uOiByZWxhdGl2ZTtcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIoKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cblxuLy8gUG9zaXRpb24gYW4gZWxlbWVudCB2ZXJ0aWNhbGx5IGNlbnRlcmVkXG4vLyBVc2FnZTogQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuLy8gTm90ZTogcGFyZW50IGVsZW1lbnQgc2hvdWxkIHVzZSBwb3NpdGlvbjogcmVsYXRpdmU7XG5AbWl4aW4gdmVydGljYWwtY2VudGVyKCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cblxuLy8gUG9zaXRpb24gYW4gZWxlbWVudCBob3Jpem9udGFsbHkgY2VudGVyZWRcbi8vIFVzYWdlOiBAaW5jbHVkZSBob3Jpem9udGFsLWNlbnRlcjtcbi8vIE5vdGU6IHBhcmVudCBlbGVtZW50IHNob3VsZCB1c2UgcG9zaXRpb246IHJlbGF0aXZlO1xuQG1peGluIGhvcml6b250YWwtY2VudGVyKCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLyBDb2x1bW4gYm9yZGVycyBpbiB0aGUgZ3V0dGVycyBvbiBncmlkXG5AbWl4aW4gZ3V0dGVyLWJvcmRlciAoICRsZWZ0OiAtMTBweCApIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzMHB4O1xuICBib3R0b206IDMwcHg7XG4gIGxlZnQ6ICRsZWZ0O1xuICB3aWR0aDogMXB4O1xuICBiYWNrZ3JvdW5kOiBnZXQtY29sb3IobGlnaHRlci1ncmF5KTtcbn1cblxuLy8gRmlsbCBpbiBHdXR0ZXIgR2FwIG9uIEdyaWRzXG5AbWl4aW4gZ3V0dGVyLWdhcCggJHdpZHRoOiAyMHB4ICkge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0xcHg7XG4gIHJpZ2h0OiBjYWxjKDEwMCUgLSAxcHgpO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG59XG5cbi8vIFNwZWNpYWwgVW5kZXJsaW5lIGZvciBpbmxpbmUgZWxlbWVudHMgKGJldHRlciB0aGFuIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lKVxuQG1peGluIHVuZGVybGluZSggJGJnY29sb3I6IGdldC1jb2xvcihjaGFyY29hbCkgKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJGJnY29sb3IgMCUsICRiZ2NvbG9yIDEwMCUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDFweDtcbn1cblxuLy8gUXVhbnRpdHkgUXVlcmllc1xuLy8gQ29waWVkIGZyb206IGh0dHA6Ly9jb2RlcGVuLmlvL1NpdGVQb2ludC9wZW4vb2dhUkJHXG5AbWl4aW4gcXVhbnRpdHktcXVlcnkoICRudW1iZXIsICRjb21wYXJpc29uOiAnZXF1YWwnICkge1xuICAkbnRoOiAnJztcblxuICBAaWYgaW5kZXgoICgnZ3JlYXRlcicgJ21vcmUnICc+JyksICRjb21wYXJpc29uICkge1xuICAgICRudGg6ICduICsgI3skbnVtYmVyfSc7XG4gIH0gQGVsc2UgaWYgaW5kZXgoICgnbGVzcycgJ2Zld2VyJyAnPCcpLCAkY29tcGFyaXNvbiApIHtcbiAgICAkbnRoOiAnLW4gKyAjeyRudW1iZXJ9JztcbiAgfSBAZWxzZSBpZiBpbmRleCggKCdlcXVhbCcgJ3NhbWUnICc9JyksICRjb21wYXJpc29uICkge1xuICAgICRudGg6ICRudW1iZXI7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuIFwiU29ycnksIHRoYXQncyBhbiBpbnZhbGlkICRjb21wYXJpc29uIHZhbHVlLlwiXG4gIH1cblxuICAmOm50aC1sYXN0LWNoaWxkKCN7JG50aH0pOmZpcnN0LWNoaWxkIHtcbiAgICAmLFxuICAgICYgfiAqIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gcXEtZXF1YWwoICRudW1iZXIgKSB7XG4gIEBpbmNsdWRlIHF1YW50aXR5LXF1ZXJ5KCAkbnVtYmVyLCBlcXVhbCApIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcXEtZ3JlYXRlciggJG51bWJlciApIHtcbiAgQGluY2x1ZGUgcXVhbnRpdHktcXVlcnkoICRudW1iZXIsIGdyZWF0ZXIgKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIHFxLWxlc3MoICRudW1iZXIgKSB7XG4gIEBpbmNsdWRlIHF1YW50aXR5LXF1ZXJ5KCAkbnVtYmVyLCBsZXNzICkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBMaXN0c1xuLy9cbi8vIEVsZW1lbnQgdGhhdCBncm91cHMgcmVsYXRlZCBjb250ZW50IHRvZ2V0aGVyLiBUaGV5J3JlIHBhcnQgb2YgZXZlcnlkYXkgbGlmZSBhbmQgY29tZSBpbiBtdWx0aXBsZSBmb3JtYXRzLlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBMaXN0c1xuXG51bCxcbm9sIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgJiVkZWZhdWx0LXVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNtYWxsLXNwYWNpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkYmFzZS1zcGFjaW5nO1xuICB9XG5cbiAgJiVkZWZhdWx0LW9sIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNtYWxsLXNwYWNpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkYmFzZS1zcGFjaW5nO1xuICB9XG59XG5cbi8vIFVub3JkZXJlZCBMaXN0c1xuLy9cbi8vIFRoZSB1bCBlbGVtZW50LCB0aGUgbmFtZSBmb3Igd2hpY2ggaXMgYW4gYWJicmV2aWF0aW9uIG9mIHVub3JkZXJlZCBsaXN0LCBpcyB1c2VkIHRvIGdyb3VwIGEgY29sbGVjdGlvbiBvZiBpdGVtcyB0b2dldGhlciBpbiBhIGxpc3QsIGJ1dCBpbiBhIHdheSB0aGF0IGRvZXNu4oCZdCBzdWdnZXN0IGFuIG9yZGVyIG9mIHByZWNlZGVuY2Ugb3IgaW1wb3J0YW5jZS5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8dWw+XG4vLyAgICAgPGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT5cbi8vICAgICA8bGk+Q29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0PC9saT5cbi8vICAgICA8bGk+SW50ZWdlciBtb2xlc3RpZSBsb3JlbSBhdCBtYXNzYTwvbGk+XG4vLyA8L3VsPlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBMaXN0cyAtIFVub3JkZXJlZCBMaXN0c1xuXG51bCB7fVxuXG5cbi8vIE9yZGVyZWQgTGlzdHNcbi8vXG4vLyBUaGUgb2wgZWxlbWVudCBpcyBzaW1pbGFyIHRvIHRoZSB1bCBlbGVtZW50IGluIHRoYXQgaXTigJlzIHVzZWQgdG8gZ3JvdXAgYSBjb2xsZWN0aW9uIG9mIGl0ZW1zIHRvZ2V0aGVyIGluIGEgbGlzdC5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8b2w+XG4vLyAgICAgPGxpPkxvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0PC9saT5cbi8vICAgICA8bGk+Q29uc2VjdGV0dXIgYWRpcGlzY2luZyBlbGl0PC9saT5cbi8vICAgICA8bGk+SW50ZWdlciBtb2xlc3RpZSBsb3JlbSBhdCBtYXNzYTwvbGk+XG4vLyA8L29sPlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBMaXN0cyAtIE9yZGVyZWQgTGlzdHNcblxub2wge31cblxuXG4vLyBEZWZpbml0aW9uIExpc3RzXG4vL1xuLy8gSWYgeW91IHdhbnQgdG8gbGlzdCBhIHNlcmllcyBvZiBpdGVtcyB0aGF0IGVzc2VudGlhbGx5IGhhdmUgYSB0aXRsZSBhbmQgYSBkZXNjcmlwdGlvbiBvZiBzb21lIGtpbmQgKHRoYXQgaXMsIGVhY2ggaXRlbSBoYXMgdHdvIHBhcnRzKSwgdXNlIHRoZSBkZWZpbml0aW9uIGxpc3QgZGwgZWxlbWVudC5cbi8vXG4vLyBNYXJrdXA6XG4vLyA8ZGw+XG4vLyAgICAgPGR0PkRlZmluaXRpb24gTGlzdDwvZHQ+XG4vLyAgICAgPGRkPkEgbnVtYmVyIG9mIGNvbm5lY3RlZCBpdGVtcyBvciBuYW1lcyB3cml0dGVuIG9yIHByaW50ZWQgY29uc2VjdXRpdmVseSwgdHlwaWNhbGx5IG9uZSBiZWxvdyB0aGUgb3RoZXIuPC9kZD5cbi8vICAgICA8ZHQ+VGhpcyBpcyBhIHRlcm0uPC9kdD5cbi8vICAgICA8ZGQ+VGhpcyBpcyB0aGUgZGVmaW5pdGlvbiBvZiB0aGF0IHRlcm0sIHdoaWNoIGJvdGggbGl2ZSBpbiBhIGRsLjwvZGQ+XG4vLyAgICAgPGR0PkhlcmUgaXMgYW5vdGhlciB0ZXJtLjwvZHQ+XG4vLyAgICAgPGRkPkFuZCBpdCBnZXRzIGEgZGVmaW5pdGlvbiB0b28sIHdoaWNoIGlzIHRoaXMgbGluZS48L2RkPlxuLy8gICAgIDxkdD5IZXJlIGlzIHRlcm0gdGhhdCBzaGFyZXMgYSBkZWZpbml0aW9uIHdpdGggdGhlIHRlcm0gYmVsb3cuPC9kdD5cbi8vICAgICA8ZGQ+QW5kIGl0IGdldHMgYSBkZWZpbml0aW9uIHRvbywgd2hpY2ggaXMgdGhpcyBsaW5lLjwvZGQ+XG4vLyA8L2RsPlxuLy9cbi8vIFN0eWxlZ3VpZGUgRWxlbWVudHMgLSBMaXN0cyAtIERlZmluaXRpb24gTGlzdHNcblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAkc21hbGwtc3BhY2luZztcblxuICBkdCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLXRvcDogJHNtYWxsLXNwYWNpbmc7XG4gIH1cblxuICBkZCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4iLCIvLyBPdGhlciBTaXplc1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuJGJhc2UtYm9yZGVyLXJhZGl1czogMHB4O1xuJGJhc2Utc3BhY2luZzogJGJhc2UtbGluZS1oZWlnaHQgKiAxZW07XG4kc21hbGwtc3BhY2luZzogJGJhc2Utc3BhY2luZyAvIDI7XG5cbi8vIEJvcmRlclxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuJGJhc2UtYm9yZGVyLWNvbG9yOiBnZXQtY29sb3IobGlnaHRlci1ncmF5KTtcbiRiYXNlLWJvcmRlcjogMXB4IHNvbGlkICRiYXNlLWJvcmRlci1jb2xvcjtcblxuLy8gQmFja2dyb3VuZCBDb2xvcnNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiRiYXNlLWJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4kc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3I6IHRpbnQoJGJhc2UtYm9yZGVyLWNvbG9yLCA3NSUpO1xuXG4vLyBGb3Jtc1xuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuJGZvcm0tYm94LXNoYWRvdzogaW5zZXQgMCAxcHggM3B4IHJnYmEoIzAwMCwgMC4wNik7XG4kZm9ybS1ib3gtc2hhZG93LWZvY3VzOiAkZm9ybS1ib3gtc2hhZG93LCAwIDAgNXB4IHJnYmEoJGFjdGlvbi1jb2xvciwgLjcpOyIsImltZyxcbnBpY3R1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuZmlnY2FwdGlvbiB7XG4gICAgcGFkZGluZzogMTBweCAwIDA7XG4gICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgIGNvbG9yOiBnZXQtY29sb3IoZGFyay1ncmF5KTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmlmcmFtZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMjgwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxudmlkZW8ge31cbiIsInRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiBcImtlcm5cIiwgXCJsaWdhXCIsIFwidG51bVwiO1xuICBtYXJnaW46IDAgMCAxLjVlbTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0LWdyYXkpO1xufVxuXG50aCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRkIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0LWdyYXkpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0LWdyYXkpO1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG50cixcbnRkLFxudGgge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuIiwiLmhlYWRlci1jb250YWluZXIsXG4uY29udGVudC1jb250YWluZXIsXG4uZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLndyYXBwZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tc3BlZWQ7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49cGhvbmVcIiwgXCI8cGhhYmxldFwiKSB7IC8vcGhvbmVcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49cGhhYmxldFwiLCBcIjxtaW5pLXRhYmxldFwiKSB7IC8vcGhhYmxldFxuICAgICAgICBwYWRkaW5nOiAwIDYwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1taW5pLXRhYmxldFwiLCBcIjxsYXB0b3BcIikgeyAvL3RhYmxldHNcbiAgICAgICAgcGFkZGluZzogMCA2MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIsIFwiPGRlc2t0b3BcIikgeyAvL2xhcHRvcFxuICAgICAgICBwYWRkaW5nOiAwIDYwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjgwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgJi0tZnVsbCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMCAxMDBweDtcbiAgICAgIH1cbiAgICB9XG59XG5cbi5jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGdyaWQoJGd1dHRlcjogMjBweCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtbWFyZ2luKCRtYXJnaW4tbGVmdDogLTIwcHgsICRtYXJnaW4tcmlnaHQ6IC0yMHB4KTtcbiAgICB9XG59XG5cbi5zaXRlLWNvbnRlbnQge1xuICAgICYucHVzaGVkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7XG4gICAgfVxufVxuIiwiLy8gRGVmYXVsdCBHcmlkIEl0ZW1zXG4vLyBTZWUgYmVsb3cgZm9yIFRvcGljcyBHcmlkXG4uZ3JpZCB7XG4gIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGdyaWQoJGd1dHRlcjogMjBweCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj5taW5pLXRhYmxldFwiKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHRlci1ncmF5KTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICBAaW5jbHVkZSBncmlkLW1hcmdpbigkbWFyZ2luLWxlZnQ6IC0yMHB4LCAkbWFyZ2luLXJpZ2h0OiAtMjBweCk7XG4gICAgfVxuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woJGNvbDogMTIsICRncmlkLWNvbHVtbnM6IDEyLCAkZ3V0dGVyOiAyMHB4KTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjgpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtaW5pLXRhYmxldFwiKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiAxMiwgJGdyaWQtY29sdW1uczogMTIsICRndXR0ZXI6IDAsICRjb25kZW5zZWQ6IGZhbHNlKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMzIpO1xuICAgICAgICAgfVxuXG4gICAgICAgICAmLS10b3BpYyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiAxMiwgJGdyaWQtY29sdW1uczogMTIsICRndXR0ZXI6IDIwcHgsICRjb25kZW5zZWQ6IHRydWUpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1pbmktdGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiAxMiwgJGdyaWQtY29sdW1uczogMTIsICRndXR0ZXI6IDAsICRjb25kZW5zZWQ6IGZhbHNlKTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDEyLCAkZ3JpZC1jb2x1bW5zOiAxMiwgJGd1dHRlcjogNDBweCwgJGNvbmRlbnNlZDogdHJ1ZSk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDg1cHg7IC8vIEZvciB3cmFwcGluZyB0aXRsZXMuIEtlZXAgdGhlbSB0aGUgc2FtZSBoZWlnaHQgZm9yIG9uZSB2cyB0d28gbGluZXNcbiAgICAgICAgICAgIH1cbiAgICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woMTIpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1pbmktdGFibGV0XCIpIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHRlci1ncmF5KTtcblxuICAgICAgICAgICAgLmdyaWRfX2NvbnRhaW5lci0tdG9waWNzICYge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1taW5pLXRhYmxldFwiLCBcIjxsYXB0b3BcIikge1xuXG4gICAgICAgICAgICAvLyBUYXJnZXQgU2luZ2xlIFdpZHRoIEl0ZW1zXG4gICAgICAgICAgICAmW2RhdGEtc2l6ZT1cIjFcIl0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDMsICRncmlkLWNvbHVtbnM6IDYsICRndXR0ZXI6IDIwcHgsICRjb25kZW5zZWQ6IHRydWUpO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4OyAvLyBGaXggU2FmYXJpIEJ1Z1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICAvLyBBZGQgYm9yZGVyIGxlZnQgdG8gc2Vjb25kIGNvbHVtbiBvZiBzaW5nbGVzIChvbiBkb3VibGUvc2luZ2xlL3NpbmdsZSlcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQoKSB7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGd1dHRlci1ib3JkZXIoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIElmIGdyaWQgaXMgNCBzaW5nbGVzXG4gICAgICAgICAgICAgICAgW2RhdGEtY29scz1cIjRcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIEFkZCBib3JkZXIgbGVmdCB0byByaWdodCBjb2x1bW5zXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBndXR0ZXItYm9yZGVyKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLy8gQWRkIGJvdHRvbSBib3JkZXJzIGZvciBmaXJzdCB0d28gaXRlbXMgKGZpcnN0IHJvdylcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHRlci1ncmF5KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBGaWxsIGluIGd1dHRlciBnYXBcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGd1dHRlci1nYXAoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmW2RhdGEtc2l6ZT1cIjJcIl0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDYsICRncmlkLWNvbHVtbnM6IDYsICRndXR0ZXI6IDIwcHgsICRjb25kZW5zZWQ6IHRydWUpO1xuICAgICAgICAgICAgICAgIC8vIEFsd2F5cyBmaXJzdCBjaGlsZCwgc28gbmVlZHMgYSBib3JkZXItYm90dG9tXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGdldC1jb2xvcihsaWdodGVyLWdyYXkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIsIFwiPGRlc2t0b3BcIikge1xuXG4gICAgICAgICAgICAmW2RhdGEtc2l6ZT1cIjFcIl0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDMsICRncmlkLWNvbHVtbnM6IDEyLCAkZ3V0dGVyOiAyMHB4LCAkY29uZGVuc2VkOiB0cnVlKTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMjUlIC0gMjBweCk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsgLy8gRml4IFNhZmFyaSBCdWdcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgLy8gQWRkIGxlZnQgZ3V0dGVyIGJvcmRlclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3V0dGVyLWJvcmRlcigpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBEb250IGhhdmUgb25lIG9uIGZpcnN0IGNoaWxkXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZbZGF0YS1zaXplPVwiMlwiXSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woJGNvbDogNiwgJGdyaWQtY29sdW1uczogMTIsICRndXR0ZXI6IDIwcHgsICRjb25kZW5zZWQ6IHRydWUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgICAgICAmW2RhdGEtc2l6ZT1cIjFcIl0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDMsICRncmlkLWNvbHVtbnM6IDEyLCAkZ3V0dGVyOiA0MHB4LCAkY29uZGVuc2VkOiB0cnVlKTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMjUlIC0gNDBweCk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDsgLy8gRml4IFNhZmFyaSBCdWdcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgLy8gQWRkIGxlZnQgZ3V0dGVyIGJvcmRlclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3V0dGVyLWJvcmRlcigkbGVmdDogLTIwcHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBEb250IGhhdmUgb25lIG9uIGZpcnN0IGNoaWxkXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmW2RhdGEtc2l6ZT1cIjJcIl0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDYsICRncmlkLWNvbHVtbnM6IDEyLCAkZ3V0dGVyOiA0MHB4LCAkY29uZGVuc2VkOiB0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4uZ3JpZC0tdG9waWNzLWNvbHMge1xuXG4gICAgLmdyaWRfX2hlYWRlci0tdG9waWMge1xuICAgICAgICAvL0BpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDEyLCAkZ3JpZC1jb2x1bW5zOiAxMiwgJGd1dHRlcjogMCwgJGNvbmRlbnNlZDogZmFsc2UpO1xuICAgICAgICBmbGV4OiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPG1pbmktdGFibGV0XCIpIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHRlci1ncmF5KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIEhlYWRlclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gTWFpbiBuYXZpZ2F0aW9uIEJhclxuLy8gSG9sZHMgbWVudSBpY29uLCBsb2dvLCBwYWdlLXRpdGxlIG9uIHNjcm9sbCwgc3Vic2NyaWJlLCBhbmQgc2VhcmNoIGljb25cbi5zaXRlX19iYXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG4gICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKHdoaXRlKTtcbiAgICB6LWluZGV4OiAxMDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICB9XG5cbiAgICA+IFtkYXRhLWl0ZW1+PVwiZmxleFwiXSB7XG4gICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIH1cbn1cblxuXG4vLyBTaXRlIExvZ28gLSBzd2l0Y2ggbG9nbyB0eXBlIG9uIGJyZWFrcG9pbnRzXG4uc2l0ZV9fYnJhbmRpbmcge1xuICAgIG9yZGVyOiAyO1xuXG4gICAgLnNpdGVfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMzdweDtcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vYXNzZXRzL2ltZy9sb2dvcy90aS1sb2dvLXN0YWNrZWQuc3ZnJykgbm8tcmVwZWF0IDUwJSA1MCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEzN3B4IDYwcHg7IC8vIEZvciBJRSBTVkcgYmFja2dyb3VuZCBzaXppbmcgYnVnXG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTgycHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTgycHggODBweDsgLy8gRm9yIElFIFNWRyBiYWNrZ3JvdW5kIHNpemluZyBidWdcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyBUb2dnbGUgTWVudSBCdXR0b25cbi50b2dnbGVfX21lbnUge1xuICAgIG9yZGVyOiAxO1xuICAgIEBpbmNsdWRlIHJlc2V0LWJ1dHRvbigpO1xuICAgIGhlaWdodDogNTBweDtcbiAgICB3aWR0aDogNTBweDtcbiAgICBmb250LXNpemU6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA2NXB4O1xuICAgIH1cblxuICAgID4gc3BhbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgY29sb3I6IGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgICAgIG1hcmdpbjogLTVweCAwIDAgLTEwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgdG9wOiAxNSU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgZ2V0LWNvbG9yKGNoYXJjb2FsKTtcbiAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgZ2V0LWNvbG9yKGNoYXJjb2FsKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFuaW1hdGUgdGhlIG1pZGRsZSBiYXIgbGVuZ3RoIG9uIGhvdmVyXG4gICAgJjpob3ZlciB7XG4gICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXaGVuIFRvZ2dsZWQgT3BlbiAtIHJvdGF0ZSBhbmQgbWFrZSBhbiBYXG4gICAgJlthcmlhLXByZXNzZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKGNoYXJjb2FsKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgdG9wOiAzMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICAgICAgdG9wOiAzMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFNob3dzIHBhZ2UgdGl0bGUgd2hlbiB1c2VyIHNjcm9sbHMgZG93biBwYWdlICg+ZGVza3RvcClcbi5zaXRlX19wYWdlLXRpdGxlIHtcbiAgICBvcmRlcjogMztcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDgwJSk7XG4gICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgdHJhbnNmb3JtICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nLFxuICAgICAgICAgIG9wYWNpdHkgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG5cbiAgICAgICAgJi5zaG93LXRpdGxlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyBTdWJzY3JpYmUgYnV0dG9uXG4uc3Vic2NyaWJlX19idG4ge1xuICAgIG9yZGVyOiA1O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDI1cHggMzBweDtcbiAgICAuc3Vic2NyaWJlX19saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKGJsdWUpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgLnN1YnNjcmliZV9fbGluayB7XG4gICAgICAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogaW5pdGlhbDtcblxuICAgICAgICAuc3Vic2NyaWJlX19saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG5cbiAgICAmLS1tb2JpbGUge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tZGVza3RvcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBUb2dnbGUgU2VhcmNoIEJ1dHRvblxuLnRvZ2dsZV9fc2VhcmNoIHtcbiAgICBvcmRlcjogNjtcbiAgICBAaW5jbHVkZSByZXNldC1idXR0b24oKTtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgfVxuXG4gICAgc3ZnLFxuICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIGFic29sdXRlLWNlbnRlcigpO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICAgIH1cblxuICAgIC5jbG9zZS1zZWFyY2gge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG5cbiAgICAmW2FyaWEtcHJlc3NlZD1cInRydWVcIl0ge1xuICAgICAgICAub3Blbi1zZWFyY2gge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICB9XG4gICAgICAgIC5jbG9zZS1zZWFyY2gge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIFNpdGUgUGFuZWxzIChNZW51IGFuZCBTZWFyY2gpXG4ucGFuZWxfX3NlYXJjaCxcbi5wYW5lbF9fbWVudSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogNjBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDYwcHgpO1xuICAgIGJhY2tncm91bmQ6IGdldC1jb2xvcih3aGl0ZSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgICAgb3BhY2l0eSAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZyxcbiAgICAgICAgei1pbmRleCAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gODBweCk7XG4gICAgICAgIHRvcDogODBweDtcbiAgICB9XG5cbiAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgei1pbmRleDogOTA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBpbml0aWFsO1xuICAgIH1cbn1cblxuLy8gTmV3IG1lbnUgZGVzaWduIGRvZXMgbm90IHRha2UgZnVsbCBoZWlnaHRcbi5wYW5lbF9fbWVudSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWF4LWhlaWdodDogMTAwdmg7XG4gICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoZ2V0LWNvbG9yKHdoaXRlKSwgLjk1KTtcbiAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgfVxuXG4gICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG4gICAgfVxufVxuXG4vLyBTZWFyY2ggUGFuZWwgKGZ1bGxzY3JlZW4pXG4ucGFuZWxfX3NlYXJjaCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjBweDtcblxuICAgIC5zZWFyY2gtZm9ybSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICZfX2xhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgfVxuICAgICAgICAmX19pbnB1dCB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgzMik7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGxldHRlci1zcGFjaW5nKDY0KTtcblxuICAgICAgICAgICAgLy8gVGFyZ2V0IHRoZSBwbGFjZWhvbGRlci5cbiAgICAgICAgICAgIC8vIER1ZSB0byBpbmNvbnNpc3RlbmNpZXMgb2YgYnJvd3NlcnMsIHlvdSBoYXZlIHRvXG4gICAgICAgICAgICAvLyBicmVhayB0aGVtIG91dCBzZXBhcmF0ZWx5LiBEbyBOb3QgQ29tYmluZS5cbiAgICAgICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC4yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC4yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC4yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuMjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0oOTYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICZfX3N1Ym1pdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBXaGVuIG1lbnVzIGFyZSBvcGVuLCBzdG9wIHNjcm9sbGluZyBvbiBwYWdlXG5ib2R5LmZpeGVkIHtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuIiwiLy8gRm9vdGVyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLmZvb3Rlci1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDYwcHggMCAzMHB4O1xuICAgIGJhY2tncm91bmQ6IGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgY29sb3I6IGdldC1jb2xvcih3aGl0ZSk7XG5cbiAgICAmX193cmFwIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1taW5pLXRhYmxldFwiKSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb290ZXItYnJhbmQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1pbmktdGFibGV0XCIpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAvL2ZsZXg6IDAgMSA0NSU7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICAgIGZsZXgtYmFzaXM6IDQ1JTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgLy9mbGV4OiAwIDEgMjgwcHg7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICAgIGZsZXgtYmFzaXM6IDI4MHB4O1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49MTE1MHB4XCIpIHtcbiAgICAgICAgLy9mbGV4OiAwIDEgMjAwcHg7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICAgIGZsZXgtYmFzaXM6IDIwMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgLy9mbGV4OiAwIDEgMzUwcHg7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICAgIGZsZXgtYmFzaXM6IDM1MHB4O1xuICAgIH1cblxuICAgICZfX2xvZ28ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDE4NXB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMzBweDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9hc3NldHMvaW1nL2xvZ29zL3RpLWxvZ28tc3RhY2tlZC0taW52ZXJzZS5zdmcnKSBuby1yZXBlYXQgNTAlIDUwJTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICAgICAgd2lkdGg6IDMzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9hc3NldHMvaW1nL2xvZ29zL3RpLWxvZ28taG9yaXpvbnRhbC0taW52ZXJzZS5zdmcnKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX190YWdsaW5lIHtcbiAgICAgICAgLy9mb250LXNpemU6IHJlbSgxOSk7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAvLyBAaW5jbHVkZSBtZWRpYShcIj49bWluaS10YWJsZXRcIikge1xuICAgICAgICAvLyAgICAgZm9udC1zaXplOiByZW0oMjEpO1xuICAgICAgICAvLyB9XG4gICAgfVxufVxuXG4uZm9vdGVyLW1hZyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiBnZXQtY29sb3Iod2hpdGUpO1xuICAgIG1hcmdpbjogMCAwIDUwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bWluaS10YWJsZXRcIikge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIC8vZmxleDogMCAxIDQ1JTtcbiAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgZmxleC1iYXNpczogNDUlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIC8vZmxleDogMCAxIDI1MHB4O1xuICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgICBmbGV4LWJhc2lzOiAyNTBweDtcbiAgICAgICAgb3JkZXI6IDU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICAvL2ZsZXg6IDAgMSAzMDBweDtcbiAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgZmxleC1iYXNpczogMzAwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PTExNTBweFwiKSB7XG4gICAgICAgIG9yZGVyOiAzO1xuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBjb2xvcjogZ2V0LWNvbG9yKHdoaXRlKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBnZXQtY29sb3IoZGFyay1ncmF5KTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49MTE1MHB4XCIpIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgyMSk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbiAgICAmX19pbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxufVxuXG5kaXYuc29jaWFscy0tZm9vdGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1pbmktdGFibGV0XCIpIHtcbiAgICAgICAgbWFyZ2luOiA1MHB4IGF1dG87XG4gICAgICAgIC8vZmxleDogMCAxIGF1dG87XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICAgIGZsZXgtYmFzaXM6IDI2MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICBvcmRlcjogMztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0xMTUwcHhcIikge1xuICAgICAgICBvcmRlcjogNDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn1cblxuLmZvb3Rlcl9fbGVnYWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogNTUlO1xuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgICAgICBvcmRlcjogNDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PTExNTBweFwiKSB7XG4gICAgICAgIG9yZGVyOiA1O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGdldC1jb2xvcihkYXJrLWdyYXkpO1xuICAgIH1cbn1cblxuLmZvb3Rlcl9fbmF2LFxuLmxlZ2FsX19uYXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC5tZW51LWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICA+IGEge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMjBweCAwO1xuICAgICAgICAgICAgY29sb3I6IGdldC1jb2xvcihvZmYtd2hpdGUpO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGdldC1jb2xvcihkYXJrLWdyYXkpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICAgICAgICAgICAgY29sb3IgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGdldC1jb2xvcih3aGl0ZSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBnZXQtY29sb3Iod2hpdGUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPGxhcHRvcFwiKSB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogNHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKHdoaXRlKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGVZKDRweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlWSgtNHB4KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb290ZXJfX25hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICAgIGZsZXgtYmFzaXM6IDE1MHB4O1xuICAgICAgICBvcmRlcjogMjtcbiAgICB9XG59XG5cbi5sZWdhbF9fbmF2IHtcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgLy8gZmxleDogMCAxIDYwJTtcbiAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgZmxleC1iYXNpczogNjAlO1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgLm1lbnUtaXRlbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcblxuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6IGdldC1jb2xvcihsaWdodC1ncmF5KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGdldC1jb2xvcih3aGl0ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29weXJpZ2h0IHtcbiAgICBtYXJnaW46IDUwcHggMCAwO1xuICAgIGNvbG9yOiBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIC8vIGZsZXg6IDAgMSAzNSU7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICAgIGZsZXgtYmFzaXM6IDM1JTtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgfVxufVxuIiwiLmFyY2hpdmUge1xuICAgICZfX2xheW91dCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQoJGd1dHRlcjogMjBweCwgJGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4pO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZCgkZ3V0dGVyOiA2MHB4LCAkZmxleC1kaXJlY3Rpb246IHJvdywgJGZsZXgtd3JhcDogbm93cmFwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpc3Qge1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPGxhcHRvcFwiKSB7XG4gICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woJGNvbDogOSwgJGdyaWQtY29sdW1uczogMTIsICRndXR0ZXI6IDYwcHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYXNpZGUge1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPGxhcHRvcFwiKSB7XG4gICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woJGNvbDogMywgJGdyaWQtY29sdW1uczogMTIsICRndXR0ZXI6IDYwcHgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnNpbmdsZSB7XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogNjIwcHg7XG5cbiAgICAgICAgJi0tcHVsbCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0xMTBweCA2MHB4IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5hcnRpY2xlcyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICAgICAgICAuc2luZ2xlX19maWd1cmUtLWZlYXR1cmVkIHtcbiAgICAgICAgICAgIG1hcmdpbjogMzBweCBhdXRvIDMwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtLWZ1bGwge1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA4NSU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2VfX2hlYWRlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJl9fZmlndXJlIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IGF1dG8gMzBweDtcblxuICAgICAgICAmLS1mZWF0dXJlZCB7XG4gICAgICAgICAgbWFyZ2luOiAwIC0zMHB4IDMwcHg7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49cGhhYmxldFwiKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgLTYwcHggNjBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLy8gQGluY2x1ZGUgbWVkaWEoXCI+PTg1MHB4XCIpIHtcbiAgICAgICAgICAvLyAgIG1hcmdpbjogMCAtMTEwcHggNjBweDtcbiAgICAgICAgICAvLyB9XG5cbiAgICAgICAgICBmaWdjYXB0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAzMHB4IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIDYwcHggMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIEBpbmNsdWRlIG1lZGlhKFwiPj04NTBweFwiKSB7XG4gICAgICAgICAgICAvLyAgIG1hcmdpbjogMCAxMTBweCAwO1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxOSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgIH1cbn1cbiIsIi5tYWdhemluZS1zaW5nbGUge1xuICAvLyBQb3J0cmFpdCBsYXlvdXRcbiAgJi0tcG9ydHJhaXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waGFibGV0XCIpIHtcbiAgICAgIHBhZGRpbmc6IDAgNjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLm1hZ2F6aW5lLXNpbmdsZV9fZmVhdHVyZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA3MzNweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAgICYuc2Nyb2xsIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIGJvdHRvbTogLTIwMHB4OyAvLyBkb3duIG92ZXIgZm9vdGVyIGFkdiBhbmQgaXRzIG1hcmdpbiB0b3BcbiAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1hZ2F6aW5lLXNpbmdsZV9fY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW46IDAgMCAwIDQwJTtcbiAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0xNzMwcHhcIikge1xuICAgICAgICBtYXJnaW46IDAgMCAwIDg1MHB4O1xuICAgICAgICB3aWR0aDogNzUwcHg7XG4gICAgICB9XG5cbiAgICAgICAgLy8gV2hlbiBubyBoZWFkZXIgYWR2IGlzIHRoZXJlLCBwdXNoIGNvbnRlbnQgZG93blxuICAgICAgICAuc2luZ2xlX19jb250ZW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5oZWFkZXJfX2FkdiArIC5zaW5nbGVfX2NvbnRlbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnNpbmdsZV9fZmlndXJlLS1mZWF0dXJlZCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIExheW91dFxuICAmLS1sYW5kc2NhcGUge1xuICAgIHBhZGRpbmc6IDAgMzBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1waGFibGV0XCIpIHtcbiAgICAgIHBhZGRpbmc6IDAgNjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLm1hZ2F6aW5lLXNpbmdsZV9fZmVhdHVyZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA2NTBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAgICZbZGF0YS10aGVtZT1cImRhcmtcIl17XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGZyb20ocmdiYSgyNiwyNiwyNiwwKSksdG8ocmdiYSgyNiwyNiwyNiwxKSkpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNiwyNiwyNiwwKSAwJSxyZ2JhKDI2LDI2LDI2LDEpIDEwMCUpO1xuICAgICAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDFhMWExYScsIGVuZENvbG9yc3RyPScjMWExYTFhJyxHcmFkaWVudFR5cGU9MCApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC50b3BpYyBhLFxuICAgICAgICAgIC50aXRsZS0tc2luZ2xlLFxuICAgICAgICAgIC5tZXRhLFxuICAgICAgICAgIC5tZXRhIGEge1xuICAgICAgICAgICAgY29sb3I6IGdldC1jb2xvcih3aGl0ZSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC50b3BpYyBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHVuZGVybGluZSgkYmdjb2xvcjogZ2V0LWNvbG9yKGdyYXkpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnBhZ2VfX2hlYWRlcjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBnZXQtY29sb3Iod2hpdGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZbZGF0YS10aGVtZT1cImxpZ2h0XCJde1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKHJnYmEoMjQwLDI0NSwyNDcsMCkpLHRvKHJnYmEoMjQwLDI0NSwyNDcsMSkpKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjQwLDI0NSwyNDcsMCkgMCUscmdiYSgyNDAsMjQ1LDI0NywxKSAxMDAlKTtcbiAgICAgICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDAxYTFhMWEnLCBlbmRDb2xvcnN0cj0nIzFhMWExYScsR3JhZGllbnRUeXBlPTAgKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubWV0YSxcbiAgICAgICAgICAubWV0YSBhIHtcbiAgICAgICAgICAgIGNvbG9yOiBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZbZGF0YS1zdHlsZT1cIm5vLWdyYWRpZW50XCJdIHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucGFnZV9faGVhZGVyIHtcbiAgICAgICAgICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXIoKTtcbiAgICAgICAgICB3aWR0aDogODUwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5tYWdhemluZS1zaW5nbGVfX2NvbnRlbnQge1xuICAgICAgICAvLyBXaGVuIG5vIGhlYWRlciBhZHYgaXMgdGhlcmUsIHB1c2ggY29udGVudCBkb3duXG4gICAgICAgIC5zaW5nbGVfX2NvbnRlbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmhlYWRlcl9fYWR2ICsgLnNpbmdsZV9fY29udGVudCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNpbmdsZV9fZmlndXJlLS1mZWF0dXJlZCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2VfX2hlYWRlci5oaWRlIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4udmlldy0tbW9iaWxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMHB4O1xuICAgIHdpZHRoOiAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4vLyBPbiBzaW5nbGUgVmVydGljYWwgcGFnZSwgSlMgYWRkcyBjbGFzcyAucG9zLXIgdG8gbW92ZSBmb290ZXIgYWQgc3BhY2Vcbi5mb290ZXJfX2Fkdi5wb3MtciB7XG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICBtYXJnaW4tbGVmdDogNDAlO1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKFwiPj0xNzMwcHhcIikge1xuICAgIG1hcmdpbi1sZWZ0OiA4NTBweDtcbiAgICB3aWR0aDogNzUwcHg7XG4gIH1cbn1cbiIsIi53YXRjaGxpc3Qge1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgQGluY2x1ZGUgZ3JpZCgkZ3V0dGVyOiAyMHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgJl9faXRlbSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiA2LCAkZ3JpZC1jb2x1bW5zOiAxMiwgJGNvbmRlbnNlZDogdHJ1ZSk7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG5cbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGd1dHRlci1ib3JkZXIoKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgPiAucmF0aW8tZ3JpZF9faXRlbS1jb250ZW50OmFmdGVyIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZ3V0dGVyLWdhcCgpO1xuICAgICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuICAgIC8vIEhpZGUgY29tcGFueSBpbmZvIG9uIG1vYmlsZVxuICAgICZfX2NvbXBhbnkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTk5OTllbTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cblxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgIC8vIFJlbW92ZSByYXRpby1ncmlkIHN0eWxpbmdcbiAgICAucmF0aW8tZ3JpZF9faXRlbTphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAucmF0aW8tZ3JpZF9faXRlbS1jb250ZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICAud2F0Y2hsaXN0X19pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHRlci1ncmF5KTtcbiAgICB9XG5cbiAgICAud2F0Y2hsaXN0X19jb21wYW55IHtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTgwcHgpO1xuICAgIH1cblxuICAgIC53YXRjaGxpc3RfX2xvZ28ge1xuICAgICAgd2lkdGg6IDE4MHB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgfVxuICB9XG59XG5cbi53YXRjaGxpc3QtbG9nbyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICA+IGltZyB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIi50b3AtY29tcGFuaWVzIHtcblxuICAmX19sb2dvIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG5cblxuICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgIEBpbmNsdWRlIGdyaWQoJGd1dHRlcjogMjBweCk7XG5cbiAgICAmX19pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDYsICRncmlkLWNvbHVtbnM6IDEyLCAkY29uZGVuc2VkOiB0cnVlLCAkZ3V0dGVyOiAyMHB4KTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHRlci1ncmF5KTtcblxuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZ3V0dGVyLWJvcmRlcigpO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IC5yYXRpby1ncmlkX19pdGVtLWNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBndXR0ZXItZ2FwKCk7XG4gICAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgQGluY2x1ZGUgZ3JpZCgkZ3V0dGVyOiAyMHB4KTtcblxuICAgICZfX2l0ZW0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woJGNvbDogNCwgJGdyaWQtY29sdW1uczogMTIsICRjb25kZW5zZWQ6IHRydWUsICRndXR0ZXI6IDIwcHgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICB3aWR0aDogY2FsYygzMy4zMyUgLSAxMHB4KTtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDIxNXB4O1xuICAgICAgICByaWdodDogLTEwcHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDEwcHgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2xvZ28ge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzLFxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBib3JkZXItY29sb3I6IGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQGluY2x1ZGUgbWVkaWEoXCI+PTg1MHB4XCIpIHtcbiAgLy8gICAmX19pdGVtIHtcbiAgLy8gICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgLy8gICAgICAgdG9wOiAyOTBweDtcbiAgLy8gICAgIH1cbiAgLy8gICB9XG4gIC8vIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgJl9faXRlbSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiAzLCAkZ3JpZC1jb2x1bW5zOiAxMiwgJGNvbmRlbnNlZDogdHJ1ZSwgJGd1dHRlcjogMjBweCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IGNhbGMoMjUlIC0gNXB4KTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMTVweCk7XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxNXB4KTtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDIxNXB4O1xuICAgICAgICByaWdodDogY2FsYygyNSUgLSA1cHgpO1xuICAgICAgICB3aWR0aDogY2FsYygyNSUgLSAxNXB4KTtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDIxNXB4O1xuICAgICAgICByaWdodDogLTEwcHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDE1cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udG9wMjBfX3N1bW1hcnksXG4ud2F0Y2hsaXN0X19zdW1tYXJ5IHtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgZm9udC1zaXplOiByZW0oMTYpO1xufVxuXG4udG9wMjAtbG9nbyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICA+IGltZyB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDY2LjY2JTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgLy8gRGVmYXVsdHMgdG8gU3F1YXJlIDE6MVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDonJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgICB9XG5cbiAgICA+IGltZyB7XG4gICAgICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXIoKTtcbiAgICAgIG1heC1oZWlnaHQ6IDYwJTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi50b3AtY29tcGFuaWVzLWN0YSB7XG4gID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIG1hcmdpbjogMCAyMHB4IDAgMDtcbiAgICB9XG4gIH1cbn1cblxuLy9TaW5nbGUgVG9wIENvbXBhbmllc1xuLnNpbmdsZS10b3BfY29tcGFuaWVzIHtcbiAgLmNvbHVtbl9fZmxvYXQge1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICBwYWRkaW5nOiAwIDAgMCA4MHB4O1xuICB9XG5cbiAgICAmLS1wcmltYXJ5IHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMjhweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hZGR0aGlzX3NoYXJlIHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDcwcHgpIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03MTBweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vQXJjaGl2ZSBUb3AgQ29tcGFuaWVzXG4ucG9zdC10eXBlLWFyY2hpdmUtdG9wX2NvbXBhbmllcyB7XG4gIC5jb2x1bW5fX2Zsb2F0LS1wcmltYXJ5IHtcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgIG1hcmdpbjogNjBweCAzMHB4IDA7XG4gICAgfVxuICB9XG59IiwiLmNzIHtcbiAgbWFyZ2luLXRvcDogMTAwcHg7IC8vIG5vIGFkLCBzbyBwdXNoIGRvd25cbn1cbi5zdXBwbGllci1leHRlcm5hbCB7XG4gIGJvcmRlcjogMDtcbiAgbWluLWhlaWdodDogODAwcHg7XG59XG5cbi5zdXBwbGllci1jdXN0b20tcGFnZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgQGluY2x1ZGUgZ3JpZCgkZ3V0dGVyOiA2MHB4LCAkZmxleC1kaXJlY3Rpb246IHJvdywgJGZsZXgtd3JhcDogbm93cmFwKTtcbiAgfVxuXG4gIC5zdXBwbGllcl9fbWFpbiB7XG5cbiAgICAmOm9ubHktY2hpbGQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiA5LCAkZ3JpZC1jb2x1bW5zOiAxMiwgJGd1dHRlcjogNjBweCk7XG4gICAgfVxuICB9XG5cbiAgLnN1cHBsaWVyX19zaWRlYmFyIHtcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDMsICRncmlkLWNvbHVtbnM6IDEyLCAkZ3V0dGVyOiA2MHB4KTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW5kaXZpZHVhbCBTZWN0aW9uc1xuLnN1cHBsaWVyX19zZWN0aW9uIHtcbiAgY2xlYXI6IGJvdGg7XG5cbiAgLnN1cHBsaWVyX19oZWFkaW5nIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgZm9udC1zaXplOiByZW0oMjgpO1xuICB9XG59XG4iLCIuY29sdW1uX19sYXlvdXQge1xuICAgIEBpbmNsdWRlIGdyaWQoJGd1dHRlcjogMjBweCwgJGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4pO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQoJGd1dHRlcjogNjBweCwgJGZsZXgtZGlyZWN0aW9uOiByb3csICRmbGV4LXdyYXA6IG5vd3JhcCk7XG4gICAgfVxuXG4gICAgJi0tbWFpbiB7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bGFwdG9wXCIpIHtcbiAgICAgICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDM7XG4gICAgICAgICAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiA5LCAkZ3JpZC1jb2x1bW5zOiAxMiwgJGd1dHRlcjogNjBweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1hc2lkZSB7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bGFwdG9wXCIpIHtcbiAgICAgICAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDI7XG4gICAgICAgICAgICAgICAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiAzLCAkZ3JpZC1jb2x1bW5zOiAxMiwgJGd1dHRlcjogNjBweCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb2x1bW5fX2Zsb2F0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcblxuICAgICAgICBtYXJnaW46IDAgLTMwcHg7XG5cbiAgICAgICAgJi0tcHJpbWFyeSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyggMjUlIC0gNjBweCk7XG4gICAgICAgICAgICBtYXJnaW46IDAgMzBweCAwO1xuICAgICAgICB9XG4gICAgICAgICYtLXNlY29uZGFyeSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCA3NSUgLSA2MHB4KTtcbiAgICAgICAgICAgIG1hcmdpbjogMCAzMHB4IDYwcHg7XG5cbiAgICAgICAgfVxuICAgICAgICAmLS10ZXJ0aWFyeSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBjbGVhcjogcmlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyggMjUlIC0gNjBweCk7XG4gICAgICAgICAgICBtYXJnaW46IDAgMzBweCA2MHB4O1xuXG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLm1lbnUtdG9nZ2xlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBib3R0b206IDVweDtcbiAgICAgICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgZ2V0LWNvbG9yKGRhcmstZ3JheSk7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgZ2V0LWNvbG9yKGRhcmstZ3JheSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMjVkZWcpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlLCBtYXJnaW4gLjNzIGVhc2U7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250YWluZXIge1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIC5tZW51LXRvZ2dsZSB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0MDVkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgXHQmOmJlZm9yZSxcbiAgICBcdCY6YWZ0ZXIge1xuICAgIFx0XHRjb250ZW50OiBub25lIWltcG9ydGFudDtcbiAgICBcdH1cbiAgICB9XG4gICAgXG4gICAgLnN1Yi1tZW51IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgLm1lbnUtaXRlbSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIiVidG4ge1xuICBAaW5jbHVkZSBidXR0b24oKTtcbn1cblxuJWJ0bi1pbnZlcnRlZCB7XG4gIEBpbmNsdWRlIGJ1dHRvbihcbiAgICAkYnRuLWJnLWNvbG9yOiBnZXQtY29sb3Iod2hpdGUpLFxuICAgICRidG4tYmctY29sb3ItaG92ZXI6IHJnYmEoZ2V0LWNvbG9yKHdoaXRlKSwgLjgpLFxuICAgICRidG4tdGV4dC1jb2xvcjogZ2V0LWNvbG9yKGJsYWNrKSxcbiAgICAkYnRuLXRleHQtY29sb3ItaG92ZXI6IHJnYmEoZ2V0LWNvbG9yKGJsYWNrKSwgLjgpLFxuICAgICRidG4tYm9yZGVyOiAxcHggc29saWQsXG4gICAgJGJ0bi1ib3JkZXItY29sb3I6IGdldC1jb2xvcihibGFjayksXG4gICAgJGJ0bi1ib3JkZXItY29sb3ItaG92ZXI6IHJnYmEoZ2V0LWNvbG9yKGJsYWNrKSwgLjgpLFxuICAgICRidG4tYm94LXNoYWRvdy1ob3ZlcjogcmdiYShnZXQtY29sb3IoYmxhY2spLCAuMjUpXG4gICk7XG59XG5cbiVidG4tZ2hvc3Qge1xuICBAaW5jbHVkZSBidXR0b24oXG4gICAgJGJ0bi1iZy1jb2xvcjogdHJhbnNwYXJlbnQsXG4gICAgJGJ0bi1iZy1jb2xvci1ob3ZlcjogdHJhbnNwYXJlbnQsXG4gICAgJGJ0bi10ZXh0LWNvbG9yOiBnZXQtY29sb3IoYmxhY2spLFxuICAgICRidG4tdGV4dC1jb2xvci1ob3ZlcjogcmdiYShnZXQtY29sb3IoYmxhY2spLCAuOCksXG4gICAgJGJ0bi1ib3JkZXI6IDFweCBzb2xpZCxcbiAgICAkYnRuLWJvcmRlci1jb2xvcjogZ2V0LWNvbG9yKGJsYWNrKSxcbiAgICAkYnRuLWJvcmRlci1jb2xvci1ob3ZlcjogcmdiYShnZXQtY29sb3IoYmxhY2spLCAuOCksXG4gICAgJGJ0bi1ib3gtc2hhZG93LWhvdmVyOiByZ2JhKGdldC1jb2xvcihibGFjayksIC4yNSlcbiAgKTtcbn1cblxuJWJ0bi1naG9zdC1pbnZlcnRlZCB7XG4gIEBpbmNsdWRlIGJ1dHRvbihcbiAgICAkYnRuLWJnLWNvbG9yOiB0cmFuc3BhcmVudCxcbiAgICAkYnRuLWJnLWNvbG9yLWhvdmVyOiB0cmFuc3BhcmVudCxcbiAgICAkYnRuLXRleHQtY29sb3I6IGdldC1jb2xvcih3aGl0ZSksXG4gICAgJGJ0bi10ZXh0LWNvbG9yLWhvdmVyOiByZ2JhKGdldC1jb2xvcih3aGl0ZSksIC44KSxcbiAgICAkYnRuLWJvcmRlcjogMXB4IHNvbGlkLFxuICAgICRidG4tYm9yZGVyLWNvbG9yOiBnZXQtY29sb3Iod2hpdGUpLFxuICAgICRidG4tYm9yZGVyLWNvbG9yLWhvdmVyOiByZ2JhKGdldC1jb2xvcih3aGl0ZSksIC44KSxcbiAgICAkYnRuLWJveC1zaGFkb3ctaG92ZXI6IHJnYmEoZ2V0LWNvbG9yKHdoaXRlKSwgLjI1KVxuICApO1xufVxuXG5cbi5idXR0b24sXG5idXR0b24sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgQGV4dGVuZCAlYnRuO1xufVxuXG4uYnV0dG9uLS1pbnZlcnRlZCB7XG4gIEBleHRlbmQgJWJ0bi1pbnZlcnRlZDtcbn1cblxuLmJ1dHRvbi0tZ2hvc3Qge1xuICBAZXh0ZW5kICVidG4tZ2hvc3Q7XG5cbiAgJi1pbnZlcnRlZCB7XG4gICAgQGV4dGVuZCAlYnRuLWdob3N0LWludmVydGVkO1xuICB9XG59XG5cbi5ibG9ja2VkLS1tb2JpbGUge1xuICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5idXR0b24tLXNtYWxsIHtcbiAgZm9udC1zaXplOiByZW0oMTIpO1xuICBwYWRkaW5nOiAxMnB4IDIwcHg7XG59XG5cbi5zZWNvbmRhcnktbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBAaW5jbHVkZSB1bmRlcmxpbmUoJGJnY29sb3I6IGdldC1jb2xvcihsaWdodC1ncmF5KSk7XG4gIGZvbnQtc2l6ZTogcmVtKDE0KTtcbn1cbiIsIi5pY29uLFxuLmljb246YmVmb3JlLFxuLmljb246YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG59XG5cbi5pLWNhcmV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxM3B4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDEzcHg7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgfVxufVxuXG4uaS1tZW51IHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC03cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgfVxufVxuXG4uaS1jbG9zZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG59XG5cbi5pLWFycm93LXJpZ2h0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAycHg7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogMjZweDtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAxOHB4O1xuICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAycHggY3VycmVudENvbG9yO1xuICAgICAgICBib3JkZXItcmlnaHQ6IHNvbGlkIDJweCBjdXJyZW50Q29sb3I7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCByaWdodDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIH1cbn1cblxuLmktYXJyb3ctbGVmdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAycHg7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogMjZweDtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogOHB4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDJweCBjdXJyZW50Q29sb3I7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCByaWdodDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIH1cbn1cblxuIiwiLnJhdGlvLWdyaWQge1xuXG4gICZfX2l0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDonJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgICB9XG5cbiAgICAmLWNvbnRlbnQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxuXG59XG5cblxuLy8gRmlsbHMgY29udGFpbmVyIHRvIHByb3ZpZGUgYSBzcXVhcmUgcmF0aW9cbi8vIFdpZHRoIG11c3QgYmUgcGxhY2VkIG9uIGNvbnRhaW5lclxuLnJhdGlvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gRGVmYXVsdHMgdG8gU3F1YXJlIDE6MVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OicnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiAxMDAlO1xuICB9XG4gIC8vIDE2OjkgV2lkZXNjcmVlbiBSYXRpb1xuICAmLS13aWRlIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG4gICAgfVxuICB9XG4gIC8vIDQ6MyBUcmFkaXRpb25hbCBSYXRpb1xuICAmLS10cmFkaXRpb25hbCB7XG4gICAgJjphZnRlciB7XG4gICAgICBwYWRkaW5nLXRvcDogNzUlO1xuICAgIH1cbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG4iLCIvLyBNYWluIE1lbnUgTGF5b3V0c1xuLnBhbmVsX19tZW51IHtcblxuICAgICYtd3JhcHBlciB7XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIsIFwiPGxhcHRvcFwiKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkKCk7XG4gICAgICAgICAgICBwYWRkaW5nOiA2MHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDkwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkKCRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcik7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDYwcHg7XG4gICAgICAgIH1cblxuICAgICAgICA+ICoge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiLCBcIjxsYXB0b3BcIikge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDYsICRncmlkLWNvbHVtbnM6IDEyLCAkZ3V0dGVyOiAyMHB4ICk7XG5cbiAgICAgICAgICAgICAgICAmLm5hdl9fZ3JvdXAge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkKCk7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiA2LCAkZ3JpZC1jb2x1bW5zOiAxMiwgJGd1dHRlcjogMjBweCApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiAyLCAkZ3JpZC1jb2x1bW5zOiAxMCwgJGd1dHRlcjogMjBweCApO1xuXG4gICAgICAgICAgICAgICAgJi5uYXZfX2dyb3VwIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZCgkZmxleC1kaXJlY3Rpb246IGNvbHVtbik7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5hdiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGdldC1jb2xvcihsaWdodC1ncmF5KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIH1cblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6IGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlLCBtYXJnaW4gLjNzIGVhc2U7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMzBweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG5cbiAgICAgICAgICAgID4gbGkge1xuXG4gICAgICAgICAgICAgICAgJi5ib2xkIHtcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3dyYXAge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7XG5cbiAgICAgICAgICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NlY3Rpb24tLXRvcGljcyB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIEBlYWNoICR0b3BpYywgJGJnY29sb3IgaW4gJHRvcGljcyB7XG4gICAgICAgICAgICAgICAgJi50b3BpYy0tI3skdG9waWN9IGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRiZ2NvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJnY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLm5hdl9fZHJvcGRvd25zIHtcblx0ZGlzcGxheTogbm9uZTtcblxuXHRAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdGZsZXgtd3JhcDogbm93cmFwO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0YWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG9yZGVyOiA0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2U7XG5cbiAgICAgICAgJi5oaWRlIHtcbiAgICAgICAgXHRvcGFjaXR5OiAwO1xuICAgICAgICBcdHdpZHRoOiAwO1xuICAgICAgICBcdG1hcmdpbjogMDtcbiAgICAgICAgXHRvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cdH1cblxufVxuXG4uZHJvcGRvd24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbjogMCAwIDAgNDBweDtcblxuXHQmX190aXRsZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHBhZGRpbmc6IDAgMjBweCAwIDA7XG5cblx0XHQmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgZ2V0LWNvbG9yKGNoYXJjb2FsKTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZSwgbWFyZ2luIC4zcyBlYXNlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICAgICAgfVxuXHR9XG5cblx0Jl9fbGlzdCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMTAwJTtcblx0XHRsZWZ0OiAwO1xuXHRcdGhlaWdodDogMDtcblx0XHR3aWR0aDogMjYwcHg7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRiYWNrZ3JvdW5kOiBnZXQtY29sb3Iod2hpdGUpO1xuXHRcdHotaW5kZXg6IDE1MDtcblxuXHRcdGxpIHtcblx0XHRcdHBhZGRpbmc6IDVweCAwO1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTQpO1xuXG5cdFx0XHRhIHtcblx0XHRcdFx0Jjpob3Zlcixcblx0XHRcdFx0JjphY3RpdmUsXG5cdFx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jjpob3ZlciB7XG4gICAgICAgIC5kcm9wZG93bl9fbGlzdCB7XG4gICAgICAgIFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0cGFkZGluZzogMTBweDtcblx0XHRcdGJvcmRlcjogMnB4IHNvbGlkIGdldC1jb2xvcihsaWdodC1ncmF5KTtcblx0XHRcdGJvcmRlci10b3AtY29sb3I6IGdldC1jb2xvcih3aGl0ZSk7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLndpZGdldCB7XG4gICZfX2Jsb2NrIHtcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKG9mZi13aGl0ZSk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIG1hcmdpbjogMCAwIDYwcHg7XG4gICAgfVxuXG4gICAgJi0tZmlsdGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHRhYmxldFwiKSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cbiAgICAgIC53aWRnZXRfX3RpdGxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgIG1hcmdpbjogMCAwIDMwcHg7XG4gICAgZm9udC1zaXplOiByZW0oMjEpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICBiYWNrZ3JvdW5kOiBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBTd2lwZXIgMy40LjJcbiAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gKiBcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvc3dpcGVyL1xuICogXG4gKiBDb3B5cmlnaHQgMjAxNywgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqIFRoZSBpRGFuZ2Vyby51c1xuICogaHR0cDovL3d3dy5pZGFuZ2Vyby51cy9cbiAqIFxuICogTGljZW5zZWQgdW5kZXIgTUlUXG4gKiBcbiAqIFJlbGVhc2VkIG9uOiBNYXJjaCAxMCwgMjAxN1xuICovXG4uc3dpcGVyLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogRml4IG9mIFdlYmtpdCBmbGlja2VyaW5nICovXG4gIHotaW5kZXg6IDE7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1uby1mbGV4Ym94IC5zd2lwZXItc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLW1vei1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IC1tb3otdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiAtby10cmFuc2Zvcm07XG4gIC1tcy10cmFuc2l0aW9uLXByb3BlcnR5OiAtbXMtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuLnN3aXBlci1jb250YWluZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLW11bHRpcm93ID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtbGluZXM6IG11bHRpcGxlO1xuICAtbW96LWJveC1saW5lczogbXVsdGlwbGU7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAtbXMtZmxleDogMCAwIGF1dG87XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4vKiBBdXRvIEhlaWdodCAqL1xuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0O1xuICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtLCBoZWlnaHQ7XG4gIC1tb3otdHJhbnNpdGlvbi1wcm9wZXJ0eTogLW1vei10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IC1vLXRyYW5zZm9ybTtcbiAgLW1zLXRyYW5zaXRpb24tcHJvcGVydHk6IC1tcy10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0O1xufVxuLyogYTExeSAqL1xuLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1ub3RpZmljYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xMDAwO1xufVxuLyogSUUxMCBXaW5kb3dzIFBob25lIDggRml4ZXMgKi9cbi5zd2lwZXItd3A4LWhvcml6b250YWwge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cbi5zd2lwZXItd3A4LXZlcnRpY2FsIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXg7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG4vKiBBcnJvd3MgKi9cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDI3cHg7XG4gIGhlaWdodDogNDRweDtcbiAgbWFyZ2luLXRvcDogLTIycHg7XG4gIHotaW5kZXg6IDEwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC1tb3otYmFja2dyb3VuZC1zaXplOiAyN3B4IDQ0cHg7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiAyN3B4IDQ0cHg7XG4gIGJhY2tncm91bmQtc2l6ZTogMjdweCA0NHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWQsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM1O1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00wJTJDMjJMMjIlMkMwbDIuMSUyQzIuMUw0LjIlMkMyMmwxOS45JTJDMTkuOUwyMiUyQzQ0TDAlMkMyMkwwJTJDMjJMMCUyQzIyeiclMjBmaWxsJTNEJyUyMzAwN2FmZiclMkYlM0UlM0MlMkZzdmclM0VcIik7XG4gIGxlZnQ6IDEwcHg7XG4gIHJpZ2h0OiBhdXRvO1xufVxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWJsYWNrLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjMwMDAwMDAnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xufVxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLXdoaXRlLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xufVxuLnN3aXBlci1idXR0b24tbmV4dCxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00yNyUyQzIyTDI3JTJDMjJMNSUyQzQ0bC0yLjEtMi4xTDIyLjglMkMyMkwyLjklMkMyLjFMNSUyQzBMMjclMkMyMkwyNyUyQzIyeiclMjBmaWxsJTNEJyUyMzAwN2FmZiclMkYlM0UlM0MlMkZzdmclM0VcIik7XG4gIHJpZ2h0OiAxMHB4O1xuICBsZWZ0OiBhdXRvO1xufVxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWJsYWNrLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDAwMDAnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xufVxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLXdoaXRlLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xufVxuLyogUGFnaW5hdGlvbiBTdHlsZXMgKi9cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDMwMG1zO1xuICAtbW96LXRyYW5zaXRpb246IDMwMG1zO1xuICAtby10cmFuc2l0aW9uOiAzMDBtcztcbiAgdHJhbnNpdGlvbjogMzAwbXM7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHotaW5kZXg6IDEwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLnN3aXBlci1wYWdpbmF0aW9uLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDA7XG59XG4vKiBDb21tb24gU3R5bGVzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24sXG4uc3dpcGVyLXBhZ2luYXRpb24tY3VzdG9tLFxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi8qIEJ1bGxldHMgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvcGFjaXR5OiAwLjI7XG59XG5idXR0b24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1zLWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZDogIzAwN2FmZjtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MCUsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IDVweCAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiAwIDVweDtcbn1cbi8qIFByb2dyZXNzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3Mge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3MgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgYmFja2dyb3VuZDogIzAwN2FmZjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIC1vLXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLW8tdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xufVxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzcyAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIC1vLXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzcyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3Mge1xuICB3aWR0aDogNHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzcy5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzcy5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG59XG4vKiAzRCBDb250YWluZXIgKi9cbi5zd2lwZXItY29udGFpbmVyLTNkIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTIwMHB4O1xuICAtbW96LXBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIC1vLXBlcnNwZWN0aXZlOiAxMjAwcHg7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXdyYXBwZXIsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgLW1vei10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAtbXMtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICAvKiBTYWZhcmkgNCssIENocm9tZSAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgLyogQ2hyb21lIDEwKywgU2FmYXJpIDUuMSssIGlPUyA1KyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgLyogRmlyZWZveCAzLjYtMTUgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICAvKiBPcGVyYSAxMS4xMC0xMi4wMCAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgLyogRmlyZWZveCAxNissIElFMTAsIE9wZXJhIDEyLjUwKyAqL1xufVxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgcmlnaHQgdG9wLCBsZWZ0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XG4gIC8qIFNhZmFyaSA0KywgQ2hyb21lICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIC8qIENocm9tZSAxMCssIFNhZmFyaSA1LjErLCBpT1MgNSsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgLyogRmlyZWZveCAzLjYtMTUgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIC8qIE9wZXJhIDExLjEwLTEyLjAwICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgLyogRmlyZWZveCAxNissIElFMTAsIE9wZXJhIDEyLjUwKyAqL1xufVxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XG4gIC8qIFNhZmFyaSA0KywgQ2hyb21lICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgLyogQ2hyb21lIDEwKywgU2FmYXJpIDUuMSssIGlPUyA1KyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIC8qIEZpcmVmb3ggMy42LTE1ICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIC8qIE9wZXJhIDExLjEwLTEyLjAwICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIC8qIEZpcmVmb3ggMTYrLCBJRTEwLCBPcGVyYSAxMi41MCsgKi9cbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IGJvdHRvbSwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICAvKiBTYWZhcmkgNCssIENocm9tZSAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIC8qIENocm9tZSAxMCssIFNhZmFyaSA1LjErLCBpT1MgNSsgKi9cbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICAvKiBGaXJlZm94IDMuNi0xNSAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICAvKiBPcGVyYSAxMS4xMC0xMi4wMCAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICAvKiBGaXJlZm94IDE2KywgSUUxMCwgT3BlcmEgMTIuNTArICovXG59XG4vKiBDb3ZlcmZsb3cgKi9cbi5zd2lwZXItY29udGFpbmVyLWNvdmVyZmxvdyAuc3dpcGVyLXdyYXBwZXIsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItd3JhcHBlciB7XG4gIC8qIFdpbmRvd3MgOCBJRSAxMCBmaXggKi9cbiAgLW1zLXBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4vKiBDdWJlICsgRmxpcCAqL1xuLnN3aXBlci1jb250YWluZXItY3ViZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi8qIEN1YmUgKi9cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbiAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1wcmV2LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQgKyAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvcGFjaXR5OiAwLjY7XG4gIC13ZWJraXQtZmlsdGVyOiBibHVyKDUwcHgpO1xuICBmaWx0ZXI6IGJsdXIoNTBweCk7XG4gIHotaW5kZXg6IDA7XG59XG4vKiBGYWRlICovXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xufVxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xufVxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG4uc3dpcGVyLXpvb20tY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gIC1tb3otYm94LXBhY2s6IGNlbnRlcjtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1vei1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gaW1nLFxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IHN2Zyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBjYW52YXMge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG4vKiBTY3JvbGxiYXIgKi9cbi5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDElO1xuICBib3R0b206IDNweDtcbiAgei1pbmRleDogNTA7XG4gIGhlaWdodDogNXB4O1xuICB3aWR0aDogOTglO1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXNjcm9sbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDNweDtcbiAgdG9wOiAxJTtcbiAgei1pbmRleDogNTA7XG4gIHdpZHRoOiA1cHg7XG4gIGhlaWdodDogOTglO1xufVxuLnN3aXBlci1zY3JvbGxiYXItZHJhZyB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4uc3dpcGVyLXNjcm9sbGJhci1jdXJzb3ItZHJhZyB7XG4gIGN1cnNvcjogbW92ZTtcbn1cbi8qIFByZWxvYWRlciAqL1xuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgei1pbmRleDogMTA7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIHN0ZXBzKDEyLCBlbmQpIGluZmluaXRlO1xuICAtbW96LWFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIHN0ZXBzKDEyLCBlbmQpIGluZmluaXRlO1xuICBhbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbn1cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIwdmlld0JveCUzRCcwJTIwMCUyMDEyMCUyMDEyMCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIweG1sbnMlM0F4bGluayUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4bGluayclM0UlM0NkZWZzJTNFJTNDbGluZSUyMGlkJTNEJ2wnJTIweDElM0QnNjAnJTIweDIlM0QnNjAnJTIweTElM0QnNyclMjB5MiUzRCcyNyclMjBzdHJva2UlM0QnJTIzNmM2YzZjJyUyMHN0cm9rZS13aWR0aCUzRCcxMSclMjBzdHJva2UtbGluZWNhcCUzRCdyb3VuZCclMkYlM0UlM0MlMkZkZWZzJTNFJTNDZyUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDYwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg5MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTIwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxNTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4zNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE4MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjQ2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjEwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNTYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy42NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI3MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjc1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuODUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMzAlMjA2MCUyQzYwKSclMkYlM0UlM0MlMkZnJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRlOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIwdmlld0JveCUzRCcwJTIwMCUyMDEyMCUyMDEyMCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIweG1sbnMlM0F4bGluayUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4bGluayclM0UlM0NkZWZzJTNFJTNDbGluZSUyMGlkJTNEJ2wnJTIweDElM0QnNjAnJTIweDIlM0QnNjAnJTIweTElM0QnNyclMjB5MiUzRCcyNyclMjBzdHJva2UlM0QnJTIzZmZmJyUyMHN0cm9rZS13aWR0aCUzRCcxMSclMjBzdHJva2UtbGluZWNhcCUzRCdyb3VuZCclMkYlM0UlM0MlMkZkZWZzJTNFJTNDZyUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDYwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg5MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTIwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxNTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4zNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE4MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjQ2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjEwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNTYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy42NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI3MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjc1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuODUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMzAlMjA2MCUyQzYwKSclMkYlM0UlM0MlMkZnJTNFJTNDJTJGc3ZnJTNFXCIpO1xufVxuQC13ZWJraXQta2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4iLCIuc29jaWFscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1heC13aWR0aDogMjYwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gNTBweDtcblxuICAgIC5wYW5lbF9fbWVudSAmIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZ2V0LWNvbG9yKHdoaXRlKTtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYShnZXQtY29sb3Iod2hpdGUpLCAuNCk7XG4gICAgICAgIH1cblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyKCk7XG4gICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgIGhlaWdodDogMjVweDtcblxuICAgICAgICAgICAgKiB7XG4gICAgICAgICAgICAgICAgZmlsbDogZ2V0LWNvbG9yKHdoaXRlKTtcblxuICAgICAgICAgICAgICAgIC5wYW5lbF9fbWVudSAmIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogZ2V0LWNvbG9yKGNoYXJjb2FsKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cbn1cbiIsIi5hZHZfX2Jsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICYtLWxlYWRlcmJvYXJkIHtcbiAgICAgIHdpZHRoOiAzMjBweDtcbiAgICAgIGhlaWdodDogNTBweDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBoYWJsZXRcIikge1xuICAgICAgICB3aWR0aDogNDY4cHg7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIHdpZHRoOiA3MjhweDtcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgd2lkdGg6IDk3MHB4O1xuICAgICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0taGFsZi1wYWdlIHtcblxuICAgIH1cblxuICAgICYtLXNxdWFyZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICArIC5hZHZfX2Jsb2NrLS1zcXVhcmUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50aWxlICYge1xuICAgICAgaWZyYW1lIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICAgIC5tYWdhemluZS1zaW5nbGUtLXBvcnRyYWl0ICYge1xuICAgICAgJi0tbGVhZGVyYm9hcmQge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgICB3aWR0aDogNzI4cHg7XG4gICAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxufVxuXG4uZm9vdGVyX19hZHYge1xuICAgIG1hcmdpbjogMTAwcHggYXV0byAxMHB4O1xuICAgIC5lcnJvcjQwNCAmIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4uaGVhZGVyX19hZHYge1xuICAgIG1hcmdpbjogOTBweCBhdXRvIDMwcHg7XG59XG5cbi5hc2lkZV9fYWR2IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgaWZyYW1lIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbn1cbiIsIi50aXRsZSB7XG4gICYtLXBhZ2Uge1xuICAgIGZvbnQtc2l6ZTogcmVtKDMyKTtcbiAgICBmb250LXdlaWdodDogNzAwOyAvLyBib2xkXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gICYtLWlzc3VlIHtcbiAgICBmb250LXNpemU6IHJlbSg0OCk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgLy8gbWVkaXVtXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgJi0tc2luZ2xlIHtcbiAgICBmb250LXNpemU6IHJlbSgzMik7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgLy8gbWVkaXVtXG4gICAgbGluZS1oZWlnaHQ6IDEuMTM7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gIH1cbiAgJi0tdG9waWMge1xuICAgIGZvbnQtc2l6ZTogcmVtKDMyKTtcbiAgICBmb250LXdlaWdodDogNzAwOyAvLyBib2xkXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgfVxuICAmLS1zZWN0aW9uIHtcbiAgICBmb250LXNpemU6IHJlbSgyOCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgLy8gYm9sZFxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIG1hcmdpbjogMCAwIDMwcHg7XG5cbiAgICA+c3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgfVxuICB9XG4gICYtLWFydGljbGUge1xuICAgIGZvbnQtc2l6ZTogcmVtKDIxKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIG1hcmdpbjogMzBweCAwO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgJi0tcGFnZSB7XG4gICAgICBmb250LXNpemU6IHJlbSg0MCk7XG4gICAgfVxuICAgICYtLWlzc3VlIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDgwKTtcbiAgICB9XG4gICAgJi0tc2luZ2xlIHtcbiAgICAgIC8vZm9udC1zaXplOiByZW0oNjIpO1xuICAgIH1cbiAgICAmLS10b3BpYyB7XG4gICAgICBmb250LXNpemU6IHJlbSg0NSk7XG4gICAgfVxuICAgICYtLXNlY3Rpb24ge1xuICAgICAgZm9udC1zaXplOiByZW0oMzIpO1xuICAgICAgPnNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgJi0tdG9waWMge1xuICAgICAgZm9udC1zaXplOiByZW0oNjQpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gVGlsZSBFbGVtZW50cyBTdHlsZVxuLnRpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAzMHB4IDAgMzBweDtcblxuICAgICZfX2ltZy1saW5rIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0byAzMHB4O1xuXG4gICAgICAgIC8vIENyZWF0ZSBhIHBsYWNlaG9sZGVyIGFzcGVjdCByYXRpb1xuICAgICAgICBwaWN0dXJlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDU2LjI1JTsgLyogMTY6OSBBc3BlY3QgUmF0aW8gKi9cblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1taW5pLXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3NSU7IC8qIDQ6MyBBc3BlY3QgUmF0aW8gKi9cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyKCk7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElmIG5vIHBpY3R1cmUgc3Jjc2V0LCB1c2UgZGVmYXVsdFxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2luZm8sXG4gICAgJl9fY29udGVudCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgICAgICAvLyBmb250LXNpemU6IHJlbSgyMSk7XG4gICAgICAgIC8vIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICA+IGEge1xuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdW5kZXJsaW5lKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zbmlwcGV0IHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgICB9XG59XG5cblxuLy8gU3BlY2lmaWMgU2l6ZXNcbi50aWxle1xuICAgICYtLWxhcmdlIHtcbiAgICAgICAgLnRpbGVfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDMyKTtcbiAgICAgICAgfVxuICAgICAgICAudGlsZV9fc25pcHBldCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tbWVkaXVtLXRhbGwge1xuXG4gICAgfVxuXG4gICAgJi0tbWVkaXVtLXdpZGUge1xuICAgICAgICAudGlsZV9faW5mbyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkKCk7XG4gICAgICAgIH1cbiAgICAgICAgLnRpbGVfX3NuaXBwZXQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bWluaS10YWJsZXRcIikge1xuICAgICAgICAgICAgLnRpbGVfX2ltZy1saW5rLFxuICAgICAgICAgICAgLnRpbGVfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDMsICRncmlkLWNvbHVtbnM6IDYsICRndXR0ZXI6IDIwcHgsICRjb25kZW5zZWQ6IHRydWUpO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGlsZV9fY29udGVudCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tc21hbGwge1xuICAgICAgICAudGlsZV9fY29udGVudCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIC50aWxlX19pbWctbGluayxcbiAgICAgICAgLnRpbGVfX3NuaXBwZXQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFVzZSBmb3IgYXJjaGl2ZSBsaXN0aW5nc1xuICAgICYtLWxpc3Qge1xuICAgICAgICBAaW5jbHVkZSBncmlkKCRndXR0ZXI6IDApO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG5cbiAgICAgICAgJi5zaG93VGh1bWIge1xuICAgICAgICAgIC50aWxlX19pbmZvIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1pbmktdGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDgsICRncmlkLWNvbHVtbnM6IDEyLCAkZ3V0dGVyOiAyMHB4LCAkY29uZGVuc2VkOiB0cnVlLCAkb3JkZXI6IDEpO1xuICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDIwcHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC50aWxlX19pbWctbGluayB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1taW5pLXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiA0LCAkZ3JpZC1jb2x1bW5zOiAxMiwgJGd1dHRlcjogMjBweCwgJGNvbmRlbnNlZDogdHJ1ZSwgJG9yZGVyOiAyKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGlsZV9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMzIpO1xuICAgICAgICAgICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnRpbGVfX3NuaXBwZXQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gRmVhdHVyZWQgTGlzdGluZyBUaWxlXG4vLyAoZmlyc3Qgb2YgYXJjaGl2ZXMsIGJ1dCBvbmx5IGZvciBBcnRpY2xlcyBhbmQgUmVzZWFyY2gpXG4uYXJjaGl2ZV9fbGlzdCAudGlsZS0tbGlzdC5mZWF0dXJlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXg6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1taW5pLXRhYmxldFwiKSB7XG5cbiAgICAgICAgLnRpbGVfX2ltZy1saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmbGV4OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC50aWxlX19pbmZvIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICBmbGV4OiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAzMHB4IDYwcHg7XG4gICAgICAgICAgICBjb2xvcjogZ2V0LWNvbG9yKHdoaXRlKTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aWxlX190aXRsZSBhLFxuICAgICAgICAubWV0YSxcbiAgICAgICAgLm1ldGEgYSxcbiAgICAgICAgLnRvcGljIGEge1xuICAgICAgICAgICAgY29sb3I6IGdldC1jb2xvcih3aGl0ZSk7XG4gICAgICAgIH1cbiAgICAgICAgLnRvcGljIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgdW5kZXJsaW5lKCRiZ2NvbG9yOiBnZXQtY29sb3Iod2hpdGUpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAudGlsZV9faW5mbyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgLnRpbGVfX2luZm8ge1xuICAgICAgICAgICAgcGFkZGluZzogMzBweCAzMHB4IDkwcHggNjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50aWxlX19pbWctbGluayB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICA+IGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1pbmktdGFibGV0XCIpIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI2LDI2LDI2LDApIDAlLCByZ2JhKDI2LDI2LDI2LDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNiwyNiwyNiwwKSAwJSxyZ2JhKDI2LDI2LDI2LDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjYsMjYsMjYsMCkgMCUscmdiYSgyNiwyNiwyNiwxKSAxMDAlKTtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwMWExYTFhJywgZW5kQ29sb3JzdHI9JyMxYTFhMWEnLEdyYWRpZW50VHlwZT0wICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGlsZV9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IHJlbSgzMik7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBtYXJnaW46IDE1cHggMDtcbiAgICAgICAgY29sb3I6IGdldC1jb2xvcih3aGl0ZSk7XG5cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHVuZGVybGluZSgkYmdjb2xvcjogZ2V0LWNvbG9yKHdoaXRlKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1pbmktdGFibGV0XCIpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDM0cHgpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oNDBweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGlsZV9fc25pcHBldCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4vLyBUb3BpY3MgR3JpZCBPdmVycmlkZXNcbi5ncmlkX19jb250YWluZXItLXRvcGljcyB7XG4gICAgLnRvcGljIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLnRpbGVfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgQGVhY2ggJHRvcGljLCAkYm9yZGVyQ29sb3IgaW4gJHRvcGljcyB7XG4gICAgICAgIFtkYXRhLXRvcGljPVwiI3skdG9waWN9XCJdIC50aWxlX19pbWctbGluayB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiA0cHggc29saWQgJGJvcmRlckNvbG9yO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ3JpZC0tdG9waWNzLWNvbHMge1xuICAgIC50aWxlIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGdldC1jb2xvcihsaWdodGVyLWdyYXkpO1xuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuXG4gICAgICAgICAgICAudGlsZV9fdGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDIxKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRpbGVfX2ltZy1saW5rIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAudGlsZV9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgfVxuICAgIC50aWxlX19jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG59XG5cbi8vIFRvcCAyMCBUcmFpbmluZyBDb21wYW5pZXMgVGlsZVxuLnRpbGVbZGF0YS10eXBlPVwidG9wX2NvbXBhbmllc1wiXSB7XG4gIC50aWxlX19pbWctbGluayB7XG4gICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKHdoaXRlKTtcblxuICAgIC5wbGFjZWhvbGRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAvLyBhbHdheXMgY2hhcmNvYWwgbm8gbWF0dGVyIHdoYXQgdGhlIHRvcGljXG4gICAgICA+IC5zdmcge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAqIHtcbiAgICAgICAgICBmaWxsOiBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIHBhdHRlcm4gcG9zaXRpb25lZCBpbiBjb3JuZXJcbiAgICAgIC50b3AtY29tcGFueV9fcGF0dGVybiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgIC5zdmcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgKiB7XG4gICAgICAgICAgICAgICAgZmlsbDogI2U2ZTZlNjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGlsZV9faW1nIHtcbiAgICAgIEBpbmNsdWRlIGFic29sdXRlLWNlbnRlcigpO1xuICAgICAgbWF4LWhlaWdodDogODAlO1xuICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gV2ViaW5hciBUaWxlXG4ud2ViaW5hciB7XG4gICAgJl9fdGlsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAzMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgICAgIGNvbG9yOiBnZXQtY29sb3Iod2hpdGUpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGdldC1jb2xvcih3aGl0ZSk7XG4gICAgICAgIH1cbiAgICAgICAgLndlYmluYXJfX2RhdGUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAzMHB4O1xuICAgICAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fZGF0ZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAuZGF5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oNDgpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4IDAgMDtcbiAgICAgICAgfVxuICAgICAgICAuZGF0ZV9fd3JhcCB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgICAgICAubW9udGgsXG4gICAgICAgIC55ZWFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTkpO1xuICAgICAgICB9XG4gICAgICAgIC50aW1lIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX190aW1lIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0LWdyYXkpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgLnN0YXJ0dGltZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLmxlbmd0aCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19pY29uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDMwcHg7XG4gICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICB3aWR0aDogMjZweDtcbiAgICAgICAgaGVpZ2h0OiAyNnB4O1xuICAgICAgICBtYXJnaW46IDVweCAwIDAgMDtcbiAgICAgICAgc3ZnICoge1xuICAgICAgICAgICAgZmlsbDogZ2V0LWNvbG9yKHdoaXRlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19wbGFjZWhvbGRlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLXRvcDogNTYuMjUlO1xuICAgICAgICAvKiAxNjo5IEFzcGVjdCBSYXRpbyAqL1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1taW5pLXRhYmxldFwiKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNzUlO1xuICAgICAgICAgICAgLyogNDozIEFzcGVjdCBSYXRpbyAqL1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX2luZm8ge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIC50b3BpYyBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHVuZGVybGluZSgkYmdjb2xvcjogZ2V0LWNvbG9yKGdyYXkpKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX190aXRsZSB7XG4gICAgICAgIG1hcmdpbjogMzBweCAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgyMSk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICA+YSB7XG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB1bmRlcmxpbmUoJGJnY29sb3I6IGdldC1jb2xvcih3aGl0ZSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICZfX2Zvb3RlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE4cHggMjBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuICAgICZfX3Nwb25zb3Ige1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgfVxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19zcG9uc29yLWltZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgZmxleC1iYXNpczogNjVweDtcbiAgICAgICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKHdoaXRlKTtcbiAgICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgICB3aWR0aDogNjVweDtcbiAgICAgICAgbWF4LXdpZHRoOiA2NXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgPmltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgLy8gQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyKCk7XG4gICAgICAgICAgICAvLyBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1mdWxsIHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgZmxleC1iYXNpczogMTUwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmX19zcG9uc29yLXRleHQge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICB9XG4gICAgJl9fcGF0dGVybiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgICAgICAgLyogSUUxMCsgQ1NTIHN0eWxlcyBnbyBoZXJlICovXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBAZWFjaCAkdG9waWMsXG4gICAgICAgICAgICAkc3ZnQ29sb3IgaW4gJHRvcGljcyB7XG4gICAgICAgICAgICAgICAgW2RhdGEtdG9waWM9XCIjeyR0b3BpY31cIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICoge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJHN2Z0NvbG9yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBGZWF0dXJlIFdlYmluYXJcbi53ZWJpbmFyLS1mZWF0dXJlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDIwMHB4IDAgMzBweDtcbiAgICBiYWNrZ3JvdW5kOiBnZXQtY29sb3IoY2hhcmNvYWwpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgIHBhZGRpbmc6IDEyMHB4IDAgNjBweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGdldC1jb2xvcih3aGl0ZSk7XG4gICAgfVxuXG4gICAgLnRvcGljIGEge1xuICAgICAgICBAaW5jbHVkZSB1bmRlcmxpbmUoJGJnY29sb3I6IGdldC1jb2xvcihncmF5KSk7XG4gICAgfVxuXG4gICAgLndlYmluYXJfX2luZm8ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLndlYmluYXJfX2hlYWRpbmcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgNTUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLndlYmluYXJfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDMyKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0oNDgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndlYmluYXJfX2NhcmQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMCAwO1xuICAgICAgICBjb2xvcjogZ2V0LWNvbG9yKHdoaXRlKTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGdldC1jb2xvcih3aGl0ZSk7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICAgICAgY29sb3I6IGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDQwMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndlYmluYXJfX3N0YXJ0IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjgpO1xuICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICBtYXJnaW46IDQwcHggMDtcbiAgICAgICAgfVxuICAgICAgICAud2ViaW5hcl9fdGltZSB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnJlZ2lzdHJhdGlvbi1lbmRzIHtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgICAgICAgY29sb3I6IGdldC1jb2xvcih3aGl0ZSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICBjb2xvcjogZ2V0LWNvbG9yKGdyYXkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndlYmluYXJfX3BhdHRlcm4ge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB3aWR0aDogNjAlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYnV0dG9uIHtcbiAgICBAZWFjaCAkdG9waWMsXG4gICAgJGJnQ29sb3IgaW4gJHRvcGljcyB7XG4gICAgICAgIC53ZWJpbmFyLS1mZWF0dXJlZFtkYXRhLXRvcGljPVwiI3skdG9waWN9XCJdICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnQ29sb3I7IC8vIFVwZGF0ZSB0byB0b3BpYyBjb2xvclxuICAgICAgICB9XG4gICAgfVxufVxuXG4ud2ViaW5hcl9faW50cm8ge1xuICAgIG1hcmdpbjogMCAwIDgwcHg7XG4gICAgZm9udC1zaXplOiByZW0oMTkpO1xuICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgfVxuXG4gICAgJiArIC5jb250ZW50LW1vZHVsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICB9XG59XG5cbi8vIFNpbmdsZSBXZWJpbmFyXG4uc2luZ2xlLXdlYmluYXJzIHtcbiAgICAucGFnZV9faGVhZGVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICAgIC50aXRsZS0tc2luZ2xlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLnNwb25zb3JfX2JhciB7XG4gICAgICAgIC5zcG9uc29yX19ibG9jazpvbmx5LWNoaWxkIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDMwMHB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIubWV0YSB7XG4gICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6IGdldC1jb2xvcihkYXJrLWdyYXkpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC8vIEZsZXggd3JhcCBuZWVkZWQgd2l0aCBtaW4td2lkdGggdG8gZml4IGdyb3dpbmcgaXNzdWVzXG4gICAgJl9fd3JhcCB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbiAgICAgICAgPiAqOm5vdCg6bGFzdC1jaGlsZCkge1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFwyMDIyJztcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgOHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3B1Yi1kYXRlIHtcbiAgICAgICAgLnRpbGUgJiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyAvLyBIaWRlIG9uIEdyaWQgdGlsZXMgb25seVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYXV0aG9yW2hyZWZdIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBjb2xvcjogZ2V0LWNvbG9yKGRhcmstZ3JheSk7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHVuZGVybGluZSgkYmdjb2xvcjogZ2V0LWNvbG9yKGRhcmstZ3JheSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcmVhZC10aW1lIHtcblxuICAgIH1cbn1cbiIsIi50b3BpYyB7XG4gICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgIGNvbG9yOiBnZXQtY29sb3IoY2hhcmNvYWwpO1xuXG4gICAgPiBhIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgQGluY2x1ZGUgdW5kZXJsaW5lKCRiZ2NvbG9yOiBnZXQtY29sb3IobGlnaHQtZ3JheSkpO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMDtcbiAgICAgICAgICBjb2xvcjogZ2V0LWNvbG9yKGRhcmstZ3JheSk7XG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuLnBhZ2UtdGVtcGxhdGUtY3VzdG9tLXRvcGljLWxhbmRpbmcge1xuICAuY29udGVudC1tb2R1bGUge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgfVxufSIsIi5jYWxsb3V0IHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBtYXJnaW46IDYwcHggMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiBnZXQtY29sb3Iob2ZmLXdoaXRlKTtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuXG5cbiAgICAmX19jb250YWluZXIge1xuICAgICAgICBAaW5jbHVkZSBncmlkKCRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcik7XG4gICAgICAgIHBhZGRpbmc6IDYwcHggMzBweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQoJGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbik7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGZsZXg6IDAgMSAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1heC13aWR0aDogNzAwcHg7XG5cbiAgICAgICAgJi0taW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJi0tY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIC5jYWxsb3V0X190aXRsZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjgpO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgJi0tbGluayB7XG4gICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB1bmRlcmxpbmUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jYWxsb3V0X19zbmlwcGV0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxOSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi0tY3RhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgJi0tY29udGVudCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woJGNvbDogOCwgJGdyaWQtY29sdW1uczogMTIsICRndXR0ZXI6IDIwcHgsICRhbGlnbi1zZWxmOiBjZW50ZXIsICRjb25kZW5zZWQ6IHRydWUpO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgICAgICAuY2FsbG91dF9fdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgzMik7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC41ZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jYWxsb3V0X19zbmlwcGV0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtLWN0YSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woJGNvbDogNCwgJGdyaWQtY29sdW1uczogMTIsICRndXR0ZXI6IDIwcHgsICRhbGlnbi1zZWxmOiBjZW50ZXIsICRjb25kZW5zZWQ6IHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG5cbiAgICAgICAgICAgICYtLWltZyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDMsICRncmlkLWNvbHVtbnM6IDEyLCAkZ3V0dGVyOiAyMHB4LCAkYWxpZ24tc2VsZjogZmxleC1lbmQsICRjb25kZW5zZWQ6IHRydWUpO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IC02MHB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI4MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDYsICRncmlkLWNvbHVtbnM6IDEyLCAkZ3V0dGVyOiAyMHB4LCAkYWxpZ24tc2VsZjogY2VudGVyLCAkY29uZGVuc2VkOiB0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtLWN0YSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2woJGNvbDogMywgJGdyaWQtY29sdW1uczogMTIsICRndXR0ZXI6IDIwcHgsICRhbGlnbi1zZWxmOiBjZW50ZXIsICRjb25kZW5zZWQ6IHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tbWFnYXppbmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBnZXQtY29sb3Iob2ZmLXdoaXRlKTtcbiAgICB9XG59XG5cbi5wYWdlX19oZWFkZXIgKyAuY2FsbG91dCB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XG59XG4iLCIuZmVhdHVyZSB7XG4gICAgJl9fYXJ0aWNsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bWluaS10YWJsZXRcIikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgICAgICAgLndyYXBwZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW1nIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICA+IHBpY3R1cmUgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1pbmktdGFibGV0XCIpIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI2LDI2LDI2LDApIDAlLCByZ2JhKDI2LDI2LDI2LDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNiwyNiwyNiwwKSAwJSxyZ2JhKDI2LDI2LDI2LDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjYsMjYsMjYsMCkgMCUscmdiYSgyNiwyNiwyNiwxKSAxMDAlKTtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwMWExYTFhJywgZW5kQ29sb3JzdHI9JyMxYTFhMWEnLEdyYWRpZW50VHlwZT0wICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbmZvIHtcbiAgICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG4gICAgICAgIGNvbG9yOiBnZXQtY29sb3Iod2hpdGUpO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1taW5pLXRhYmxldFwiKSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBtYXJnaW46IDMwcHggMDtcblxuICAgICAgICA+IGEge1xuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdW5kZXJsaW5lKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bWluaS10YWJsZXRcIikge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMzJweCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSg0NXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSg1OHB4KTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNjAlO1xuICAgICAgICB9XG4gICAgICAgICYtLXJlc2l6ZWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1pbmktdGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMnB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDI4cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMzBweCk7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMzZweCk7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19idG4ge1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1taW5pLXRhYmxldFwiKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBDb2xvciBUaGVtaW5nIGJhc2VkIG9uIEltYWdlXG4vLyBEZWZhdWx0XG4uZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXRoZW1lPVwiZGFya1wiXSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1pbmktdGFibGV0XCIpIHtcbiAgICAgICAgLmZlYXR1cmVfX3RpdGxlIGEsXG4gICAgICAgIC5tZXRhLFxuICAgICAgICAubWV0YSBhLFxuICAgICAgICAudG9waWMgYSB7XG4gICAgICAgICAgICBjb2xvcjogZ2V0LWNvbG9yKHdoaXRlKTtcbiAgICAgICAgfVxuICAgICAgICAudG9waWMgYSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB1bmRlcmxpbmUoJGJnY29sb3I6IGdldC1jb2xvcih3aGl0ZSkpO1xuICAgICAgICB9XG4gICAgICAgIGE6bm90KC5mZWF0dXJlX19idG4pIHtcbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHVuZGVybGluZSgkYmdjb2xvcjogZ2V0LWNvbG9yKHdoaXRlKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZlYXR1cmVfX2J0biB7XG4gICAgICAgIEBleHRlbmQgJWJ0bi1naG9zdC1pbnZlcnRlZDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtaW5pLXRhYmxldFwiKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuLy8gQmxhY2sgVGV4dFxuLmZlYXR1cmVfX2FydGljbGVbZGF0YS10aGVtZT1cImxpZ2h0XCJdIHtcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bWluaS10YWJsZXRcIikge1xuICAgICAgICAuZmVhdHVyZV9fdGl0bGUgYSxcbiAgICAgICAgLm1ldGEsXG4gICAgICAgIC5tZXRhIGEsXG4gICAgICAgIC50b3BpYyBhIHtcbiAgICAgICAgICAgIGNvbG9yOiBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgICAgICB9XG4gICAgICAgIGE6bm90KC5mZWF0dXJlX19idG4pIHtcbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHVuZGVybGluZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5mZWF0dXJlX19pbWcge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI0MCwyNDUsMjQ3LDApIDAlLCByZ2JhKDI0MCwyNDUsMjQ3LDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNDAsMjQ1LDI0NywwKSAwJSxyZ2JhKDI0MCwyNDUsMjQ3LDEpIDEwMCUpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjQwLDI0NSwyNDcsMCkgMCUscmdiYSgyNDAsMjQ1LDI0NywxKSAxMDAlKTtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwMWExYTFhJywgZW5kQ29sb3JzdHI9JyMxYTFhMWEnLEdyYWRpZW50VHlwZT0wICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZlYXR1cmVfX2J0biB7XG4gICAgICAgIEBleHRlbmQgJWJ0bi1naG9zdDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxtaW5pLXRhYmxldFwiKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmVhdHVyZV9fYXJ0aWNsZVtkYXRhLXN0eWxlPVwibm8tZ3JhZGllbnRcIl0ge1xuICAgIC5mZWF0dXJlX19pbWc6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuIiwiLnNwb25zb3Ige1xuICAgICZfX2JhciB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMCAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3Iod2hpdGUpO1xuXG4gICAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vd2wtbmV4dCxcbiAgICAgICAgLm93bC1wcmV2IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAjMmIzMDM0IWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICMyYjMwMzQhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAxMDElO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5vd2wtcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbiAgICAgICAgICAgIHNwYW4ge1xuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub3dsLW5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgc3BhbiB7XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jbG9zZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jbG9zZWQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZml4ZWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jbG9zZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTI3cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC01MHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweCA4cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTBweDtcblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYmFyLXdyYXAge1xuICAgICAgICAmW2RhdGEtY291bnQ9XCIxXCJdIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYub3dsLWNhcm91c2VsIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTcpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYmxvY2sge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yYXRpb19fY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sb2dvIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmZpbHRlciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG5cbiAgJl9faGVhZGluZyB7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLy8gRHJvcGRvd25zIGFuZCB0b2dnbGUgYnV0dG9uc1xuICAmX19jb250cm9scyB7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8PXRhYmxldFwiKSB7XG4gICAgICAmLS1kZXNrdG9wIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgICYtLW1vYmlsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYShcIj50YWJsZXRcIikge1xuICAgICAgJi0tZGVza3RvcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgICAgJi0tbW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIC8vIExhYmVsIG5leHQgdG8gZHJvcGRvd25cbiAgJl9fbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cbiAgJl9fc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW46IDAgMCAwIDEwcHg7XG4gIH1cblxuICAvLyBUb2dnbGUgYnV0dG9uIGZvciBtb2JpbGVcbiAgJl9fdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xuICB9XG4gIC8vIENhdGVvZ29yeSBhbmQgVG9waWMgbGlzdHMgdmlhICh3cF9saXN0X2NhdGVnb3JpZXMpXG4gICZfX2xpc3Qge1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgJlthcmlhLWV4cGFuZGVkPVwiZmFsc2VcIl0ge1xuICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgbWF4LWhlaWdodDogMTAwMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgXG4gICAgfVxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcblxuICAgICAgJjpsYXN0LWNoaWxkKCkge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBhIHtcbiAgICAgICAgICBAaW5jbHVkZSB1bmRlcmxpbmUoJGJnY29sb3I6IGdldC1jb2xvcihkYXJrLWdyYXkpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgICBAaW5jbHVkZSB1bmRlcmxpbmUoJGJnY29sb3I6IGdldC1jb2xvcihsaWdodC1ncmF5KSk7XG5cbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDA7XG4gICAgICAgICAgICBjb2xvcjogZ2V0LWNvbG9yKGRhcmstZ3JheSk7XG4gICAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIuc29jaWFsX19jYWxsb3V0IHtcbiAgICBtYXJnaW46IDYwcHggMDtcbiAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgY29sb3I6IGdldC1jb2xvcihkYXJrLWdyYXkpO1xuICAgIGxpbmUtaGVpZ2h0OiAkYmFzZS1saW5lLWhlaWdodDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjgpO1xuICAgIH1cblxuICAgICYtcXVvdGUge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJi1saW5rIHtcbiAgICAgICAgY29sb3I6IGdldC1jb2xvcihkYXJrLWdyYXkpO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHVuZGVybGluZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3ZnLFxuICAgIC5pY29uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMTBweCBhdXRvIDA7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgICBmaWxsOiBnZXQtYWNjZW50KGN5YW4pO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi50YWdzIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogNjBweCAwIDA7XG4gICAgbWFyZ2luOiA2MHB4IDAgMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IHVybCgnLi4vYXNzZXRzL2ltZy9sb2dvcy90aS1sb2dvLWVtYmxlbS5zdmcnKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0xNHB4O1xuICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDE1cHgpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBnZXQtY29sb3Iod2hpdGUpO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgfVxuXG4gICAgJl9fbGlzdCB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgLy8gQm9yZGVyIGJvdHRvbSBhbmQgcGFkZGluZyBvbiBsaXN0XG4gICAgICAgIC8vIHNvIGlmIHRoZXJlIGlzbid0IGEgbGlzdCwgaXQgd29uJ3Qgc2hvd1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGdldC1jb2xvcihsaWdodGVyLWdyYXkpO1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICA+IGEge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBnZXQtY29sb3Iob2ZmLXdoaXRlKTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICBjb2xvcjogZ2V0LWNvbG9yKGRhcmstZ3JheSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkYmFzZS1hbmltYXRpb24tc3BlZWQgI2Jhc2UtYW5pbWF0aW9uLWVhc2luZztcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6YWN0aXZlLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuYXV0aG9yIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBwYWRkaW5nOiA2MHB4IDA7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWxpbmUtaGVpZ2h0O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgICZfX3BpYyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiA3NXB4O1xuICAgICAgICB3aWR0aDogNzVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW46IDAgYXV0byAzMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBtYXJnaW46IDAgNDBweCAwIDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19iaW8ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIDExNXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICAgIFtpdGVtcHJvcD1cIm5hbWVcIl0ge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX21vcmUge1xuICAgICAgICBAaW5jbHVkZSB1bmRlcmxpbmUoKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG59XG4iLCIucmVsYXRlZC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBncmlkKCRndXR0ZXI6IDQwcHgpO1xuICAgIC50aWxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiA0LCAkZ3JpZC1jb2x1bW5zOiAxMiwgJGd1dHRlcjogNDBweCwgJGNvbmRlbnNlZDogdHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucGxhY2Vob2xkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogNTYuMjUlOyAvKiAxNjo5IEFzcGVjdCBSYXRpbyAqL1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IobGlnaHRlci1ncmF5KTtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49bWluaS10YWJsZXRcIikge1xuICAgICAgcGFkZGluZy10b3A6IDc1JTsgLyogNDozIEFzcGVjdCBSYXRpbyAqL1xuICB9XG5cbiAgLnRpbGUtLWxhcmdlICYsXG4gIC5mZWF0dXJlZCAmIHtcbiAgICAvLyBTdGF5IGEgMTY6OSBmb3IgYWxsIGJyZWFrcG9pbnRzIGlmIGluIGEgZmVhdHVyZWQgdGlsZVxuICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7IC8qIDE2OjkgQXNwZWN0IFJhdGlvICovXG4gIH1cblxuICAvLyBTZXQgYmcgY29sb3IgYmFzZWQgb24gVG9waWNcbiAgQGVhY2ggJHRvcGljLCAkYmdDb2xvciBpbiAkdG9waWNzIHtcbiAgICBbZGF0YS10b3BpYz1cIiN7JHRvcGljfVwiXSAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnQ29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gUG9zaXRpb24gU1ZHIEljb24gaW5zaWRlIHBsYWNlaG9sZGVyXG4gID4gLnN2ZyB7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyKCk7XG5cbiAgICAqIHtcbiAgICAgIGZpbGw6IGdldC1jb2xvcih3aGl0ZSk7XG5cbiAgICAgIFtkYXRhLXRvcGljPVwibGVhZGVyc2hpcFwiXSAmIHtcbiAgICAgICAgZmlsbDogZ2V0LWNvbG9yKGJsYWNrKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5wYWdlIHtcblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMCAwIDQwcHg7XG4gICAgICAgIG1hcmdpbjogMCAwIDYwcHg7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTgwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgICAgIH1cblxuICAgICAgICAucGFnZS10ZW1wbGF0ZS1kZWZhdWx0ICYge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnRpY2xlcyAmIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFRvcGljIExhbmRpbmcgUGFnZXNcbiAgICAgICAgJi0tdG9waWMge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgICAgICAgcGFkZGluZzogMCA1MHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCA4MHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAZWFjaCAkdG9waWMsICRib3JkZXJDb2xvciBpbiAkdG9waWNzIHtcbiAgICAgICAgICAgICAgJltkYXRhLXRvcGljPVwiI3skdG9waWN9XCJdOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRib3JkZXJDb2xvcjsgLy8gVXBkYXRlIHRvIHRvcGljIGNvbG9yXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBDdXN0b20gU3VwcGxpZXIgUGFnZXNcbiAgICAgICAgJi0tY29udGFjdCB7XG5cbiAgICAgICAgICAuY29udGFjdC1zcG9uc29yIHtcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCAwIDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAudGl0bGUtLXBhZ2Uge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRhY3Qtc3BvbnNvciB7XG4gICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGFnZV9fZGVzYyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBvcmRlcjogMztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcbiAgICAgICAgICAgIC50aXRsZS0tcGFnZSB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogNzUlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJl9fZGVzYyB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwIDA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE5KTtcbiAgICAgICAgY29sb3I6IGdldC1jb2xvcihkYXJrLWdyYXkpO1xuICAgIH1cbn1cbiIsIi5wb3N0dHlwZS1jYWxsb3V0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luOiAwIDAgMzBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGdldC1jb2xvcihsaWdodC1ncmF5KTtcblxuICAmX19pbmZvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgJl9fY3RhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXBoYWJsZXRcIikge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJl9faW5mbyxcbiAgICAmX19jdGEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUeXBpY2FsIGNvbnRlbnQgZm9yIHRoZXNlIGNhbGxvdXRzOlxuLy8gUHVibGlzaGVkIG1hZ2F6aW5lIGlzc3VlXG4ucHVibGlzaGVkLWlzc3VlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgJl9faW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cbiAgJl9faW5mbyB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgc3Ryb25nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIH1cbiAgfVxuICAmX19pbWcgKyAucHVibGlzaGVkLWlzc3VlX19pbmZvIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cbn1cblxuXG4vLyBXZWJpbmFyIEluZm9ybWF0aW9uXG4ucmVnaXN0cmF0aW9uLWVuZHMge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAtNjBweCAwIDYwcHg7XG4gIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgY29sb3I6IGdldC1jb2xvcihncmF5KTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuIiwiLmxpc3Qge1xuICAmX19pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG4gIH1cblxuICAmX19saW5rIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogMzBweCAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1hcmdpbjogMCAtNDBweDtcbiAgICAgIHBhZGRpbmc6IDMwcHggNDBweDtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6IGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgICAgIGNvbG9yOiBnZXQtY29sb3Iod2hpdGUpO1xuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbihcbiAgICAgICAgICAgICRidG4tYmctY29sb3I6IGdldC1jb2xvcih3aGl0ZSksXG4gICAgICAgICAgICAkYnRuLWJnLWNvbG9yLWhvdmVyOiByZ2JhKGdldC1jb2xvcih3aGl0ZSksIC44KSxcbiAgICAgICAgICAgICRidG4tdGV4dC1jb2xvcjogZ2V0LWNvbG9yKGJsYWNrKSxcbiAgICAgICAgICAgICRidG4tdGV4dC1jb2xvci1ob3ZlcjogcmdiYShnZXQtY29sb3IoYmxhY2spLCAuOCksXG4gICAgICAgICAgICAkYnRuLWJvcmRlcjogMXB4IHNvbGlkLFxuICAgICAgICAgICAgJGJ0bi1ib3JkZXItY29sb3I6IGdldC1jb2xvcihibGFjayksXG4gICAgICAgICAgICAkYnRuLWJvcmRlci1jb2xvci1ob3ZlcjogcmdiYShnZXQtY29sb3IoYmxhY2spLCAuOCksXG4gICAgICAgICAgICAkYnRuLWJveC1zaGFkb3ctaG92ZXI6IHJnYmEoZ2V0LWNvbG9yKGJsYWNrKSwgLjI1KVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19pbmZvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBmbGV4LWJhc2lzOiAxNDBweDtcbiAgICB9XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgbWFyZ2luOiAyNXB4IDAgMDtcbiAgICBmb250LXNpemU6IHJlbSgxOSk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLSAzMDBweCk7XG4gICAgfVxuICB9XG5cbiAgJl9fYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICBmbGV4LXNocmluazogMTtcbiAgICAgIGZsZXgtYmFzaXM6IDE1MHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLm1hZyB7XG4gIC8vIE1haW4gd3JhcHBlciBmb3IgbGFyZ2UgZmVhdHVyZSBhcmVhIChjb3ZlciBhbmQgZmVhdHVyZXMpXG4gICZfX2ludHJvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAvLyBNYWdhemluZSBDb3ZlciB0aXRsZSBhbmQgbG9nb1xuICAvLyBUcmVhdCBpdCBsaWtlIGEgd3JhcHBlciBzaW5jZSBpdCBuZWVkcyB0byBiZSBwb3NpdGlvbjphYnM7XG4gICZfX2NvdmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgcGFkZGluZzogNTBweCAzMHB4IDYwcHg7XG4gICAgaGVpZ2h0OiAxMDB2aDtcblxuICAgIC8vIFNldCBncmFkaWVudCBvdmVybGF5IG9uIGJnIGltYWdlXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNiwyNiwyNiwwKSAwJSwgcmdiYSgyNiwyNiwyNiwxKSAxMDAlKTtcbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNiwyNiwyNiwwKSAwJSxyZ2JhKDI2LDI2LDI2LDEpIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNiwyNiwyNiwwKSAwJSxyZ2JhKDI2LDI2LDI2LDEpIDEwMCUpO1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwMDFhMWExYScsIGVuZENvbG9yc3RyPScjMWExYTFhJyxHcmFkaWVudFR5cGU9MCApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgcGFkZGluZzogNTBweCA2MHB4IDYwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgICAgcGFkZGluZzogODBweCAxMDBweCAxMjBweDtcbiAgICB9XG5cbiAgICAvLyBwb3NpdGlvbiBjb250ZW50IG92ZXIgZ3JhZGllbnRcbiAgICA+IGhlYWRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuXG5cbiAgICAgIC5zY3JvbGwtYXJyb3cge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1kZXNrdG9wXCIpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogLTgwcHg7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGdldC1jb2xvcih3aGl0ZSk7XG5cbiAgICAgICAgICA+IC5zdmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyKCk7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTNweDtcblxuICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgZmlsbDogZ2V0LWNvbG9yKHdoaXRlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyByZW9yZGVyIGxvZ28gYW5kIGVkaXRpb24gdG8gdG9wXG4gICAgLm1hZ19fbWV0YSB7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgLmVkaXRpb24ge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW46IDAgMCAwIDIwcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgICAgZmxleDogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICAgIGxlZnQ6IC00MHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tYWctaW50cm9fX2xvZ28ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKGdldC1jb2xvcihibGFjayksIC43NSk7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgICAgICB3aWR0aDogMjUwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuc3ZnIHtcbiAgICAgICAgICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWFnX19jb3Zlci10aXRsZSB7XG4gICAgICBvcmRlcjogMjtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG87IC8vIGZsZXhib3ggYWxpZ25tZW50XG4gICAgICBjb2xvcjogZ2V0LWNvbG9yKHdoaXRlKTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgIG1heC13aWR0aDogNTUlO1xuICAgICAgfVxuICAgIH1cbiAgICAubWFnX19jdGEge1xuICAgICAgb3JkZXI6IDM7XG4gICAgfVxuICB9XG5cbiAgLy8gTWFnYXppbmUgc3ViIG5hdiBhbmQgZmVhdHVyZSBhcnRpY2xlc1xuICAvLyBiZWxvdyBjb3ZlciBvbiBtb2JpbGUgYW5kIHBvczphYnMgb24gbGFwdG9wXG4gICZfX2ZlYXR1cmVzIHtcbiAgICBwYWRkaW5nOiAxMHB4IDMwcHggMzBweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgcGFkZGluZzogODBweCA2MHB4IDYwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgICBwYWRkaW5nOiA5MHB4IDEwMHB4IDEyMHB4IDBweDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sb3IgVGhlbWluZyBiYXNlZCBvbiBJbWFnZVxuLy8gRGVmYXVsdFxuLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImRhcmtcIl0ge1xuXG4gIC8vIENvdmVyIGl0ZW1zXG4gIC5tYWdfX2NvdmVyLXRpdGxlLFxuICAubWFnX19tZXRhIHtcbiAgICBjb2xvcjogZ2V0LWNvbG9yKHdoaXRlKTtcbiAgfVxuXG4gIC8vIEZlYXR1cmUgSXRlbXMgKG9ubHkgPj1sYXB0b3ApXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgIC50b3BpYyBhLFxuICAgIC50aXRsZS0tYXJ0aWNsZSBhLFxuICAgIC5tZXRhX19jb250ZW50LFxuICAgIC5tZXRhX19jb250ZW50IGEsXG4gICAgLm1hZ19fbmF2IGEsXG4gICAgLm1hZ19fbmF2IGE6aG92ZXIsXG4gICAgLm1hZ19fbmF2IGE6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6IGdldC1jb2xvcih3aGl0ZSk7XG4gICAgfVxuICAgIC50b3BpYyBhLFxuICAgIC5tZXRhX19jb250ZW50IGE6aG92ZXIsXG4gICAgLm1ldGFfX2NvbnRlbnQgYTphY3RpdmUsXG4gICAgLm1hZ19fbmF2IGE6aG92ZXIsXG4gICAgLm1hZ19fbmF2IGE6YWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgdW5kZXJsaW5lKCRiZ2NvbG9yOiBnZXQtY29sb3Iod2hpdGUpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sb3IgVGhlbWluZyBiYXNlZCBvbiBJbWFnZVxuLy8gQmxhY2sgVGV4dFxuLm1hZ19faW50cm9bZGF0YS10aGVtZT1cImxpZ2h0XCJdIHtcblxuICAvLyBDb3ZlciBJdGVtc1xuICAubWFnX19jb3Zlci10aXRsZSxcbiAgLm1hZ19fbWV0YSB7XG4gICAgICBjb2xvcjogZ2V0LWNvbG9yKGJsYWNrKTtcbiAgfVxuXG4gIC8vIEZlYXR1cmUgSXRlbXMgKG9ubHkgPj1sYXB0b3ApXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgIC50b3BpYyBhLFxuICAgIC50aXRsZS0tYXJ0aWNsZSBhLFxuICAgIC5tYWdfX25hdiBhLFxuICAgIC5tYWdfX25hdiBhOmhvdmVyLFxuICAgIC5tYWdfX25hdiBhOmFjdGl2ZSxcbiAgICAubWV0YSxcbiAgICAubWV0YSBhIHtcbiAgICAgICAgY29sb3I6IGdldC1jb2xvcihibGFjayk7XG4gICAgfVxuICAgIC50b3BpYyBhLFxuICAgIC5tYWdfX25hdiBhOmhvdmVyLFxuICAgIC5tYWdfX25hdiBhOmFjdGl2ZSxcbiAgICAubWV0YSBhOmhvdmVyLFxuICAgIC5tZXRhIGE6YWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgdW5kZXJsaW5lKCRiZ2NvbG9yOiBnZXQtY29sb3IoY2hhcmNvYWwpKTtcbiAgICB9XG4gICAgLm1hZ19fZmVhdHVyZWQtYXJ0aWNsZSxcbiAgICAubWFnX19uYXYgLm1lbnUtaXRlbSB7XG4gICAgICBib3JkZXItY29sb3I6IGdldC1jb2xvcihkYXJrLWdyYXkpO1xuICAgIH1cbiAgICAuc2Nyb2xsLWFycm93IHtcbiAgICAgIGJvcmRlci1jb2xvcjogZ2V0LWNvbG9yKGNoYXJjb2FsKTtcbiAgICAgID4gLnN2ZyA+ICoge1xuICAgICAgICBmaWxsOiBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBDaGFuZ2UgYnV0dG9uIGZyb20gaW52ZXJ0ZWQgdG8gcmVndWxhclxuICAuYnV0dG9uLS1pbnZlcnRlZCB7XG4gICAgQGV4dGVuZCAlYnRuO1xuICB9XG4gIC8vIFVwZGF0ZSBncmFkaWVudCB0byB3aGl0ZVxuICAubWFnX19jb3ZlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI0MCwyNDUsMjQ3LDApIDAlLCByZ2JhKDI0MCwyNDUsMjQ3LDEpIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNDAsMjQ1LDI0NywwKSAwJSxyZ2JhKDI0MCwyNDUsMjQ3LDEpIDEwMCUpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjQwLDI0NSwyNDcsMCkgMCUscmdiYSgyNDAsMjQ1LDI0NywxKSAxMDAlKTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudCggc3RhcnRDb2xvcnN0cj0nIzAwMWExYTFhJywgZW5kQ29sb3JzdHI9JyMxYTFhMWEnLEdyYWRpZW50VHlwZT0wICk7XG4gIH1cbn1cblxuLm1hZ19faW50cm9bZGF0YS1zdHlsZT1cIm5vLWdyYWRpZW50XCJdIHtcbiAgLm1hZ19fY292ZXI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5cbi8vIFN1YiBOYXYgZm9yIE1hZ2F6aW5lXG4ubWFnX19uYXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIH1cblxuICAubWVudS1pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDA7XG4gICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICBib3JkZXItY29sb3IgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmcsXG4gICAgICAgIGNvbG9yICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBjb2xvcjogZ2V0LWNvbG9yKGJsYWNrKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBnZXQtY29sb3IoZ3JheSk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPGxhcHRvcFwiKSB7XG4gICAgICAgIGNvbG9yOiBnZXQtY29sb3IoY2hhcmNvYWwpO1xuXG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgcmlnaHQ6IDRweDtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGVZKDRweCk7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVkoLTRweCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogOHB4IDEwcHg7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0LWdyYXkpO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBhIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4ubWFnX19mZWF0dXJlZCB7XG4gICYtYXJ0aWNsZSB7XG4gICAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgICBwYWRkaW5nOiAwIDAgMzBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG5cbiAgICAudGl0bGUtLWFydGljbGUge1xuICAgICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgfVxuICB9XG59XG4iLCIuY291bnQge1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IHJlbSgzMCk7XG59XG4uc2VhcmNoLXRlcm0ge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuIiwiLm1hZy1jb2x1bW4ge1xuICBwYWRkaW5nOiAwIDAgMzBweDtcbiAgbWFyZ2luOiAwIDAgNjBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGdldC1jb2xvcignbGlnaHQtZ3JheScpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgLmNvbHVtbi10eXBlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG4gIH1cbn1cbiIsIi5wcm9ncmVzcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtM3B4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzcHg7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiBnZXQtY29sb3IoJ2NoYXJjb2FsJyk7XG5cbiAgJl9fY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmX19iYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcignY2hhcmNvYWwnKTtcbiAgICB3aWR0aDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogaW5oZXJpdDtcbiAgfVxufVxuXG5wcm9ncmVzczo6LXdlYmtpdC1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxucHJvZ3Jlc3M6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IoJ2NoYXJjb2FsJyk7XG59XG5cbnByb2dyZXNzOjotbW96LXByb2dyZXNzLWJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcignY2hhcmNvYWwnKTtcbn1cbiIsIi8vIFN0eWxlcyBmb3Igb3VyIG1vZGFsIGNvbnRlbnQgdGhhdCdzIGluc2lkZSBtYWduaWZpY1xuLm1vZGFsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBwYWRkaW5nOiAyMHB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICAmX19pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMCAtMjBweCAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDM1MHB4KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xuICAgIH1cbiAgfVxuXG4gICZfX2N0YSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiBnZXQtY29sb3Iod2hpdGUpO1xuICAgICAgZmxleDogbm9uZTtcbiAgICB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbjogYXV0byBhdXRvIDA7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2xvc2UtbW9kYWwge1xuICAgIEBpbmNsdWRlIHJlc2V0LWJ1dHRvbigpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwcHg7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuXG4gICAgPiBzdmcge1xuICAgICAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyKCk7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIHRvcDogLTQwcHg7XG4gICAgICByaWdodDogLTQwcHg7XG4gICAgfVxuICB9XG59XG4iLCIuY29tcGFueSB7XG4gICZfX25hbWUge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiByZW0oMjgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgbWFyZ2luOiAwIDAgNXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgJl9fbG9jYWwge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgIGNvbG9yOiBnZXQtY29sb3IoZ3JheSk7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJl9fZGVzYyB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuIiwiLnRvcC1jYXRlZ29yaWVzIHtcblxuICBAaW5jbHVkZSBtZWRpYShcIjx0YWJsZXRcIikge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgLnRvcF9fY2F0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICA+IC50b3BfX2xpbmsge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHggMjBweCAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIGNvbG9yOiBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0ZXItZ3JheSk7XG4gICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgYm9yZGVyLWNvbG9yICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nLFxuICAgICAgICAgIGNvbG9yICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogZ2V0LWNvbG9yKGJsYWNrKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGdldC1jb2xvcihncmF5KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgcmlnaHQ6IDRweDtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGVZKDRweCk7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZVkoLTRweCk7XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0LWltZyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYWN0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICBAaW5jbHVkZSBncmlkKCRndXR0ZXI6IDIwcHgpO1xuXG4gICAgLnRvcF9fY2F0IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sKCRjb2w6IDQsICRncmlkLWNvbHVtbnM6IDEyLCAkY29uZGVuc2VkOiB0cnVlLCAkZ3V0dGVyOiAyMHB4KTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGdldC1jb2xvcihsaWdodGVyLWdyYXkpO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIH1cblxuICAgIC50b3BfX2xpbmsge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLy8gRGVmYXVsdHMgdG8gU3F1YXJlIDE6MVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC5jYXQtaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC8vIER1cGxpY2F0ZSBuYW1lLCBidXQgdXNlZCBvbiBtb2JpbGUgb25seSAoYWZ0ZXIgYWRkaW5nIGxvZ28gcmVmYWN0b3IgcmVxdWVzdClcbiAgICAgIC5jYXQtbmFtZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNhdC1uYW1lIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBmb250LXNpemU6IHJlbSgyMSk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmFjdGlvbnMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZzogMCAxMHB4IDIwcHg7XG4gICAgfVxuXG4gICAgLnNlY29uZGFyeS1saW5rIHtcbiAgICAgIG1hcmdpbjogMTBweCAwIDA7XG4gICAgfVxuXG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49bGFwdG9wXCIpIHtcblxuICAgIC50b3BfX2NhdCB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbCgkY29sOiAyLCAkZ3JpZC1jb2x1bW5zOiAxMCwgJGNvbmRlbnNlZDogdHJ1ZSwgJGd1dHRlcjogMjBweCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuXG5cbiAgfVxufVxuIiwiLmluZm8tbW9kdWxlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgLy8gT25seSBzaG93IG9uID49IHRhYmxldFxuICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKHdoaXRlKTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0LWdyYXkpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICB6LWluZGV4OiA1MDtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7XG5cbiAgICAvLyBDbGFzcyBhZGRlZCB2aWEgSlMgc2Nyb2xsaW5nXG4gICAgJi5zaG93IHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICAucGFnZS10ZW1wbGF0ZS1jdXN0b20tdG9waWMtbGFuZGluZyAmIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNpbmdsZSAmIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgPiAud3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIH1cblxuICAmX19jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICB9XG5cbiAgJl9fY3RhIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBmb250LXNpemU6IHJlbSgxMik7XG4gIH1cblxuICAmX19zbmlwcGV0IHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICAmW2RhdGEtd2VpZ2h0PVwiYm9sZFwiXSB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgYm9keS5wYWQtZm9vdGVyIHtcbiAgICAuZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTMwcHg7XG4gICAgfVxuICB9XG59XG4iLCIudG9jIHtcbiAgbWFyZ2luOiAwIDAgMzBweCAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWwtbGVhZGluZy16ZXJvO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgJl9faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICA+IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICBAaW5jbHVkZSB1bmRlcmxpbmUoJGJnY29sb3I6IGdldC1jb2xvcihsaWdodC1ncmF5KSk7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuICB9XG59XG4iLCIud2lraSB7XG4gICZfX2hlYWRpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgbWFyZ2luOiAwIC03MHB4IDMwcHg7XG4gICAgICBwYWRkaW5nOiAwIDcwcHg7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgIEBpbmNsdWRlIHVuZGVybGluZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvcHktbGluayB7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19jb250ZW50IHtcblxuICB9XG5cbiAgLmNvcHktbGluayB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyKCk7XG4gICAgbGVmdDogNTBweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB3aWR0aDogNTBweDtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRyYW5zaXRpb246IGFsbCAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcblxuICAgID4gc3ZnIHtcbiAgICAgIEBpbmNsdWRlIGFic29sdXRlLWNlbnRlcigpO1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgfVxuICB9XG59XG4iLCIuZmVlZGJhY2sge1xuICBjbGVhcjogYm90aDtcbiAgcGFkZGluZzogMjBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgJl9faGVhZGluZyB7XG4gICAgbWFyZ2luOiAwIDAgOHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cblxuICAmX19zbmlwcGV0IHtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICB9XG5cbiAgLy8gVGhlIGhpZGUvc2hvdyBmb3JtIGZvciBmZWVkYmFja1xuICAmX19mb3JtIHtcbiAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIGVhc2UsIG1heC1oZWlnaHQgLjNzIGVhc2UsIG9wYWNpdHkgLjNzIGVhc2U7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG5cbiAgICAvLyBPcGVuIFN0YXRlXG4gICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG4gICAgLy8gQ2xvc2VkIFN0YXRlXG4gICAgJlthcmlhLWV4cGFuZGVkPVwiZmFsc2VcIl0ge1xuICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjNzLCAwcywgMHM7XG4gICAgfVxuICB9XG59XG4iLCIuc2VwYXJhdG9yIHtcbiAgJi0tYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG4gIH1cbn1cbiIsIi5nbG9zc2FyeSB7XG4gIC8vIE5hdmlnYXRpb24gSW5kZXhcbiAgJl9fbmF2IHtcbiAgICBwYWRkaW5nOiAzMHB4IDAgMDtcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHB4OyAvLyBTZXQgaGVpZ2h0IHRvIGN1dCBvZmYgaG9yaXpvbnRhbCBzY3JvbGwgYmFyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDMwcHg7XG4gICAgfVxuXG4gICAgJi1saXN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgICBoZWlnaHQ6IDEwMHB4OyAvLyBTZXQgaGVpZ2h0IHRhbGwgZW5vdWdodCB0byBjdXQgb2ZmIHNjcm9sbCBiYXJcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMCAycHggNXB4O1xuICAgIH1cblxuICAgICYtbGluayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBiYWNrZ3JvdW5kOiBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgICAgY29sb3I6IGdldC1jb2xvcih3aGl0ZSk7XG4gICAgICBoZWlnaHQ6IDY1cHg7XG4gICAgICB3aWR0aDogNjVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA2NXB4O1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKGxpZ2h0LWdyYXkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNlY3Rpb25zXG4gICZfX3NlY3Rpb24ge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcblxuICAgICYtaGVhZGluZyB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDQ4KTtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICB9XG5cbiAgICAmLWl0ZW0ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTVweDtcblxuICAgICAgICAmOm50aC1jaGlsZCgybisxKSB7XG4gICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sYXB0b3BcIikge1xuICAgICAgICB3aWR0aDogMzMlO1xuXG4gICAgICAgICY6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgzbisxKSB7XG4gICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgPiBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDIwcHggMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZ2V0LWNvbG9yKGxpZ2h0LWdyYXkpO1xuICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nLFxuICAgICAgICAgICAgY29sb3IgJGJhc2UtYW5pbWF0aW9uLXNwZWVkICRiYXNlLWFuaW1hdGlvbi1lYXNpbmc7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogZ2V0LWNvbG9yKGdyYXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICByaWdodDogNHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKGNoYXJjb2FsKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlWSg0cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKC00cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBmb250LXNpemU6IHJlbSgxOSk7XG5cbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHVuZGVybGluZSgkYmdjb2xvcjogZ2V0LWNvbG9yKGdyYXkpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5hZGR0aGlzX3NoYXJlIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIGJhY2tncm91bmQ6IGdldC1jb2xvcih3aGl0ZSk7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG4gIHotaW5kZXg6IDUwO1xuICB0cmFuc2l0aW9uOiBwYWRkaW5nIC4xNXMgZWFzZSwgcG9zaXRpb24gLjE1cyBlYXNlO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAyMjBweDtcbiAgICBib3R0b206IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyOiAwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogMCAxMHB4O1xuXG4gICAgJi5oaWRlIHtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49ZGVza3RvcFwiKSB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNjQwcHgpO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmLS1tYWctbGFuZHNjYXBlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDgxMHB4O1xuXG4gICAgICAgICYuZml4ZWQge1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgdG9wOiAyMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLW1hZy1wb3J0cmFpdCB7XG4gICAgICAgIGxlZnQ6IDQwJTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIFRoaXMgaXMgYSByYXJlIG9jY3VyYW5jZSBmb3IgYSBzcGVjaWZpYyBwYWdlIHR5cGUuXG4gIC8vIE5lZWQgdG8gY29udGFpbiB0aGUgNDAlIGNvb3JkaW5hdGUgYWZ0ZXIgYSBjZXJ0YWluIHNpemUgc28gaXQgZG9lc24ndCBrZWVwIG1vdmluZ1xuICBAaW5jbHVkZSBtZWRpYShcIj49MTgzNHB4XCIpIHtcbiAgICAmLS1tYWctcG9ydHJhaXQge1xuICAgICAgICBsZWZ0OiA3MzNweDtcbiAgICB9XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6IGdldC1jb2xvcihjaGFyY29hbCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49dGFibGV0XCIpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICB9XG4gIH1cblxuICAmX19jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cblxuICAmX19idXR0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDUwcHg7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogZ2V0LWNvbG9yKGdyYXkpO1xuXG4gICAgKiB7XG4gICAgICAvLyBGaXggQWRkVGhpcyBjcmFwcHkgSlNcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuXG4gICAgJjpob3ZlcixcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6IGdldC1jb2xvcihsaWdodC1ncmF5KTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgID4gc3ZnID4gKiB7XG4gICAgICAgICAgZmlsbDogZ2V0LWNvbG9yKGJsYWNrKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgID4gc3ZnIHtcbiAgICAgIEBpbmNsdWRlIGFic29sdXRlLWNlbnRlcigpO1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICA+ICoge1xuICAgICAgICBmaWxsOiBnZXQtY29sb3IoZGFyay1ncmF5KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5nYXRld2F5IHtcblxuICAmX19mb3JtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogNDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IobGlnaHRlci1ncmF5KTtcbiAgfVxuXG59XG4iLCIubG9hZGluZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLnNwaW5uZXIge1xuICAgIGFuaW1hdGlvbjogcm90YXRlIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAmIC5wYXRoIHtcbiAgICAgIHN0cm9rZTogZ2V0LWNvbG9yKGNoYXJjb2FsKTtcbiAgICAgIHN0cm9rZS1saW5lY2FwOiBzcXVhcmU7XG4gICAgICBhbmltYXRpb246IGRhc2ggMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbiAgICB9XG4gIH1cbn1cblxuLmxvYWQtbW9yZSB7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLnBkZi1lbWJlZCB7XG4gIGhlaWdodDogMTEwMHB4O1xuICBtYXJnaW46IDAgYXV0byAzMHB4O1xuICAucGFnZS10ZW1wbGF0ZS1jdXN0b20tY3B0bS10ZW1wbGF0ZSAmIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj10YWJsZXRcIikge1xuICAgIG1hcmdpbjogMCAtNjBweCAzMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgbWFyZ2luOiAwIC0xODBweCAzMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWRlc2t0b3BcIikge1xuICAgIG1hcmdpbjogMCAtMjYwcHggMzBweDtcbiAgfVxufVxuIiwiLyohXG4gIE1vZGFhbCAtIGFjY2Vzc2libGUgbW9kYWxzIC0gdjAuMy4xXG4gIGJ5IEh1bWFhbiwgZm9yIGFsbCBodW1hbnMuXG4gIGh0dHA6Ly9odW1hYW4uY29tXG4gKi9cblxuLy8gTW9kYWFsIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJG1vZGFhbC1vdmVybGF5LWNvbG9yOiByZ2JhKDAsMCwwLCAwLjgpO1xuXG4kbW9kYWFsLXJhZGl1czogMHB4OyAvLzVweFxuJG1vZGFhbC1tYWluLWJnOiAjZmZmO1xuJG1vZGFhbC1tYWluLXRleHQ6ICMwMDA7XG4kbW9kYWFsLW1heC13aWR0aDogMTAwMHB4O1xuJG1vZGFhbC1zaGFkb3c6IDAgNHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuJG1vZGFhbC1wYWRkaW5nOiAzMHB4O1xuJG1vZGFhbC1ob3Zlci1jb2xvcjogcmdiYSgwLDAsMCwgMC43KTtcblxuJG1vZGFhbC1saWdodDogI2ZmZjtcbiRtb2RhYWwtcHJpbWFyeTogIzU1NTtcbiRtb2RhYWwtZ3JleTogI2FmYjdiYztcblxuXG4vLyBNb2RhYWwgTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIG1vZGFhbC10cmFuc2l0aW9uKCR0eXBlLCAkc3BlZWQ6IC4ycywgJGVhc2U6IGVhc2UtaW4tb3V0KSB7XG4gIHRyYW5zaXRpb246ICR0eXBlICN7JHNwZWVkfSAjeyRlYXNlfTtcbn1cbkBtaXhpbiBtb2RhYWwtaGlkZXRleHQoKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDFweCAxcHggMXB4IDFweCk7IC8qIElFNiwgSUU3ICovXG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgcGFkZGluZzowICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjowICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuXG4vLyBNb2RhYWwgU3RydWN0dXJlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vZGFhbC1ub3Njcm9sbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ubW9kYWFsLWFjY2Vzc2libGUtaGlkZSB7XG4gIEBpbmNsdWRlIG1vZGFhbC1oaWRldGV4dDtcbn1cblxuLm1vZGFhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTtcbiAgb3BhY2l0eTogMDtcbn1cbi5tb2RhYWwtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogOTk5OTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIG9wYWNpdHk6IDE7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgQGluY2x1ZGUgbW9kYWFsLXRyYW5zaXRpb24oYWxsLCAwLjNzKTtcbiAgJiAqIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLm1vZGFhbC1jbG9zZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgJi5tb2RhYWwtc3RhcnRfbm9uZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gICYubW9kYWFsLXN0YXJ0X2ZhZGUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmICpbdGFiaW5kZXg9XCIwXCJdIHtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBpcyBmdWxsc2NyZWVuXG4gICYubW9kYWFsLWZ1bGxzY3JlZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cbi5tb2RhYWwtb3V0ZXItd3JhcHBlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC5tb2RhYWwtZnVsbHNjcmVlbiAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLm1vZGFhbC1pbm5lci13cmFwcGVyIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDgwcHggMjVweDtcblxuICAvLyB3aGVuIGlzIGZ1bGxzY3JlZW5cbiAgLm1vZGFhbC1mdWxsc2NyZWVuICYge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxufVxuLm1vZGFhbC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICRtb2RhYWwtbWFpbi10ZXh0O1xuICBtYXgtd2lkdGg6ICRtb2RhYWwtbWF4LXdpZHRoO1xuICBib3JkZXItcmFkaXVzOiAkbW9kYWFsLXJhZGl1cztcbiAgYmFja2dyb3VuZDogJG1vZGFhbC1tYWluLWJnO1xuICBib3gtc2hhZG93OiAkbW9kYWFsLXNoYWRvdztcbiAgY3Vyc29yOiBhdXRvO1xuXG4gIC8vIHdoaWxlIGxvYWRpbmdcbiAgJi5pc19sb2FkaW5nIHtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC8vIHdoZW4gaXMgZnVsbHNjcmVlblxuICAubW9kYWFsLWZ1bGxzY3JlZW4gJiB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxufVxuXG4ubW9kYWFsLWNsb3NlIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMjBweDtcbiAgdG9wOiAyMHB4O1xuICBjb2xvcjogJG1vZGFhbC1saWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAxO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLCAwKTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgQGluY2x1ZGUgbW9kYWFsLXRyYW5zaXRpb24oYWxsKTtcbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIgeyBiYWNrZ3JvdW5kOiAjYjkzZDBjOyB9XG4gIH1cbiAgc3BhbiB7XG4gICAgQGluY2x1ZGUgbW9kYWFsLWhpZGV0ZXh0O1xuICB9XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxNHB4O1xuICAgIGxlZnQ6IDIzcHg7XG4gICAgd2lkdGg6IDRweDtcbiAgICBoZWlnaHQ6IDIycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgQGluY2x1ZGUgbW9kYWFsLXRyYW5zaXRpb24oYmFja2dyb3VuZCk7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB9XG4gIC5tb2RhYWwtZnVsbHNjcmVlbiAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkbW9kYWFsLWdyZXk7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgdG9wOiAxMHB4O1xuICB9XG59XG5cbi5tb2RhYWwtY29udGVudC1jb250YWluZXIge1xuICBwYWRkaW5nOiAkbW9kYWFsLXBhZGRpbmc7XG59XG5cblxuLy8gQ29uZmlybSBNb2RhYWxcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5tb2RhYWwtY29uZmlybS13cmFwIHtcbiAgcGFkZGluZzogMzBweCAwIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwO1xufVxuLm1vZGFhbC1jb25maXJtLWJ0biB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMTBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gIC8vIE9rIEJ1dHRvblxuICAmLm1vZGFhbC1vayB7XG4gICAgcGFkZGluZzogMTBweCAxNXB4O1xuICAgIGNvbG9yOiAkbW9kYWFsLWxpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRtb2RhYWwtcHJpbWFyeTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgQGluY2x1ZGUgbW9kYWFsLXRyYW5zaXRpb24oYmFja2dyb3VuZCk7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJG1vZGFhbC1wcmltYXJ5LCAxNSUpO1xuICAgIH1cbiAgfVxuICAmLm1vZGFhbC1jYW5jZWwge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6IGRhcmtlbigkbW9kYWFsLXByaW1hcnksIDE1JSk7XG4gICAgfVxuICB9XG59XG5cblxuXG5Aa2V5ZnJhbWVzIGluc3RhUmV2ZWFsIHtcbiAgMCUgIHsgb3BhY2l0eTogMDsgfVxuICAxMDAlIHsgb3BhY2l0eTogMTsgfVxufVxuQC1vLWtleWZyYW1lcyBpbnN0YVJldmVhbCB7XG4gIDAlICB7IG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cbn1cbkAtbW96LWtleWZyYW1lcyBpbnN0YVJldmVhbCB7XG4gIDAlICB7IG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBpbnN0YVJldmVhbCB7XG4gIDAlICB7IG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cbn1cbkAtbXMta2V5ZnJhbWVzIGluc3RhUmV2ZWFsIHtcbiAgMCUgIHsgb3BhY2l0eTogMDsgfVxuICAxMDAlIHsgb3BhY2l0eTogMTsgfVxufVxuXG4vLyBJbnN0YWdyYW0gUGhvdG9cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5tb2RhYWwtaW5zdGFncmFtIHtcbiAgLm1vZGFhbC1jb250YWluZXIge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAubW9kYWFsLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG4gIC5tb2RhYWwtY29udGVudC1jb250YWluZXIgPiBibG9ja3F1b3RlIHtcbiAgICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgaWZyYW1lIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIG1hcmdpbjogLTZweCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiA4MDBweCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIGFuaW1hdGlvbjogaW5zdGFSZXZlYWwgMXMgbGluZWFyIGZvcndhcmRzO1xuICB9XG59XG5cblxuXG4vLyBHYWxsZXJ5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vZGFhbC1pbWFnZSB7XG4gIC5tb2RhYWwtaW5uZXItd3JhcHBlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNDBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNDBweDtcbiAgfVxuICAubW9kYWFsLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5tb2RhYWwtZ2FsbGVyeS13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogJG1vZGFhbC1saWdodDtcbn1cbi5tb2RhYWwtZ2FsbGVyeS1pdGVtIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvL3dpZHRoOiAxMDAlO1xuICB9XG4gICYuaXNfYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLm1vZGFhbC1nYWxsZXJ5LWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAyMHB4IDAgMDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG4ubW9kYWFsLWdhbGxlcnktY29udHJvbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgb3BhY2l0eTogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogJG1vZGFhbC1saWdodDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwgMCk7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgQGluY2x1ZGUgbW9kYWFsLXRyYW5zaXRpb24oYWxsKTtcbiAgJi5pc19oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICB9XG4gICY6Zm9jdXMsXG4gICY6aG92ZXIge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRtb2RhYWwtZ3JleTtcbiAgICB9XG4gIH1cbiAgc3BhbiB7XG4gICAgQGluY2x1ZGUgbW9kYWFsLWhpZGV0ZXh0O1xuICB9XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDE2cHg7XG4gICAgbGVmdDogMjVweDtcbiAgICB3aWR0aDogNHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBAaW5jbHVkZSBtb2RhYWwtdHJhbnNpdGlvbihiYWNrZ3JvdW5kKTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgbWFyZ2luOiAtNXB4IDAgMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIG1hcmdpbjogNXB4IDAgMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIH1cbn1cbi5tb2RhYWwtZ2FsbGVyeS1uZXh0IHtcbiAgbGVmdDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDQwcHg7XG59XG4ubW9kYWFsLWdhbGxlcnktcHJldiB7XG4gIHJpZ2h0OiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIgeyBsZWZ0OiAyMnB4OyB9XG4gICY6YmVmb3JlIHtcbiAgICBtYXJnaW46IDVweCAwIDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBtYXJnaW46IC01cHggMCAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgfVxufVxuXG5cbi8vIFZpZGVvXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vZGFhbC12aWRlby13cmFwIHtcbiAgbWFyZ2luOiBhdXRvIDUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm1vZGFhbC12aWRlby1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsMCwwLCAwLjMpO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBtYXgtd2lkdGg6IDEzMDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgaWZyYW1lLFxuICBvYmplY3QsXG4gIGVtYmVkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi8vIE1vZGFhbCBpRnJhbWVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubW9kYWFsLWlmcmFtZSAubW9kYWFsLWNvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLm1vZGFhbC1pZnJhbWUtZWxlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5cbi8vIFJlc3BvbnNpdmUgc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgLm1vZGFhbC12aWRlby1jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGhlaWdodDogNzMxcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTQwcHgpIHtcbiAgLm1vZGFhbC1pbWFnZSB7XG4gICAgLm1vZGFhbC1pbm5lci13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgfVxuICB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sIHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAyMHB4O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLCAwLjcpOztcbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgfVxuICB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1uZXh0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAyMHB4O1xuICB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1wcmV2IHtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5tb2RhYWwtaW5zdGFncmFtIGlmcmFtZSB7XG4gICAgd2lkdGg6IDUwMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiAxMTAwcHgpIHtcbiAgLm1vZGFhbC1pbnN0YWdyYW0gaWZyYW1lIHtcbiAgICB3aWR0aDogNzAwcHggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDEwMDBweCkge1xuICAubW9kYWFsLWlubmVyLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG4gIC5tb2RhYWwtaW5zdGFncmFtIGlmcmFtZSB7XG4gICAgd2lkdGg6IDYwMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA5MDBweCkge1xuICAubW9kYWFsLWluc3RhZ3JhbSBpZnJhbWUge1xuICAgIHdpZHRoOiA1MDBweCAhaW1wb3J0YW50O1xuICB9XG4gIC5tb2RhYWwtdmlkZW8tY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDkwMHB4O1xuICAgIG1heC1oZWlnaHQ6IDUxMHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgLm1vZGFhbC1pbnN0YWdyYW0gaWZyYW1lIHtcbiAgICB3aWR0aDogMjgwcHggIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogODIwcHgpIHtcbiAgLm1vZGFhbC1nYWxsZXJ5LWxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cblxuXG4vLyBDU1MgbG9hZGluZyBnaWZcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IDIwMHB4O1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IC0xMDBweCAwIDAgLTEwMHB4O1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMjUpO1xufVxuQC1tcy1rZXlmcmFtZXMgbW9kYWFsLWxvYWRpbmctc3Bpbm5lcnswJXtvcGFjaXR5OjE7LW1zLXRyYW5zZm9ybTpzY2FsZSgxLjUpOy1tb3otdHJhbnNmb3JtOnNjYWxlKDEuNSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS41KTstby10cmFuc2Zvcm06c2NhbGUoMS41KTt0cmFuc2Zvcm06c2NhbGUoMS41KX0xMDAle29wYWNpdHk6LjE7LW1zLXRyYW5zZm9ybTpzY2FsZSgxKTstbW96LXRyYW5zZm9ybTpzY2FsZSgxKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTstby10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfX1ALW1vei1rZXlmcmFtZXMgbW9kYWFsLWxvYWRpbmctc3Bpbm5lcnswJXtvcGFjaXR5OjE7LW1zLXRyYW5zZm9ybTpzY2FsZSgxLjUpOy1tb3otdHJhbnNmb3JtOnNjYWxlKDEuNSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS41KTstby10cmFuc2Zvcm06c2NhbGUoMS41KTt0cmFuc2Zvcm06c2NhbGUoMS41KX0xMDAle29wYWNpdHk6LjE7LW1zLXRyYW5zZm9ybTpzY2FsZSgxKTstbW96LXRyYW5zZm9ybTpzY2FsZSgxKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTstby10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfX1ALXdlYmtpdC1rZXlmcmFtZXMgbW9kYWFsLWxvYWRpbmctc3Bpbm5lcnswJXtvcGFjaXR5OjE7LW1zLXRyYW5zZm9ybTpzY2FsZSgxLjUpOy1tb3otdHJhbnNmb3JtOnNjYWxlKDEuNSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS41KTstby10cmFuc2Zvcm06c2NhbGUoMS41KTt0cmFuc2Zvcm06c2NhbGUoMS41KX0xMDAle29wYWNpdHk6LjE7LW1zLXRyYW5zZm9ybTpzY2FsZSgxKTstbW96LXRyYW5zZm9ybTpzY2FsZSgxKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTstby10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfX1ALW8ta2V5ZnJhbWVzIG1vZGFhbC1sb2FkaW5nLXNwaW5uZXJ7MCV7b3BhY2l0eToxOy1tcy10cmFuc2Zvcm06c2NhbGUoMS41KTstbW96LXRyYW5zZm9ybTpzY2FsZSgxLjUpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEuNSk7LW8tdHJhbnNmb3JtOnNjYWxlKDEuNSk7dHJhbnNmb3JtOnNjYWxlKDEuNSl9MTAwJXtvcGFjaXR5Oi4xOy1tcy10cmFuc2Zvcm06c2NhbGUoMSk7LW1vei10cmFuc2Zvcm06c2NhbGUoMSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7LW8tdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX19QGtleWZyYW1lcyBtb2RhYWwtbG9hZGluZy1zcGlubmVyezAle29wYWNpdHk6MTstbXMtdHJhbnNmb3JtOnNjYWxlKDEuNSk7LW1vei10cmFuc2Zvcm06c2NhbGUoMS41KTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjUpOy1vLXRyYW5zZm9ybTpzY2FsZSgxLjUpO3RyYW5zZm9ybTpzY2FsZSgxLjUpfTEwMCV7b3BhY2l0eTouMTstbXMtdHJhbnNmb3JtOnNjYWxlKDEpOy1tb3otdHJhbnNmb3JtOnNjYWxlKDEpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpOy1vLXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSl9fS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdnt3aWR0aDoyNHB4O2hlaWdodDoyNHB4O21hcmdpbi1sZWZ0OjRweDttYXJnaW4tdG9wOjRweDtwb3NpdGlvbjphYnNvbHV0ZX0ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY+ZGl2e3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7Ym9yZGVyLXJhZGl1czoxNXB4O2JhY2tncm91bmQ6I2ZmZn0ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoMSk+ZGl2ey1tcy1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW1vei1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LXdlYmtpdC1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW8tYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbjptb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTstbXMtYW5pbWF0aW9uLWRlbGF5OjBzOy1tb3otYW5pbWF0aW9uLWRlbGF5OjBzOy13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OjBzOy1vLWFuaW1hdGlvbi1kZWxheTowczthbmltYXRpb24tZGVsYXk6MHN9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDIpPmRpdiwubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoMyk+ZGl2ey1tcy1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW1vei1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LXdlYmtpdC1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW8tYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSgxKXstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LW1vei10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1vLXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSgyKT5kaXZ7YW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1tcy1hbmltYXRpb24tZGVsYXk6LjEyczstbW96LWFuaW1hdGlvbi1kZWxheTouMTJzOy13ZWJraXQtYW5pbWF0aW9uLWRlbGF5Oi4xMnM7LW8tYW5pbWF0aW9uLWRlbGF5Oi4xMnM7YW5pbWF0aW9uLWRlbGF5Oi4xMnN9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDIpey1tcy10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstbW96LXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LW8tdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDcwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDcwcHgsMCl9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDMpPmRpdnthbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW1zLWFuaW1hdGlvbi1kZWxheTouMjVzOy1tb3otYW5pbWF0aW9uLWRlbGF5Oi4yNXM7LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6LjI1czstby1hbmltYXRpb24tZGVsYXk6LjI1czthbmltYXRpb24tZGVsYXk6LjI1c30ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoNCk+ZGl2LC5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSg1KT5kaXZ7LW1zLWFuaW1hdGlvbjptb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTstbW96LWFuaW1hdGlvbjptb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTstd2Via2l0LWFuaW1hdGlvbjptb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTstby1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGV9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDMpey1tcy10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDEzNWRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LW1vei10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDEzNWRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDEzNWRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LW8tdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgxMzVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMTM1ZGVnKSB0cmFuc2xhdGUoNzBweCwwKX0ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoNCk+ZGl2e2FuaW1hdGlvbjptb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTstbXMtYW5pbWF0aW9uLWRlbGF5Oi4zN3M7LW1vei1hbmltYXRpb24tZGVsYXk6LjM3czstd2Via2l0LWFuaW1hdGlvbi1kZWxheTouMzdzOy1vLWFuaW1hdGlvbi1kZWxheTouMzdzO2FuaW1hdGlvbi1kZWxheTouMzdzfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSg0KXstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1tb3otdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1vLXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlKDcwcHgsMCl9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDUpPmRpdnthbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW1zLWFuaW1hdGlvbi1kZWxheTouNXM7LW1vei1hbmltYXRpb24tZGVsYXk6LjVzOy13ZWJraXQtYW5pbWF0aW9uLWRlbGF5Oi41czstby1hbmltYXRpb24tZGVsYXk6LjVzO2FuaW1hdGlvbi1kZWxheTouNXN9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDYpPmRpdiwubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoNyk+ZGl2ey1tcy1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW1vei1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LXdlYmtpdC1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW8tYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSg1KXstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgyMjVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1tb3otdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgyMjVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgyMjVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1vLXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMjI1ZGVnKSB0cmFuc2xhdGUoNzBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDIyNWRlZykgdHJhbnNsYXRlKDcwcHgsMCl9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDYpPmRpdnthbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW1zLWFuaW1hdGlvbi1kZWxheTouNjJzOy1tb3otYW5pbWF0aW9uLWRlbGF5Oi42MnM7LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6LjYyczstby1hbmltYXRpb24tZGVsYXk6LjYyczthbmltYXRpb24tZGVsYXk6LjYyc30ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoNil7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMjcwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstbW96LXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMjcwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMjcwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstby10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDI3MGRlZykgdHJhbnNsYXRlKDcwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSg3KT5kaXZ7YW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1tcy1hbmltYXRpb24tZGVsYXk6Ljc1czstbW96LWFuaW1hdGlvbi1kZWxheTouNzVzOy13ZWJraXQtYW5pbWF0aW9uLWRlbGF5Oi43NXM7LW8tYW5pbWF0aW9uLWRlbGF5Oi43NXM7YW5pbWF0aW9uLWRlbGF5Oi43NXN9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDcpey1tcy10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDMxNWRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LW1vei10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDMxNWRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDMxNWRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LW8tdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgzMTVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMzE1ZGVnKSB0cmFuc2xhdGUoNzBweCwwKX0ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoOCk+ZGl2ey1tcy1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW1vei1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LXdlYmtpdC1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW8tYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO2FuaW1hdGlvbjptb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTstbXMtYW5pbWF0aW9uLWRlbGF5Oi44N3M7LW1vei1hbmltYXRpb24tZGVsYXk6Ljg3czstd2Via2l0LWFuaW1hdGlvbi1kZWxheTouODdzOy1vLWFuaW1hdGlvbi1kZWxheTouODdzO2FuaW1hdGlvbi1kZWxheTouODdzfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSg4KXstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgzNjBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1tb3otdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgzNjBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgzNjBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1vLXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMzYwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDM2MGRlZykgdHJhbnNsYXRlKDcwcHgsMCl9XG5cblxuLy8gT3ZlcnJpZGUgbW9kYWFsIHN0eWxlcyB0byBmb3JjZSBmdWxsc2NyZWVuIG9uIG1vYmlsZVxuQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgLm1vZGFhbC1jb250ZW50LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMzBweCAzMHB4IDgwcHg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICB9XG4gIC5tb2RhYWwtd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5tb2RhYWwtb3V0ZXItd3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgLm1vZGFhbC1pbm5lci13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxuICAgIC5tb2RhYWwtY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbiAgICAubW9kYWFsLWNsb3NlIHtcbiAgICAgIGJhY2tncm91bmQ6IGdldC1jb2xvcihncmF5KTtcbiAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuICAgIH1cbiAgfVxufVxuIiwiQGluY2x1ZGUgbWVkaWEoXCI8dGFibGV0XCIpIHtcbiAgICB0YWJsZS5idCB0aCxcbiAgICB0YWJsZS5idCB0ZCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAvLyBAaW5jbHVkZSBtZWRpYSgnPj1sYXB0b3AnKSB7XG4gICAgICAvLyAgIHBhZGRpbmc6IGluaGVyaXQ7XG4gICAgICAvLyAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgICAvLyB9XG4gICAgfVxuXG4gICAgdGFibGUuYnQgdGJvZHkgdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAuYnQtY29udGVudCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHJlbSg0KSBzb2xpZCBnZXQtY29sb3Iod2hpdGUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRhYmxlLmJ0IHRoZWFkLFxuICAgIHRhYmxlLmJ0IHRib2R5IHRoIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgdGFibGUuYnQgdGZvb3QgdGgsXG4gICAgdGFibGUuYnQgdGZvb3QgdGQsXG4gICAgdGFibGUuYnQgdGJvZHkgdGQge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgICAgIC8qIElFIDkgKi9cbiAgICAgIGZsb2F0OiBsZWZ0XFw5O1xuICAgICAgd2lkdGg6IDEwMCVcXDk7XG4gICAgfVxuXG4gICAgdGFibGUuYnQgdGZvb3QgdGg6OmJlZm9yZSxcbiAgICB0YWJsZS5idCB0Zm9vdCB0ZDo6YmVmb3JlLFxuICAgIHRhYmxlLmJ0IHRib2R5IHRkOjpiZWZvcmUge1xuICAgICAgY29udGVudDogYXR0cihkYXRhLXRoKSBcIjogXCI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAtd2Via2l0LWZsZXgtc2hyaW5rOiAwO1xuICAgICAgLW1zLWZsZXgtc2hyaW5rOiAwO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgcGFkZGluZzogcmVtKDkpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKGRhcmstZ3JheSk7XG4gICAgICBjb2xvcjogZ2V0LWNvbG9yKHdoaXRlKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgfVxuXG4gICAgdGFibGUuYnQgdGZvb3QgdGguYnQtaGlkZSxcbiAgICB0YWJsZS5idCB0Zm9vdCB0ZC5idC1oaWRlLFxuICAgIHRhYmxlLmJ0IHRib2R5IHRkLmJ0LWhpZGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICB0YWJsZS5idCB0Zm9vdCB0aCAuYnQtY29udGVudCxcbiAgICB0YWJsZS5idCB0Zm9vdCB0ZCAuYnQtY29udGVudCxcbiAgICB0YWJsZS5idCB0Ym9keSB0ZCAuYnQtY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogcmVtKDkpO1xuICAgICAgYm9yZGVyLXRvcDogcmVtKDEpIHNvbGlkIGdldC1jb2xvcihsaWdodC1ncmF5KTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxuXG4gICAgLmJ0LXdyYXBwZXIuYWN0aXZlIHtcbiAgICAgIG1heC1oZWlnaHQ6IHJlbSgzMTApO1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgfVxufVxuIiwiLy8gQ2xhc3NlcyBmb3IgbGF6eSBsb2FkaW5nXG4vLyBDb250cm9sbGVkIHZpYSAvanMvbGliL2xhenlzaXplc1xuLmxhenlsb2FkLFxuLmxhenlsb2FkaW5nIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuLmxhenlsb2FkZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNHMgZWFzZTtcbn1cbiIsIi5iYWNrLXRvIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW46IDAgMCA0MHB4O1xuXHRmb250LXdlaWdodDogNjAwO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7XG5cblx0Jjpob3Zlcixcblx0JjphY3RpdmUge1xuXHRcdHNwYW4ge1xuXHRcdFx0QGluY2x1ZGUgdW5kZXJsaW5lKCk7XG5cdFx0fVxuXG5cdFx0LnN2Zyxcblx0XHRzdmcge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC04cHgpO1xuXHRcdH1cblx0fVxuXG5cdHNwYW4ge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7XG5cdH1cblxuXHQuc3ZnLFxuXHRzdmcge1xuXHRcdHdpZHRoOiAxMHB4O1xuXHRcdGhlaWdodDogMTBweDtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7XG5cdH1cbn0iLCIuc2lkZWJhcl9fbWVudSB7XG4gICAgbWFyZ2luOiAwIDAgNjBweDtcbiAgICAuZmlsdGVyX19saXN0IHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBnZXQtY29sb3IoZGFyay1ncmF5KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBnZXQtY29sb3IoY2hhcmNvYWwpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPGxhcHRvcFwiKSB7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogZ2V0LWNvbG9yKGRhcmstZ3JheSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZVkoNHB4KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGVZKC00cHgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxhcHRvcFwiKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdW5kZXJsaW5lKCRiZ2NvbG9yOiBnZXQtY29sb3IoZGFyay1ncmF5KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRiYXNlLWFuaW1hdGlvbi1zcGVlZCAkYmFzZS1hbmltYXRpb24tZWFzaW5nO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGdldC1jb2xvcihjaGFyY29hbCk7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHVuZGVybGluZSgkYmdjb2xvcjogZ2V0LWNvbG9yKGRhcmstZ3JheSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkYmFzZS1hbmltYXRpb24tc3BlZWQgJGJhc2UtYW5pbWF0aW9uLWVhc2luZztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqXG4gKiBPd2wgQ2Fyb3VzZWwgdjIuMy40XG4gKiBDb3B5cmlnaHQgMjAxMy0yMDE4IERhdmlkIERldXRzY2hcbiAqIExpY2Vuc2VkIHVuZGVyOiBTRUUgTElDRU5TRSBJTiBodHRwczovL2dpdGh1Yi5jb20vT3dsQ2Fyb3VzZWwyL093bENhcm91c2VsMi9ibG9iL21hc3Rlci9MSUNFTlNFXG4gKi9cbi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQ29yZVxuICovXG4gLm93bC1jYXJvdXNlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8qIHBvc2l0aW9uIHJlbGF0aXZlIGFuZCB6LWluZGV4IGZpeCB3ZWJraXQgcmVuZGVyaW5nIGZvbnRzIGlzc3VlICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLVk7XG4gICAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAvKiBmaXggZmlyZWZveCBhbmltYXRpb24gZ2xpdGNoICovIH1cbiAgICAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2U6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIuXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBoZWlnaHQ6IDA7IH1cbiAgICAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIC8qIGZpeCBmb3IgZmxhc2hpbmcgYmFja2dyb3VuZCAqL1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMHB4LCAwcHgpOyB9XG4gICAgLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXIsXG4gICAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICAgICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuICAgIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lOyB9XG4gICAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAub3dsLWNhcm91c2VsIC5vd2wtbmF2LmRpc2FibGVkLFxuICAgIC5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzLmRpc2FibGVkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldixcbiAgICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtbmV4dCxcbiAgICAub3dsLWNhcm91c2VsIC5vd2wtZG90IHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5vd2wtcHJldixcbiAgICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5vd2wtbmV4dCxcbiAgICAub3dsLWNhcm91c2VsIGJ1dHRvbi5vd2wtZG90IHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIGZvbnQ6IGluaGVyaXQ7IH1cbiAgICAub3dsLWNhcm91c2VsLm93bC1sb2FkZWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAub3dsLWNhcm91c2VsLm93bC1sb2FkaW5nIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5vd2wtY2Fyb3VzZWwub3dsLWhpZGRlbiB7XG4gICAgICBvcGFjaXR5OiAwOyB9XG4gICAgLm93bC1jYXJvdXNlbC5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gICAgLm93bC1jYXJvdXNlbC5vd2wtZHJhZyAub3dsLWl0ZW0ge1xuICAgICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgICAgICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgICAub3dsLWNhcm91c2VsLm93bC1ncmFiIHtcbiAgICAgIGN1cnNvcjogbW92ZTtcbiAgICAgIGN1cnNvcjogZ3JhYjsgfVxuICAgIC5vd2wtY2Fyb3VzZWwub3dsLXJ0bCB7XG4gICAgICBkaXJlY3Rpb246IHJ0bDsgfVxuICAgIC5vd2wtY2Fyb3VzZWwub3dsLXJ0bCAub3dsLWl0ZW0ge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbiAgLyogTm8gSnMgKi9cbiAgLm5vLWpzIC5vd2wtY2Fyb3VzZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbiAgLypcbiAgICogIE93bCBDYXJvdXNlbCAtIEFuaW1hdGUgUGx1Z2luXG4gICAqL1xuICAub3dsLWNhcm91c2VsIC5hbmltYXRlZCB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMDAwbXM7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDsgfVxuXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1pbiB7XG4gICAgei1pbmRleDogMDsgfVxuXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1vdXQge1xuICAgIHotaW5kZXg6IDE7IH1cblxuICAub3dsLWNhcm91c2VsIC5mYWRlT3V0IHtcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dDsgfVxuXG4gIEBrZXlmcmFtZXMgZmFkZU91dCB7XG4gICAgMCUge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAgIDEwMCUge1xuICAgICAgb3BhY2l0eTogMDsgfSB9XG5cbiAgLypcbiAgICogXHRPd2wgQ2Fyb3VzZWwgLSBBdXRvIEhlaWdodCBQbHVnaW5cbiAgICovXG4gIC5vd2wtaGVpZ2h0IHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7IH1cblxuICAvKlxuICAgKiBcdE93bCBDYXJvdXNlbCAtIExhenkgTG9hZCBQbHVnaW5cbiAgICovXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHtcbiAgICAvKipcbiAgICAgICAgICAgICAgVGhpcyBpcyBpbnRyb2R1Y2VkIGR1ZSB0byBhIGJ1ZyBpbiBJRTExIHdoZXJlIGxhenkgbG9hZGluZyBjb21iaW5lZCB3aXRoIGF1dG9oZWlnaHQgcGx1Z2luIGNhdXNlcyBhIHdyb25nXG4gICAgICAgICAgICAgIGNhbGN1bGF0aW9uIG9mIHRoZSBoZWlnaHQgb2YgdGhlIG93bC1pdGVtIHRoYXQgYnJlYWtzIHBhZ2UgbGF5b3V0c1xuICAgICAgICAgICAqLyB9XG4gICAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLm93bC1sYXp5IHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7IH1cbiAgICAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenlbc3JjXj1cIlwiXSwgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLm93bC1sYXp5Om5vdChbc3JjXSkge1xuICAgICAgbWF4LWhlaWdodDogMDsgfVxuICAgIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIGltZy5vd2wtbGF6eSB7XG4gICAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyB9XG5cbiAgLypcbiAgICogXHRPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW5cbiAgICovXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICMwMDA7IH1cblxuICAub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheS1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gICAgYmFja2dyb3VuZDogdXJsKFwib3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogMTtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZTsgfVxuXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb246aG92ZXIge1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMsIDEuMyk7IH1cblxuICAub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXRuLFxuICAub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby10biB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7IH1cblxuICAub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tZnJhbWUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfSIsImZvcm0ucG9zdC1wYXNzd29yZC1mb3JtIHtcbiAgICBwOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIC8vdGV4dGJveCBhbmQgYnV0dG9uIHdyYXBwZXJcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDA7IFxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTBweDtcbiAgICAgICAgICAgICZbbmFtZT1cIlN1Ym1pdFwiXSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMzJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgIH0gXG4gICAgICAgIH1cbiAgICB9XG59IiwiJWNsZWFyIHtcbiAgICBjbGVhcjogYm90aDtcbn1cbi5jbGVhciB7XG4gICAgQGV4dGVuZCAlY2xlYXI7XG59XG4uYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLmNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi8vIFdvcmRwcmVzcyBjbGFzc2VzXG4uYWxpZ25sZWZ0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjVlbTtcbn1cblxuLmFsaWducmlnaHQge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNWVtO1xufVxuXG4uYWxpZ25jZW50ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnB1c2gge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi8qIFRleHQgbWVhbnQgb25seSBmb3Igc2NyZWVuIHJlYWRlcnMuICovXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgd2lkdGg6IDFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihsaWdodC1ncmF5KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgICAgIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IGdldC1jb2xvcihncmF5KTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDAuODc1KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDIzcHggMTRweDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHotaW5kZXg6IDEwMDAwMDsgLyogQWJvdmUgV1AgdG9vbGJhci4gKi9cbiAgICB9XG59XG4uZ2FsbGVyeSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG5cbi5nYWxsZXJ5LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC5nYWxsZXJ5LWNvbHVtbnMtMiAmIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgfVxuXG4gICAgLmdhbGxlcnktY29sdW1ucy0zICYge1xuICAgICAgICBtYXgtd2lkdGg6IDMzLjMzJTtcbiAgICB9XG5cbiAgICAuZ2FsbGVyeS1jb2x1bW5zLTQgJiB7XG4gICAgICAgIG1heC13aWR0aDogMjUlO1xuICAgIH1cblxuICAgIC5nYWxsZXJ5LWNvbHVtbnMtNSAmIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMCU7XG4gICAgfVxuXG4gICAgLmdhbGxlcnktY29sdW1ucy02ICYge1xuICAgICAgICBtYXgtd2lkdGg6IDE2LjY2JTtcbiAgICB9XG5cbiAgICAuZ2FsbGVyeS1jb2x1bW5zLTcgJiB7XG4gICAgICAgIG1heC13aWR0aDogMTQuMjglO1xuICAgIH1cblxuICAgIC5nYWxsZXJ5LWNvbHVtbnMtOCAmIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMi41JTtcbiAgICB9XG5cbiAgICAuZ2FsbGVyeS1jb2x1bW5zLTkgJiB7XG4gICAgICAgIG1heC13aWR0aDogMTEuMTElO1xuICAgIH1cbn1cblxuLmdhbGxlcnktY2FwdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4ud3AtY2FwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgaW1nW2NsYXNzKj1cIndwLWltYWdlLVwiXSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC53cC1jYXB0aW9uLXRleHQge1xuICAgICAgICBtYXJnaW46IDAuODA3NWVtIDA7XG4gICAgfVxufVxuXG4ud3AtY2FwdGlvbi10ZXh0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5ub3RlIHtcbiAgZm9udC1zaXplOiByZW0oMTQpO1xufVxuIiwiLmhvbWUge1xuICAgIC5zaXRlLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG5cbiAgICAuY29udGVudC1tb2R1bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgfVxufVxuIiwiLmVycm9yLTQwNCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAucGFnZV9faGVhZGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gIH1cblxuICAucGFnZV9fZGVzYyB7XG4gICAgZm9udC1zaXplOiByZW0oMTkpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXRhYmxldFwiKSB7XG4gICAgICBmb250LXNpemU6IHJlbSgyMSk7XG4gICAgfVxuICB9XG59XG4iLCJbZGF0YS1jb250ZW50PVwiZWRpdG9yXCJdIHtcbiAgICBhIHtcbiAgICAgICAgQGluY2x1ZGUgdW5kZXJsaW5lKCk7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiBnZXQtY29sb3IoZGFyay1ncmF5KTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gaW1nIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCA1cHggMHB4IGdldC1jb2xvcih3aGl0ZSk7IC8vIENvdmVycyB0aGUgdW5kZXJsaW5lIG9uIGltYWdlc1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gU3R5bGUgYWxsIExpc3RzLCBidXQgbm90IEdmb3Jtc1xuICAgIHVsOm5vdCguZ2Zvcm1fZmllbGRzKSB7XG4gICAgICAgIEBleHRlbmQgdWwlZGVmYXVsdC11bDtcbiAgICB9XG5cbiAgICAvLyByZXNldCBhbGwgTGlzdHMgaW5zaWRlIG9mIEdmb3Jtc1xuICAgIC5nZm9ybV9maWVsZHMgdWwsXG4gICAgLmdmb3JtX2ZpZWxkcyBvbCB7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIG9sIHtcbiAgICAgICAgQGV4dGVuZCB1bCVkZWZhdWx0LW9sO1xuICAgIH1cblxuICAgIGltZ1tjbGFzcyo9XCJhbGlnblwiXSxcbiAgICBpbWdbY2xhc3MqPVwid3AtaW1hZ2UtXCJdIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAvKiBNYWtlIHN1cmUgaW1hZ2VzIHdpdGggV29yZFByZXNzLWFkZGVkIGhlaWdodCBhbmQgd2lkdGggPmF0dHJpYnV0ZXMgYXJlIHNjYWxlZCBjb3JyZWN0bHkgKi9cbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgdGFibGUge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGJvcmRlcjogMDtcblxuICAgICAgICB0ZCwgdGgge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGFibGUuYm9yZGVyIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG5cbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIGdldC1jb2xvcihsaWdodC1ncmF5KTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBnZXQtY29sb3IobGlnaHQtZ3JheSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucGFnZS10ZW1wbGF0ZS1jdXN0b20tZmluZGNvdXJzZXMge1xuICAvLyBQYWQgZG93biBib2R5IHNpbmNlIHRoZXJlIGFyZW4ndCBhbnkgYWRzXG4gIHBhZGRpbmctdG9wOiA4MHB4O1xufVxuIiwiZGl2W2lkJD1cIi1vcHRpblwiXSB7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgZGl2W2NsYXNzJD1cIi1mb3JtLXdyYXBcIl0gZGl2IHNwYW4ge1xuICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQgIWltcG9ydGFudDtcbiAgICB9IFxufSJdfQ== */
