@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.3.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
       ========================================================================== */
/**
     * 1. Change the default font family in all browsers (opinionated).
     * 2. Correct the line height in all browsers.
     * 3. Prevent adjustments of font size after orientation changes in
     *    IE on Windows Phone and in iOS.
     */
html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */ }

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

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

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

/* Grouping content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
figcaption,
figure {
  display: block; }

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

/**
     * Add the correct display in IE.
     */
main {
  display: block; }

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

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

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

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

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

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

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

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

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

/**
     * Show the overflow in IE.
     */
button {
  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 */ }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  /**
       * Remove the inner border and padding in Firefox.
       */
  /**
       * Restore the focus styles unset by the previous rule.
       */ }
  button::-moz-focus-inner,
  [type="button"]::-moz-focus-inner,
  [type="reset"]::-moz-focus-inner,
  [type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0; }
  button:-moz-focusring,
  [type="button"]:-moz-focusring,
  [type="reset"]:-moz-focusring,
  [type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText; }

/**
     * Show the overflow in Edge.
     */
input {
  overflow: visible; }

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

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

/**
     * 1. Correct the odd appearance in Chrome and Safari.
     * 2. Correct the outline style in Safari.
     */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
  /**
       * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
       */ }
  [type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
    -webkit-appearance: none; }

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

/**
     * 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 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  color: inherit;
  /* 2 */
  white-space: normal;
  /* 1 */ }

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

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

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

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

/*
     * Add the correct display in IE 9-.
     */
menu {
  display: block; }

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

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

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

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"; }

html {
  box-sizing: border-box;
  font-size: 100%; }

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

body {
  margin: 0;
  padding: 0;
  background: #ffffff;
  font-family: "Nissan-Regular", Arial, sans-serif;
  font-weight: 400;
  line-height: 1.5;
  color: #222222;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0; }

select {
  box-sizing: border-box;
  width: 100%;
  border-radius: 0; }

.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important; }

button {
  padding: 0;
  -webkit-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1; }
  [data-whatinput='mouse'] button {
    outline: 0; }

pre {
  overflow: auto; }

.is-visible {
  display: block !important; }

.is-hidden {
  display: none !important; }

.row {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto; }
  .row::before, .row::after {
    display: table;
    content: ' '; }
  .row::after {
    clear: both; }
  .row.collapse > .column, .row.collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .row .row {
    margin-right: -0.625rem;
    margin-left: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .row .row {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .row .row {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .row .row.collapse {
      margin-right: 0;
      margin-left: 0; }
  .row.expanded {
    max-width: none; }
    .row.expanded .row {
      margin-right: auto;
      margin-left: auto; }
  .row:not(.expanded) .row {
    max-width: none; }
  .row.gutter-small > .column, .row.gutter-small > .columns {
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
  .row.gutter-medium > .column, .row.gutter-medium > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem; }

.column, .columns {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .column, .columns {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
    float: right; }
  .column.end:last-child:last-child, .end.columns:last-child:last-child {
    float: left; }

.column.row.row, .row.row.columns {
  float: none; }

.row .column.row.row, .row .row.row.columns {
  margin-right: 0;
  margin-left: 0;
  padding-right: 0;
  padding-left: 0; }

.small-1 {
  width: 8.33333%; }

.small-push-1 {
  position: relative;
  left: 8.33333%; }

.small-pull-1 {
  position: relative;
  left: -8.33333%; }

.small-offset-0 {
  margin-left: 0%; }

.small-2 {
  width: 16.66667%; }

.small-push-2 {
  position: relative;
  left: 16.66667%; }

.small-pull-2 {
  position: relative;
  left: -16.66667%; }

.small-offset-1 {
  margin-left: 8.33333%; }

.small-3 {
  width: 25%; }

.small-push-3 {
  position: relative;
  left: 25%; }

.small-pull-3 {
  position: relative;
  left: -25%; }

.small-offset-2 {
  margin-left: 16.66667%; }

.small-4 {
  width: 33.33333%; }

.small-push-4 {
  position: relative;
  left: 33.33333%; }

.small-pull-4 {
  position: relative;
  left: -33.33333%; }

.small-offset-3 {
  margin-left: 25%; }

.small-5 {
  width: 41.66667%; }

.small-push-5 {
  position: relative;
  left: 41.66667%; }

.small-pull-5 {
  position: relative;
  left: -41.66667%; }

.small-offset-4 {
  margin-left: 33.33333%; }

.small-6 {
  width: 50%; }

.small-push-6 {
  position: relative;
  left: 50%; }

.small-pull-6 {
  position: relative;
  left: -50%; }

.small-offset-5 {
  margin-left: 41.66667%; }

.small-7 {
  width: 58.33333%; }

.small-push-7 {
  position: relative;
  left: 58.33333%; }

.small-pull-7 {
  position: relative;
  left: -58.33333%; }

.small-offset-6 {
  margin-left: 50%; }

.small-8 {
  width: 66.66667%; }

.small-push-8 {
  position: relative;
  left: 66.66667%; }

.small-pull-8 {
  position: relative;
  left: -66.66667%; }

.small-offset-7 {
  margin-left: 58.33333%; }

.small-9 {
  width: 75%; }

.small-push-9 {
  position: relative;
  left: 75%; }

.small-pull-9 {
  position: relative;
  left: -75%; }

.small-offset-8 {
  margin-left: 66.66667%; }

.small-10 {
  width: 83.33333%; }

.small-push-10 {
  position: relative;
  left: 83.33333%; }

.small-pull-10 {
  position: relative;
  left: -83.33333%; }

.small-offset-9 {
  margin-left: 75%; }

.small-11 {
  width: 91.66667%; }

.small-push-11 {
  position: relative;
  left: 91.66667%; }

.small-pull-11 {
  position: relative;
  left: -91.66667%; }

.small-offset-10 {
  margin-left: 83.33333%; }

.small-12 {
  width: 100%; }

.small-offset-11 {
  margin-left: 91.66667%; }

.small-up-1 > .column, .small-up-1 > .columns {
  float: left;
  width: 100%; }
  .small-up-1 > .column:nth-of-type(1n), .small-up-1 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-1 > .column:nth-of-type(1n+1), .small-up-1 > .columns:nth-of-type(1n+1) {
    clear: both; }
  .small-up-1 > .column:last-child, .small-up-1 > .columns:last-child {
    float: left; }

.small-up-2 > .column, .small-up-2 > .columns {
  float: left;
  width: 50%; }
  .small-up-2 > .column:nth-of-type(1n), .small-up-2 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-2 > .column:nth-of-type(2n+1), .small-up-2 > .columns:nth-of-type(2n+1) {
    clear: both; }
  .small-up-2 > .column:last-child, .small-up-2 > .columns:last-child {
    float: left; }

.small-up-3 > .column, .small-up-3 > .columns {
  float: left;
  width: 33.33333%; }
  .small-up-3 > .column:nth-of-type(1n), .small-up-3 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-3 > .column:nth-of-type(3n+1), .small-up-3 > .columns:nth-of-type(3n+1) {
    clear: both; }
  .small-up-3 > .column:last-child, .small-up-3 > .columns:last-child {
    float: left; }

.small-up-4 > .column, .small-up-4 > .columns {
  float: left;
  width: 25%; }
  .small-up-4 > .column:nth-of-type(1n), .small-up-4 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-4 > .column:nth-of-type(4n+1), .small-up-4 > .columns:nth-of-type(4n+1) {
    clear: both; }
  .small-up-4 > .column:last-child, .small-up-4 > .columns:last-child {
    float: left; }

.small-up-5 > .column, .small-up-5 > .columns {
  float: left;
  width: 20%; }
  .small-up-5 > .column:nth-of-type(1n), .small-up-5 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-5 > .column:nth-of-type(5n+1), .small-up-5 > .columns:nth-of-type(5n+1) {
    clear: both; }
  .small-up-5 > .column:last-child, .small-up-5 > .columns:last-child {
    float: left; }

.small-up-6 > .column, .small-up-6 > .columns {
  float: left;
  width: 16.66667%; }
  .small-up-6 > .column:nth-of-type(1n), .small-up-6 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-6 > .column:nth-of-type(6n+1), .small-up-6 > .columns:nth-of-type(6n+1) {
    clear: both; }
  .small-up-6 > .column:last-child, .small-up-6 > .columns:last-child {
    float: left; }

.small-up-7 > .column, .small-up-7 > .columns {
  float: left;
  width: 14.28571%; }
  .small-up-7 > .column:nth-of-type(1n), .small-up-7 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-7 > .column:nth-of-type(7n+1), .small-up-7 > .columns:nth-of-type(7n+1) {
    clear: both; }
  .small-up-7 > .column:last-child, .small-up-7 > .columns:last-child {
    float: left; }

.small-up-8 > .column, .small-up-8 > .columns {
  float: left;
  width: 12.5%; }
  .small-up-8 > .column:nth-of-type(1n), .small-up-8 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-8 > .column:nth-of-type(8n+1), .small-up-8 > .columns:nth-of-type(8n+1) {
    clear: both; }
  .small-up-8 > .column:last-child, .small-up-8 > .columns:last-child {
    float: left; }

.small-collapse > .column, .small-collapse > .columns {
  padding-right: 0;
  padding-left: 0; }

.small-collapse .row {
  margin-right: 0;
  margin-left: 0; }

.expanded.row .small-collapse.row {
  margin-right: 0;
  margin-left: 0; }

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-right: 0.625rem;
  padding-left: 0.625rem; }

.small-centered {
  margin-right: auto;
  margin-left: auto; }
  .small-centered, .small-centered:last-child:not(:first-child) {
    float: none;
    clear: both; }

.small-uncentered,
.small-push-0,
.small-pull-0 {
  position: static;
  float: left;
  margin-right: 0;
  margin-left: 0; }

@media print, screen and (min-width: 40em) {
  .medium-1 {
    width: 8.33333%; }
  .medium-push-1 {
    position: relative;
    left: 8.33333%; }
  .medium-pull-1 {
    position: relative;
    left: -8.33333%; }
  .medium-offset-0 {
    margin-left: 0%; }
  .medium-2 {
    width: 16.66667%; }
  .medium-push-2 {
    position: relative;
    left: 16.66667%; }
  .medium-pull-2 {
    position: relative;
    left: -16.66667%; }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .medium-3 {
    width: 25%; }
  .medium-push-3 {
    position: relative;
    left: 25%; }
  .medium-pull-3 {
    position: relative;
    left: -25%; }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .medium-4 {
    width: 33.33333%; }
  .medium-push-4 {
    position: relative;
    left: 33.33333%; }
  .medium-pull-4 {
    position: relative;
    left: -33.33333%; }
  .medium-offset-3 {
    margin-left: 25%; }
  .medium-5 {
    width: 41.66667%; }
  .medium-push-5 {
    position: relative;
    left: 41.66667%; }
  .medium-pull-5 {
    position: relative;
    left: -41.66667%; }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .medium-6 {
    width: 50%; }
  .medium-push-6 {
    position: relative;
    left: 50%; }
  .medium-pull-6 {
    position: relative;
    left: -50%; }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .medium-7 {
    width: 58.33333%; }
  .medium-push-7 {
    position: relative;
    left: 58.33333%; }
  .medium-pull-7 {
    position: relative;
    left: -58.33333%; }
  .medium-offset-6 {
    margin-left: 50%; }
  .medium-8 {
    width: 66.66667%; }
  .medium-push-8 {
    position: relative;
    left: 66.66667%; }
  .medium-pull-8 {
    position: relative;
    left: -66.66667%; }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .medium-9 {
    width: 75%; }
  .medium-push-9 {
    position: relative;
    left: 75%; }
  .medium-pull-9 {
    position: relative;
    left: -75%; }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .medium-10 {
    width: 83.33333%; }
  .medium-push-10 {
    position: relative;
    left: 83.33333%; }
  .medium-pull-10 {
    position: relative;
    left: -83.33333%; }
  .medium-offset-9 {
    margin-left: 75%; }
  .medium-11 {
    width: 91.66667%; }
  .medium-push-11 {
    position: relative;
    left: 91.66667%; }
  .medium-pull-11 {
    position: relative;
    left: -91.66667%; }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .medium-12 {
    width: 100%; }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .medium-up-1 > .column, .medium-up-1 > .columns {
    float: left;
    width: 100%; }
    .medium-up-1 > .column:nth-of-type(1n), .medium-up-1 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-1 > .column:nth-of-type(1n+1), .medium-up-1 > .columns:nth-of-type(1n+1) {
      clear: both; }
    .medium-up-1 > .column:last-child, .medium-up-1 > .columns:last-child {
      float: left; }
  .medium-up-2 > .column, .medium-up-2 > .columns {
    float: left;
    width: 50%; }
    .medium-up-2 > .column:nth-of-type(1n), .medium-up-2 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-2 > .column:nth-of-type(2n+1), .medium-up-2 > .columns:nth-of-type(2n+1) {
      clear: both; }
    .medium-up-2 > .column:last-child, .medium-up-2 > .columns:last-child {
      float: left; }
  .medium-up-3 > .column, .medium-up-3 > .columns {
    float: left;
    width: 33.33333%; }
    .medium-up-3 > .column:nth-of-type(1n), .medium-up-3 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-3 > .column:nth-of-type(3n+1), .medium-up-3 > .columns:nth-of-type(3n+1) {
      clear: both; }
    .medium-up-3 > .column:last-child, .medium-up-3 > .columns:last-child {
      float: left; }
  .medium-up-4 > .column, .medium-up-4 > .columns {
    float: left;
    width: 25%; }
    .medium-up-4 > .column:nth-of-type(1n), .medium-up-4 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-4 > .column:nth-of-type(4n+1), .medium-up-4 > .columns:nth-of-type(4n+1) {
      clear: both; }
    .medium-up-4 > .column:last-child, .medium-up-4 > .columns:last-child {
      float: left; }
  .medium-up-5 > .column, .medium-up-5 > .columns {
    float: left;
    width: 20%; }
    .medium-up-5 > .column:nth-of-type(1n), .medium-up-5 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-5 > .column:nth-of-type(5n+1), .medium-up-5 > .columns:nth-of-type(5n+1) {
      clear: both; }
    .medium-up-5 > .column:last-child, .medium-up-5 > .columns:last-child {
      float: left; }
  .medium-up-6 > .column, .medium-up-6 > .columns {
    float: left;
    width: 16.66667%; }
    .medium-up-6 > .column:nth-of-type(1n), .medium-up-6 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-6 > .column:nth-of-type(6n+1), .medium-up-6 > .columns:nth-of-type(6n+1) {
      clear: both; }
    .medium-up-6 > .column:last-child, .medium-up-6 > .columns:last-child {
      float: left; }
  .medium-up-7 > .column, .medium-up-7 > .columns {
    float: left;
    width: 14.28571%; }
    .medium-up-7 > .column:nth-of-type(1n), .medium-up-7 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-7 > .column:nth-of-type(7n+1), .medium-up-7 > .columns:nth-of-type(7n+1) {
      clear: both; }
    .medium-up-7 > .column:last-child, .medium-up-7 > .columns:last-child {
      float: left; }
  .medium-up-8 > .column, .medium-up-8 > .columns {
    float: left;
    width: 12.5%; }
    .medium-up-8 > .column:nth-of-type(1n), .medium-up-8 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-8 > .column:nth-of-type(8n+1), .medium-up-8 > .columns:nth-of-type(8n+1) {
      clear: both; }
    .medium-up-8 > .column:last-child, .medium-up-8 > .columns:last-child {
      float: left; }
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .medium-collapse .row {
    margin-right: 0;
    margin-left: 0; }
  .expanded.row .medium-collapse.row {
    margin-right: 0;
    margin-left: 0; }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem; }
  .medium-centered {
    margin-right: auto;
    margin-left: auto; }
    .medium-centered, .medium-centered:last-child:not(:first-child) {
      float: none;
      clear: both; }
  .medium-uncentered,
  .medium-push-0,
  .medium-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-1 {
    width: 8.33333%; }
  .large-push-1 {
    position: relative;
    left: 8.33333%; }
  .large-pull-1 {
    position: relative;
    left: -8.33333%; }
  .large-offset-0 {
    margin-left: 0%; }
  .large-2 {
    width: 16.66667%; }
  .large-push-2 {
    position: relative;
    left: 16.66667%; }
  .large-pull-2 {
    position: relative;
    left: -16.66667%; }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .large-3 {
    width: 25%; }
  .large-push-3 {
    position: relative;
    left: 25%; }
  .large-pull-3 {
    position: relative;
    left: -25%; }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .large-4 {
    width: 33.33333%; }
  .large-push-4 {
    position: relative;
    left: 33.33333%; }
  .large-pull-4 {
    position: relative;
    left: -33.33333%; }
  .large-offset-3 {
    margin-left: 25%; }
  .large-5 {
    width: 41.66667%; }
  .large-push-5 {
    position: relative;
    left: 41.66667%; }
  .large-pull-5 {
    position: relative;
    left: -41.66667%; }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .large-6 {
    width: 50%; }
  .large-push-6 {
    position: relative;
    left: 50%; }
  .large-pull-6 {
    position: relative;
    left: -50%; }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .large-7 {
    width: 58.33333%; }
  .large-push-7 {
    position: relative;
    left: 58.33333%; }
  .large-pull-7 {
    position: relative;
    left: -58.33333%; }
  .large-offset-6 {
    margin-left: 50%; }
  .large-8 {
    width: 66.66667%; }
  .large-push-8 {
    position: relative;
    left: 66.66667%; }
  .large-pull-8 {
    position: relative;
    left: -66.66667%; }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .large-9 {
    width: 75%; }
  .large-push-9 {
    position: relative;
    left: 75%; }
  .large-pull-9 {
    position: relative;
    left: -75%; }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .large-10 {
    width: 83.33333%; }
  .large-push-10 {
    position: relative;
    left: 83.33333%; }
  .large-pull-10 {
    position: relative;
    left: -83.33333%; }
  .large-offset-9 {
    margin-left: 75%; }
  .large-11 {
    width: 91.66667%; }
  .large-push-11 {
    position: relative;
    left: 91.66667%; }
  .large-pull-11 {
    position: relative;
    left: -91.66667%; }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .large-12 {
    width: 100%; }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .large-up-1 > .column, .large-up-1 > .columns {
    float: left;
    width: 100%; }
    .large-up-1 > .column:nth-of-type(1n), .large-up-1 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-1 > .column:nth-of-type(1n+1), .large-up-1 > .columns:nth-of-type(1n+1) {
      clear: both; }
    .large-up-1 > .column:last-child, .large-up-1 > .columns:last-child {
      float: left; }
  .large-up-2 > .column, .large-up-2 > .columns {
    float: left;
    width: 50%; }
    .large-up-2 > .column:nth-of-type(1n), .large-up-2 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-2 > .column:nth-of-type(2n+1), .large-up-2 > .columns:nth-of-type(2n+1) {
      clear: both; }
    .large-up-2 > .column:last-child, .large-up-2 > .columns:last-child {
      float: left; }
  .large-up-3 > .column, .large-up-3 > .columns {
    float: left;
    width: 33.33333%; }
    .large-up-3 > .column:nth-of-type(1n), .large-up-3 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-3 > .column:nth-of-type(3n+1), .large-up-3 > .columns:nth-of-type(3n+1) {
      clear: both; }
    .large-up-3 > .column:last-child, .large-up-3 > .columns:last-child {
      float: left; }
  .large-up-4 > .column, .large-up-4 > .columns {
    float: left;
    width: 25%; }
    .large-up-4 > .column:nth-of-type(1n), .large-up-4 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-4 > .column:nth-of-type(4n+1), .large-up-4 > .columns:nth-of-type(4n+1) {
      clear: both; }
    .large-up-4 > .column:last-child, .large-up-4 > .columns:last-child {
      float: left; }
  .large-up-5 > .column, .large-up-5 > .columns {
    float: left;
    width: 20%; }
    .large-up-5 > .column:nth-of-type(1n), .large-up-5 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-5 > .column:nth-of-type(5n+1), .large-up-5 > .columns:nth-of-type(5n+1) {
      clear: both; }
    .large-up-5 > .column:last-child, .large-up-5 > .columns:last-child {
      float: left; }
  .large-up-6 > .column, .large-up-6 > .columns {
    float: left;
    width: 16.66667%; }
    .large-up-6 > .column:nth-of-type(1n), .large-up-6 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-6 > .column:nth-of-type(6n+1), .large-up-6 > .columns:nth-of-type(6n+1) {
      clear: both; }
    .large-up-6 > .column:last-child, .large-up-6 > .columns:last-child {
      float: left; }
  .large-up-7 > .column, .large-up-7 > .columns {
    float: left;
    width: 14.28571%; }
    .large-up-7 > .column:nth-of-type(1n), .large-up-7 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-7 > .column:nth-of-type(7n+1), .large-up-7 > .columns:nth-of-type(7n+1) {
      clear: both; }
    .large-up-7 > .column:last-child, .large-up-7 > .columns:last-child {
      float: left; }
  .large-up-8 > .column, .large-up-8 > .columns {
    float: left;
    width: 12.5%; }
    .large-up-8 > .column:nth-of-type(1n), .large-up-8 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-8 > .column:nth-of-type(8n+1), .large-up-8 > .columns:nth-of-type(8n+1) {
      clear: both; }
    .large-up-8 > .column:last-child, .large-up-8 > .columns:last-child {
      float: left; }
  .large-collapse > .column, .large-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .large-collapse .row {
    margin-right: 0;
    margin-left: 0; }
  .expanded.row .large-collapse.row {
    margin-right: 0;
    margin-left: 0; }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem; }
  .large-centered {
    margin-right: auto;
    margin-left: auto; }
    .large-centered, .large-centered:last-child:not(:first-child) {
      float: none;
      clear: both; }
  .large-uncentered,
  .large-push-0,
  .large-pull-0 {
    position: static;
    float: left;
    margin-right: 0;
    margin-left: 0; } }

.column-block {
  margin-bottom: 1.25rem; }
  .column-block > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .column-block {
      margin-bottom: 1.875rem; }
      .column-block > :last-child {
        margin-bottom: 0; } }

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
.offer--featured .offer__title,
.order-progress__title,
.part--featured .part__title,
.part--full .part__form-title,
.post--featured .post__title,
.vehicle--general .vehicle__title,
.vehicle--latest .vehicle__title,
.listing--custom-entry-review-featured .listing__title,
.listing--vehicle-featured .listing__title,
.listing--vehicle-similar .listing__title,
.listing--vehicle-in-stock .listing__title,
.listing--offer-featured .listing__title,
.page--teaser .page__title,
h3,
.block--sidebar .block__title,
.offer--featured .offer__sub-title,
.add-on__title,
.calendar__header .calendar__month span,
.collection-delivery__title,
.order-payment__title,
.order-state-summary__vehicle-title,
.part--featured .part__sub-title,
.post--featured .post__sub-title,
.quick-search__legend,
.listing--showroom-teaser .listing__title h1,
.listing--post-teaser .listing__title h1,
.listing--offer-teaser .listing__title h1,
.listing--custom-entry-teaser .listing__title h1,
.listing--vehicle-teaser .listing__title h1,
.block--index-header .block__title h1,
.branch--contact .branch__opening-hours-title,
.form--part-exchange .form__title,
.finance-table--full .finance-table__title,
.finance-checker__details-title,
.finance-table--order .finance-table__title,
h4,
.video--page .video__title,
.new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
.new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
.vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
.finance-form .finance-form__title,
.finance-tables .finance-warning,
.finance-table--full .finance-table__checker-title,
.finance-example__title,
h5,
.block--sidebar .block__sub-title,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

p {
  margin-bottom: 1rem;
  font-size: inherit;
  line-height: 1.8;
  text-rendering: optimizeLegibility; }

em,
i {
  font-style: italic;
  line-height: inherit; }

strong,
b {
  font-weight: 700;
  line-height: inherit; }

small {
  font-size: 80%;
  line-height: inherit; }

h1,
h2,
.offer--featured .offer__title,
.order-progress__title,
.part--featured .part__title,
.part--full .part__form-title,
.post--featured .post__title,
.vehicle--general .vehicle__title,
.vehicle--latest .vehicle__title,
.listing--custom-entry-review-featured .listing__title,
.listing--vehicle-featured .listing__title,
.listing--vehicle-similar .listing__title,
.listing--vehicle-in-stock .listing__title,
.listing--offer-featured .listing__title,
.page--teaser .page__title,
h3,
.block--sidebar .block__title,
.offer--featured .offer__sub-title,
.add-on__title,
.calendar__header .calendar__month span,
.collection-delivery__title,
.order-payment__title,
.order-state-summary__vehicle-title,
.part--featured .part__sub-title,
.post--featured .post__sub-title,
.quick-search__legend,
.listing--showroom-teaser .listing__title h1,
.listing--post-teaser .listing__title h1,
.listing--offer-teaser .listing__title h1,
.listing--custom-entry-teaser .listing__title h1,
.listing--vehicle-teaser .listing__title h1,
.block--index-header .block__title h1,
.branch--contact .branch__opening-hours-title,
.form--part-exchange .form__title,
.finance-table--full .finance-table__title,
.finance-checker__details-title,
.finance-table--order .finance-table__title,
h4,
.video--page .video__title,
.new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
.new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
.vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
.finance-form .finance-form__title,
.finance-tables .finance-warning,
.finance-table--full .finance-table__checker-title,
.finance-example__title,
h5,
.block--sidebar .block__sub-title,
h6 {
  font-family: "Nissan-Bold", Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  color: inherit;
  text-rendering: optimizeLegibility; }
  h1 small,
  h2 small,
  .offer--featured .offer__title small,
  .order-progress__title small,
  .part--featured .part__title small,
  .part--full .part__form-title small,
  .post--featured .post__title small,
  .vehicle--general .vehicle__title small,
  .vehicle--latest .vehicle__title small,
  .listing--custom-entry-review-featured .listing__title small,
  .listing--vehicle-featured .listing__title small,
  .listing--vehicle-similar .listing__title small,
  .listing--vehicle-in-stock .listing__title small,
  .listing--offer-featured .listing__title small,
  .page--teaser .page__title small,
  h3 small,
  .block--sidebar .block__title small,
  .offer--featured .offer__sub-title small,
  .add-on__title small,
  .calendar__header .calendar__month span small,
  .collection-delivery__title small,
  .order-payment__title small,
  .order-state-summary__vehicle-title small,
  .part--featured .part__sub-title small,
  .post--featured .post__sub-title small,
  .quick-search__legend small,
  .listing--showroom-teaser .listing__title h1 small,
  .listing--post-teaser .listing__title h1 small,
  .listing--offer-teaser .listing__title h1 small,
  .listing--custom-entry-teaser .listing__title h1 small,
  .listing--vehicle-teaser .listing__title h1 small,
  .block--index-header .block__title h1 small,
  .branch--contact .branch__opening-hours-title small,
  .form--part-exchange .form__title small,
  .finance-table--full .finance-table__title small,
  .finance-checker__details-title small,
  .finance-table--order .finance-table__title small,
  h4 small,
  .video--page .video__title small,
  .new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title small,
  .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title small,
  .vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title small,
  .finance-form .finance-form__title small,
  .finance-tables .finance-warning small,
  .finance-table--full .finance-table__checker-title small,
  .finance-example__title small,
  h5 small,
  .block--sidebar .block__sub-title small,
  h6 small {
    line-height: 0;
    color: #e6e6e6; }

h1 {
  font-size: 1.75rem;
  line-height: 1;
  margin-top: 0;
  margin-bottom: 1rem; }


h2,
.offer--featured .offer__title,
.order-progress__title,
.part--featured .part__title,
.part--full .part__form-title,
.post--featured .post__title,
.vehicle--general .vehicle__title,
.vehicle--latest .vehicle__title,
.listing--custom-entry-review-featured .listing__title,
.listing--vehicle-featured .listing__title,
.listing--vehicle-similar .listing__title,
.listing--vehicle-in-stock .listing__title,
.listing--offer-featured .listing__title,
.page--teaser .page__title {
  font-size: 1.625rem;
  line-height: 1;
  margin-top: 0;
  margin-bottom: 1rem; }


h3,
.block--sidebar .block__title,
.offer--featured .offer__sub-title,
.add-on__title,
.calendar__header .calendar__month span,
.collection-delivery__title,
.order-payment__title,
.order-state-summary__vehicle-title,
.part--featured .part__sub-title,
.post--featured .post__sub-title,
.quick-search__legend,
.listing--showroom-teaser .listing__title h1,
.listing--post-teaser .listing__title h1,
.listing--offer-teaser .listing__title h1,
.listing--custom-entry-teaser .listing__title h1,
.listing--vehicle-teaser .listing__title h1,
.block--index-header .block__title h1,
.branch--contact .branch__opening-hours-title,
.form--part-exchange .form__title,
.finance-table--full .finance-table__title,
.finance-checker__details-title,
.finance-table--order .finance-table__title {
  font-size: 1.25rem;
  line-height: 1;
  margin-top: 0;
  margin-bottom: 1rem; }


h4,
.video--page .video__title,
.new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
.new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
.vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
.finance-form .finance-form__title,
.finance-tables .finance-warning,
.finance-table--full .finance-table__checker-title,
.finance-example__title {
  font-size: 1.125rem;
  line-height: 1;
  margin-top: 0;
  margin-bottom: 1rem; }


h5,
.block--sidebar .block__sub-title {
  font-size: 1rem;
  line-height: 1;
  margin-top: 0;
  margin-bottom: 1rem; }

h6 {
  font-size: 0.875rem;
  line-height: 1;
  margin-top: 0;
  margin-bottom: 1rem; }

@media print, screen and (min-width: 40em) {
  h1 {
    font-size: 2.75rem; }
  
  h2,
  .offer--featured .offer__title,
  .order-progress__title,
  .part--featured .part__title,
  .part--full .part__form-title,
  .post--featured .post__title,
  .vehicle--general .vehicle__title,
  .vehicle--latest .vehicle__title,
  .listing--custom-entry-review-featured .listing__title,
  .listing--vehicle-featured .listing__title,
  .listing--vehicle-similar .listing__title,
  .listing--vehicle-in-stock .listing__title,
  .listing--offer-featured .listing__title,
  .page--teaser .page__title {
    font-size: 2.5rem; }
  
  h3,
  .block--sidebar .block__title,
  .offer--featured .offer__sub-title,
  .add-on__title,
  .calendar__header .calendar__month span,
  .collection-delivery__title,
  .order-payment__title,
  .order-state-summary__vehicle-title,
  .part--featured .part__sub-title,
  .post--featured .post__sub-title,
  .quick-search__legend,
  .listing--showroom-teaser .listing__title h1,
  .listing--post-teaser .listing__title h1,
  .listing--offer-teaser .listing__title h1,
  .listing--custom-entry-teaser .listing__title h1,
  .listing--vehicle-teaser .listing__title h1,
  .block--index-header .block__title h1,
  .branch--contact .branch__opening-hours-title,
  .form--part-exchange .form__title,
  .finance-table--full .finance-table__title,
  .finance-checker__details-title,
  .finance-table--order .finance-table__title {
    font-size: 1.625rem; }
  
  h4,
  .video--page .video__title,
  .new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
  .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
  .vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
  .finance-form .finance-form__title,
  .finance-tables .finance-warning,
  .finance-table--full .finance-table__checker-title,
  .finance-example__title {
    font-size: 1.5rem; }
  
  h5,
  .block--sidebar .block__sub-title {
    font-size: 1.375rem; }
  h6 {
    font-size: 1.25rem; } }

a {
  line-height: inherit;
  color: #222222;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #1d1d1d; }
  a img {
    border: 0; }

hr {
  clear: both;
  max-width: 81.25rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #e6e6e6;
  border-left: 0; }

ul,
ol,
dl {
  margin-bottom: 1rem;
  list-style-position: outside;
  line-height: 1.8; }

li {
  font-size: inherit; }

ul {
  margin-left: 1.25rem;
  list-style-type: disc; }

ol {
  margin-left: 1.25rem; }

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

dl {
  margin-bottom: 1rem; }
  dl dt {
    margin-bottom: 0.3rem;
    font-weight: 700; }

blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #e6e6e6; }
  blockquote, blockquote p {
    line-height: 1.8;
    color: #222222; }

cite {
  display: block;
  font-size: 0.8125rem;
  color: #222222; }
  cite:before {
    content: "— "; }

abbr {
  border-bottom: 1px dotted #222222;
  color: #222222;
  cursor: help; }

figure {
  margin: 0; }

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #e6e6e6;
  background-color: #eeeeee;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: 400;
  color: #222222; }

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #eeeeee;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #222222; }

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: 400;
  line-height: 1.4;
  color: #222222; }

.lead {
  font-size: 125%;
  line-height: 1.6; }

.stat {
  font-size: 2.5rem;
  line-height: 1; }
  p + .stat {
    margin-top: -1rem; }

.no-bullet {
  margin-left: 0;
  list-style: none; }

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left; }
  .medium-text-right {
    text-align: right; }
  .medium-text-center {
    text-align: center; }
  .medium-text-justify {
    text-align: justify; } }

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left; }
  .large-text-right {
    text-align: right; }
  .large-text-center {
    text-align: center; }
  .large-text-justify {
    text-align: justify; } }

.show-for-print {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: black !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #222222;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  .offer--featured .offer__title,
  .order-progress__title,
  .part--featured .part__title,
  .part--full .part__form-title,
  .post--featured .post__title,
  .vehicle--general .vehicle__title,
  .vehicle--latest .vehicle__title,
  .listing--custom-entry-review-featured .listing__title,
  .listing--vehicle-featured .listing__title,
  .listing--vehicle-similar .listing__title,
  .listing--vehicle-in-stock .listing__title,
  .listing--offer-featured .listing__title,
  .page--teaser .page__title,
  h3,
  .block--sidebar .block__title,
  .offer--featured .offer__sub-title,
  .add-on__title,
  .calendar__header .calendar__month span,
  .collection-delivery__title,
  .order-payment__title,
  .order-state-summary__vehicle-title,
  .part--featured .part__sub-title,
  .post--featured .post__sub-title,
  .quick-search__legend,
  .listing--showroom-teaser .listing__title h1,
  .listing--post-teaser .listing__title h1,
  .listing--offer-teaser .listing__title h1,
  .listing--custom-entry-teaser .listing__title h1,
  .listing--vehicle-teaser .listing__title h1,
  .block--index-header .block__title h1,
  .branch--contact .branch__opening-hours-title,
  .form--part-exchange .form__title,
  .finance-table--full .finance-table__title,
  .finance-checker__details-title,
  .finance-table--order .finance-table__title {
    orphans: 3;
    widows: 3; }
  
  h2,
  .offer--featured .offer__title,
  .order-progress__title,
  .part--featured .part__title,
  .part--full .part__form-title,
  .post--featured .post__title,
  .vehicle--general .vehicle__title,
  .vehicle--latest .vehicle__title,
  .listing--custom-entry-review-featured .listing__title,
  .listing--vehicle-featured .listing__title,
  .listing--vehicle-similar .listing__title,
  .listing--vehicle-in-stock .listing__title,
  .listing--offer-featured .listing__title,
  .page--teaser .page__title,
  h3,
  .block--sidebar .block__title,
  .offer--featured .offer__sub-title,
  .add-on__title,
  .calendar__header .calendar__month span,
  .collection-delivery__title,
  .order-payment__title,
  .order-state-summary__vehicle-title,
  .part--featured .part__sub-title,
  .post--featured .post__sub-title,
  .quick-search__legend,
  .listing--showroom-teaser .listing__title h1,
  .listing--post-teaser .listing__title h1,
  .listing--offer-teaser .listing__title h1,
  .listing--custom-entry-teaser .listing__title h1,
  .listing--vehicle-teaser .listing__title h1,
  .block--index-header .block__title h1,
  .branch--contact .branch__opening-hours-title,
  .form--part-exchange .form__title,
  .finance-table--full .finance-table__title,
  .finance-checker__details-title,
  .finance-table--order .finance-table__title {
    page-break-after: avoid; } }

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.75rem 0.875rem;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 1.125rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #c3002f;
  color: #ffffff; }
  [data-whatinput='mouse'] .button {
    outline: 0; }
  .button:hover, .button:focus {
    background-color: #a60028;
    color: #ffffff; }
  .button.tiny {
    font-size: 0.6rem; }
  .button.small {
    font-size: 1rem; }
  .button.large {
    font-size: 1.25rem; }
  .button.expanded {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .button.primary {
    background-color: #c3002f;
    color: #ffffff; }
    .button.primary:hover, .button.primary:focus {
      background-color: #9c0026;
      color: #ffffff; }
  .button.secondary {
    background-color: #000000;
    color: #ffffff; }
    .button.secondary:hover, .button.secondary:focus {
      background-color: black;
      color: #ffffff; }
  .button.success {
    background-color: #3adb76;
    color: #222222; }
    .button.success:hover, .button.success:focus {
      background-color: #22bb5b;
      color: #222222; }
  .button.warning {
    background-color: #ffae00;
    color: #222222; }
    .button.warning:hover, .button.warning:focus {
      background-color: #cc8b00;
      color: #222222; }
  .button.alert {
    background-color: #cc4b37;
    color: #ffffff; }
    .button.alert:hover, .button.alert:focus {
      background-color: #a53b2a;
      color: #ffffff; }
  .button.hollow {
    border: 1px solid #c3002f;
    color: #c3002f; }
    .button.hollow, .button.hollow:hover, .button.hollow:focus {
      background-color: transparent; }
    .button.hollow:hover, .button.hollow:focus {
      border-color: #620018;
      color: #620018; }
    .button.hollow.primary {
      border: 1px solid #c3002f;
      color: #c3002f; }
      .button.hollow.primary:hover, .button.hollow.primary:focus {
        border-color: #620018;
        color: #620018; }
    .button.hollow.secondary {
      border: 1px solid #000000;
      color: #000000; }
      .button.hollow.secondary:hover, .button.hollow.secondary:focus {
        border-color: black;
        color: black; }
    .button.hollow.success {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.hollow.success:hover, .button.hollow.success:focus {
        border-color: #157539;
        color: #157539; }
    .button.hollow.warning {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.hollow.warning:hover, .button.hollow.warning:focus {
        border-color: #805700;
        color: #805700; }
    .button.hollow.alert {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.hollow.alert:hover, .button.hollow.alert:focus {
        border-color: #67251a;
        color: #67251a; }
  .button.disabled, .button[disabled] {
    opacity: 0.25;
    cursor: not-allowed; }
    .button.disabled, .button.disabled:hover, .button.disabled:focus, .button[disabled], .button[disabled]:hover, .button[disabled]:focus {
      background-color: #c3002f;
      color: #ffffff; }
    .button.disabled.primary, .button[disabled].primary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.primary, .button.disabled.primary:hover, .button.disabled.primary:focus, .button[disabled].primary, .button[disabled].primary:hover, .button[disabled].primary:focus {
        background-color: #c3002f;
        color: #ffffff; }
    .button.disabled.secondary, .button[disabled].secondary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.secondary, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
        background-color: #000000;
        color: #ffffff; }
    .button.disabled.success, .button[disabled].success {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.success, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success, .button[disabled].success:hover, .button[disabled].success:focus {
        background-color: #3adb76;
        color: #222222; }
    .button.disabled.warning, .button[disabled].warning {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.warning, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning, .button[disabled].warning:hover, .button[disabled].warning:focus {
        background-color: #ffae00;
        color: #222222; }
    .button.disabled.alert, .button[disabled].alert {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.alert, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert, .button[disabled].alert:hover, .button[disabled].alert:focus {
        background-color: #cc4b37;
        color: #ffffff; }
  .button.dropdown::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #ffffff transparent transparent;
    position: relative;
    top: 0.4em;
    display: inline-block;
    float: right;
    margin-left: 0.875rem; }
  .button.arrow-only::after {
    top: -0.1em;
    float: none;
    margin-left: 0; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #eeeeee;
  border-radius: 0;
  background-color: #ffffff;
  box-shadow: inset 0 1px 2px rgba(34, 34, 34, 0.1);
  font-family: inherit;
  font-size: 0.9375rem;
  font-weight: 400;
  color: #222222;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
          appearance: none; }
  [type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
  textarea:focus {
    outline: none;
    border: 1px solid #222222;
    background-color: #ffffff;
    box-shadow: 0 0 5px #e6e6e6;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }

textarea {
  max-width: 100%; }
  textarea[rows] {
    height: auto; }

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #222222; }

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #222222; }

input::placeholder,
textarea::placeholder {
  color: #222222; }

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #ffffff;
  cursor: not-allowed; }

[type='submit'],
[type='button'] {
  -webkit-appearance: none;
          appearance: none;
  border-radius: 0; }

input[type='search'] {
  box-sizing: border-box; }

[type='file'],
[type='checkbox'],
[type='radio'] {
  margin: 0 0 1rem; }

[type='checkbox'] + label,
[type='radio'] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0; }
  [type='checkbox'] + label[for],
  [type='radio'] + label[for] {
    cursor: pointer; }

label > [type='checkbox'],
label > [type='radio'] {
  margin-right: 0.5rem; }

[type='file'] {
  width: 100%; }

label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8;
  color: #222222; }
  label.middle {
    margin: 0 0 1rem;
    padding: 0.5625rem 0; }

.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #222222; }

.input-group {
  display: table;
  width: 100%;
  margin-bottom: 1rem; }
  .input-group > :first-child {
    border-radius: 0 0 0 0; }
  .input-group > :last-child > * {
    border-radius: 0 0 0 0; }

.input-group-label, .input-group-field, .input-group-button, .input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  margin: 0;
  white-space: nowrap;
  display: table-cell;
  vertical-align: middle; }

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #eeeeee;
  background: #eeeeee;
  color: #222222;
  text-align: center;
  white-space: nowrap;
  width: 1%;
  height: 100%; }
  .input-group-label:first-child {
    border-right: 0; }
  .input-group-label:last-child {
    border-left: 0; }

.input-group-field {
  border-radius: 0;
  height: 2.4375rem; }

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  width: 1%;
  height: 100%; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button,
  .input-group-button label {
    height: 2.4375rem;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 0.9375rem; }

.input-group .input-group-button {
  display: table-cell; }

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

legend {
  max-width: 100%;
  margin-bottom: 0.5rem; }

.fieldset {
  margin: 1.125rem 0;
  padding: 1.25rem;
  border: 1px solid #eeeeee; }
  .fieldset legend {
    margin: 0;
    margin-left: -0.1875rem;
    padding: 0 0.1875rem;
    background: #ffffff; }

select {
  height: 2.375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
          appearance: none;
  border: 1px solid #eeeeee;
  border-radius: 0;
  background-color: #ffffff;
  font-family: inherit;
  font-size: 0.9375rem;
  line-height: normal;
  color: #222222;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%2834, 34, 34%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  @media screen and (min-width: 0\0) {
    select {
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } }
  select:focus {
    outline: none;
    border: 1px solid #222222;
    background-color: #ffffff;
    box-shadow: 0 0 5px #e6e6e6;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  select:disabled {
    background-color: #ffffff;
    cursor: not-allowed; }
  select::-ms-expand {
    display: none; }
  select[multiple] {
    height: auto;
    background-image: none; }

.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #faedeb; }
  .is-invalid-input:not(:focus)::-webkit-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus):-ms-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus)::placeholder {
    color: #cc4b37; }

.is-invalid-label {
  color: #cc4b37; }

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #cc4b37; }
  .form-error.is-visible {
    display: block; }

.accordion {
  margin-left: 0;
  background: inherit;
  list-style-type: none; }

.accordion-item:first-child > :first-child {
  border-radius: 0 0 0 0; }

.accordion-item:last-child > :last-child {
  border-radius: 0 0 0 0; }

.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: none;
  border-bottom: 0;
  font-size: 1.125rem;
  line-height: 1;
  color: #c3002f; }
  :last-child:not(.is-active) > .accordion-title {
    border-bottom: none;
    border-radius: 0 0 0 0; }
  .accordion-title:hover, .accordion-title:focus {
    background-color: #eeeeee; }
  .accordion-title::before {
    position: absolute;
    top: 50%;
    right: 1rem;
    margin-top: -0.5rem;
    content: '+'; }
  .is-active > .accordion-title::before {
    content: '\2013'; }

.accordion-content {
  display: none;
  padding: 1rem;
  border: none;
  border-bottom: 0;
  background-color: inherit;
  color: #222222; }
  :last-child > .accordion-content:last-child {
    border-bottom: none; }

.breadcrumbs {
  margin: 0 0 1rem 0;
  list-style: none; }
  .breadcrumbs::before, .breadcrumbs::after {
    display: table;
    content: ' '; }
  .breadcrumbs::after {
    clear: both; }
  .breadcrumbs li {
    float: left;
    font-size: 0.6875rem;
    color: #222222;
    cursor: default;
    text-transform: uppercase; }
    .breadcrumbs li:not(:last-child)::after {
      position: relative;
      top: 1px;
      margin: 0 0.75rem;
      opacity: 1;
      content: "/";
      color: #e6e6e6; }
  .breadcrumbs a {
    color: #c3002f; }
    .breadcrumbs a:hover {
      text-decoration: underline; }
  .breadcrumbs .disabled {
    color: #e6e6e6;
    cursor: not-allowed; }

.callout {
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(34, 34, 34, 0.25);
  border-radius: 0;
  background-color: white;
  color: #222222; }
  .callout > :first-child {
    margin-top: 0; }
  .callout > :last-child {
    margin-bottom: 0; }
  .callout.primary {
    background-color: #ffd0db;
    color: #222222; }
  .callout.secondary {
    background-color: #d9d9d9;
    color: #222222; }
  .callout.success {
    background-color: #e1faea;
    color: #222222; }
  .callout.warning {
    background-color: #fff3d9;
    color: #222222; }
  .callout.alert {
    background-color: #f7e4e1;
    color: #222222; }
  .callout.small {
    padding-top: 0.5rem;
    padding-right: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 0.5rem; }
  .callout.large {
    padding-top: 3rem;
    padding-right: 3rem;
    padding-bottom: 3rem;
    padding-left: 3rem; }

.card {
  margin-bottom: 1rem;
  border: 1px solid #eeeeee;
  border-radius: 0;
  background: #ffffff;
  box-shadow: none;
  overflow: hidden;
  color: #222222; }
  .card > :last-child {
    margin-bottom: 0; }

.card-divider {
  padding: 1rem;
  background: #eeeeee; }
  .card-divider > :last-child {
    margin-bottom: 0; }

.card-section {
  padding: 1rem; }
  .card-section > :last-child {
    margin-bottom: 0; }

.close-button {
  position: absolute;
  color: #222222;
  cursor: pointer; }
  [data-whatinput='mouse'] .close-button {
    outline: 0; }
  .close-button:hover, .close-button:focus {
    color: #222222; }
  .close-button.small {
    right: 0.66rem;
    top: 0.33em;
    font-size: 1.5em;
    line-height: 1; }
  .close-button, .close-button.medium {
    right: 1rem;
    top: 0.5rem;
    font-size: 2em;
    line-height: 1; }

.menu {
  margin: 0;
  list-style-type: none; }
  .menu > li {
    display: table-cell;
    vertical-align: middle; }
    [data-whatinput='mouse'] .menu > li {
      outline: 0; }
  .menu > li > a {
    display: block;
    padding: 0.7rem 1rem;
    line-height: 1; }
  .menu input,
  .menu select,
  .menu a,
  .menu button {
    margin-bottom: 0; }
  .menu > li > a img,
  .menu > li > a i,
  .menu > li > a svg {
    vertical-align: middle; }
    .menu > li > a img + span,
    .menu > li > a i + span,
    .menu > li > a svg + span {
      vertical-align: middle; }
  .menu > li > a img,
  .menu > li > a i,
  .menu > li > a svg {
    margin-right: 0.25rem;
    display: inline-block; }
  .menu > li, .menu.horizontal > li {
    display: table-cell; }
  .menu.expanded {
    display: table;
    width: 100%;
    table-layout: fixed; }
    .menu.expanded > li:first-child:last-child {
      width: 100%; }
  .menu.vertical > li {
    display: block; }
  @media print, screen and (min-width: 40em) {
    .menu.medium-horizontal > li {
      display: table-cell; }
    .menu.medium-expanded {
      display: table;
      width: 100%;
      table-layout: fixed; }
      .menu.medium-expanded > li:first-child:last-child {
        width: 100%; }
    .menu.medium-vertical > li {
      display: block; } }
  @media print, screen and (min-width: 64em) {
    .menu.large-horizontal > li {
      display: table-cell; }
    .menu.large-expanded {
      display: table;
      width: 100%;
      table-layout: fixed; }
      .menu.large-expanded > li:first-child:last-child {
        width: 100%; }
    .menu.large-vertical > li {
      display: block; } }
  .menu.simple li {
    display: inline-block;
    vertical-align: top;
    line-height: 1; }
  .menu.simple a {
    padding: 0; }
  .menu.simple li {
    margin-left: 0;
    margin-right: 1rem; }
  .menu.simple.align-right li {
    margin-right: 0;
    margin-left: 1rem; }
  .menu.align-right::before, .menu.align-right::after {
    display: table;
    content: ' '; }
  .menu.align-right::after {
    clear: both; }
  .menu.align-right > li {
    float: right; }
  .menu.icon-top > li > a {
    text-align: center; }
    .menu.icon-top > li > a img,
    .menu.icon-top > li > a i,
    .menu.icon-top > li > a svg {
      display: block;
      margin: 0 auto 0.25rem; }
  .menu.icon-top.vertical a > span {
    margin: auto; }
  .menu.nested {
    margin-left: 1rem; }
  .menu .active > a {
    background: #c3002f;
    color: #ffffff; }
  .menu.menu-bordered li {
    border: 1px solid #eeeeee; }
    .menu.menu-bordered li:not(:first-child) {
      border-top: 0; }
  .menu.menu-hover li:hover {
    background-color: #eeeeee; }

.menu-text {
  padding-top: 0;
  padding-bottom: 0;
  padding: 0.7rem 1rem;
  font-weight: bold;
  line-height: 1;
  color: inherit; }

.menu-centered {
  text-align: center; }
  .menu-centered > .menu {
    display: inline-block;
    vertical-align: top; }

.no-js [data-responsive-menu] ul {
  display: none; }

.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #ffffff;
    box-shadow: 0 7px 0 #ffffff, 0 14px 0 #ffffff;
    content: ''; }
  .menu-icon:hover::after {
    background: #e6e6e6;
    box-shadow: 0 7px 0 #e6e6e6, 0 14px 0 #e6e6e6; }

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon.dark::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #222222;
    box-shadow: 0 7px 0 #222222, 0 14px 0 #222222;
    content: ''; }
  .menu-icon.dark:hover::after {
    background: #222222;
    box-shadow: 0 7px 0 #222222, 0 14px 0 #222222; }

.is-drilldown {
  position: relative;
  overflow: hidden; }
  .is-drilldown li {
    display: block; }
  .is-drilldown.animate-height {
    transition: height 0.5s; }

.is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #ffffff;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear; }
  .is-drilldown-submenu.is-active {
    z-index: 1;
    display: block;
    -webkit-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
            transform: translateX(-100%); }
  .is-drilldown-submenu.is-closing {
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%); }

.drilldown-submenu-cover-previous {
  min-height: 100%; }

.is-drilldown-submenu-parent > a {
  position: relative; }
  .is-drilldown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #c3002f;
    position: absolute;
    top: 50%;
    margin-top: -6px;
    right: 1rem; }

.js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #c3002f transparent transparent;
  border-left-width: 0;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem;
  border-left-width: 0; }

.dropdown-pane {
  position: absolute;
  z-index: 10;
  display: block;
  width: 270px;
  padding: 1rem;
  visibility: hidden;
  border: none;
  border-radius: 0;
  background-color: #c3002f;
  font-size: 1rem; }
  .dropdown-pane.is-open {
    visibility: visible; }

.dropdown-pane.tiny {
  width: 100px; }

.dropdown-pane.small {
  width: 200px; }

.dropdown-pane.large {
  width: 400px; }

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto; }

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0; }

.dropdown.menu > li.is-dropdown-submenu-parent > a {
  position: relative;
  padding-right: 1.5rem; }

.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #222222 transparent transparent;
  right: 5px;
  margin-top: -3px; }

[data-whatinput='mouse'] .dropdown.menu a {
  outline: 0; }

.no-js .dropdown.menu ul {
  display: none; }

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0; }

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  right: 100%;
  left: auto; }

.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%; }

.dropdown.menu.vertical > li > a::after {
  right: 14px; }

.dropdown.menu.vertical > li.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #222222 transparent transparent; }

.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: '';
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #222222; }

@media print, screen and (min-width: 40em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #222222 transparent transparent;
    right: 5px;
    margin-top: -3px; }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto; }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #222222 transparent transparent; }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #222222; } }

@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #222222 transparent transparent;
    right: 5px;
    margin-top: -3px; }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto; }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #222222 transparent transparent; }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #222222; } }

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto; }

.is-dropdown-menu.vertical {
  width: 100px; }
  .is-dropdown-menu.vertical.align-right {
    float: right; }

.is-dropdown-submenu-parent {
  position: relative; }
  .is-dropdown-submenu-parent a::after {
    position: absolute;
    top: 50%;
    right: 5px;
    margin-top: -6px; }
  .is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
    top: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu {
    right: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 220px;
  border: 1px solid #e6e6e6;
  background: #c3002f; }
  .is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
    right: 14px; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #222222 transparent transparent; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    content: '';
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #222222; }
  .is-dropdown-submenu .is-dropdown-submenu {
    margin-top: -1px; }
  .is-dropdown-submenu > li {
    width: 100%; }
  .is-dropdown-submenu.js-dropdown-active {
    display: block; }

.responsive-embed,
.flex-video {
  position: relative;
  height: 0;
  margin-bottom: 1rem;
  padding-bottom: 75%;
  overflow: hidden; }
  .responsive-embed iframe,
  .responsive-embed object,
  .responsive-embed embed,
  .responsive-embed video,
  .flex-video iframe,
  .flex-video object,
  .flex-video embed,
  .flex-video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .responsive-embed.widescreen,
  .flex-video.widescreen {
    padding-bottom: 56.25%; }

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  border-radius: 0;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #c3002f;
  color: #ffffff; }
  .label.primary {
    background: #c3002f;
    color: #ffffff; }
  .label.secondary {
    background: #000000;
    color: #ffffff; }
  .label.success {
    background: #3adb76;
    color: #222222; }
  .label.warning {
    background: #ffae00;
    color: #222222; }
  .label.alert {
    background: #cc4b37;
    color: #ffffff; }

.media-object {
  display: block;
  margin-bottom: 1rem; }
  .media-object img {
    max-width: none; }
  @media screen and (max-width: 39.9375em) {
    .media-object.stack-for-small .media-object-section {
      padding: 0;
      padding-bottom: 1rem;
      display: block; }
      .media-object.stack-for-small .media-object-section img {
        width: 100%; } }

.media-object-section {
  display: table-cell;
  vertical-align: top; }
  .media-object-section:first-child {
    padding-right: 1rem; }
  .media-object-section:last-child:not(:nth-child(2)) {
    padding-left: 1rem; }
  .media-object-section > :last-child {
    margin-bottom: 0; }
  .media-object-section.middle {
    vertical-align: middle; }
  .media-object-section.bottom {
    vertical-align: bottom; }

.pagination {
  margin-left: 0;
  margin-bottom: 1rem; }
  .pagination::before, .pagination::after {
    display: table;
    content: ' '; }
  .pagination::after {
    clear: both; }
  .pagination li {
    margin-right: 0.0625rem;
    border-radius: 0;
    font-size: 0.875rem;
    display: none; }
    .pagination li:last-child, .pagination li:first-child {
      display: inline-block; }
    @media print, screen and (min-width: 40em) {
      .pagination li {
        display: inline-block; } }
  .pagination a,
  .pagination button {
    display: block;
    padding: 0.1875rem 0.625rem;
    border-radius: 0;
    color: #222222; }
    .pagination a:hover,
    .pagination button:hover {
      background: #eeeeee; }
  .pagination .current {
    padding: 0.1875rem 0.625rem;
    background: #c3002f;
    color: #ffffff;
    cursor: default; }
  .pagination .disabled {
    padding: 0.1875rem 0.625rem;
    color: #e6e6e6;
    cursor: not-allowed; }
    .pagination .disabled:hover {
      background: transparent; }
  .pagination .ellipsis::after {
    padding: 0.1875rem 0.625rem;
    content: '\2026';
    color: #222222; }

.pagination-previous a::before,
.pagination-previous.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
  content: '\00ab'; }

.pagination-next a::after,
.pagination-next.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
  content: '\00bb'; }

body.is-reveal-open {
  overflow: hidden; }

html.is-reveal-open,
html.is-reveal-open body {
  min-height: 100%;
  overflow: hidden;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.reveal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1005;
  display: none;
  background-color: rgba(34, 34, 34, 0.45);
  overflow-y: scroll; }

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: none;
  border-radius: 0;
  background-color: #ffffff;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto; }
  [data-whatinput='mouse'] .reveal {
    outline: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      min-height: 0; } }
  .reveal .column, .reveal .columns,
  .reveal .columns {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      width: 600px;
      max-width: 81.25rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal .reveal {
      right: auto;
      left: auto;
      margin: 0 auto; } }
  .reveal.collapse {
    padding: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal.tiny {
      width: 30%;
      max-width: 81.25rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.small {
      width: 50%;
      max-width: 81.25rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.large {
      width: 90%;
      max-width: 81.25rem; } }
  .reveal.full {
    top: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    height: 100vh;
    min-height: 100vh;
    margin-left: 0;
    border: 0;
    border-radius: 0; }
  @media screen and (max-width: 39.9375em) {
    .reveal {
      top: 0;
      left: 0;
      width: 100%;
      max-width: none;
      height: 100%;
      height: 100vh;
      min-height: 100vh;
      margin-left: 0;
      border: 0;
      border-radius: 0; } }
  .reveal.without-overlay {
    position: fixed; }

table {
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0; }
  thead,
  tbody,
  tfoot {
    border: 1px solid #f2f2f2;
    background-color: #ffffff; }
  caption {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: 700; }
  thead {
    background: #f9f9f9;
    color: #222222; }
  tfoot {
    background: #f2f2f2;
    color: #222222; }
  thead tr,
  tfoot tr {
    background: transparent; }
  thead th,
  thead td,
  tfoot th,
  tfoot td {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: 700;
    text-align: left; }
  tbody th,
  tbody td {
    padding: 0.5rem 0.625rem 0.625rem; }
  tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: #f2f2f2; }
  table.unstriped tbody {
    background-color: #ffffff; }
    table.unstriped tbody tr {
      border-bottom: 0;
      border-bottom: 1px solid #f2f2f2;
      background-color: #ffffff; }

@media screen and (max-width: 63.9375em) {
  table.stack thead {
    display: none; }
  table.stack tfoot {
    display: none; }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block; }
  table.stack td {
    border-top: 0; } }

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto; }

table.hover thead tr:hover {
  background-color: #f4f4f4; }

table.hover tfoot tr:hover {
  background-color: #ededed; }

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

table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: #ededed; }

.table-scroll {
  overflow-x: auto; }
  .table-scroll table {
    width: auto; }

.tabs {
  margin: 0;
  border: 1px solid none;
  background: #ffffff;
  list-style-type: none; }
  .tabs::before, .tabs::after {
    display: table;
    content: ' '; }
  .tabs::after {
    clear: both; }

.tabs.vertical > li {
  display: block;
  float: none;
  width: auto; }

.tabs.simple > li > a {
  padding: 0; }
  .tabs.simple > li > a:hover {
    background: transparent; }

.tabs.primary {
  background: #c3002f; }
  .tabs.primary > li > a {
    color: #ffffff; }
    .tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
      background: #d30033; }

.tabs-title {
  float: left; }
  .tabs-title > a {
    display: block;
    padding: 1.25rem 1.5rem;
    font-size: 1.125rem;
    line-height: 1;
    color: #c3002f; }
    .tabs-title > a:hover {
      background: #ffffff;
      color: #a80028; }
    .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
      background: #c3002f;
      color: #ffffff; }

.tabs-content {
  border: 1px solid none;
  border-top: 0;
  background: inherit;
  color: #222222;
  transition: all 0.5s ease; }

.tabs-content.vertical {
  border: 1px solid none;
  border-left: 0; }

.tabs-panel {
  display: none;
  padding: 1rem; }
  .tabs-panel[aria-hidden="false"] {
    display: block; }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

@media screen and (max-width: 39.9375em) {
  .hide-for-small-only {
    display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important; } }

@media print, screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important; } }

@media screen and (max-width: 39.9375em) {
  .show-for-medium {
    display: none !important; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .hide-for-medium-only {
    display: none !important; } }

@media screen and (max-width: 39.9375em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important; } }

@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important; } }

@media screen and (max-width: 63.9375em) {
  .show-for-large {
    display: none !important; } }

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .hide-for-large-only {
    display: none !important; } }

@media screen and (max-width: 63.9375em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important; } }

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0); }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto; }

.show-for-landscape,
.hide-for-portrait {
  display: block !important; }
  @media screen and (orientation: landscape) {
    .show-for-landscape,
    .hide-for-portrait {
      display: block !important; } }
  @media screen and (orientation: portrait) {
    .show-for-landscape,
    .hide-for-portrait {
      display: none !important; } }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }
  @media screen and (orientation: landscape) {
    .hide-for-landscape,
    .show-for-portrait {
      display: none !important; } }
  @media screen and (orientation: portrait) {
    .hide-for-landscape,
    .show-for-portrait {
      display: block !important; } }

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

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

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

.clearfix::before, .clearfix::after {
  display: table;
  content: ' '; }

.clearfix::after {
  clear: both; }

.slide-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-down.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0); }

.slide-in-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-left.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.slide-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-up.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0); }

.slide-in-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-right.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0); }

.slide-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-down.mui-leave.mui-leave-active {
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%); }

.slide-out-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-right.mui-leave.mui-leave-active {
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%); }

.slide-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-up.mui-leave.mui-leave-active {
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%); }

.slide-out-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-left.mui-leave.mui-leave-active {
  -webkit-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%); }

.fade-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 0;
  transition-property: opacity; }

.fade-in.mui-enter.mui-enter-active {
  opacity: 1; }

.fade-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 1;
  transition-property: opacity; }

.fade-out.mui-leave.mui-leave-active {
  opacity: 0; }

.hinge-in-from-top.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-top.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-right.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-bottom.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-left.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-x.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-y.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-out-from-top.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-top.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-right.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.hinge-out-from-bottom.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0; }

.hinge-out-from-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-left.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0; }

.hinge-out-from-middle-x.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-middle-y.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.scale-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-up.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-down.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-up.mui-leave.mui-leave-active {
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  opacity: 0; }

.scale-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-down.mui-leave.mui-leave-active {
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  opacity: 0; }

.spin-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out.mui-leave.mui-leave-active {
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  opacity: 0; }

.spin-in-ccw.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in-ccw.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out-ccw.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out-ccw.mui-leave.mui-leave-active {
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  opacity: 0; }

.slow {
  transition-duration: 750ms !important; }

.fast {
  transition-duration: 250ms !important; }

.linear {
  transition-timing-function: linear !important; }

.ease {
  transition-timing-function: ease !important; }

.ease-in {
  transition-timing-function: ease-in !important; }

.ease-out {
  transition-timing-function: ease-out !important; }

.ease-in-out {
  transition-timing-function: ease-in-out !important; }

.bounce-in {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  transition-delay: 300ms !important; }

.long-delay {
  transition-delay: 700ms !important; }

.shake {
  -webkit-animation-name: shake-7;
          animation-name: shake-7; }

@-webkit-keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%); } }

@keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%); } }

.spin-cw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn; }

@-webkit-keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

.spin-ccw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn; }

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn); } }

.wiggle {
  -webkit-animation-name: wiggle-7deg;
          animation-name: wiggle-7deg; }

@-webkit-keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

.shake,
.spin-cw,
.spin-ccw,
.wiggle {
  -webkit-animation-duration: 500ms;
          animation-duration: 500ms; }

.infinite {
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite; }

.slow {
  -webkit-animation-duration: 750ms !important;
          animation-duration: 750ms !important; }

.fast {
  -webkit-animation-duration: 250ms !important;
          animation-duration: 250ms !important; }

.linear {
  -webkit-animation-timing-function: linear !important;
          animation-timing-function: linear !important; }

.ease {
  -webkit-animation-timing-function: ease !important;
          animation-timing-function: ease !important; }

.ease-in {
  -webkit-animation-timing-function: ease-in !important;
          animation-timing-function: ease-in !important; }

.ease-out {
  -webkit-animation-timing-function: ease-out !important;
          animation-timing-function: ease-out !important; }

.ease-in-out {
  -webkit-animation-timing-function: ease-in-out !important;
          animation-timing-function: ease-in-out !important; }

.bounce-in {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  -webkit-animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  -webkit-animation-delay: 300ms !important;
          animation-delay: 300ms !important; }

.long-delay {
  -webkit-animation-delay: 700ms !important;
          animation-delay: 700ms !important; }

a {
  outline: none; }

strong {
  font-weight: 600; }

iframe {
  border: 0; }

.callout {
  margin: 0.3125rem 0;
  padding-right: 2rem;
  border: none; }

.is-drilldown-submenu.is-active {
  z-index: 2 !important; }

.datepicker table thead {
  background: inherit;
  color: inherit; }

.datepicker table tbody tr:nth-child(even) {
  background-color: inherit; }

.temporary-slogan {
  display: block;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  background-color: #c3002f;
  z-index: 999; }
  .temporary-slogan__inner {
    padding: 0.625rem;
    color: #ffffff;
    font-size: 0.75rem;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    line-height: 1.4; }
    @media print, screen and (min-width: 40em) {
      .temporary-slogan__inner {
        font-size: 0.875rem; } }
    @media print, screen and (min-width: 64em) {
      .temporary-slogan__inner {
        font-size: 0.9375rem; } }
    @media screen and (min-width: 75em) {
      .temporary-slogan__inner {
        font-size: 1rem; } }
    .temporary-slogan__inner a {
      color: #ffffff; }

.block--sidebar {
  position: relative;
  background-color: #ffffff; }
  .block--sidebar .block__primary-images {
    position: relative; }
  .block--sidebar .block__icon {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 0.375rem 0.5rem;
    background-color: #ffffff;
    line-height: 1; }
    .block--sidebar .block__icon i {
      font-size: 1.5rem;
      line-height: 1; }
  .block--sidebar .block__details {
    padding: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .block--sidebar .block__details {
        padding: 0.9375rem;
        text-align: center; } }
  .block--sidebar .block__title {
    margin-bottom: 0;
    font-weight: 600; }
  .block--sidebar .block__sub-title {
    margin-top: 0.1875rem;
    margin-bottom: 0; }
  .block--sidebar .block__description {
    margin-top: 0.375rem;
    line-height: 1.6; }

.department--vehicle .department__telephone .department__label::after {
  display: inline-block;
  content: ':';
  margin-right: 0.1875rem; }

.department--vehicle .department__telephone .department__value {
  font-weight: 600; }

.department--vehicle .department__opening-hours .department__value {
  display: inline-block;
  float: right;
  font-weight: 600; }

.form--delivery-calendar {
  margin-top: 0.9375rem; }
  .form--delivery-calendar .form__link {
    margin-top: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .form--delivery-calendar .form__link {
        margin-top: 1.875rem; } }
    .form--delivery-calendar .form__link .button {
      margin-bottom: 0; }

.form--sell-your-vehicle-valuation [type='text'],
.form--sell-your-vehicle-valuation [type='password'],
.form--sell-your-vehicle-valuation [type='date'],
.form--sell-your-vehicle-valuation [type='datetime'],
.form--sell-your-vehicle-valuation [type='datetime-local'],
.form--sell-your-vehicle-valuation [type='month'],
.form--sell-your-vehicle-valuation [type='week'],
.form--sell-your-vehicle-valuation [type='email'],
.form--sell-your-vehicle-valuation [type='number'],
.form--sell-your-vehicle-valuation [type='search'],
.form--sell-your-vehicle-valuation [type='tel'],
.form--sell-your-vehicle-valuation [type='time'],
.form--sell-your-vehicle-valuation [type='url'],
.form--sell-your-vehicle-valuation [type='color'],
.form--sell-your-vehicle-valuation select,
.form--sell-your-vehicle-valuation textarea {
  margin-bottom: 0.9375rem; }

.form--sell-your-vehicle-valuation label.error {
  height: 1.1875rem;
  margin-top: -0.9375rem;
  margin-bottom: 0.9375rem;
  color: #cc4b37;
  font-size: 0.8125rem;
  line-height: 1.1875rem; }

.form--sell-your-vehicle-valuation .form__back a {
  display: block;
  margin-bottom: 0.375rem; }
  .form--sell-your-vehicle-valuation .form__back a i {
    font-size: 0.75rem; }
  .form--sell-your-vehicle-valuation .form__back a span {
    line-height: 1;
    vertical-align: middle; }

.form--sell-your-vehicle-valuation .form__step0 .field-registration {
  margin-bottom: 0.9375rem; }
  .form--sell-your-vehicle-valuation .form__step0 .field-registration .form-group__input {
    position: relative;
    width: 100%;
    height: 3.75rem;
    padding-left: 3.75rem;
    padding-right: 0.375rem;
    background-color: #ffffff;
    border: none;
    border-radius: 0.375rem;
    box-shadow: none; }
    .form--sell-your-vehicle-valuation .form__step0 .field-registration .form-group__input::before {
      font-family: "67degrees";
      content: "\47";
      position: absolute;
      top: 0;
      left: 0;
      height: 3.75rem;
      width: 3.125rem;
      font-size: 1.875rem;
      line-height: 2.1;
      text-align: center;
      background-color: #000000;
      color: #ffffff;
      border-top-left-radius: 0.375rem;
      border-bottom-left-radius: 0.375rem;
      font-weight: normal;
      font-style: normal;
      letter-spacing: normal;
      text-transform: none;
      display: inline-block;
      white-space: nowrap;
      word-wrap: normal;
      direction: ltr;
      -webkit-font-feature-settings: 'liga';
      -webkit-font-smoothing: antialiased;
      vertical-align: middle; }
    .form--sell-your-vehicle-valuation .form__step0 .field-registration .form-group__input input {
      height: 3.625rem;
      font-size: 1.875rem;
      font-weight: 700;
      text-transform: uppercase;
      background-color: #ffffff;
      border: none;
      box-shadow: none; }
  .form--sell-your-vehicle-valuation .form__step0 .field-registration .control-label {
    display: none; }

.form--sell-your-vehicle-valuation .form__step1 {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .form--sell-your-vehicle-valuation .form__step1 {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .form--sell-your-vehicle-valuation .form__step1 {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .form--sell-your-vehicle-valuation .form__step1::before, .form--sell-your-vehicle-valuation .form__step1::after {
    display: table;
    content: ' '; }
  .form--sell-your-vehicle-valuation .form__step1::after {
    clear: both; }
  .form--sell-your-vehicle-valuation .form__step1 fieldset {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--sell-your-vehicle-valuation .form__step1 fieldset {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--sell-your-vehicle-valuation .form__step1 fieldset:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .form--sell-your-vehicle-valuation .form__step1 fieldset {
        width: 66.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .form--sell-your-vehicle-valuation .form__step1 fieldset {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .form--sell-your-vehicle-valuation .form__step1 fieldset:last-child:not(:first-child) {
          float: right; } }
  .form--sell-your-vehicle-valuation .form__step1 .summary {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--sell-your-vehicle-valuation .form__step1 .summary {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--sell-your-vehicle-valuation .form__step1 .summary:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .form--sell-your-vehicle-valuation .form__step1 .summary {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .form--sell-your-vehicle-valuation .form__step1 .summary {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .form--sell-your-vehicle-valuation .form__step1 .summary:last-child:not(:first-child) {
          float: right; } }
    .form--sell-your-vehicle-valuation .form__step1 .summary__inner {
      color: #ffffff;
      background-color: #c3002f;
      padding: 1.25rem; }
    .form--sell-your-vehicle-valuation .form__step1 .summary__title {
      margin-bottom: 0.9375rem;
      color: #ffffff;
      font-size: 1.5rem;
      font-weight: 600;
      line-height: 1; }
    .form--sell-your-vehicle-valuation .form__step1 .summary__list {
      margin: 0;
      list-style: none; }
    .form--sell-your-vehicle-valuation .form__step1 .summary__list-item span {
      float: right;
      font-weight: 600; }

.valuation__price {
  font-size: 2.5rem;
  font-weight: 700; }

.form--service-booking {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .form--service-booking {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .form--service-booking {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .form--service-booking::before, .form--service-booking::after {
    display: table;
    content: ' '; }
  .form--service-booking::after {
    clear: both; }
  .form--service-booking [type='text'],
  .form--service-booking [type='password'],
  .form--service-booking [type='date'],
  .form--service-booking [type='datetime'],
  .form--service-booking [type='datetime-local'],
  .form--service-booking [type='month'],
  .form--service-booking [type='week'],
  .form--service-booking [type='email'],
  .form--service-booking [type='number'],
  .form--service-booking [type='search'],
  .form--service-booking [type='tel'],
  .form--service-booking [type='time'],
  .form--service-booking [type='url'],
  .form--service-booking [type='color'],
  .form--service-booking select,
  .form--service-booking textarea {
    margin-bottom: 0.9375rem; }
  .form--service-booking label.error {
    height: 1.1875rem;
    margin-top: -0.9375rem;
    margin-bottom: 0.9375rem;
    color: #cc4b37;
    font-size: 0.8125rem;
    line-height: 1.1875rem; }
  .form--service-booking .form__steps {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--service-booking .form__steps {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--service-booking .form__steps:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .form--service-booking .form__steps {
        width: 75%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .form--service-booking .form__steps {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .form--service-booking .form__steps:last-child:not(:first-child) {
          float: right; } }
  .form--service-booking .form__summary {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--service-booking .form__summary {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--service-booking .form__summary:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .form--service-booking .form__summary {
        width: 25%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .form--service-booking .form__summary {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .form--service-booking .form__summary:last-child:not(:first-child) {
          float: right; } }
  .form--service-booking .form-disclaimer {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--service-booking .form-disclaimer {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--service-booking .form-disclaimer:last-child:not(:first-child) {
      float: right; }
  .form--service-booking .field-servicebookingform-registration {
    margin-bottom: 0.9375rem; }
    .form--service-booking .field-servicebookingform-registration .form-group__input {
      position: relative;
      width: 100%;
      height: 3.75rem;
      padding-left: 3.75rem;
      padding-right: 0.375rem;
      background-color: #ffffff;
      border: none;
      border-radius: 0.375rem;
      box-shadow: none; }
      .form--service-booking .field-servicebookingform-registration .form-group__input::before {
        font-family: "67degrees";
        content: "\47";
        position: absolute;
        top: 0;
        left: 0;
        height: 3.75rem;
        width: 3.125rem;
        font-size: 1.875rem;
        line-height: 2.1;
        text-align: center;
        background-color: #000000;
        color: #ffffff;
        border-top-left-radius: 0.375rem;
        border-bottom-left-radius: 0.375rem;
        font-weight: normal;
        font-style: normal;
        letter-spacing: normal;
        text-transform: none;
        display: inline-block;
        white-space: nowrap;
        word-wrap: normal;
        direction: ltr;
        -webkit-font-feature-settings: 'liga';
        -webkit-font-smoothing: antialiased;
        vertical-align: middle; }
      .form--service-booking .field-servicebookingform-registration .form-group__input input {
        height: 3.625rem;
        font-size: 1.875rem;
        font-weight: 700;
        text-transform: uppercase;
        background-color: #ffffff;
        border: none;
        box-shadow: none; }
    .form--service-booking .field-servicebookingform-registration .control-label {
      display: none; }
  .form--service-booking .field-servicebookingform-service_type .control-label,
  .form--service-booking .field-servicebookingform-additional-service_type .control-label {
    margin-bottom: 0;
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1; }
  .form--service-booking .field-servicebookingform-service_type p,
  .form--service-booking .field-servicebookingform-additional-service_type p {
    margin-bottom: 0.625rem;
    font-size: 0.875rem;
    font-weight: 400; }
  .form--service-booking .field-servicebookingform-service_type .options {
    margin-right: -0.625rem;
    margin-left: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--service-booking .field-servicebookingform-service_type .options {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .form--service-booking .field-servicebookingform-service_type .options {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .form--service-booking .field-servicebookingform-service_type .options::before, .form--service-booking .field-servicebookingform-service_type .options::after {
      display: table;
      content: ' '; }
    .form--service-booking .field-servicebookingform-service_type .options::after {
      clear: both; }
    .form--service-booking .field-servicebookingform-service_type .options > label {
      float: left;
      width: 100%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .form--service-booking .field-servicebookingform-service_type .options > label {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .form--service-booking .field-servicebookingform-service_type .options > label:nth-of-type(1n) {
        clear: none; }
      .form--service-booking .field-servicebookingform-service_type .options > label:nth-of-type(1n+1) {
        clear: both; }
      .form--service-booking .field-servicebookingform-service_type .options > label:last-child {
        float: left; }
    @media print, screen and (min-width: 64em) {
      .form--service-booking .field-servicebookingform-service_type .options > label {
        float: left;
        width: 33.33333%;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .form--service-booking .field-servicebookingform-service_type .options > label {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .form--service-booking .field-servicebookingform-service_type .options > label:nth-of-type(1n) {
          clear: none; }
        .form--service-booking .field-servicebookingform-service_type .options > label:nth-of-type(3n+1) {
          clear: both; }
        .form--service-booking .field-servicebookingform-service_type .options > label:last-child {
          float: left; } }
    .form--service-booking .field-servicebookingform-service_type .options__label {
      margin-bottom: 0.625rem; }
      .form--service-booking .field-servicebookingform-service_type .options__label input {
        display: none; }
      .form--service-booking .field-servicebookingform-service_type .options__label .options__details {
        display: block;
        min-height: 6.25rem;
        padding: 0.9375rem;
        text-align: center;
        background-color: #ffffff; }
      .form--service-booking .field-servicebookingform-service_type .options__label input:checked + .options__details {
        color: #ffffff;
        background-color: #c3002f; }
      .form--service-booking .field-servicebookingform-service_type .options__label .options__name {
        font-size: 1.125rem;
        font-weight: 600;
        line-height: 1; }
      .form--service-booking .field-servicebookingform-service_type .options__label .options__description {
        display: block;
        min-height: 2rem;
        font-size: 0.75rem;
        line-height: 1.2; }
      .form--service-booking .field-servicebookingform-service_type .options__label .options__price {
        display: block;
        font-size: 1.25rem;
        font-weight: 600;
        line-height: 1; }
      .form--service-booking .field-servicebookingform-service_type .options__label label.error {
        position: absolute;
        top: 0.1875rem;
        left: 6.25rem;
        margin: 0; }
  .form--service-booking .field-servicebookingform-additional-service_type .options {
    margin-right: -0.625rem;
    margin-left: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--service-booking .field-servicebookingform-additional-service_type .options {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .form--service-booking .field-servicebookingform-additional-service_type .options {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .form--service-booking .field-servicebookingform-additional-service_type .options::before, .form--service-booking .field-servicebookingform-additional-service_type .options::after {
      display: table;
      content: ' '; }
    .form--service-booking .field-servicebookingform-additional-service_type .options::after {
      clear: both; }
    .form--service-booking .field-servicebookingform-additional-service_type .options > label {
      float: left;
      width: 100%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .form--service-booking .field-servicebookingform-additional-service_type .options > label {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .form--service-booking .field-servicebookingform-additional-service_type .options > label:nth-of-type(1n) {
        clear: none; }
      .form--service-booking .field-servicebookingform-additional-service_type .options > label:nth-of-type(1n+1) {
        clear: both; }
      .form--service-booking .field-servicebookingform-additional-service_type .options > label:last-child {
        float: left; }
    .form--service-booking .field-servicebookingform-additional-service_type .options__label input {
      display: none; }
    .form--service-booking .field-servicebookingform-additional-service_type .options__label .options__details {
      display: inline-block;
      width: 100%;
      padding: 0.9375rem;
      background-color: #ffffff; }
    .form--service-booking .field-servicebookingform-additional-service_type .options__label input:checked + .options__details {
      color: #ffffff;
      background-color: #c3002f; }
    .form--service-booking .field-servicebookingform-additional-service_type .options__label .options__name {
      float: left;
      font-size: 1.125rem;
      font-weight: 600;
      line-height: 1; }
    .form--service-booking .field-servicebookingform-additional-service_type .options__label .options__description {
      float: left;
      clear: left;
      margin-top: 0.3125rem;
      font-size: 0.75rem;
      line-height: 1.2; }
    .form--service-booking .field-servicebookingform-additional-service_type .options__label .options__price {
      float: right;
      font-size: 1.25rem;
      font-weight: 600;
      line-height: 1; }
    .form--service-booking .field-servicebookingform-additional-service_type .options__label label.error {
      position: absolute;
      top: 0.1875rem;
      left: 6.25rem;
      margin: 0; }
  .form--service-booking .confirmation {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
    margin-bottom: 0.375rem; }
    @media print, screen and (min-width: 40em) {
      .form--service-booking .confirmation {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .form--service-booking .confirmation {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .form--service-booking .confirmation::before, .form--service-booking .confirmation::after {
      display: table;
      content: ' '; }
    .form--service-booking .confirmation::after {
      clear: both; }
    .form--service-booking .confirmation > li {
      float: left;
      width: 100%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .form--service-booking .confirmation > li {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .form--service-booking .confirmation > li:nth-of-type(1n) {
        clear: none; }
      .form--service-booking .confirmation > li:nth-of-type(1n+1) {
        clear: both; }
      .form--service-booking .confirmation > li:last-child {
        float: left; }
    @media print, screen and (min-width: 64em) {
      .form--service-booking .confirmation > li {
        float: left;
        width: 33.33333%;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .form--service-booking .confirmation > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .form--service-booking .confirmation > li:nth-of-type(1n) {
          clear: none; }
        .form--service-booking .confirmation > li:nth-of-type(3n+1) {
          clear: both; }
        .form--service-booking .confirmation > li:last-child {
          float: left; } }
    .form--service-booking .confirmation > li {
      margin-bottom: 0.625rem; }
    .form--service-booking .confirmation__step {
      padding: 0.9375rem;
      background-color: #ffffff; }
    .form--service-booking .confirmation__title {
      margin-bottom: 0.8125rem;
      padding-bottom: 0.625rem;
      font-size: 1.125rem;
      font-weight: 600;
      text-align: center;
      line-height: 1.4; }
    .form--service-booking .confirmation__change {
      display: block;
      font-size: 0.875rem; }
    .form--service-booking .confirmation__row {
      margin-bottom: 0.375rem; }
    .form--service-booking .confirmation__label {
      display: inline-block;
      font-size: 0.875rem;
      line-height: 1.5; }
    .form--service-booking .confirmation__value {
      display: inline-block;
      font-size: 0.875rem;
      font-weight: 600;
      line-height: 1.5; }
    .form--service-booking .confirmation__row--additional-service .confirmation__label,
    .form--service-booking .confirmation__row--additional-service .confirmation__value, .form--service-booking .confirmation__row--service-type .confirmation__label,
    .form--service-booking .confirmation__row--service-type .confirmation__value {
      display: block; }
  .form--service-booking .summary {
    color: #ffffff;
    background-color: #c3002f;
    padding: 1.25rem; }
    .form--service-booking .summary__title {
      margin-bottom: 0.9375rem;
      color: #ffffff;
      font-size: 1.5rem;
      font-weight: 600;
      line-height: 1; }
    .form--service-booking .summary__label {
      display: inline-block; }
    .form--service-booking .summary__value {
      float: right; }
    .form--service-booking .summary__row--service {
      margin-bottom: 0.1875rem; }
    .form--service-booking .summary__row--total {
      border-top: 1px solid #f6003b;
      margin-top: 0.8125rem;
      padding-top: 0.625rem;
      font-size: 1.125rem;
      font-weight: 600; }

.form--vehicle-payment .form-marketing__fields input {
  margin-bottom: 0; }

.form--vehicle-payment .field-submit {
  margin-top: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .form--vehicle-payment .field-submit {
      margin-top: 1.875rem; } }
  .form--vehicle-payment .field-submit .button {
    margin-bottom: 0; }

.form--vehicle-sort select {
  height: 2.875rem; }

.form--vehicle-valuation .form__back a {
  display: block;
  margin-bottom: 0.375rem; }
  .form--vehicle-valuation .form__back a i {
    font-size: 0.75rem; }
  .form--vehicle-valuation .form__back a span {
    line-height: 1;
    vertical-align: middle; }

.form--vehicle-valuation .button {
  margin-bottom: 0; }

.form--vehicle-valuation .form__description {
  margin-bottom: 0.9375rem; }

.form--vehicle-valuation .form__row {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .form--vehicle-valuation .form__row {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .form--vehicle-valuation .form__row {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .form--vehicle-valuation .form__row::before, .form--vehicle-valuation .form__row::after {
    display: table;
    content: ' '; }
  .form--vehicle-valuation .form__row::after {
    clear: both; }

.form--vehicle-valuation .form__registration,
.form--vehicle-valuation .form__mileage,
.form--vehicle-valuation .form__first-name,
.form--vehicle-valuation .form__last-name,
.form--vehicle-valuation .form__town,
.form--vehicle-valuation .form__branch,
.form--vehicle-valuation .form__phone,
.form--vehicle-valuation .form__email {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .form--vehicle-valuation .form__registration,
    .form--vehicle-valuation .form__mileage,
    .form--vehicle-valuation .form__first-name,
    .form--vehicle-valuation .form__last-name,
    .form--vehicle-valuation .form__town,
    .form--vehicle-valuation .form__branch,
    .form--vehicle-valuation .form__phone,
    .form--vehicle-valuation .form__email {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .form--vehicle-valuation .form__registration:last-child:not(:first-child),
  .form--vehicle-valuation .form__mileage:last-child:not(:first-child),
  .form--vehicle-valuation .form__first-name:last-child:not(:first-child),
  .form--vehicle-valuation .form__last-name:last-child:not(:first-child),
  .form--vehicle-valuation .form__town:last-child:not(:first-child),
  .form--vehicle-valuation .form__branch:last-child:not(:first-child),
  .form--vehicle-valuation .form__phone:last-child:not(:first-child),
  .form--vehicle-valuation .form__email:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 64em) {
    .form--vehicle-valuation .form__registration,
    .form--vehicle-valuation .form__mileage,
    .form--vehicle-valuation .form__first-name,
    .form--vehicle-valuation .form__last-name,
    .form--vehicle-valuation .form__town,
    .form--vehicle-valuation .form__branch,
    .form--vehicle-valuation .form__phone,
    .form--vehicle-valuation .form__email {
      width: 50%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .form--vehicle-valuation .form__registration,
    .form--vehicle-valuation .form__mileage,
    .form--vehicle-valuation .form__first-name,
    .form--vehicle-valuation .form__last-name,
    .form--vehicle-valuation .form__town,
    .form--vehicle-valuation .form__branch,
    .form--vehicle-valuation .form__phone,
    .form--vehicle-valuation .form__email {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .form--vehicle-valuation .form__registration:last-child:not(:first-child),
      .form--vehicle-valuation .form__mileage:last-child:not(:first-child),
      .form--vehicle-valuation .form__first-name:last-child:not(:first-child),
      .form--vehicle-valuation .form__last-name:last-child:not(:first-child),
      .form--vehicle-valuation .form__town:last-child:not(:first-child),
      .form--vehicle-valuation .form__branch:last-child:not(:first-child),
      .form--vehicle-valuation .form__phone:last-child:not(:first-child),
      .form--vehicle-valuation .form__email:last-child:not(:first-child) {
        float: right; } }

.form--vehicle-valuation .form__part-exchange-vehicle {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .form--vehicle-valuation .form__part-exchange-vehicle {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .form--vehicle-valuation .form__part-exchange-vehicle:last-child:not(:first-child) {
    float: right; }

.form--vehicle-valuation .summary {
  margin-bottom: 0.9375rem; }
  .form--vehicle-valuation .summary__title {
    margin-bottom: 0.9375rem;
    font-weight: 600; }
  .form--vehicle-valuation .summary__list {
    margin: 0;
    list-style: none; }
    .form--vehicle-valuation .summary__list li {
      margin-bottom: 0.625rem; }
      .form--vehicle-valuation .summary__list li:last-child {
        margin-bottom: 0; }

.form--vehicle-valuation .form__vehicle-specifics {
  margin: 0;
  list-style: none; }
  .form--vehicle-valuation .form__vehicle-specifics li {
    line-height: 1.2; }
    .form--vehicle-valuation .form__vehicle-specifics li .checkbox {
      margin: 0; }
    .form--vehicle-valuation .form__vehicle-specifics li .form-group {
      display: inline-block;
      margin-bottom: 0; }
    .form--vehicle-valuation .form__vehicle-specifics li label {
      line-height: 1.2; }
    .form--vehicle-valuation .form__vehicle-specifics li a {
      display: inline-block;
      margin-bottom: 0;
      margin-left: 0.1875rem;
      color: #c3002f; }
  .form--vehicle-valuation .form__vehicle-specifics .form__field-has-outstanding-finance {
    margin-bottom: 0.9375rem; }

.form--vehicle-valuation .form__vehicle-condition {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
  margin: 0 0 0.9375rem;
  list-style: none; }
  @media print, screen and (min-width: 40em) {
    .form--vehicle-valuation .form__vehicle-condition {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .form--vehicle-valuation .form__vehicle-condition {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .form--vehicle-valuation .form__vehicle-condition::before, .form--vehicle-valuation .form__vehicle-condition::after {
    display: table;
    content: ' '; }
  .form--vehicle-valuation .form__vehicle-condition::after {
    clear: both; }
  .form--vehicle-valuation .form__vehicle-condition > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--vehicle-valuation .form__vehicle-condition > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--vehicle-valuation .form__vehicle-condition > li:nth-of-type(1n) {
      clear: none; }
    .form--vehicle-valuation .form__vehicle-condition > li:nth-of-type(1n+1) {
      clear: both; }
    .form--vehicle-valuation .form__vehicle-condition > li:last-child {
      float: left; }
  @media screen and (min-width: 48em) {
    .form--vehicle-valuation .form__vehicle-condition > li {
      float: left;
      width: 20%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 48em) and (min-width: 40em) {
    .form--vehicle-valuation .form__vehicle-condition > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (min-width: 48em) {
      .form--vehicle-valuation .form__vehicle-condition > li:nth-of-type(1n) {
        clear: none; }
      .form--vehicle-valuation .form__vehicle-condition > li:nth-of-type(5n+1) {
        clear: both; }
      .form--vehicle-valuation .form__vehicle-condition > li:last-child {
        float: left; } }
  .form--vehicle-valuation .form__vehicle-condition li {
    margin-bottom: 0.625rem;
    text-align: center; }
    @media print, screen and (min-width: 40em) {
      .form--vehicle-valuation .form__vehicle-condition li {
        margin-bottom: 0.9375rem; } }
    @media screen and (min-width: 48em) {
      .form--vehicle-valuation .form__vehicle-condition li {
        margin-bottom: 0; } }

.form--vehicle-valuation .field-partexchangeform-lightcondition {
  display: none; }

.form--vehicle-valuation .form__valuation h3, .form--vehicle-valuation .form__valuation .block--sidebar .block__title, .block--sidebar .form--vehicle-valuation .form__valuation .block__title, .form--vehicle-valuation .form__valuation .offer--featured .offer__sub-title, .offer--featured .form--vehicle-valuation .form__valuation .offer__sub-title, .form--vehicle-valuation .form__valuation .add-on__title, .form--vehicle-valuation .form__valuation .calendar__header .calendar__month span, .calendar__header .calendar__month .form--vehicle-valuation .form__valuation span, .form--vehicle-valuation .form__valuation .collection-delivery__title, .form--vehicle-valuation .form__valuation .order-payment__title, .form--vehicle-valuation .form__valuation .order-state-summary__vehicle-title, .form--vehicle-valuation .form__valuation .part--featured .part__sub-title, .part--featured .form--vehicle-valuation .form__valuation .part__sub-title, .form--vehicle-valuation .form__valuation .post--featured .post__sub-title, .post--featured .form--vehicle-valuation .form__valuation .post__sub-title, .form--vehicle-valuation .form__valuation .quick-search__legend, .form--vehicle-valuation .form__valuation .listing--showroom-teaser .listing__title h1, .listing--showroom-teaser .listing__title .form--vehicle-valuation .form__valuation h1, .form--vehicle-valuation .form__valuation .listing--post-teaser .listing__title h1, .listing--post-teaser .listing__title .form--vehicle-valuation .form__valuation h1, .form--vehicle-valuation .form__valuation .listing--offer-teaser .listing__title h1, .listing--offer-teaser .listing__title .form--vehicle-valuation .form__valuation h1, .form--vehicle-valuation .form__valuation .listing--custom-entry-teaser .listing__title h1, .listing--custom-entry-teaser .listing__title .form--vehicle-valuation .form__valuation h1, .form--vehicle-valuation .form__valuation .listing--vehicle-teaser .listing__title h1, .listing--vehicle-teaser .listing__title .form--vehicle-valuation .form__valuation h1, .form--vehicle-valuation .form__valuation .block--index-header .block__title h1, .block--index-header .block__title .form--vehicle-valuation .form__valuation h1, .form--vehicle-valuation .form__valuation .branch--contact .branch__opening-hours-title, .branch--contact .form--vehicle-valuation .form__valuation .branch__opening-hours-title, .form--vehicle-valuation .form__valuation .form--part-exchange .form__title, .form--part-exchange .form--vehicle-valuation .form__valuation .form__title, .form--vehicle-valuation .form__valuation .finance-table--full .finance-table__title, .finance-table--full .form--vehicle-valuation .form__valuation .finance-table__title, .form--vehicle-valuation .form__valuation .finance-checker__details-title, .form--vehicle-valuation .form__valuation .finance-table--order .finance-table__title, .finance-table--order .form--vehicle-valuation .form__valuation .finance-table__title {
  margin-bottom: 0; }

.form--vehicle-valuation .form__valuation .form__valuation-description {
  margin-top: 0.9375rem; }

.reveal--vehicle-valuation {
  padding-top: 3.125rem; }
  .reveal--vehicle-valuation p:last-child {
    margin-bottom: 0; }

form [type='text'],
form [type='password'],
form [type='date'],
form [type='datetime'],
form [type='datetime-local'],
form [type='month'],
form [type='week'],
form [type='email'],
form [type='number'],
form [type='search'],
form [type='tel'],
form [type='time'],
form [type='url'],
form [type='color'] {
  height: 2.75rem;
  margin-bottom: 0; }
  form [type='text']:disabled,
  form [type='password']:disabled,
  form [type='date']:disabled,
  form [type='datetime']:disabled,
  form [type='datetime-local']:disabled,
  form [type='month']:disabled,
  form [type='week']:disabled,
  form [type='email']:disabled,
  form [type='number']:disabled,
  form [type='search']:disabled,
  form [type='tel']:disabled,
  form [type='time']:disabled,
  form [type='url']:disabled,
  form [type='color']:disabled {
    color: #222222; }

form select {
  height: 2.75rem;
  margin-bottom: 0;
  background-image: url("data:image/svg+xml;utf8,<svg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'><path d='M10.59.59L6 5.17 1.41.59 0 2l6 6 6-6' fill='%232d3737' fill-rule='evenodd'/></svg>");
  background-size: 0.6875rem 0.4375rem; }
  form select:disabled {
    color: #222222; }

form textarea {
  height: 6.25rem;
  margin-bottom: 0; }

form .help-block {
  margin-bottom: 0.9375rem;
  color: #cc4b37;
  font-size: 0.8125rem; }

form [type='hidden'] + .help-block {
  display: none; }

form .required label.control-label::after {
  content: ' *';
  color: #cc4b37; }

form .form-marketing__message {
  margin-bottom: 0.9375rem;
  color: #222222;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.8; }

form .form-marketing__label label::after {
  content: ' *';
  color: #cc4b37; }

form .form-marketing__fields label {
  display: inline-block;
  margin-right: 0.9375rem; }

form .form-marketing__fields .form-group .js-marketing {
  position: absolute;
  width: 0.0625rem;
  visibility: hidden; }

form .form-marketing__fields .form-group .help-block {
  margin-bottom: 0; }

form .form-marketing__channels {
  margin-bottom: 0.9375rem;
  font-size: 0.875rem; }
  form .form-marketing__channels label {
    display: inline-block;
    margin-right: 0.9375rem; }
  form .form-marketing__channels [type='checkbox'] {
    margin-bottom: 0; }

.form-disclaimer {
  font-size: 0.875rem;
  line-height: 1.8;
  opacity: 0.6; }

.video__url {
  position: relative;
  height: 0;
  margin-bottom: 1rem;
  padding-bottom: 56.25%;
  overflow: hidden;
  margin-bottom: 0; }
  .video__url iframe,
  .video__url object,
  .video__url embed,
  .video__url video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.video--page .video__title {
  margin-bottom: 0.375rem; }

.new-vehicle--full .new-vehicle__top {
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
  background-color: #f2f2f2; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__top {
      padding-top: 0;
      padding-bottom: 3.125rem; } }
  .new-vehicle--full .new-vehicle__top-inner {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto; }
    .new-vehicle--full .new-vehicle__top-inner::before, .new-vehicle--full .new-vehicle__top-inner::after {
      display: table;
      content: ' '; }
    .new-vehicle--full .new-vehicle__top-inner::after {
      clear: both; }
  .new-vehicle--full .new-vehicle__top .new-vehicle__promo-text {
    display: block;
    position: inherit;
    top: inherit;
    left: inherit;
    margin-bottom: 0.625rem; }

.new-vehicle--full .new-vehicle__back {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__back {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .new-vehicle--full .new-vehicle__back:last-child:not(:first-child) {
    float: right; }
  .new-vehicle--full .new-vehicle__back a {
    display: inline-block;
    margin-bottom: 0.375rem; }
    .new-vehicle--full .new-vehicle__back a i {
      font-size: 0.75rem; }
    .new-vehicle--full .new-vehicle__back a span {
      line-height: 1;
      vertical-align: middle; }

.new-vehicle--full .new-vehicle__media {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__media {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .new-vehicle--full .new-vehicle__media:last-child:not(:first-child) {
    float: right; }
  @media screen and (min-width: 48em) {
    .new-vehicle--full .new-vehicle__media {
      width: 58.33333%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 48em) and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__media {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (min-width: 48em) {
      .new-vehicle--full .new-vehicle__media:last-child:not(:first-child) {
        float: right; } }
  @media print, screen and (min-width: 64em) {
    .new-vehicle--full .new-vehicle__media {
      width: 66.66667%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__media {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .new-vehicle--full .new-vehicle__media:last-child:not(:first-child) {
        float: right; } }

.new-vehicle--full .new-vehicle__primary-images ul {
  margin: 0;
  list-style: none; }

.new-vehicle--full .new-vehicle__primary-images-thumbnails {
  display: none;
  margin-top: 0.125rem;
  overflow: hidden; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__primary-images-thumbnails {
      display: block; } }
  .new-vehicle--full .new-vehicle__primary-images-thumbnails ul {
    margin: 0;
    list-style: none; }

.new-vehicle--full .new-vehicle__details {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .new-vehicle--full .new-vehicle__details:last-child:not(:first-child) {
    float: right; }
  @media screen and (min-width: 48em) {
    .new-vehicle--full .new-vehicle__details {
      width: 41.66667%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 48em) and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (min-width: 48em) {
      .new-vehicle--full .new-vehicle__details:last-child:not(:first-child) {
        float: right; } }
  @media print, screen and (min-width: 64em) {
    .new-vehicle--full .new-vehicle__details {
      width: 33.33333%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .new-vehicle--full .new-vehicle__details:last-child:not(:first-child) {
        float: right; } }
  .new-vehicle--full .new-vehicle__details .new-vehicle__details-inner {
    padding: 0.625rem;
    background-color: #ffffff; }
    @media print, screen and (min-width: 40em) {
      .new-vehicle--full .new-vehicle__details .new-vehicle__details-inner {
        padding: 0.9375rem; } }
    .new-vehicle--full .new-vehicle__details .new-vehicle__details-inner .new-vehicle__title {
      margin-bottom: 0.9375rem;
      line-height: 1; }
      .new-vehicle--full .new-vehicle__details .new-vehicle__details-inner .new-vehicle__title .new-vehicle__model-variant {
        display: block;
        font-size: 1.5rem;
        font-weight: 400; }
    .new-vehicle--full .new-vehicle__details .new-vehicle__details-inner .new-vehicle__price {
      margin-bottom: 0.9375rem; }
    .new-vehicle--full .new-vehicle__details .new-vehicle__details-inner .new-vehicle__telephone {
      margin-bottom: 0.9375rem;
      font-size: 1rem;
      text-align: center;
      line-height: 1.5rem; }
      .new-vehicle--full .new-vehicle__details .new-vehicle__details-inner .new-vehicle__telephone span {
        display: block;
        font-size: 1.625rem;
        font-weight: 600; }
    .new-vehicle--full .new-vehicle__details .new-vehicle__details-inner .new-vehicle__cta {
      padding: 0.625rem 1.25rem;
      background-color: #f2f2f2; }

.new-vehicle--full .new-vehicle__part-exchange {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-top: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__part-exchange {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .new-vehicle--full .new-vehicle__part-exchange:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 64em) {
    .new-vehicle--full .new-vehicle__part-exchange {
      width: 33.33333%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__part-exchange {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .new-vehicle--full .new-vehicle__part-exchange:last-child:not(:first-child) {
        float: right; } }

.new-vehicle--full > .new-vehicle__technical-data-promoted {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  padding-top: 1.875rem;
  padding-bottom: 1.875rem; }
  .new-vehicle--full > .new-vehicle__technical-data-promoted::before, .new-vehicle--full > .new-vehicle__technical-data-promoted::after {
    display: table;
    content: ' '; }
  .new-vehicle--full > .new-vehicle__technical-data-promoted::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full > .new-vehicle__technical-data-promoted {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .new-vehicle--full > .new-vehicle__technical-data-promoted:last-child:not(:first-child) {
    float: right; }
  .new-vehicle--full > .new-vehicle__technical-data-promoted, .new-vehicle--full > .new-vehicle__technical-data-promoted:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full > .new-vehicle__technical-data-promoted {
      padding-top: 3.125rem;
      padding-bottom: 3.125rem; } }
  .new-vehicle--full > .new-vehicle__technical-data-promoted > ul {
    margin-bottom: 0;
    list-style: none; }
    @media screen and (max-width: 39.9375em) {
      .new-vehicle--full > .new-vehicle__technical-data-promoted > ul {
        margin-right: -0.625rem;
        margin-left: -0.625rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 40em) {
    .new-vehicle--full > .new-vehicle__technical-data-promoted > ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 64em) {
    .new-vehicle--full > .new-vehicle__technical-data-promoted > ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
    @media screen and (max-width: 39.9375em) {
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul::before, .new-vehicle--full > .new-vehicle__technical-data-promoted > ul::after {
          display: table;
          content: ' '; }
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul::after {
          clear: both; }
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li {
          float: left;
          width: 100%; }
          .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li:nth-of-type(1n) {
            clear: none; }
          .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li:nth-of-type(1n+1) {
            clear: both; }
          .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li:last-child {
            float: left; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .new-vehicle--full > .new-vehicle__technical-data-promoted > ul {
        margin-right: -0.625rem;
        margin-left: -0.625rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 40em) {
    .new-vehicle--full > .new-vehicle__technical-data-promoted > ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 64em) {
    .new-vehicle--full > .new-vehicle__technical-data-promoted > ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul::before, .new-vehicle--full > .new-vehicle__technical-data-promoted > ul::after {
          display: table;
          content: ' '; }
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul::after {
          clear: both; }
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li {
          float: left;
          width: 50%; }
          .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li:nth-of-type(1n) {
            clear: none; }
          .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li:nth-of-type(2n+1) {
            clear: both; }
          .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li:last-child {
            float: left; } }
    @media print, screen and (min-width: 64em) {
      .new-vehicle--full > .new-vehicle__technical-data-promoted > ul {
        margin: 0;
        list-style-type: none;
        display: table;
        width: 100%;
        table-layout: fixed; }
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li {
          display: table-cell;
          vertical-align: middle; }
          [data-whatinput='mouse'] .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li {
            outline: 0; }
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li > a {
          display: block;
          padding: 0.7rem 1rem;
          line-height: 1; }
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul input,
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul select,
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul a,
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul button {
          margin-bottom: 0; }
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li:first-child:last-child {
          width: 100%; } }
    .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li {
      padding: 0 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li {
          padding: 0 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
        .new-vehicle--full > .new-vehicle__technical-data-promoted > ul > li {
          vertical-align: top; } }

.new-vehicle--full .new-vehicle__technical-data-summary {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  padding-bottom: 1.875rem; }
  .new-vehicle--full .new-vehicle__technical-data-summary::before, .new-vehicle--full .new-vehicle__technical-data-summary::after {
    display: table;
    content: ' '; }
  .new-vehicle--full .new-vehicle__technical-data-summary::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__technical-data-summary {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .new-vehicle--full .new-vehicle__technical-data-summary:last-child:not(:first-child) {
    float: right; }
  .new-vehicle--full .new-vehicle__technical-data-summary, .new-vehicle--full .new-vehicle__technical-data-summary:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__technical-data-summary {
      padding-bottom: 3.125rem; } }
  .new-vehicle--full .new-vehicle__technical-data-summary > ul {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
    margin-bottom: 0;
    list-style: none; }
    @media print, screen and (min-width: 40em) {
      .new-vehicle--full .new-vehicle__technical-data-summary > ul {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .new-vehicle--full .new-vehicle__technical-data-summary > ul {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .new-vehicle--full .new-vehicle__technical-data-summary > ul::before, .new-vehicle--full .new-vehicle__technical-data-summary > ul::after {
      display: table;
      content: ' '; }
    .new-vehicle--full .new-vehicle__technical-data-summary > ul::after {
      clear: both; }
    .new-vehicle--full .new-vehicle__technical-data-summary > ul > li {
      float: left;
      width: 100%; }
      .new-vehicle--full .new-vehicle__technical-data-summary > ul > li:nth-of-type(1n) {
        clear: none; }
      .new-vehicle--full .new-vehicle__technical-data-summary > ul > li:nth-of-type(1n+1) {
        clear: both; }
      .new-vehicle--full .new-vehicle__technical-data-summary > ul > li:last-child {
        float: left; }
    @media print, screen and (min-width: 40em) {
      .new-vehicle--full .new-vehicle__technical-data-summary > ul > li {
        float: left;
        width: 50%; }
        .new-vehicle--full .new-vehicle__technical-data-summary > ul > li:nth-of-type(1n) {
          clear: none; }
        .new-vehicle--full .new-vehicle__technical-data-summary > ul > li:nth-of-type(2n+1) {
          clear: both; }
        .new-vehicle--full .new-vehicle__technical-data-summary > ul > li:last-child {
          float: left; } }
    @media print, screen and (min-width: 64em) {
      .new-vehicle--full .new-vehicle__technical-data-summary > ul > li {
        float: left;
        width: 33.33333%; }
        .new-vehicle--full .new-vehicle__technical-data-summary > ul > li:nth-of-type(1n) {
          clear: none; }
        .new-vehicle--full .new-vehicle__technical-data-summary > ul > li:nth-of-type(3n+1) {
          clear: both; }
        .new-vehicle--full .new-vehicle__technical-data-summary > ul > li:last-child {
          float: left; } }
    .new-vehicle--full .new-vehicle__technical-data-summary > ul > li {
      padding: 0 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .new-vehicle--full .new-vehicle__technical-data-summary > ul > li {
          padding: 0 0.9375rem 0.25rem; } }
      @media print, screen and (min-width: 40em) {
        .new-vehicle--full .new-vehicle__technical-data-summary > ul > li:nth-child(3n) {
          border-right: none; } }
  .new-vehicle--full .new-vehicle__technical-data-summary .show {
    text-align: center; }
    .new-vehicle--full .new-vehicle__technical-data-summary .show a {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      padding: 0.75rem 0.875rem;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 0;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 1.125rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      background-color: #c3002f;
      color: #ffffff;
      display: inline-block;
      margin-bottom: 0;
      padding: 0.625rem 0.75rem;
      font-size: 1rem;
      font-weight: 600; }
      [data-whatinput='mouse'] .new-vehicle--full .new-vehicle__technical-data-summary .show a {
        outline: 0; }
      .new-vehicle--full .new-vehicle__technical-data-summary .show a:hover, .new-vehicle--full .new-vehicle__technical-data-summary .show a:focus {
        background-color: #a60028;
        color: #ffffff; }

.new-vehicle--full .new-vehicle__description {
  line-height: 1.8; }
  @media screen and (max-width: 39.9375em) {
    .new-vehicle--full .new-vehicle__description {
      position: relative;
      overflow: hidden; } }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__description {
      text-align: center; } }
  .new-vehicle--full .new-vehicle__description .expand {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 6.25rem;
    padding-top: 4.6875rem;
    font-weight: 600;
    background: linear-gradient(to top, white 0%, white 25%, rgba(255, 255, 255, 0) 100%); }
  .new-vehicle--full .new-vehicle__description-outer {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    padding-bottom: 1.875rem; }
    .new-vehicle--full .new-vehicle__description-outer::before, .new-vehicle--full .new-vehicle__description-outer::after {
      display: table;
      content: ' '; }
    .new-vehicle--full .new-vehicle__description-outer::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .new-vehicle--full .new-vehicle__description-outer {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .new-vehicle--full .new-vehicle__description-outer:last-child:not(:first-child) {
      float: right; }
    .new-vehicle--full .new-vehicle__description-outer, .new-vehicle--full .new-vehicle__description-outer:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .new-vehicle--full .new-vehicle__description-outer {
        padding-bottom: 3.125rem; } }

.new-vehicle--full .new-vehicle__secondary-images {
  background-color: #f2f2f2;
  padding-top: 1.875rem;
  padding-bottom: 1.875rem; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__secondary-images {
      padding-top: 3.125rem;
      padding-bottom: 3.125rem; } }
  .new-vehicle--full .new-vehicle__secondary-images-inner {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    .new-vehicle--full .new-vehicle__secondary-images-inner::before, .new-vehicle--full .new-vehicle__secondary-images-inner::after {
      display: table;
      content: ' '; }
    .new-vehicle--full .new-vehicle__secondary-images-inner::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .new-vehicle--full .new-vehicle__secondary-images-inner {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .new-vehicle--full .new-vehicle__secondary-images-inner:last-child:not(:first-child) {
      float: right; }
    .new-vehicle--full .new-vehicle__secondary-images-inner, .new-vehicle--full .new-vehicle__secondary-images-inner:last-child {
      float: none; }
  .new-vehicle--full .new-vehicle__secondary-images ul {
    margin: 0;
    list-style: none; }

.new-vehicle--full .new-vehicle__content {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  .new-vehicle--full .new-vehicle__content::before, .new-vehicle--full .new-vehicle__content::after {
    display: table;
    content: ' '; }
  .new-vehicle--full .new-vehicle__content::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .new-vehicle--full .new-vehicle__content:last-child:not(:first-child) {
    float: right; }
  .new-vehicle--full .new-vehicle__content, .new-vehicle--full .new-vehicle__content:last-child {
    float: none; }
  .new-vehicle--full .new-vehicle__content-outer {
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
    background-color: #ebebeb; }
    @media print, screen and (min-width: 40em) {
      .new-vehicle--full .new-vehicle__content-outer {
        padding-top: 3.125rem;
        padding-bottom: 3.125rem; } }
  .new-vehicle--full .new-vehicle__content-inner {
    background-color: #ffffff; }
    @media print, screen and (min-width: 64em) {
      .new-vehicle--full .new-vehicle__content-inner {
        padding: 1.25rem; } }

.new-vehicle--full .new-vehicle__specification > ul {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
  list-style: none; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__specification > ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .new-vehicle--full .new-vehicle__specification > ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .new-vehicle--full .new-vehicle__specification > ul::before, .new-vehicle--full .new-vehicle__specification > ul::after {
    display: table;
    content: ' '; }
  .new-vehicle--full .new-vehicle__specification > ul::after {
    clear: both; }
  .new-vehicle--full .new-vehicle__specification > ul > li {
    float: left;
    width: 100%; }
    .new-vehicle--full .new-vehicle__specification > ul > li:nth-of-type(1n) {
      clear: none; }
    .new-vehicle--full .new-vehicle__specification > ul > li:nth-of-type(1n+1) {
      clear: both; }
    .new-vehicle--full .new-vehicle__specification > ul > li:last-child {
      float: left; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__specification > ul > li {
      float: left;
      width: 33.33333%; }
      .new-vehicle--full .new-vehicle__specification > ul > li:nth-of-type(1n) {
        clear: none; }
      .new-vehicle--full .new-vehicle__specification > ul > li:nth-of-type(3n+1) {
        clear: both; }
      .new-vehicle--full .new-vehicle__specification > ul > li:last-child {
        float: left; } }
  .new-vehicle--full .new-vehicle__specification > ul > li {
    padding: 0.625rem 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .new-vehicle--full .new-vehicle__specification > ul > li {
        padding: 0.625rem 0.9375rem; } }
    .new-vehicle--full .new-vehicle__specification > ul > li .specification {
      display: inline; }
      .new-vehicle--full .new-vehicle__specification > ul > li .specification__value {
        display: inline; }
    .new-vehicle--full .new-vehicle__specification > ul > li ul {
      margin-left: 0;
      color: #222222;
      list-style: square;
      list-style-position: inside; }

.new-vehicle--full .new-vehicle__specification-button {
  text-align: center; }
  .new-vehicle--full .new-vehicle__specification-button .button {
    display: none; }

.new-vehicle--full .new-vehicle__technical-data > ul {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
  list-style: none; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__technical-data > ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .new-vehicle--full .new-vehicle__technical-data > ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .new-vehicle--full .new-vehicle__technical-data > ul::before, .new-vehicle--full .new-vehicle__technical-data > ul::after {
    display: table;
    content: ' '; }
  .new-vehicle--full .new-vehicle__technical-data > ul::after {
    clear: both; }
  .new-vehicle--full .new-vehicle__technical-data > ul > li {
    float: left;
    width: 100%; }
    .new-vehicle--full .new-vehicle__technical-data > ul > li:nth-of-type(1n) {
      clear: none; }
    .new-vehicle--full .new-vehicle__technical-data > ul > li:nth-of-type(1n+1) {
      clear: both; }
    .new-vehicle--full .new-vehicle__technical-data > ul > li:last-child {
      float: left; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--full .new-vehicle__technical-data > ul > li {
      float: left;
      width: 33.33333%; }
      .new-vehicle--full .new-vehicle__technical-data > ul > li:nth-of-type(1n) {
        clear: none; }
      .new-vehicle--full .new-vehicle__technical-data > ul > li:nth-of-type(3n+1) {
        clear: both; }
      .new-vehicle--full .new-vehicle__technical-data > ul > li:last-child {
        float: left; } }
  .new-vehicle--full .new-vehicle__technical-data > ul > li {
    padding: 0.625rem 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .new-vehicle--full .new-vehicle__technical-data > ul > li {
        padding: 0.625rem 0.9375rem; } }
    .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data__label {
      display: inline-block; }
      .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data__label::after {
        content: ':'; }
    .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data__value {
      display: inline-block;
      float: right;
      font-weight: 600; }
    .new-vehicle--full .new-vehicle__technical-data > ul > li ul {
      margin-left: 0;
      list-style: none; }

.new-vehicle--full .new-vehicle__documents ul,
.new-vehicle--full .new-vehicle__audio ul {
  margin-left: 0;
  list-style: none; }
  .new-vehicle--full .new-vehicle__documents ul li,
  .new-vehicle--full .new-vehicle__audio ul li {
    display: inline-block;
    margin-right: 0.25rem; }

.new-vehicle--full .new-vehicle__similar {
  background-color: #f2f2f2; }

.new-vehicle--teaser {
  position: relative;
  background-color: #ffffff; }
  @media print, screen and (min-width: 40em) {
    .new-vehicle--teaser {
      padding: 0.9375rem; } }
  .new-vehicle--teaser .new-vehicle__primary-images {
    position: relative; }
  .new-vehicle--teaser .new-vehicle__details {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .new-vehicle--teaser .new-vehicle__details {
        padding-bottom: 0; } }
  .new-vehicle--teaser .new-vehicle__header {
    padding-left: 0.625rem;
    padding-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .new-vehicle--teaser .new-vehicle__header {
        padding-left: 0;
        padding-right: 0; } }
  .new-vehicle--teaser .new-vehicle__title {
    margin-bottom: 0.375rem;
    font-size: 1.5rem;
    line-height: 1; }
    .new-vehicle--teaser .new-vehicle__title .new-vehicle__make,
    .new-vehicle--teaser .new-vehicle__title .new-vehicle__model {
      font-size: 1.5rem;
      line-height: 1; }
    .new-vehicle--teaser .new-vehicle__title .new-vehicle__model-variant {
      display: block;
      font-size: 1.125rem;
      font-weight: 400;
      line-height: 1; }
  .new-vehicle--teaser .new-vehicle__footer {
    display: none;
    margin-top: 0.625rem;
    overflow: hidden; }
    @media print, screen and (min-width: 40em) {
      .new-vehicle--teaser .new-vehicle__footer {
        display: block; } }
  @media screen and (max-width: 39.9375em) {
    .new-vehicle--teaser .dropdown-pane {
      display: none; } }

.new-vehicle__media-count {
  position: absolute;
  bottom: 0;
  left: 0; }
  .new-vehicle__media-count > ul {
    margin-left: 0;
    margin-bottom: 0;
    padding-left: 0.375rem;
    padding-right: 0.375rem;
    font-size: 1rem;
    line-height: 1;
    background-color: #ffffff; }
    .new-vehicle__media-count > ul li {
      display: inline-block;
      padding: 0.375rem 0.125rem; }
      .new-vehicle__media-count > ul li i {
        font-size: 1.25rem;
        line-height: 1; }

.new-vehicle__promo-text {
  position: absolute;
  top: 0.5rem;
  left: 0.5rem; }
  .new-vehicle__promo-text span {
    padding: 0.25rem 0.5rem;
    color: #ffffff;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1;
    background-color: #c3002f;
    border-radius: 0.1875rem; }

.offer--featured {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .offer--featured {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .offer--featured {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .offer--featured::before, .offer--featured::after {
    display: table;
    content: ' '; }
  .offer--featured::after {
    clear: both; }
  .offer--featured .offer__primary-images {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .offer--featured .offer__primary-images {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .offer--featured .offer__primary-images:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .offer--featured .offer__primary-images {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .offer--featured .offer__primary-images {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .offer--featured .offer__primary-images:last-child:not(:first-child) {
          float: right; } }
  .offer--featured .offer__content {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .offer--featured .offer__content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .offer--featured .offer__content:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .offer--featured .offer__content {
        width: 66.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .offer--featured .offer__content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .offer--featured .offer__content:last-child:not(:first-child) {
          float: right; } }
  .offer--featured .offer__content--without-image {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .offer--featured .offer__content--without-image {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .offer--featured .offer__content--without-image:last-child:not(:first-child) {
      float: right; }
  .offer--featured .offer__title {
    margin-bottom: 0.625rem; }
  .offer--featured .offer__sub-title {
    margin-bottom: 0.625rem; }
  .offer--featured .offer__description {
    margin-bottom: 0.9375rem;
    line-height: 1.6; }
  .offer--featured .offer__link .button {
    margin-bottom: 0; }

.add-on {
  padding: 0.625rem;
  background-color: #e6e6e6; }
  @media print, screen and (min-width: 40em) {
    .add-on {
      padding: 0.9375rem; } }
  .add-on span.has-error {
    color: #cc4b37; }
  .add-on__inner {
    margin-right: -0.625rem;
    margin-left: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .add-on__inner {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .add-on__inner {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .add-on__inner::before, .add-on__inner::after {
      display: table;
      content: ' '; }
    .add-on__inner::after {
      clear: both; }
  .add-on__image {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 0.9375rem; }
    @media print, screen and (min-width: 40em) {
      .add-on__image {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .add-on__image:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .add-on__image {
        width: 25%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-bottom: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .add-on__image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .add-on__image:last-child:not(:first-child) {
          float: right; } }
    .add-on__image img {
      width: 100%; }
  .add-on__details {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .add-on__details {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .add-on__details:last-child:not(:first-child) {
      float: right; }
  .add-on__link {
    margin-top: 0.625rem; }
    @media print, screen and (min-width: 64em) {
      .add-on__link {
        text-align: right; } }
    .add-on__link .button {
      margin-bottom: 0; }
  .add-on__description {
    margin-top: 0.625rem; }
  .add-on__video {
    margin-top: 0.625rem; }
    .add-on__video a:hover,
    .add-on__video a:focus {
      text-decoration: none; }
    .add-on__video span {
      vertical-align: middle; }
  .add-on__video-approval {
    margin-top: 0.625rem; }
  .add-on--selected {
    background-color: #cccccc; }
  @media print, screen and (min-width: 64em) {
    .add-on--image .add-on__details {
      width: 75%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .add-on--image .add-on__details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .add-on--image .add-on__details:last-child:not(:first-child) {
        float: right; } }

.listing--add-on .listing__list {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
  margin: 0;
  list-style: none; }
  @media print, screen and (min-width: 40em) {
    .listing--add-on .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--add-on .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .listing--add-on .listing__list::before, .listing--add-on .listing__list::after {
    display: table;
    content: ' '; }
  .listing--add-on .listing__list::after {
    clear: both; }
  .listing--add-on .listing__list > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--add-on .listing__list > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--add-on .listing__list > li:nth-of-type(1n) {
      clear: none; }
    .listing--add-on .listing__list > li:nth-of-type(1n+1) {
      clear: both; }
    .listing--add-on .listing__list > li:last-child {
      float: left; }
  .listing--add-on .listing__list-item {
    margin-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--add-on .listing__list-item {
        margin-bottom: 0.9375rem; } }
    .listing--add-on .listing__list-item:last-child {
      margin-bottom: 0; }

.calendar {
  margin-top: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .calendar {
      margin-top: 0.9375rem; } }
  .calendar__header {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .calendar__header {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .calendar__header {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .calendar__header::before, .calendar__header::after {
      display: table;
      content: ' '; }
    .calendar__header::after {
      clear: both; }
    .calendar__header .calendar__switch {
      width: 33.33333%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      -webkit-align-self: flex-end;
          -ms-flex-item-align: end;
              align-self: flex-end; }
      @media print, screen and (min-width: 40em) {
        .calendar__header .calendar__switch {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .calendar__header .calendar__switch:last-child:not(:first-child) {
        float: right; }
      .calendar__header .calendar__switch a {
        font-size: 0.875rem; }
        @media print, screen and (min-width: 40em) {
          .calendar__header .calendar__switch a {
            font-size: 1rem; } }
        @media print, screen and (min-width: 64em) {
          .calendar__header .calendar__switch a {
            font-size: 1.125rem; } }
        .calendar__header .calendar__switch a i {
          margin-right: 0.375rem; }
      .calendar__header .calendar__switch--next {
        text-align: right; }
        .calendar__header .calendar__switch--next a i {
          margin-left: 0.375rem; }
    .calendar__header .calendar__month {
      width: 33.33333%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      -webkit-align-self: flex-end;
          -ms-flex-item-align: end;
              align-self: flex-end;
      text-align: center; }
      @media print, screen and (min-width: 40em) {
        .calendar__header .calendar__month {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .calendar__header .calendar__month:last-child:not(:first-child) {
        float: right; }
  .calendar__table {
    overflow-y: auto; }
    .calendar__table table {
      margin-bottom: 0; }
      .calendar__table table th {
        font-size: 1rem; }
      .calendar__table table td.slot {
        color: #ffffff;
        font-size: 1rem;
        text-align: center;
        background-color: #c3002f; }
      .calendar__table table td:hover {
        background-color: #900023;
        cursor: pointer; }
      .calendar__table table td.disabled {
        cursor: auto;
        background-color: #e6e6e6; }
        .calendar__table table td.disabled:hover {
          cursor: auto; }
      .calendar__table table td.closed {
        cursor: auto;
        background-color: #e6e6e6; }
        .calendar__table table td.closed:hover {
          cursor: auto; }
      .calendar__table table td.selected {
        background-color: #3adb76; }

.reveal.reveal--collection-map {
  padding-top: 3.125rem; }

#collection-map {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 100%; }

.collection-delivery {
  padding: 0.625rem;
  background-color: #e6e6e6; }
  @media print, screen and (min-width: 40em) {
    .collection-delivery {
      padding: 0.9375rem; } }
  .collection-delivery--selected {
    background-color: #cccccc; }
  .collection-delivery__inner {
    margin-right: -0.625rem;
    margin-left: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .collection-delivery__inner {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .collection-delivery__inner {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .collection-delivery__inner::before, .collection-delivery__inner::after {
      display: table;
      content: ' '; }
    .collection-delivery__inner::after {
      clear: both; }
  .collection-delivery__image {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 0.9375rem; }
    @media print, screen and (min-width: 40em) {
      .collection-delivery__image {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .collection-delivery__image:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .collection-delivery__image {
        width: 25%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-bottom: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .collection-delivery__image {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .collection-delivery__image:last-child:not(:first-child) {
          float: right; } }
    .collection-delivery__image img {
      width: 100%; }
  .collection-delivery__details {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .collection-delivery__details {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .collection-delivery__details:last-child:not(:first-child) {
      float: right; }
  .collection-delivery__description {
    margin-top: 0.625rem; }
  .collection-delivery__address {
    margin-top: 0.625rem; }
  .collection-delivery__map {
    margin-top: 0.625rem; }
    .collection-delivery__map span {
      vertical-align: middle; }
  .collection-delivery__link {
    margin-top: 0.625rem; }
    @media print, screen and (min-width: 64em) {
      .collection-delivery__link {
        text-align: right; } }
    .collection-delivery__link .button {
      margin-bottom: 0; }
  @media print, screen and (min-width: 64em) {
    .collection-delivery--image .collection-delivery__details {
      width: 75%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .collection-delivery--image .collection-delivery__details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .collection-delivery--image .collection-delivery__details:last-child:not(:first-child) {
        float: right; } }

.listing--collection-delivery .listing__list {
  margin: 0;
  list-style: none;
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--collection-delivery .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--collection-delivery .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .listing--collection-delivery .listing__list::before, .listing--collection-delivery .listing__list::after {
    display: table;
    content: ' '; }
  .listing--collection-delivery .listing__list::after {
    clear: both; }
  .listing--collection-delivery .listing__list > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--collection-delivery .listing__list > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--collection-delivery .listing__list > li:nth-of-type(1n) {
      clear: none; }
    .listing--collection-delivery .listing__list > li:nth-of-type(1n+1) {
      clear: both; }
    .listing--collection-delivery .listing__list > li:last-child {
      float: left; }
  .listing--collection-delivery .listing__list-item {
    margin-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--collection-delivery .listing__list-item {
        margin-bottom: 0.9375rem; } }
    .listing--collection-delivery .listing__list-item:last-child {
      margin-bottom: 0; }

.order-introduction__content {
  margin-bottom: 0.9375rem; }
  .order-introduction__content p:last-child {
    margin-bottom: 0; }
  .order-introduction__content p a:not(.button) {
    text-decoration: underline; }
    .order-introduction__content p a:not(.button):hover {
      text-decoration: none; }

.order-introduction__link .button {
  margin-bottom: 0; }

.order-payment {
  padding: 0.625rem;
  background-color: #e6e6e6; }
  @media print, screen and (min-width: 40em) {
    .order-payment {
      padding: 0.9375rem; } }
  .order-payment__description {
    margin-bottom: 0.9375rem;
    line-height: 1.8; }
  .order-payment__link .button {
    width: 100%;
    margin-bottom: 0; }

.order-progress__list {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
  margin-bottom: 0;
  list-style: none; }
  @media print, screen and (min-width: 40em) {
    .order-progress__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .order-progress__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .order-progress__list::before, .order-progress__list::after {
    display: table;
    content: ' '; }
  .order-progress__list::after {
    clear: both; }
  .order-progress__list > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .order-progress__list > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .order-progress__list > li:nth-of-type(1n) {
      clear: none; }
    .order-progress__list > li:nth-of-type(1n+1) {
      clear: both; }
    .order-progress__list > li:last-child {
      float: left; }
  .order-progress__list li.active .order-progress__bar {
    background-color: #c3002f; }
  .order-progress__list--2 > li {
    float: left;
    width: 50%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .order-progress__list--2 > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .order-progress__list--2 > li:nth-of-type(1n) {
      clear: none; }
    .order-progress__list--2 > li:nth-of-type(2n+1) {
      clear: both; }
    .order-progress__list--2 > li:last-child {
      float: left; }
  .order-progress__list--3 > li {
    float: left;
    width: 33.33333%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .order-progress__list--3 > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .order-progress__list--3 > li:nth-of-type(1n) {
      clear: none; }
    .order-progress__list--3 > li:nth-of-type(3n+1) {
      clear: both; }
    .order-progress__list--3 > li:last-child {
      float: left; }
  .order-progress__list--4 > li {
    float: left;
    width: 25%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .order-progress__list--4 > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .order-progress__list--4 > li:nth-of-type(1n) {
      clear: none; }
    .order-progress__list--4 > li:nth-of-type(4n+1) {
      clear: both; }
    .order-progress__list--4 > li:last-child {
      float: left; }
  .order-progress__list--5 > li {
    float: left;
    width: 20%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .order-progress__list--5 > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .order-progress__list--5 > li:nth-of-type(1n) {
      clear: none; }
    .order-progress__list--5 > li:nth-of-type(5n+1) {
      clear: both; }
    .order-progress__list--5 > li:last-child {
      float: left; }
  .order-progress__list--6 > li {
    float: left;
    width: 16.66667%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .order-progress__list--6 > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .order-progress__list--6 > li:nth-of-type(1n) {
      clear: none; }
    .order-progress__list--6 > li:nth-of-type(6n+1) {
      clear: both; }
    .order-progress__list--6 > li:last-child {
      float: left; }

.order-progress__title {
  margin-bottom: 0; }

.order-progress__sub-title {
  display: none;
  font-size: 0.875rem; }
  @media print, screen and (min-width: 64em) {
    .order-progress__sub-title {
      display: block; } }
  @media screen and (min-width: 75em) {
    .order-progress__sub-title {
      font-size: 1rem; } }
  @media screen and (min-width: 90em) {
    .order-progress__sub-title {
      font-size: 1.125rem; } }

.order-progress__bar {
  width: 100%;
  height: 0.625rem;
  background-color: #e6e6e6; }
  @media print, screen and (min-width: 64em) {
    .order-progress__bar {
      height: 0.9375rem; } }

.order-state-summary {
  padding: 0.625rem;
  background-color: #e6e6e6; }
  @media print, screen and (min-width: 40em) {
    .order-state-summary {
      padding: 0.9375rem; } }
  .order-state-summary__vehicle-image {
    display: none;
    margin-bottom: 0.9375rem; }
    @media print, screen and (min-width: 64em) {
      .order-state-summary__vehicle-image {
        display: block; } }
    .order-state-summary__vehicle-image img {
      width: 100%; }
  .order-state-summary__vehicle-title {
    margin-bottom: 0.3125rem; }
  .order-state-summary__vehicle-price {
    font-size: 1.25rem; }
  .order-state-summary__vehicle-admin-fee {
    font-size: 75%; }
  .order-state-summary .order-state-summary-table {
    margin-top: 0.625rem;
    margin-bottom: 0;
    border-collapse: collapse; }
    @media print, screen and (min-width: 40em) {
      .order-state-summary .order-state-summary-table {
        margin-top: 0.9375rem; } }
    .order-state-summary .order-state-summary-table tbody {
      border-bottom: 1px solid #e6e6e6; }
    .order-state-summary .order-state-summary-table tr {
      border-bottom: 1px solid #e6e6e6;
      background-color: #ffffff; }
      .order-state-summary .order-state-summary-table tr:last-child {
        border-bottom: none; }
      .order-state-summary .order-state-summary-table tr.order-state-summary-table__total {
        font-weight: 600; }
      .order-state-summary .order-state-summary-table tr td {
        border: none; }
        .order-state-summary .order-state-summary-table tr td.order-state-summary-table__value {
          text-align: center;
          border-left: 1px solid #e6e6e6; }

.order-summary ul {
  margin: 0;
  list-style: none; }
  .order-summary ul li {
    display: inline-block;
    margin-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .order-summary ul li {
        margin-right: 0.9375rem; } }
    .order-summary ul li:last-child {
      margin-right: 0; }

.order-summary .button {
  margin-bottom: 0; }

.order {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .order {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .order {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .order::before, .order::after {
    display: table;
    content: ' '; }
  .order::after {
    clear: both; }
  .order__progress {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .order__progress {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .order__progress:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .order__progress {
        margin-bottom: 1.875rem; } }
  .order__content {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .order__content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .order__content:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .order__content {
        width: 66.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .order__content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .order__content:last-child:not(:first-child) {
          float: right; } }
  .order__summary {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-top: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .order__summary {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .order__summary:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .order__summary {
        margin-top: 1.875rem; } }
    @media print, screen and (min-width: 64em) {
      .order__summary {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-top: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .order__summary {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .order__summary:last-child:not(:first-child) {
          float: right; } }
  .order__description {
    margin-bottom: 0.9375rem;
    line-height: 1.8; }
  .order__footer {
    margin-top: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .order__footer {
        margin-top: 1.875rem; } }
    .order__footer .button {
      margin-bottom: 0; }

.part-exchange__footer {
  margin-top: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .part-exchange__footer {
      margin-top: 1.25rem; } }
  .part-exchange__footer .button {
    display: inline-block;
    margin-right: 0.625rem;
    margin-top: 0.625rem; }

.part--featured {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .part--featured {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .part--featured {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .part--featured::before, .part--featured::after {
    display: table;
    content: ' '; }
  .part--featured::after {
    clear: both; }
  .part--featured .part__primary-images {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .part--featured .part__primary-images {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .part--featured .part__primary-images:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .part--featured .part__primary-images {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .part--featured .part__primary-images {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .part--featured .part__primary-images:last-child:not(:first-child) {
          float: right; } }
  .part--featured .part__content {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .part--featured .part__content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .part--featured .part__content:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .part--featured .part__content {
        width: 66.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .part--featured .part__content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .part--featured .part__content:last-child:not(:first-child) {
          float: right; } }
  .part--featured .part__content--without-image {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .part--featured .part__content--without-image {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .part--featured .part__content--without-image:last-child:not(:first-child) {
      float: right; }
  .part--featured .part__title {
    margin-bottom: 0.625rem; }
  .part--featured .part__sub-title {
    margin-bottom: 0.625rem; }
  .part--featured .part__description {
    margin-bottom: 0.9375rem;
    line-height: 1.6; }
  .part--featured .part__link .button {
    margin-bottom: 0; }

.part--full .part__primary-images {
  margin-bottom: 1.25rem; }
  .part--full .part__primary-images ul {
    margin: 0;
    list-style: none; }

.part--full .part__secondary-images {
  margin-bottom: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .part--full .part__secondary-images {
      float: right;
      width: 20rem;
      margin-left: 1.25rem; } }
  .part--full .part__secondary-images ul {
    margin: 0;
    list-style: none; }

@media print, screen and (min-width: 40em) {
  .part--full .part__videos {
    float: right;
    clear: right;
    width: 20rem;
    margin-left: 1.25rem; } }

.part--full .part__videos ul {
  list-style: none;
  margin-left: 0;
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .part--full .part__videos ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .part--full .part__videos ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .part--full .part__videos ul::before, .part--full .part__videos ul::after {
    display: table;
    content: ' '; }
  .part--full .part__videos ul::after {
    clear: both; }
  .part--full .part__videos ul > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .part--full .part__videos ul > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .part--full .part__videos ul > li:nth-of-type(1n) {
      clear: none; }
    .part--full .part__videos ul > li:nth-of-type(1n+1) {
      clear: both; }
    .part--full .part__videos ul > li:last-child {
      float: left; }
  .part--full .part__videos ul li {
    margin-bottom: 1.25rem; }

.part--full .part__description {
  padding-bottom: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .part--full .part__description {
      padding-bottom: 1.25rem; } }
  .part--full .part__description p:last-child {
    margin-bottom: 0; }
  .part--full .part__description p a:not(.button) {
    text-decoration: underline; }
    .part--full .part__description p a:not(.button):hover {
      text-decoration: none; }

.part--full .part__files ul {
  margin-left: 0;
  list-style: none; }
  .part--full .part__files ul li {
    display: inline-block;
    margin-right: 0.25rem; }

.part--full .part__form {
  clear: right; }
  @media screen and (max-width: 39.9375em) {
    .part--full .part__form {
      padding-bottom: 1.25rem; } }

.part--teaser {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .part--teaser {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .part--teaser {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .part--teaser::before, .part--teaser::after {
    display: table;
    content: ' '; }
  .part--teaser::after {
    clear: both; }
  .part--teaser .part__primary-images {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .part--teaser .part__primary-images {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .part--teaser .part__primary-images:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .part--teaser .part__primary-images {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-bottom: 0; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .part--teaser .part__primary-images {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .part--teaser .part__primary-images:last-child:not(:first-child) {
          float: right; } }
  .part--teaser .part__content {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .part--teaser .part__content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .part--teaser .part__content:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .part--teaser .part__content {
        width: 66.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .part--teaser .part__content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .part--teaser .part__content:last-child:not(:first-child) {
          float: right; } }
  .part--teaser .part__content--without-image {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .part--teaser .part__content--without-image {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .part--teaser .part__content--without-image:last-child:not(:first-child) {
      float: right; }
  .part--teaser .part__description {
    margin-bottom: 0.9375rem;
    line-height: 1.6; }
  .part--teaser .part__link .button {
    margin-bottom: 0; }

.post--featured {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .post--featured {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .post--featured {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .post--featured::before, .post--featured::after {
    display: table;
    content: ' '; }
  .post--featured::after {
    clear: both; }
  .post--featured .post__primary-images {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .post--featured .post__primary-images {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .post--featured .post__primary-images:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .post--featured .post__primary-images {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .post--featured .post__primary-images {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .post--featured .post__primary-images:last-child:not(:first-child) {
          float: right; } }
  .post--featured .post__content {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .post--featured .post__content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .post--featured .post__content:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .post--featured .post__content {
        width: 66.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .post--featured .post__content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .post--featured .post__content:last-child:not(:first-child) {
          float: right; } }
  .post--featured .post__content--without-image {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .post--featured .post__content--without-image {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .post--featured .post__content--without-image:last-child:not(:first-child) {
      float: right; }
  .post--featured .post__title {
    margin-bottom: 0.625rem; }
  .post--featured .post__sub-title {
    margin-bottom: 0.625rem; }
  .post--featured .post__description {
    margin-bottom: 0.9375rem;
    line-height: 1.6; }
  .post--featured .post__link .button {
    margin-bottom: 0; }

.quick-search {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
  margin-bottom: 0.9375rem; }
  @media print, screen and (min-width: 40em) {
    .quick-search {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .quick-search {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .quick-search::before, .quick-search::after {
    display: table;
    content: ' '; }
  .quick-search::after {
    clear: both; }
  .quick-search__legend {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .quick-search__legend {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .quick-search__legend:last-child:not(:first-child) {
      float: right; }
  .quick-search .field-search-string {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .quick-search .field-search-string {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .quick-search .field-search-string:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .quick-search .field-search-string {
        width: 66.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .quick-search .field-search-string {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .quick-search .field-search-string:last-child:not(:first-child) {
          float: right; } }
  .quick-search .field-submit {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .quick-search .field-submit {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .quick-search .field-submit:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .quick-search .field-submit {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .quick-search .field-submit {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .quick-search .field-submit:last-child:not(:first-child) {
          float: right; } }
    .quick-search .field-submit .button {
      margin-bottom: 0; }
      @media print, screen and (min-width: 64em) {
        .quick-search .field-submit .button {
          width: 100%; } }

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

.search-selection__title {
  display: inline-block; }
  .search-selection__title::before {
    display: inline-block;
    content: '-';
    margin-right: 0.1875rem; }
  .search-selection__title a {
    text-decoration: underline; }
    .search-selection__title a:hover {
      text-decoration: none; }

.search-selection__parameters {
  margin-top: 0.3125rem; }
  @media screen and (max-width: 39.9375em) {
    .search-selection__parameters {
      width: auto;
      overflow-y: hidden;
      overflow-x: scroll;
      white-space: nowrap; }
      .search-selection__parameters::-webkit-scrollbar {
        display: none; } }

.search-selection__list {
  margin: 0 0 0.3125rem;
  padding: 0;
  list-style: none; }

.search-selection__list-item {
  display: inline-block;
  margin: 0.3125rem 0.3125rem 0.3125rem 0; }

.search-selection__parameter {
  display: inline;
  padding: 0.3125rem 0.375rem 0.3125rem 0.75rem;
  font-weight: 600;
  line-height: 1;
  background-color: #ffffff;
  border: 1px solid #e6e6e6;
  border-radius: 0.9375rem; }
  .search-selection__parameter:hover span {
    color: #ffffff;
    background-color: #cc4b37; }
  .search-selection__parameter span {
    margin-left: 0.375rem;
    padding: 0 0.375rem;
    font-weight: 400;
    line-height: 1;
    background-color: #f2f2f2;
    border-radius: 50%; }

.showroom--featured .showroom__primary-images {
  margin-bottom: 0.625rem; }

.vehicle--general {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto; }
  .vehicle--general::before, .vehicle--general::after {
    display: table;
    content: ' '; }
  .vehicle--general::after {
    clear: both; }
  .vehicle--general .vehicle__primary-images {
    width: 100%;
    float: left;
    padding-right: 0;
    padding-left: 0;
    position: relative; }
    .vehicle--general .vehicle__primary-images:last-child:not(:first-child) {
      float: right; }
  .vehicle--general .vehicle__menu {
    position: absolute;
    top: 0;
    right: 0; }
  .vehicle--general .vehicle__details {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    background-color: #ffffff;
    box-sizing: border-box; }
    @media print, screen and (min-width: 40em) {
      .vehicle--general .vehicle__details {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .vehicle--general .vehicle__details:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .vehicle--general .vehicle__details {
        padding-top: 0.9375rem;
        padding-bottom: 0.9375rem; } }
  .vehicle--general .vehicle__header {
    margin-bottom: 0.625rem; }
  .vehicle--general .vehicle__title {
    margin-bottom: 0.375rem;
    font-size: 1.5rem;
    line-height: 1; }
    .vehicle--general .vehicle__title .vehicle__make,
    .vehicle--general .vehicle__title .vehicle__model {
      font-size: 1.5rem;
      line-height: 1; }
    .vehicle--general .vehicle__title .vehicle__model-variant {
      display: block;
      font-size: 1.125rem;
      font-weight: 400;
      line-height: 1; }
  .vehicle--general .vehicle__technical-data-promoted > ul {
    margin-bottom: 0;
    margin-left: 0;
    list-style: none;
    line-height: 1.375rem; }
    .vehicle--general .vehicle__technical-data-promoted > ul > li {
      display: inline-block; }
      .vehicle--general .vehicle__technical-data-promoted > ul > li .technical-data__label::after {
        content: ':';
        margin-right: 0.1875rem; }
      .vehicle--general .vehicle__technical-data-promoted > ul > li .technical-data__value::after {
        content: ',';
        margin-right: 0.1875rem;
        font-weight: 400; }
      .vehicle--general .vehicle__technical-data-promoted > ul > li:last-child .technical-data__value::after {
        content: '';
        margin-right: 0; }

.vehicle--latest {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto; }
  .vehicle--latest::before, .vehicle--latest::after {
    display: table;
    content: ' '; }
  .vehicle--latest::after {
    clear: both; }
  .vehicle--latest .vehicle__primary-images {
    width: 100%;
    float: left;
    padding-right: 0;
    padding-left: 0;
    position: relative; }
    .vehicle--latest .vehicle__primary-images:last-child:not(:first-child) {
      float: right; }
  .vehicle--latest .vehicle__menu {
    position: absolute;
    top: 0;
    right: 0; }
  .vehicle--latest .vehicle__details {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    background-color: #ffffff;
    box-sizing: border-box; }
    @media print, screen and (min-width: 40em) {
      .vehicle--latest .vehicle__details {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .vehicle--latest .vehicle__details:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .vehicle--latest .vehicle__details {
        padding-top: 0.9375rem;
        padding-bottom: 0.9375rem; } }
  .vehicle--latest .vehicle__header {
    margin-bottom: 0.625rem; }
  .vehicle--latest .vehicle__title {
    margin-bottom: 0.375rem;
    font-size: 1.5rem;
    line-height: 1; }
    .vehicle--latest .vehicle__title .vehicle__make,
    .vehicle--latest .vehicle__title .vehicle__model {
      font-size: 1.5rem;
      line-height: 1; }
    .vehicle--latest .vehicle__title .vehicle__model-variant {
      display: block;
      font-size: 1.125rem;
      font-weight: 400;
      line-height: 1; }
  .vehicle--latest .vehicle__technical-data-promoted > ul {
    margin-bottom: 0;
    margin-left: 0;
    list-style: none;
    line-height: 1.375rem; }
    .vehicle--latest .vehicle__technical-data-promoted > ul > li {
      display: inline-block; }
      .vehicle--latest .vehicle__technical-data-promoted > ul > li .technical-data__label::after {
        content: ':';
        margin-right: 0.1875rem; }
      .vehicle--latest .vehicle__technical-data-promoted > ul > li .technical-data__value::after {
        content: ',';
        margin-right: 0.1875rem;
        font-weight: 400; }
      .vehicle--latest .vehicle__technical-data-promoted > ul > li:last-child .technical-data__value::after {
        content: '';
        margin-right: 0; }

.vehicle--recently-viewed {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto; }
  .vehicle--recently-viewed::before, .vehicle--recently-viewed::after {
    display: table;
    content: ' '; }
  .vehicle--recently-viewed::after {
    clear: both; }
  .vehicle--recently-viewed .vehicle__primary-images {
    float: left;
    width: 50%; }
  .vehicle--recently-viewed .vehicle__details {
    float: left;
    width: 50%;
    padding: 0.9375rem 0.375rem 0; }
  .vehicle--recently-viewed .vehicle__title {
    font-size: 1.125rem;
    line-height: 1; }

.l-alert {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  .l-alert::before, .l-alert::after {
    display: table;
    content: ' '; }
  .l-alert::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .l-alert {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .l-alert:last-child:not(:first-child) {
    float: right; }
  .l-alert, .l-alert:last-child {
    float: none; }

.credit-calculator--full .credit-calculator__results {
  position: relative;
  margin-bottom: 0.9375rem; }

.fancybox-slide > .fancybox-loading {
  -webkit-animation: b .8s infinite linear; }

.fancybox-slide--image {
  padding: 0; }

.review-summary__title {
  font-weight: 600;
  line-height: 1; }

.review-summary__average {
  font-size: 3.75rem;
  font-weight: 700;
  line-height: 1; }
  .review-summary__average span {
    font-size: 50%;
    font-weight: 600; }

.review-summary__total-responses {
  margin-top: 0.3125rem;
  font-size: 0.875rem; }

.review-summary__link a {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.75rem 0.875rem;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 1.125rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #c3002f;
  color: #ffffff; }
  [data-whatinput='mouse'] .review-summary__link a {
    outline: 0; }
  .review-summary__link a:hover, .review-summary__link a:focus {
    background-color: #a60028;
    color: #ffffff; }

.review-listing__header {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
  margin-bottom: 0.9375rem; }
  @media print, screen and (min-width: 40em) {
    .review-listing__header {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .review-listing__header {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .review-listing__header::before, .review-listing__header::after {
    display: table;
    content: ' '; }
  .review-listing__header::after {
    clear: both; }
  .review-listing__header-first {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .review-listing__header-first {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .review-listing__header-first:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .review-listing__header-first {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .review-listing__header-first {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .review-listing__header-first:last-child:not(:first-child) {
          float: right; } }
  .review-listing__header-second {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .review-listing__header-second {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .review-listing__header-second:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .review-listing__header-second {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .review-listing__header-second {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .review-listing__header-second:last-child:not(:first-child) {
          float: right; } }

.review-listing__logo {
  margin-bottom: 0.625rem; }

@media print, screen and (min-width: 40em) {
  .review-listing__summary {
    float: right; } }

.review-listing__list {
  margin: 0;
  padding: 0;
  list-style: none; }

.review-listing__list-item {
  margin-bottom: 0.9375rem; }

.review-listing__link a {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.75rem 0.875rem;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 1.125rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #c3002f;
  color: #ffffff; }
  [data-whatinput='mouse'] .review-listing__link a {
    outline: 0; }
  .review-listing__link a:hover, .review-listing__link a:focus {
    background-color: #a60028;
    color: #ffffff; }

.review {
  padding: 0.625rem;
  background-color: #ffffff; }
  @media print, screen and (min-width: 40em) {
    .review {
      padding: 0.9375rem; } }
  .review__header {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
    padding-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .review__header {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .review__header {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .review__header::before, .review__header::after {
      display: table;
      content: ' '; }
    .review__header::after {
      clear: both; }
    .review__header-first {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .review__header-first {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .review__header-first:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 40em) {
        .review__header-first {
          width: 50%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .review__header-first {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media print, screen and (min-width: 40em) {
          .review__header-first:last-child:not(:first-child) {
            float: right; } }
    .review__header-second {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .review__header-second {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .review__header-second:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 40em) {
        .review__header-second {
          width: 50%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          text-align: right; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .review__header-second {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media print, screen and (min-width: 40em) {
          .review__header-second:last-child:not(:first-child) {
            float: right; } }
  .review__date span {
    margin-right: 0.1875rem;
    font-size: 0.875rem; }
  .review__rating-label {
    margin-bottom: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1; }
  .review__link {
    display: none; }
    @media print, screen and (min-width: 40em) {
      .review__link {
        display: block; } }
    .review__link a {
      text-decoration: underline; }
      .review__link a:hover {
        text-decoration: none; }

.review-rating {
  position: relative;
  width: 10.0625rem;
  height: 1.6875rem;
  background-image: url("/core/img/feefo/stars.png");
  background-repeat: repeat-x;
  background-size: 2rem 3.4375rem;
  line-height: 1.6875rem;
  overflow: hidden; }
  .review-rating__inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 1.6875rem;
    background-image: url("/core/img/feefo/stars.png");
    background-position: 0 -27px;
    background-repeat: repeat-x;
    background-size: 2rem 3.375rem;
    line-height: 1.6875rem; }

@media screen and (max-width: 39.9375em) {
  .wizard > .steps > ul li {
    display: block;
    width: 100%; } }

.wizard > .steps > ul li:last-child a {
  margin-right: 0; }

.wizard > .steps a,
.wizard > .steps a:hover,
.wizard > .steps a:active {
  margin: 0 0 0.5rem;
  padding: 0.5rem 0.9375rem;
  border-radius: 0;
  font-weight: 600; }
  @media print, screen and (min-width: 40em) {
    .wizard > .steps a,
    .wizard > .steps a:hover,
    .wizard > .steps a:active {
      margin: 0 0.5rem 0.5rem 0; } }

.wizard > .steps .current a,
.wizard > .steps .current a:hover,
.wizard > .steps .current a:active {
  background-color: #c3002f;
  color: #ffffff; }

.wizard > .steps .done a,
.wizard > .steps .done a:hover,
.wizard > .steps .done a:active {
  color: #ffffff;
  background-color: #ff2a5d; }

.wizard > .steps .disabled a,
.wizard > .steps .disabled a:hover,
.wizard > .steps .disabled a:active {
  color: #222222;
  background-color: #e6e6e6; }

.wizard > .steps .error a,
.wizard > .steps .error a:hover,
.wizard > .steps .error a:active {
  color: #ffffff;
  background-color: #cc4b37; }

.wizard > .content > .body {
  display: block;
  margin: 0.5rem 0;
  overflow: hidden;
  position: relative;
  width: auto; }

.wizard > .actions a,
.wizard > .actions a:hover,
.wizard > .actions a:active {
  padding: 0.5rem 0.9375rem;
  color: #ffffff;
  background-color: #c3002f;
  font-weight: 600;
  border-radius: 0; }

.wizard > .actions .disabled a,
.wizard > .actions .disabled a:hover,
.wizard > .actions .disabled a:active {
  color: #222222;
  background-color: #e6e6e6; }

.wizard > .actions > ul > li {
  margin: 0 0 0 0.5rem; }

.accordion {
  margin-bottom: 0; }
  .accordion > li a.accordion-title {
    color: #ffffff;
    font-weight: 600;
    background-color: #000000; }
    .accordion > li a.accordion-title h2, .accordion > li a.accordion-title .offer--featured .offer__title, .offer--featured .accordion > li a.accordion-title .offer__title, .accordion > li a.accordion-title .order-progress__title, .accordion > li a.accordion-title .part--featured .part__title, .part--featured .accordion > li a.accordion-title .part__title, .accordion > li a.accordion-title .part--full .part__form-title, .part--full .accordion > li a.accordion-title .part__form-title, .accordion > li a.accordion-title .post--featured .post__title, .post--featured .accordion > li a.accordion-title .post__title, .accordion > li a.accordion-title .vehicle--general .vehicle__title, .vehicle--general .accordion > li a.accordion-title .vehicle__title, .accordion > li a.accordion-title .vehicle--latest .vehicle__title, .vehicle--latest .accordion > li a.accordion-title .vehicle__title, .accordion > li a.accordion-title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .accordion > li a.accordion-title .listing__title, .accordion > li a.accordion-title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .accordion > li a.accordion-title .listing__title, .accordion > li a.accordion-title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .accordion > li a.accordion-title .listing__title, .accordion > li a.accordion-title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .accordion > li a.accordion-title .listing__title, .accordion > li a.accordion-title .listing--offer-featured .listing__title, .listing--offer-featured .accordion > li a.accordion-title .listing__title, .accordion > li a.accordion-title .page--teaser .page__title, .page--teaser .accordion > li a.accordion-title .page__title {
      margin-bottom: 0;
      font-size: inherit;
      line-height: inherit; }
  .accordion > li a.accordion-title:focus,
  .accordion > li a.accordion-title:hover,
  .accordion > li a.accordion-title[aria-selected='true'] {
    color: #c3002f;
    background-color: #c3002f; }
  .accordion > li a.accordion-title[aria-selected='true'] {
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .accordion > li a.accordion-title[aria-selected='true']::after {
        position: absolute;
        top: 100%;
        left: 1.875rem;
        margin-left: -0.5rem;
        content: '';
        display: block;
        width: 0;
        height: 0;
        -moz-transform: scale(0.9999);
        border-left: 8px solid transparent;
        border-right: 8px solid transparent;
        border-top: 8px solid #c3002f;
        z-index: 400; } }
  .accordion > li .accordion-content--no-padding {
    padding: 0; }
  .accordion--basic > li a.accordion-title {
    padding-top: 0.75rem;
    padding-right: 0;
    padding-bottom: 0.75rem;
    color: #222222;
    font-weight: 400;
    background-color: inherit; }
    .accordion--basic > li a.accordion-title:hover {
      color: #222222;
      background-color: inherit; }
    .accordion--basic > li a.accordion-title::before {
      right: inherit;
      left: 0; }
    .accordion--basic > li a.accordion-title span {
      font-weight: 600; }
      @media print, screen and (min-width: 64em) {
        .accordion--basic > li a.accordion-title span {
          float: right; } }
  .accordion--basic > li a.accordion-title:focus,
  .accordion--basic > li a.accordion-title:hover,
  .accordion--basic > li a.accordion-title[aria-selected='true'] {
    color: #222222;
    background-color: inherit; }
  .accordion--basic > li a.accordion-title[aria-selected='true']::after {
    display: none; }
  .accordion--basic > li .accordion-content {
    padding-top: 0;
    padding-bottom: 0.75rem; }
  .accordion--custom li.accordion-item {
    margin-bottom: 0.625rem;
    border: 1px solid #eeeeee;
    border-radius: 0.3125rem; }
    .accordion--custom li.accordion-item.is-active {
      background-color: #ffffff; }
    .accordion--custom li.accordion-item:last-child {
      margin-bottom: 0; }
    .accordion--custom li.accordion-item a.accordion-title {
      padding-left: 1.25rem;
      padding-right: 1.25rem;
      background-color: #ffffff;
      color: #222222;
      font-size: 1rem;
      font-weight: 600;
      border-radius: 0.3125rem; }
      .accordion--custom li.accordion-item a.accordion-title::before {
        right: 1.25rem; }
      .accordion--custom li.accordion-item a.accordion-title::after {
        display: none; }
  .accordion--custom .accordion-content {
    padding: 0 1.25rem 1.25rem;
    border-bottom-right-radius: 0.3125rem;
    border-bottom-left-radius: 0.3125rem;
    background-color: #ffffff; }
    .accordion--custom .accordion-content .form-group:last-child .help-block {
      margin-bottom: 0; }
  .accordion--warranty > li {
    border-bottom: 1px solid #222222;
    margin-bottom: 0.625rem;
    padding-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .accordion--warranty > li {
        margin-bottom: 0.9375rem;
        padding-bottom: 0.9375rem; } }
    .accordion--warranty > li:last-child {
      border-bottom: none;
      margin-bottom: 0;
      padding-bottom: 0; }
    .accordion--warranty > li a.accordion-title {
      padding-top: 0.75rem;
      padding-left: 0;
      padding-right: 1.875rem;
      padding-bottom: 0.75rem;
      color: #222222;
      font-weight: 700;
      background-color: inherit;
      font-size: 1rem;
      line-height: 1.4; }
      @media print, screen and (min-width: 40em) {
        .accordion--warranty > li a.accordion-title {
          font-size: 1.125rem; } }
      .accordion--warranty > li a.accordion-title:hover {
        color: #222222;
        background-color: inherit; }
      .accordion--warranty > li a.accordion-title::before {
        right: 0; }
      .accordion--warranty > li a.accordion-title span {
        font-weight: 600; }
        @media print, screen and (min-width: 64em) {
          .accordion--warranty > li a.accordion-title span {
            float: right; } }
    .accordion--warranty > li a.accordion-title:focus,
    .accordion--warranty > li a.accordion-title:hover,
    .accordion--warranty > li a.accordion-title[aria-selected='true'] {
      color: #222222;
      background-color: inherit; }
    .accordion--warranty > li a.accordion-title[aria-selected='true']::after {
      display: none; }
    .accordion--warranty > li .accordion-content {
      padding: 0;
      font-weight: 400;
      color: #666666;
      font-size: 1rem; }
      @media print, screen and (min-width: 40em) {
        .accordion--warranty > li .accordion-content {
          font-size: 1.125rem; } }
      .accordion--warranty > li .accordion-content p {
        margin-bottom: 0; }
  .accordion--faq > li {
    margin-bottom: 0.9375rem;
    border-radius: 0.3125rem;
    background-color: #ffffff; }
    .accordion--faq > li:last-child:not(.is-active) > .accordion-title,
    .accordion--faq > li.accordion-item:first-child > :first-child {
      border-radius: inherit; }
    .accordion--faq > li.accordion-item:last-child > :last-child {
      border-top-left-radius: 0;
      border-top-right-radius: 0;
      border-bottom-left-radius: 0.3125rem;
      border-bottom-right-radius: 0.3125rem; }
    .accordion--faq > li a.accordion-title {
      padding: 1.25rem 5rem 1.25rem 1.25rem;
      color: #222222;
      font-size: 1.125rem;
      line-height: 1.2;
      background: none;
      border-radius: 0.3125rem; }
      @media print, screen and (min-width: 40em) {
        .accordion--faq > li a.accordion-title {
          padding: 1.6875rem 5rem 1.6875rem 1.875rem;
          font-size: 1.25rem; } }
      .accordion--faq > li a.accordion-title::before {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        right: 1.25rem;
        margin-top: -1.25rem;
        width: 2.5rem;
        height: 2.5rem;
        color: #ffffff;
        font-size: 1.25rem;
        background-color: #c3002f;
        border-radius: 50%; }
    .accordion--faq > li a.accordion-title:focus,
    .accordion--faq > li a.accordion-title:hover,
    .accordion--faq > li a.accordion-title[aria-selected='true'] {
      color: #222222;
      background: none; }
      .accordion--faq > li a.accordion-title:focus::after,
      .accordion--faq > li a.accordion-title:hover::after,
      .accordion--faq > li a.accordion-title[aria-selected='true']::after {
        display: none; }
    .accordion--faq > li .accordion-content {
      padding: 1.25rem;
      color: #666666;
      background-color: #ffffff;
      border-top: 1px solid #eeeeee;
      border-bottom-left-radius: 0.3125rem;
      border-bottom-right-radius: 0.3125rem; }
      @media print, screen and (min-width: 40em) {
        .accordion--faq > li .accordion-content {
          padding: 1.875rem; } }
      .accordion--faq > li .accordion-content p:last-child {
        margin-bottom: 0; }
      .accordion--faq > li .accordion-content a {
        color: #c3002f;
        font-weight: 700;
        text-decoration: underline; }

.banner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  padding: 1.25rem;
  color: #ffffff;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #eee;
  border-radius: 0.3125rem;
  overflow: hidden; }
  @media print, screen and (min-width: 40em) {
    .banner {
      padding: 1.875rem; } }
  .banner__bottom {
    margin-top: 1.25rem;
    text-align: right; }
    @media print, screen and (min-width: 40em) {
      .banner__bottom {
        margin-top: 1.875rem; } }
    @media screen and (min-width: 48em) {
      .banner__bottom {
        margin-top: auto; } }
    .banner__bottom img {
      position: relative;
      right: -6.25rem; }
  .banner__title {
    color: #222222;
    font-size: 1.75rem;
    font-weight: 600;
    line-height: 1.4; }
  .banner__description {
    margin-top: 0.9375rem;
    color: #222222;
    font-size: 0.9375rem;
    line-height: 1.8; }

.breadcrumbs {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-bottom: 0; }
  .breadcrumbs::before, .breadcrumbs::after {
    display: table;
    content: ' '; }
  .breadcrumbs::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .breadcrumbs {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .breadcrumbs:last-child:not(:first-child) {
    float: right; }
  .breadcrumbs, .breadcrumbs:last-child {
    float: none; }
  .breadcrumbs li {
    font-size: 0.875rem;
    text-transform: capitalize;
    font-weight: 600; }
    .breadcrumbs li a {
      color: #222222;
      vertical-align: middle; }
      .breadcrumbs li a:hover {
        text-decoration: none; }
    .breadcrumbs li span {
      color: #c3002f;
      vertical-align: middle; }
    .breadcrumbs li:not(:last-child)::after {
      content: '\e5cc';
      margin: 0 0.375rem;
      color: #222222;
      font-family: 'Material Icons';
      font-weight: normal;
      font-style: normal;
      font-size: inherit;
      line-height: 1;
      letter-spacing: normal;
      text-transform: none;
      display: inline-block;
      white-space: nowrap;
      word-wrap: normal;
      direction: ltr;
      -webkit-font-feature-settings: 'liga';
      -webkit-font-smoothing: antialiased;
      vertical-align: middle; }

button {
  font-family: inherit; }

.button {
  padding: 0.875rem;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 600;
  border-radius: 0.3125rem; }
  .button--alert {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #cc4b37;
    color: #ffffff;
    text-transform: uppercase;
    border-radius: 0.3125rem; }
    [data-whatinput='mouse'] .button--alert {
      outline: 0; }
    .button--alert:hover, .button--alert:focus {
      background-color: #a53b2a;
      color: #ffffff; }
  .button--filter {
    margin: 0;
    padding: 1.25rem;
    background-color: #c3002f;
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg); }
  .button--full-width {
    width: 100%; }
  @media print, screen and (min-width: 40em) {
    .button--large {
      padding: 1.125rem 1.75rem; } }
  @media print, screen and (min-width: 40em) {
    .button--xlarge {
      padding: 1.5625rem 2.5rem;
      font-size: 1.125rem; } }
  .button--reset {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #c3002f;
    color: #ffffff;
    margin-bottom: 0;
    padding: 0.5625rem 0.875rem 0.4375rem;
    font-size: 0.875rem;
    font-weight: 600;
    border-radius: 0.3125rem;
    text-transform: uppercase; }
    [data-whatinput='mouse'] .button--reset {
      outline: 0; }
    .button--reset:hover, .button--reset:focus {
      background-color: #a60028;
      color: #ffffff; }
  .button--reserve {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #d27100;
    color: #ffffff;
    padding: 0.875rem;
    font-family: inherit;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 1.25rem;
    border-radius: 0.3125rem; }
    [data-whatinput='mouse'] .button--reserve {
      outline: 0; }
    .button--reserve:hover, .button--reserve:focus {
      background-color: #a85a00;
      color: #ffffff; }
  .button--secondary-color {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #000000;
    color: #ffffff;
    font-weight: 600;
    text-transform: uppercase; }
    [data-whatinput='mouse'] .button--secondary-color {
      outline: 0; }
    .button--secondary-color:hover, .button--secondary-color:focus {
      background-color: black;
      color: #ffffff; }
  .button--pink {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #510da0;
    color: #ffffff;
    font-weight: 600;
    text-transform: uppercase; }
    [data-whatinput='mouse'] .button--pink {
      outline: 0; }
    .button--pink:hover, .button--pink:focus {
      background-color: #410a80;
      color: #ffffff; }
  .button--large {
    padding: 0.625rem 0.75rem;
    font-size: 1rem; }
  .button--small {
    padding: 0.625rem 0.75rem;
    font-size: 1rem; }
  .button--xsmall {
    padding: 0.375rem 0.5rem;
    font-size: 0.875rem; }
  .button--no-margin {
    margin-bottom: 0; }

.not-front .button--search {
  border-top-left-radius: 0.625rem;
  border-bottom-left-radius: 0.625rem; }

.close-button {
  top: 0.75rem;
  font-size: 1.875rem; }
  .close-button--toggler {
    top: 0;
    right: 0.875rem;
    color: #222222;
    line-height: 3.125rem;
    z-index: 3; }
    .close-button--toggler:focus, .close-button--toggler:hover {
      color: #222222; }

.credits {
  color: #717580;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.8; }
  @media print, screen and (min-width: 40em) {
    .credits {
      font-size: 0.875rem; } }
  @media print, screen and (min-width: 64em) {
    .credits {
      -webkit-order: -1;
          -ms-flex-order: -1;
              order: -1; } }
  .credits a {
    color: #717580; }
  .credits > div {
    display: inline-block; }
  .credits__company {
    margin-left: 0.5rem; }

.icon::before {
  font-weight: normal;
  font-style: normal;
  font-size: inherit;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
  vertical-align: middle; }

.icon--audio::before {
  font-family: 'Material Icons';
  content: '\e050'; }

.icon--arrow-back::before {
  font-family: 'Material Icons';
  content: '\e5c4'; }

.icon--arrow-forward::before {
  font-family: 'Material Icons';
  content: '\e5c8'; }

.icon--bike::before {
  font-family: 'Material Icons';
  content: '\e52f'; }

.icon--car::before {
  font-family: 'Material Icons';
  content: '\e531'; }

.icon--chevron-left::before {
  font-family: 'Material Icons';
  content: '\e5cb'; }

.icon--chevron-right::before {
  font-family: 'Material Icons';
  content: '\e5cc'; }

.icon--clock::before {
  font-family: 'Material Icons';
  content: '\e855'; }

.icon--finance::before {
  font-family: 'Material Icons';
  content: '\e877'; }

.icon--fullscreen::before {
  font-family: 'Material Icons';
  content: '\e5d0'; }

.icon--enlarge::before {
  font-family: 'Material Icons';
  content: '\e56b'; }

.icon--expand-less::before {
  font-family: 'Material Icons';
  content: '\e5ce'; }

.icon--expand-more::before {
  font-family: 'Material Icons';
  content: '\e5cf'; }

.icon--document::before {
  font-family: 'Material Icons';
  content: '\e873'; }

.icon--facebook::before {
  font-family: 'FontAwesome';
  content: "\f09a"; }

.icon--filter::before {
  font-family: 'Material Icons';
  content: '\e152'; }

.icon--google-plus::before {
  font-family: 'FontAwesome';
  content: "\f0d5"; }

.icon--image-library::before {
  font-family: 'Material Icons';
  content: '\e413'; }

.icon--info::before {
  font-family: 'Material Icons';
  content: '\e88f'; }

.icon--linkedin::before {
  font-family: 'FontAwesome';
  content: "\f0e1"; }

.icon--mail::before {
  font-family: 'Material Icons';
  content: '\e158'; }

.icon--menu::before {
  font-family: 'Material Icons';
  content: '\e5d2'; }

.icon--mobile::before {
  font-family: 'Material Icons';
  content: '\e324'; }

.icon--play::before {
  font-family: 'Material Icons';
  content: '\e039'; }

.icon--phone::before {
  font-family: 'Material Icons';
  content: '\e0b0'; }

.icon--pound::before {
  font-family: 'Material Icons';
  content: '\eaf1'; }

.icon--recent::before {
  font-family: 'Material Icons';
  content: '\e889'; }

.icon--share::before {
  font-family: 'Material Icons';
  content: '\e80d'; }

.icon--saved::before {
  font-family: 'Material Icons';
  content: '\e87d'; }

.icon--search::before {
  font-family: 'Material Icons';
  content: '\e8b6'; }

.icon--star::before {
  font-family: 'Material Icons';
  content: '\f06f'; }

.icon--sms::before {
  font-family: 'Material Icons';
  content: '\e625'; }

.icon--transit::before {
  font-family: 'Material Icons';
  content: '\e535'; }

.icon--tick::before {
  font-family: 'Material Icons';
  content: '\e877'; }

.icon--twitter::before {
  font-family: 'FontAwesome';
  content: "\f099"; }

.icon--print::before {
  font-family: 'Material Icons';
  content: '\e8ad'; }

.icon--video-library::before {
  font-family: 'Material Icons';
  content: '\e038'; }

.icon--visibility::before {
  font-family: 'Material Icons';
  content: '\e8f4'; }

.icon--walk::before {
  font-family: 'Material Icons';
  content: '\e536'; }

.icon--whatsapp::before {
  font-family: 'FontAwesome';
  content: "\f232"; }

.listing__list {
  margin: 0;
  list-style: none; }

.listing--block .listing__list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  gap: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--block .listing__list {
      gap: 1.25rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--block .listing__list {
      -ms-grid-columns: 1fr 1fr 1fr;
          grid-template-columns: 1fr 1fr 1fr;
      gap: 1.875rem; } }

.listing--block-usp {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 68.75rem;
  margin-top: 1.875rem; }
  .listing--block-usp::before, .listing--block-usp::after {
    display: table;
    content: ' '; }
  .listing--block-usp::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .listing--block-usp {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--block-usp:last-child:not(:first-child) {
    float: right; }
  .listing--block-usp, .listing--block-usp:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .listing--block-usp {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--block-usp {
      margin-top: 6.25rem; } }
  .listing--block-usp .listing__title {
    margin-bottom: 1.25rem;
    font-size: 1.875rem;
    font-weight: 600;
    line-height: 1.3; }
    @media print, screen and (min-width: 40em) {
      .listing--block-usp .listing__title {
        margin-bottom: 3.125rem;
        font-size: 2.75rem; } }
    @media print, screen and (min-width: 64em) {
      .listing--block-usp .listing__title {
        text-align: center; } }
  .listing--block-usp .listing__list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.875rem; }
    @media print, screen and (min-width: 64em) {
      .listing--block-usp .listing__list {
        -ms-grid-columns: 1fr 1fr 1fr 1fr;
            grid-template-columns: 1fr 1fr 1fr 1fr;
        gap: 0; } }
    .listing--block-usp .listing__list-item {
      height: 100%; }
      @media print, screen and (min-width: 64em) {
        .listing--block-usp .listing__list-item {
          border-right: 1px solid #E3E3E3; } }
      .listing--block-usp .listing__list-item:last-child {
        border-right: none; }
  .listing--block-usp .listing__footer {
    display: none;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0.625rem;
    margin-top: 3.125rem; }
    @media print, screen and (min-width: 64em) {
      .listing--block-usp .listing__footer {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; } }
    .listing--block-usp .listing__footer i::before {
      color: #c3002f;
      font-size: 1.625rem; }
    .listing--block-usp .listing__footer span {
      font-size: 1.25rem;
      font-weight: 500; }
    .listing--block-usp .listing__footer a {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      padding: 0.75rem 0.875rem;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 0;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 1.125rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      background-color: #c3002f;
      color: #ffffff;
      display: inline-block;
      margin-bottom: 0;
      margin-left: 0.625rem;
      padding: 0.9375rem 1.875rem;
      font-size: 1rem;
      font-weight: 600;
      border-radius: 0.3125rem; }
      [data-whatinput='mouse'] .listing--block-usp .listing__footer a {
        outline: 0; }
      .listing--block-usp .listing__footer a:hover, .listing--block-usp .listing__footer a:focus {
        background-color: #a60028;
        color: #ffffff; }

.listing--block-award {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  .listing--block-award::before, .listing--block-award::after {
    display: table;
    content: ' '; }
  .listing--block-award::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .listing--block-award {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--block-award:last-child:not(:first-child) {
    float: right; }
  .listing--block-award, .listing--block-award:last-child {
    float: none; }
  .listing--block-award .listing__heading {
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .listing--block-award .listing__heading {
        margin-bottom: 3.125rem; } }

.listing--block-footer .listing__list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.625rem;
  margin: 0 0 1.875rem;
  list-style: none; }
  @media print, screen and (min-width: 40em) {
    .listing--block-footer .listing__list {
      gap: 1.25rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--block-footer .listing__list {
      gap: 1.875rem; } }

.listing--block-hero .listing__list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.875rem;
  margin: 0;
  list-style: none; }

@media screen and (max-width: 63.9375em) {
  .listing--block-partner .listing__list {
    width: 18.75rem; } }

@media print, screen and (min-width: 64em) {
  .listing--block-search {
    height: 100%; } }

.listing--block-search .listing__list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 100%; }
  @media print, screen and (min-width: 64em) {
    .listing--block-search .listing__list {
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .listing--block-search .listing__list-item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1; }

.listing--block-sidebar .listing__list {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--block-sidebar .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--block-sidebar .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .listing--block-sidebar .listing__list::before, .listing--block-sidebar .listing__list::after {
    display: table;
    content: ' '; }
  .listing--block-sidebar .listing__list::after {
    clear: both; }
  .listing--block-sidebar .listing__list > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--block-sidebar .listing__list > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--block-sidebar .listing__list > li:nth-of-type(1n) {
      clear: none; }
    .listing--block-sidebar .listing__list > li:nth-of-type(1n+1) {
      clear: both; }
    .listing--block-sidebar .listing__list > li:last-child {
      float: left; }
  .listing--block-sidebar .listing__list-item {
    margin-bottom: 1.875rem; }
    .listing--block-sidebar .listing__list-item:last-child {
      margin-bottom: 0; }

.listing--block-finance .listing__title {
  margin-bottom: 1.875rem;
  color: #ffffff;
  font-size: 1.375rem;
  line-height: 1.2; }

.listing--block-service {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-top: 1.875rem; }
  .listing--block-service::before, .listing--block-service::after {
    display: table;
    content: ' '; }
  .listing--block-service::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .listing--block-service {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--block-service:last-child:not(:first-child) {
    float: right; }
  .listing--block-service, .listing--block-service:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .listing--block-service {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--block-service {
      margin-top: 5rem; } }
  .listing--block-service .listing__list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 1.25rem;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media print, screen and (min-width: 40em) {
      .listing--block-service .listing__list {
        gap: 1.875rem; } }
    @media screen and (min-width: 48em) {
      .listing--block-service .listing__list {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row; } }
    .listing--block-service .listing__list-item {
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1; }

.listing--block-vehicle-types {
  margin-top: 1.875rem; }
  @media print, screen and (min-width: 40em) {
    .listing--block-vehicle-types {
      margin-top: 3.125rem;
      border-top: 1px solid #E3E3E3; } }
  @media print, screen and (min-width: 64em) {
    .listing--block-vehicle-types {
      margin-top: 6.25rem; } }
  .listing--block-vehicle-types .listing__inner {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 97.5rem; }
    .listing--block-vehicle-types .listing__inner::before, .listing--block-vehicle-types .listing__inner::after {
      display: table;
      content: ' '; }
    .listing--block-vehicle-types .listing__inner::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .listing--block-vehicle-types .listing__inner {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--block-vehicle-types .listing__inner:last-child:not(:first-child) {
      float: right; }
    .listing--block-vehicle-types .listing__inner, .listing--block-vehicle-types .listing__inner:last-child {
      float: none; }
  .listing--block-vehicle-types .listing__content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media print, screen and (min-width: 40em) {
      .listing--block-vehicle-types .listing__content {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
  .listing--block-vehicle-types .listing__list-outer {
    min-width: 0; }
  @media screen and (max-width: 39.9375em) {
    .listing--block-vehicle-types .listing__list {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }
  .listing--block-vehicle-types .listing__list-item {
    min-width: 0;
    border-left: 1px solid #E3E3E3; }
    @media screen and (max-width: 39.9375em) {
      .listing--block-vehicle-types .listing__list-item {
        -webkit-flex: 0 0 50%;
            -ms-flex: 0 0 50%;
                flex: 0 0 50%; } }
    @media screen and (max-width: 39.9375em) {
      .listing--block-vehicle-types .listing__list-item--odd {
        border-left: none; } }
  .listing--block-vehicle-types .listing__title {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 0.625rem;
    padding-right: 1.25rem;
    font-size: 1.25rem;
    font-weight: 600;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
    @media print, screen and (min-width: 40em) {
      .listing--block-vehicle-types .listing__title {
        margin-bottom: 0; } }
    .listing--block-vehicle-types .listing__title a {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      padding: 0.75rem 0.875rem;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 0;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 1.125rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      background-color: #c3002f;
      color: #ffffff;
      display: none;
      margin-top: 0.625rem;
      margin-bottom: 0;
      padding: 0.9375rem;
      font-size: 1rem;
      font-weight: 600;
      border-radius: 0.3125rem;
      line-height: 1.1; }
      [data-whatinput='mouse'] .listing--block-vehicle-types .listing__title a {
        outline: 0; }
      .listing--block-vehicle-types .listing__title a:hover, .listing--block-vehicle-types .listing__title a:focus {
        background-color: #a60028;
        color: #ffffff; }
      @media print, screen and (min-width: 40em) {
        .listing--block-vehicle-types .listing__title a {
          display: inline-block; } }

.listing--block-awards {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-top: 1.875rem; }
  .listing--block-awards::before, .listing--block-awards::after {
    display: table;
    content: ' '; }
  .listing--block-awards::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .listing--block-awards {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--block-awards:last-child:not(:first-child) {
    float: right; }
  .listing--block-awards, .listing--block-awards:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .listing--block-awards {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--block-awards {
      margin-top: 5rem; } }
  @media screen and (min-width: 90em) {
    .listing--block-awards {
      margin-top: 1.875rem; } }
  @media screen and (min-width: 100em) {
    .listing--block-awards {
      margin-top: 3.125rem; } }
  .listing--block-awards .listing__inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    background-color: rgba(34, 34, 34, 0.5);
    border-radius: 0.3125rem; }
  .listing--block-awards .listing__content {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    padding: 1.25rem;
    grid-gap: 1.25rem;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media print, screen and (min-width: 64em) {
      .listing--block-awards .listing__content {
        -ms-grid-columns: 1fr 1fr 1fr;
            grid-template-columns: 1fr 1fr 1fr;
        padding: 1.25rem 1.875rem;
        grid-gap: 1.875rem; } }
  .listing--block-awards .listing__description {
    height: 100%;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    color: #ffffff;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.4; }
    @media print, screen and (min-width: 64em) {
      .listing--block-awards .listing__description {
        font-size: 1.125rem; } }
    @media screen and (min-width: 75em) {
      .listing--block-awards .listing__description {
        font-size: 1.25rem; } }
  .listing--block-awards .listing__list {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[4];
        grid-template-columns: repeat(4, 1fr);
    grid-gap: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--block-awards .listing__list {
        -ms-grid-columns: (1fr)[7];
            grid-template-columns: repeat(7, 1fr); } }
    @media screen and (min-width: 48em) {
      .listing--block-awards .listing__list {
        grid-gap: 1.25rem; } }
    @media print, screen and (min-width: 64em) {
      .listing--block-awards .listing__list {
        -ms-grid-column-span: 2;
        -ms-grid-column: 2;
            grid-column: 2 / span 2; } }
  .listing--block-awards .listing__title {
    display: none;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0.9375rem;
    color: #ffffff;
    font-size: 1.125rem;
    font-weight: 700;
    text-transform: uppercase;
    background-color: #c3002f;
    border-top-right-radius: 0.3125rem;
    border-bottom-right-radius: 0.3125rem;
    -webkit-writing-mode: vertical-lr;
        -ms-writing-mode: tb-lr;
            writing-mode: vertical-lr; }
    @media screen and (min-width: 48em) {
      .listing--block-awards .listing__title {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; } }

.listing--block-partner-reviews .listing__list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: 0;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .listing--block-partner-reviews .listing__list {
      gap: 1.875rem; } }

.listing--branch-footer .listing__directions {
  margin-top: 1.875rem; }
  .listing--branch-footer .listing__directions-title {
    margin-bottom: 0.9375rem;
    color: #ffffff;
    font-size: 1.125rem;
    font-weight: 600; }

.listing--branch-footer .listing__list {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--branch-footer .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--branch-footer .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .listing--branch-footer .listing__list::before, .listing--branch-footer .listing__list::after {
    display: table;
    content: ' '; }
  .listing--branch-footer .listing__list::after {
    clear: both; }
  .listing--branch-footer .listing__list > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--branch-footer .listing__list > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--branch-footer .listing__list > li:nth-of-type(1n) {
      clear: none; }
    .listing--branch-footer .listing__list > li:nth-of-type(1n+1) {
      clear: both; }
    .listing--branch-footer .listing__list > li:last-child {
      float: left; }
  .listing--branch-footer .listing__list-item {
    margin-bottom: 0.9375rem; }
    .listing--branch-footer .listing__list-item .branch {
      padding-bottom: 0.9375rem;
      border-bottom: 1px solid #222222; }
    .listing--branch-footer .listing__list-item:last-child {
      margin-bottom: 0; }
      .listing--branch-footer .listing__list-item:last-child .branch {
        padding-bottom: 0;
        border-bottom: none; }

.listing--branch-teaser .listing__list-item {
  margin-bottom: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .listing--branch-teaser .listing__list-item {
      margin-bottom: 1.875rem; } }
  .listing--branch-teaser .listing__list-item:last-child {
    margin-bottom: 0; }

.listing--branch-widget {
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
  background-color: #F6F6F6; }
  @media print, screen and (min-width: 40em) {
    .listing--branch-widget {
      padding-top: 3.125rem;
      padding-bottom: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--branch-widget {
      padding-top: 6.25rem;
      padding-bottom: 6.25rem; } }
  .listing--branch-widget .listing__inner {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    .listing--branch-widget .listing__inner::before, .listing--branch-widget .listing__inner::after {
      display: table;
      content: ' '; }
    .listing--branch-widget .listing__inner::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .listing--branch-widget .listing__inner {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--branch-widget .listing__inner:last-child:not(:first-child) {
      float: right; }
    .listing--branch-widget .listing__inner, .listing--branch-widget .listing__inner:last-child {
      float: none; }
  .listing--branch-widget .listing__list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.25rem;
    margin: 0;
    list-style: none; }
    @media print, screen and (min-width: 40em) {
      .listing--branch-widget .listing__list {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row;
        gap: 1.875rem; } }
    .listing--branch-widget .listing__list-item {
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1; }

.listing--page-teaser .listing__list {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--page-teaser .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--page-teaser .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .listing--page-teaser .listing__list::before, .listing--page-teaser .listing__list::after {
    display: table;
    content: ' '; }
  .listing--page-teaser .listing__list::after {
    clear: both; }
  .listing--page-teaser .listing__list > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--page-teaser .listing__list > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--page-teaser .listing__list > li:nth-of-type(1n) {
      clear: none; }
    .listing--page-teaser .listing__list > li:nth-of-type(1n+1) {
      clear: both; }
    .listing--page-teaser .listing__list > li:last-child {
      float: left; }
  .listing--page-teaser .listing__list-item {
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .listing--page-teaser .listing__list-item {
        margin-bottom: 3.125rem; } }
    .listing--page-teaser .listing__list-item:last-child {
      margin-bottom: 0; }

.listing--careers .listing__title {
  margin-bottom: 1.875rem; }

.listing--careers .listing__list {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 1.25rem;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  @media print, screen and (min-width: 40em) {
    .listing--careers .listing__list {
      gap: 1.875rem; } }

.listing--careers .listing__footer {
  margin-top: 0.9375rem;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .listing--careers .listing__footer {
      margin-top: 1.875rem; } }

.listing--custom-entry-review-featured {
  position: relative;
  padding-bottom: 3.75rem; }
  @media print, screen and (min-width: 40em) {
    .listing--custom-entry-review-featured {
      padding-bottom: 5rem; } }
  .listing--custom-entry-review-featured .listing__title {
    margin-bottom: 0;
    color: #c3002f;
    font-size: 1.125rem;
    font-weight: 500; }
    @media print, screen and (min-width: 40em) {
      .listing--custom-entry-review-featured .listing__title {
        font-size: 1.25rem; } }
  .listing--custom-entry-review-featured .listing__link {
    position: absolute;
    bottom: 0;
    left: 6.875rem;
    height: 2.5rem;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media print, screen and (min-width: 40em) {
      .listing--custom-entry-review-featured .listing__link {
        left: 8.125rem;
        height: 3.125rem; } }
    .listing--custom-entry-review-featured .listing__link a {
      color: #222222;
      font-size: 1rem;
      font-weight: 600; }
      .listing--custom-entry-review-featured .listing__link a span {
        margin-right: 0.625rem;
        vertical-align: middle; }

.listing--new-vehicle-teaser .listing__header {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--new-vehicle-teaser .listing__header {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--new-vehicle-teaser .listing__header {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .listing--new-vehicle-teaser .listing__header::before, .listing--new-vehicle-teaser .listing__header::after {
    display: table;
    content: ' '; }
  .listing--new-vehicle-teaser .listing__header::after {
    clear: both; }

.listing--new-vehicle-teaser .listing__title {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--new-vehicle-teaser .listing__title {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--new-vehicle-teaser .listing__title:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 64em) {
    .listing--new-vehicle-teaser .listing__title {
      width: 66.66667%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .listing--new-vehicle-teaser .listing__title {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .listing--new-vehicle-teaser .listing__title:last-child:not(:first-child) {
        float: right; } }

.listing--new-vehicle-teaser .listing__description {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--new-vehicle-teaser .listing__description {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--new-vehicle-teaser .listing__description:last-child:not(:first-child) {
    float: right; }

.listing--new-vehicle-teaser .listing__order {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--new-vehicle-teaser .listing__order {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--new-vehicle-teaser .listing__order:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 64em) {
    .listing--new-vehicle-teaser .listing__order {
      width: 33.33333%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .listing--new-vehicle-teaser .listing__order {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .listing--new-vehicle-teaser .listing__order:last-child:not(:first-child) {
        float: right; } }
  .listing--new-vehicle-teaser .listing__order .vehicle-order {
    margin-right: -0.625rem;
    margin-left: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--new-vehicle-teaser .listing__order .vehicle-order {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .listing--new-vehicle-teaser .listing__order .vehicle-order {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .listing--new-vehicle-teaser .listing__order .vehicle-order::before, .listing--new-vehicle-teaser .listing__order .vehicle-order::after {
      display: table;
      content: ' '; }
    .listing--new-vehicle-teaser .listing__order .vehicle-order::after {
      clear: both; }
  .listing--new-vehicle-teaser .listing__order .field-vehicle_search_order {
    width: 66.66667%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--new-vehicle-teaser .listing__order .field-vehicle_search_order {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--new-vehicle-teaser .listing__order .field-vehicle_search_order:last-child:not(:first-child) {
      float: right; }
  .listing--new-vehicle-teaser .listing__order .field-vehicle_search_per_page {
    width: 33.33333%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--new-vehicle-teaser .listing__order .field-vehicle_search_per_page {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--new-vehicle-teaser .listing__order .field-vehicle_search_per_page:last-child:not(:first-child) {
      float: right; }

.listing--new-vehicle-teaser .listing__item-count {
  margin-bottom: 0.1875rem; }
  .listing--new-vehicle-teaser .listing__item-count span {
    font-weight: 600; }

.listing--new-vehicle-teaser .listing__list {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--new-vehicle-teaser .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--new-vehicle-teaser .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .listing--new-vehicle-teaser .listing__list::before, .listing--new-vehicle-teaser .listing__list::after {
    display: table;
    content: ' '; }
  .listing--new-vehicle-teaser .listing__list::after {
    clear: both; }
  .listing--new-vehicle-teaser .listing__list > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--new-vehicle-teaser .listing__list > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--new-vehicle-teaser .listing__list > li:nth-of-type(1n) {
      clear: none; }
    .listing--new-vehicle-teaser .listing__list > li:nth-of-type(1n+1) {
      clear: both; }
    .listing--new-vehicle-teaser .listing__list > li:last-child {
      float: left; }
  @media print, screen and (min-width: 40em) {
    .listing--new-vehicle-teaser .listing__list > li {
      float: left;
      width: 50%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .listing--new-vehicle-teaser .listing__list > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 40em) {
      .listing--new-vehicle-teaser .listing__list > li:nth-of-type(1n) {
        clear: none; }
      .listing--new-vehicle-teaser .listing__list > li:nth-of-type(2n+1) {
        clear: both; }
      .listing--new-vehicle-teaser .listing__list > li:last-child {
        float: left; } }
  @media print, screen and (min-width: 64em) {
    .listing--new-vehicle-teaser .listing__list > li {
      float: left;
      width: 33.33333%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .listing--new-vehicle-teaser .listing__list > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .listing--new-vehicle-teaser .listing__list > li:nth-of-type(1n) {
        clear: none; }
      .listing--new-vehicle-teaser .listing__list > li:nth-of-type(3n+1) {
        clear: both; }
      .listing--new-vehicle-teaser .listing__list > li:last-child {
        float: left; } }
  .listing--new-vehicle-teaser .listing__list-item {
    margin-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--new-vehicle-teaser .listing__list-item {
        margin-bottom: 0.9375rem; } }

.listing--new-vehicle-teaser .listing__footer {
  text-align: center; }

.listing--page-full-width-teaser .listing__list {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--page-full-width-teaser .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--page-full-width-teaser .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .listing--page-full-width-teaser .listing__list::before, .listing--page-full-width-teaser .listing__list::after {
    display: table;
    content: ' '; }
  .listing--page-full-width-teaser .listing__list::after {
    clear: both; }
  .listing--page-full-width-teaser .listing__list > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--page-full-width-teaser .listing__list > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--page-full-width-teaser .listing__list > li:nth-of-type(1n) {
      clear: none; }
    .listing--page-full-width-teaser .listing__list > li:nth-of-type(1n+1) {
      clear: both; }
    .listing--page-full-width-teaser .listing__list > li:last-child {
      float: left; }
  .listing--page-full-width-teaser .listing__list-item {
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .listing--page-full-width-teaser .listing__list-item {
        margin-bottom: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .listing--page-full-width-teaser .listing__list-item {
        margin-bottom: 5rem; } }
    .listing--page-full-width-teaser .listing__list-item:last-child {
      margin-bottom: 0; }

.listing--post-featured .listing__list {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--post-featured .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--post-featured .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .listing--post-featured .listing__list::before, .listing--post-featured .listing__list::after {
    display: table;
    content: ' '; }
  .listing--post-featured .listing__list::after {
    clear: both; }
  .listing--post-featured .listing__list > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--post-featured .listing__list > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--post-featured .listing__list > li:nth-of-type(1n) {
      clear: none; }
    .listing--post-featured .listing__list > li:nth-of-type(1n+1) {
      clear: both; }
    .listing--post-featured .listing__list > li:last-child {
      float: left; }
  @media print, screen and (min-width: 40em) {
    .listing--post-featured .listing__list > li {
      float: left;
      width: 33.33333%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .listing--post-featured .listing__list > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 40em) {
      .listing--post-featured .listing__list > li:nth-of-type(1n) {
        clear: none; }
      .listing--post-featured .listing__list > li:nth-of-type(3n+1) {
        clear: both; }
      .listing--post-featured .listing__list > li:last-child {
        float: left; } }
  @media print, screen and (min-width: 64em) {
    .listing--post-featured .listing__list > li {
      float: left;
      width: 100%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .listing--post-featured .listing__list > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .listing--post-featured .listing__list > li:nth-of-type(1n) {
        clear: none; }
      .listing--post-featured .listing__list > li:nth-of-type(1n+1) {
        clear: both; }
      .listing--post-featured .listing__list > li:last-child {
        float: left; } }
  .listing--post-featured .listing__list-item {
    margin-bottom: 0.9375rem; }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .listing--post-featured .listing__list-item {
        margin-bottom: 0; } }
    @media screen and (max-width: 39.9375em) {
      .listing--post-featured .listing__list-item:last-child {
        margin-bottom: 0; } }
    @media print, screen and (min-width: 64em) {
      .listing--post-featured .listing__list-item:last-child {
        margin-bottom: 0; } }

.listing--vehicle-compare .listing__header {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto; }
  .listing--vehicle-compare .listing__header::before, .listing--vehicle-compare .listing__header::after {
    display: table;
    content: ' '; }
  .listing--vehicle-compare .listing__header::after {
    clear: both; }

.listing--vehicle-compare .listing__title {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-bottom: 0.9375rem; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-compare .listing__title {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--vehicle-compare .listing__title:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-compare .listing__title {
      width: 50%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      margin-bottom: 0; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .listing--vehicle-compare .listing__title {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 40em) {
      .listing--vehicle-compare .listing__title:last-child:not(:first-child) {
        float: right; } }
  .listing--vehicle-compare .listing__title h1 {
    margin-bottom: 0; }

.listing--vehicle-compare .listing__remove {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-compare .listing__remove {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--vehicle-compare .listing__remove:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-compare .listing__remove {
      width: 50%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      text-align: right; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .listing--vehicle-compare .listing__remove {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 40em) {
      .listing--vehicle-compare .listing__remove:last-child:not(:first-child) {
        float: right; } }
  .listing--vehicle-compare .listing__remove .button {
    margin-bottom: 0; }

.listing--vehicle-compare .listing__main {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto; }
  .listing--vehicle-compare .listing__main::before, .listing--vehicle-compare .listing__main::after {
    display: table;
    content: ' '; }
  .listing--vehicle-compare .listing__main::after {
    clear: both; }

.listing--vehicle-compare .listing__key {
  display: none; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-compare .listing__key {
      width: 25%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      display: block; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .listing--vehicle-compare .listing__key {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 40em) {
      .listing--vehicle-compare .listing__key:last-child:not(:first-child) {
        float: right; } }
  @media print, screen and (min-width: 64em) {
    .listing--vehicle-compare .listing__key {
      width: 16.66667%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .listing--vehicle-compare .listing__key {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .listing--vehicle-compare .listing__key:last-child:not(:first-child) {
        float: right; } }
  .listing--vehicle-compare .listing__key ul {
    margin: 16.125rem 0 0 0;
    list-style: none; }
    .listing--vehicle-compare .listing__key ul li {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      height: 3.75rem;
      padding: 0 0.9375rem;
      line-height: 1.2; }
      .listing--vehicle-compare .listing__key ul li:nth-child(odd) {
        background-color: #eeeeee; }

.listing--vehicle-compare .listing__content {
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-compare .listing__content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--vehicle-compare .listing__content:last-child:not(:first-child) {
    float: right; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-compare .listing__content {
      width: 75%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .listing--vehicle-compare .listing__content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 40em) {
      .listing--vehicle-compare .listing__content:last-child:not(:first-child) {
        float: right; } }
  @media print, screen and (min-width: 64em) {
    .listing--vehicle-compare .listing__content {
      width: 83.33333%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .listing--vehicle-compare .listing__content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .listing--vehicle-compare .listing__content:last-child:not(:first-child) {
        float: right; } }

.listing--vehicle-recently-viewed .listing__title {
  display: none; }

.listing--vehicle-recently-viewed .listing__list {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-recently-viewed .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--vehicle-recently-viewed .listing__list {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .listing--vehicle-recently-viewed .listing__list::before, .listing--vehicle-recently-viewed .listing__list::after {
    display: table;
    content: ' '; }
  .listing--vehicle-recently-viewed .listing__list::after {
    clear: both; }
  .listing--vehicle-recently-viewed .listing__list > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-recently-viewed .listing__list > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--vehicle-recently-viewed .listing__list > li:nth-of-type(1n) {
      clear: none; }
    .listing--vehicle-recently-viewed .listing__list > li:nth-of-type(1n+1) {
      clear: both; }
    .listing--vehicle-recently-viewed .listing__list > li:last-child {
      float: left; }
  .listing--vehicle-recently-viewed .listing__list-item {
    margin-bottom: 0.25rem; }
    .listing--vehicle-recently-viewed .listing__list-item:last-child {
      margin-bottom: 0; }

.listing--vehicle-recently-viewed .listing__no-items {
  text-align: center; }

.listing--vehicle-latest, .listing--block-tile, .listing--showroom-featured {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  .listing--vehicle-latest::before, .listing--vehicle-latest::after, .listing--block-tile::before, .listing--block-tile::after, .listing--showroom-featured::before, .listing--showroom-featured::after {
    display: table;
    content: ' '; }
  .listing--vehicle-latest::after, .listing--block-tile::after, .listing--showroom-featured::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-latest, .listing--block-tile, .listing--showroom-featured {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--vehicle-latest:last-child:not(:first-child), .listing--block-tile:last-child:not(:first-child), .listing--showroom-featured:last-child:not(:first-child) {
    float: right; }
  .listing--vehicle-latest, .listing--vehicle-latest:last-child, .listing--block-tile, .listing--block-tile:last-child, .listing--showroom-featured, .listing--showroom-featured:last-child {
    float: none; }
  .listing--vehicle-latest .listing__heading, .listing--block-tile .listing__heading, .listing--showroom-featured .listing__heading {
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-latest .listing__heading, .listing--block-tile .listing__heading, .listing--showroom-featured .listing__heading {
        margin-bottom: 3.125rem; } }

.listing--vehicle-featured .listing__header {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-featured .listing__header {
      margin-bottom: 3.125rem;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; } }

.listing--vehicle-featured .listing__title {
  margin-bottom: 0;
  font-size: 1.875rem; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-featured .listing__title {
      font-size: 2.75rem; } }

.listing--vehicle-featured .listing__link {
  display: none; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-featured .listing__link {
      display: block; } }
  .listing--vehicle-featured .listing__link a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.9375rem; }
  .listing--vehicle-featured .listing__link span {
    font-size: 1.125rem;
    font-weight: 600;
    vertical-align: middle; }
  .listing--vehicle-featured .listing__link i::before {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    color: #ffffff;
    background-color: #c3002f;
    border-radius: 50%; }

.listing--vehicle-featured .listing__list {
  width: 85%; }
  @media screen and (min-width: 48em) {
    .listing--vehicle-featured .listing__list {
      width: auto; } }

.listing--vehicle-similar {
  margin-top: 1.875rem;
  padding-top: 1.875rem;
  background-color: #F6F6F6; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-similar {
      margin-top: 3.125rem;
      padding-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--vehicle-similar {
      padding-top: 6.25rem; } }
  .listing--vehicle-similar .listing__inner {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 97.5rem; }
    .listing--vehicle-similar .listing__inner::before, .listing--vehicle-similar .listing__inner::after {
      display: table;
      content: ' '; }
    .listing--vehicle-similar .listing__inner::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-similar .listing__inner {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--vehicle-similar .listing__inner:last-child:not(:first-child) {
      float: right; }
    .listing--vehicle-similar .listing__inner, .listing--vehicle-similar .listing__inner:last-child {
      float: none; }
  .listing--vehicle-similar .listing__header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-similar .listing__header {
        margin-bottom: 3.125rem;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
  .listing--vehicle-similar .listing__title {
    margin-bottom: 0;
    font-size: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-similar .listing__title {
        font-size: 1.875rem; } }
  .listing--vehicle-similar .listing__list {
    width: 85%; }
    @media screen and (min-width: 48em) {
      .listing--vehicle-similar .listing__list {
        width: auto; } }

.listing--vehicle-in-stock, .listing--offer-featured {
  margin-top: 1.875rem; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-in-stock, .listing--offer-featured {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--vehicle-in-stock, .listing--offer-featured {
      margin-top: 6.25rem; } }
  .listing--vehicle-in-stock .listing__inner, .listing--offer-featured .listing__inner {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 97.5rem; }
    .listing--vehicle-in-stock .listing__inner::before, .listing--vehicle-in-stock .listing__inner::after, .listing--offer-featured .listing__inner::before, .listing--offer-featured .listing__inner::after {
      display: table;
      content: ' '; }
    .listing--vehicle-in-stock .listing__inner::after, .listing--offer-featured .listing__inner::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-in-stock .listing__inner, .listing--offer-featured .listing__inner {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--vehicle-in-stock .listing__inner:last-child:not(:first-child), .listing--offer-featured .listing__inner:last-child:not(:first-child) {
      float: right; }
    .listing--vehicle-in-stock .listing__inner, .listing--vehicle-in-stock .listing__inner:last-child, .listing--offer-featured .listing__inner, .listing--offer-featured .listing__inner:last-child {
      float: none; }
  .listing--vehicle-in-stock .listing__header, .listing--offer-featured .listing__header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-in-stock .listing__header, .listing--offer-featured .listing__header {
        margin-bottom: 3.125rem;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
  .listing--vehicle-in-stock .listing__title, .listing--offer-featured .listing__title {
    margin-bottom: 0;
    font-size: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-in-stock .listing__title, .listing--offer-featured .listing__title {
        font-size: 1.875rem; } }
  .listing--vehicle-in-stock .listing__list, .listing--offer-featured .listing__list {
    width: 85%; }
    @media screen and (min-width: 48em) {
      .listing--vehicle-in-stock .listing__list, .listing--offer-featured .listing__list {
        width: auto; } }

.listing--vehicle-featured-sidebar, .listing--vehicle-latest-sidebar {
  margin-bottom: 1.875rem; }
  .listing--vehicle-featured-sidebar .listing__title, .listing--vehicle-latest-sidebar .listing__title {
    display: none; }

.listing--showroom-teaser {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 97.5rem;
  padding-bottom: 1.875rem; }
  .listing--showroom-teaser::before, .listing--showroom-teaser::after {
    display: table;
    content: ' '; }
  .listing--showroom-teaser::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .listing--showroom-teaser {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--showroom-teaser:last-child:not(:first-child) {
    float: right; }
  .listing--showroom-teaser, .listing--showroom-teaser:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .listing--showroom-teaser {
      padding-bottom: 1.875rem; } }
  .listing--showroom-teaser .listing__title {
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 64em) {
      .listing--showroom-teaser .listing__title {
        margin-bottom: 3.125rem; } }
    .listing--showroom-teaser .listing__title h1 {
      margin-bottom: 0;
      font-size: 1.625rem; }
  .listing--showroom-teaser .listing__list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-left: -0.625rem;
    margin-right: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--showroom-teaser .listing__list {
        margin-left: -0.9375rem;
        margin-right: -0.9375rem; } }
    .listing--showroom-teaser .listing__list-item {
      min-width: 0;
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      margin-bottom: 1.25rem;
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .listing--showroom-teaser .listing__list-item {
          margin-bottom: 1.875rem; } }
      @media screen and (min-width: 48em) {
        .listing--showroom-teaser .listing__list-item {
          -webkit-flex-basis: 50%;
              -ms-flex-preferred-size: 50%;
                  flex-basis: 50%; } }
      @media print, screen and (min-width: 64em) {
        .listing--showroom-teaser .listing__list-item {
          padding-left: 0.9375rem;
          padding-right: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
        .listing--showroom-teaser .listing__list-item {
          -webkit-flex-basis: 33.33%;
              -ms-flex-preferred-size: 33.33%;
                  flex-basis: 33.33%; } }
      @media screen and (min-width: 90em) {
        .listing--showroom-teaser .listing__list-item {
          -webkit-flex-basis: 25%;
              -ms-flex-preferred-size: 25%;
                  flex-basis: 25%; } }

.listing--post-teaser {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 97.5rem;
  padding-top: 1.875rem; }
  .listing--post-teaser::before, .listing--post-teaser::after {
    display: table;
    content: ' '; }
  .listing--post-teaser::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .listing--post-teaser {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--post-teaser:last-child:not(:first-child) {
    float: right; }
  .listing--post-teaser, .listing--post-teaser:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .listing--post-teaser {
      padding-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--post-teaser {
      padding-top: 6.25rem; } }
  .listing--post-teaser .listing__title {
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 64em) {
      .listing--post-teaser .listing__title {
        margin-bottom: 3.125rem; } }
    .listing--post-teaser .listing__title h1 {
      margin-bottom: 0;
      font-size: 1.625rem; }
  .listing--post-teaser .listing__list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-left: -0.625rem;
    margin-right: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--post-teaser .listing__list {
        margin-left: -0.9375rem;
        margin-right: -0.9375rem; } }
    .listing--post-teaser .listing__list-item {
      min-width: 0;
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      margin-bottom: 1.25rem;
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .listing--post-teaser .listing__list-item {
          margin-bottom: 1.875rem; } }
      @media screen and (min-width: 48em) {
        .listing--post-teaser .listing__list-item {
          -webkit-flex-basis: 50%;
              -ms-flex-preferred-size: 50%;
                  flex-basis: 50%; } }
      @media print, screen and (min-width: 64em) {
        .listing--post-teaser .listing__list-item {
          padding-left: 0.9375rem;
          padding-right: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
        .listing--post-teaser .listing__list-item {
          -webkit-flex-basis: 33.33%;
              -ms-flex-preferred-size: 33.33%;
                  flex-basis: 33.33%; } }
      @media screen and (min-width: 90em) {
        .listing--post-teaser .listing__list-item {
          -webkit-flex-basis: 25%;
              -ms-flex-preferred-size: 25%;
                  flex-basis: 25%; } }

.listing--offer-teaser {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 97.5rem;
  padding-top: 1.875rem; }
  .listing--offer-teaser::before, .listing--offer-teaser::after {
    display: table;
    content: ' '; }
  .listing--offer-teaser::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .listing--offer-teaser {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--offer-teaser:last-child:not(:first-child) {
    float: right; }
  .listing--offer-teaser, .listing--offer-teaser:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .listing--offer-teaser {
      padding-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .listing--offer-teaser {
      padding-top: 6.25rem; } }
  .listing--offer-teaser .listing__title {
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 64em) {
      .listing--offer-teaser .listing__title {
        margin-bottom: 3.125rem; } }
    .listing--offer-teaser .listing__title h1 {
      margin-bottom: 0;
      font-size: 1.625rem; }
  .listing--offer-teaser .listing__list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-left: -0.625rem;
    margin-right: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--offer-teaser .listing__list {
        margin-left: -0.9375rem;
        margin-right: -0.9375rem; } }
    .listing--offer-teaser .listing__list-item {
      min-width: 0;
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      margin-bottom: 1.25rem;
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .listing--offer-teaser .listing__list-item {
          margin-bottom: 1.875rem; } }
      @media screen and (min-width: 48em) {
        .listing--offer-teaser .listing__list-item {
          -webkit-flex-basis: 50%;
              -ms-flex-preferred-size: 50%;
                  flex-basis: 50%; } }
      @media print, screen and (min-width: 64em) {
        .listing--offer-teaser .listing__list-item {
          padding-left: 0.9375rem;
          padding-right: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
        .listing--offer-teaser .listing__list-item {
          -webkit-flex-basis: 33.33%;
              -ms-flex-preferred-size: 33.33%;
                  flex-basis: 33.33%; } }
      @media screen and (min-width: 90em) {
        .listing--offer-teaser .listing__list-item {
          -webkit-flex-basis: 25%;
              -ms-flex-preferred-size: 25%;
                  flex-basis: 25%; } }

.listing--custom-entry-teaser {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 97.5rem;
  padding-top: 1.875rem;
  padding-bottom: 1.875rem; }
  .listing--custom-entry-teaser::before, .listing--custom-entry-teaser::after {
    display: table;
    content: ' '; }
  .listing--custom-entry-teaser::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .listing--custom-entry-teaser {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--custom-entry-teaser:last-child:not(:first-child) {
    float: right; }
  .listing--custom-entry-teaser, .listing--custom-entry-teaser:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .listing--custom-entry-teaser {
      padding-top: 3.125rem;
      padding-bottom: 3.125rem; } }
  .listing--custom-entry-teaser .listing__title {
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 64em) {
      .listing--custom-entry-teaser .listing__title {
        margin-bottom: 3.125rem; } }
    .listing--custom-entry-teaser .listing__title h1 {
      margin-bottom: 0;
      font-size: 1.625rem; }
  .listing--custom-entry-teaser .listing__block,
  .listing--custom-entry-teaser .listing__judge-service {
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 64em) {
      .listing--custom-entry-teaser .listing__block,
      .listing--custom-entry-teaser .listing__judge-service {
        margin-bottom: 3.125rem; } }
  .listing--custom-entry-teaser > .listing__list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-left: -0.625rem;
    margin-right: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--custom-entry-teaser > .listing__list {
        margin-left: -0.9375rem;
        margin-right: -0.9375rem; } }
    .listing--custom-entry-teaser > .listing__list > .listing__list-item {
      min-width: 0;
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      margin-bottom: 1.25rem;
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .listing--custom-entry-teaser > .listing__list > .listing__list-item {
          margin-bottom: 1.875rem; } }
      @media screen and (min-width: 48em) {
        .listing--custom-entry-teaser > .listing__list > .listing__list-item {
          -webkit-flex-basis: 50%;
              -ms-flex-preferred-size: 50%;
                  flex-basis: 50%; } }
      @media print, screen and (min-width: 64em) {
        .listing--custom-entry-teaser > .listing__list > .listing__list-item {
          padding-left: 0.9375rem;
          padding-right: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
        .listing--custom-entry-teaser > .listing__list > .listing__list-item {
          -webkit-flex-basis: 33.33%;
              -ms-flex-preferred-size: 33.33%;
                  flex-basis: 33.33%; } }
      @media screen and (min-width: 90em) {
        .listing--custom-entry-teaser > .listing__list > .listing__list-item {
          -webkit-flex-basis: 25%;
              -ms-flex-preferred-size: 25%;
                  flex-basis: 25%; } }

.listing--vehicle-teaser {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 97.5rem; }
  .listing--vehicle-teaser::before, .listing--vehicle-teaser::after {
    display: table;
    content: ' '; }
  .listing--vehicle-teaser::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-teaser {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .listing--vehicle-teaser:last-child:not(:first-child) {
    float: right; }
  .listing--vehicle-teaser, .listing--vehicle-teaser:last-child {
    float: none; }
  .listing--vehicle-teaser .listing__header {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-teaser .listing__header {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .listing--vehicle-teaser .listing__header {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .listing--vehicle-teaser .listing__header::before, .listing--vehicle-teaser .listing__header::after {
      display: table;
      content: ' '; }
    .listing--vehicle-teaser .listing__header::after {
      clear: both; }
    @media print, screen and (min-width: 64em) {
      .listing--vehicle-teaser .listing__header {
        margin-bottom: 3.125rem; } }
  .listing--vehicle-teaser .listing__title {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-teaser .listing__title {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--vehicle-teaser .listing__title:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .listing--vehicle-teaser .listing__title {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        padding-top: 1.875rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .listing--vehicle-teaser .listing__title {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .listing--vehicle-teaser .listing__title:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 75em) {
      .listing--vehicle-teaser .listing__title {
        width: 66.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .listing--vehicle-teaser .listing__title {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 75em) {
        .listing--vehicle-teaser .listing__title:last-child:not(:first-child) {
          float: right; } }
    .listing--vehicle-teaser .listing__title h1 {
      font-size: 1.625rem; }
      @media print, screen and (min-width: 64em) {
        .listing--vehicle-teaser .listing__title h1 {
          margin-bottom: 0; } }
  .listing--vehicle-teaser .listing__order {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-teaser .listing__order {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--vehicle-teaser .listing__order:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .listing--vehicle-teaser .listing__order {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .listing--vehicle-teaser .listing__order {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .listing--vehicle-teaser .listing__order:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 75em) {
      .listing--vehicle-teaser .listing__order {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .listing--vehicle-teaser .listing__order {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 75em) {
        .listing--vehicle-teaser .listing__order:last-child:not(:first-child) {
          float: right; } }
    .listing--vehicle-teaser .listing__order .vehicle-order {
      margin-right: -0.625rem;
      margin-left: -0.625rem; }
      @media print, screen and (min-width: 40em) {
        .listing--vehicle-teaser .listing__order .vehicle-order {
          margin-right: -0.9375rem;
          margin-left: -0.9375rem; } }
      @media print, screen and (min-width: 64em) {
        .listing--vehicle-teaser .listing__order .vehicle-order {
          margin-right: -0.9375rem;
          margin-left: -0.9375rem; } }
      .listing--vehicle-teaser .listing__order .vehicle-order::before, .listing--vehicle-teaser .listing__order .vehicle-order::after {
        display: table;
        content: ' '; }
      .listing--vehicle-teaser .listing__order .vehicle-order::after {
        clear: both; }
    .listing--vehicle-teaser .listing__order .field-vehicle_search_order {
      width: 66.66667%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .listing--vehicle-teaser .listing__order .field-vehicle_search_order {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .listing--vehicle-teaser .listing__order .field-vehicle_search_order:last-child:not(:first-child) {
        float: right; }
    .listing--vehicle-teaser .listing__order .field-vehicle_search_per_page {
      width: 33.33333%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .listing--vehicle-teaser .listing__order .field-vehicle_search_per_page {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .listing--vehicle-teaser .listing__order .field-vehicle_search_per_page:last-child:not(:first-child) {
        float: right; }
    .listing--vehicle-teaser .listing__order label {
      font-size: 0.8125rem;
      font-weight: 600; }
    .listing--vehicle-teaser .listing__order select {
      font-weight: 600;
      border: none;
      border-radius: 0.3125rem; }
      @media print, screen and (min-width: 64em) {
        .listing--vehicle-teaser .listing__order select {
          height: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .listing--vehicle-teaser .listing__order .help-block {
        display: none; } }
  .listing--vehicle-teaser .listing__filter-results {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-teaser .listing__filter-results {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--vehicle-teaser .listing__filter-results:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .listing--vehicle-teaser .listing__filter-results {
        width: 25%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        float: left !important; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .listing--vehicle-teaser .listing__filter-results {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .listing--vehicle-teaser .listing__filter-results:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 75em) {
      .listing--vehicle-teaser .listing__filter-results {
        width: 16.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .listing--vehicle-teaser .listing__filter-results {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 75em) {
        .listing--vehicle-teaser .listing__filter-results:last-child:not(:first-child) {
          float: right; } }
    .listing--vehicle-teaser .listing__filter-results .button {
      width: 100%;
      margin-bottom: 0; }
  @media screen and (max-width: 63.9375em) {
    .listing--vehicle-teaser .listing__filter-results--reduced {
      width: 50%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 40em) {
    .listing--vehicle-teaser .listing__filter-results--reduced {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (max-width: 63.9375em) {
      .listing--vehicle-teaser .listing__filter-results--reduced:last-child:not(:first-child) {
        float: right; } }
  .listing--vehicle-teaser .listing__adjust-finance {
    width: 50%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-teaser .listing__adjust-finance {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--vehicle-teaser .listing__adjust-finance:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .listing--vehicle-teaser .listing__adjust-finance {
        width: 25%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .listing--vehicle-teaser .listing__adjust-finance {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .listing--vehicle-teaser .listing__adjust-finance:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 75em) {
      .listing--vehicle-teaser .listing__adjust-finance {
        width: 16.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .listing--vehicle-teaser .listing__adjust-finance {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 75em) {
        .listing--vehicle-teaser .listing__adjust-finance:last-child:not(:first-child) {
          float: right; } }
    .listing--vehicle-teaser .listing__adjust-finance .button {
      width: 100%;
      margin-bottom: 0; }
  .listing--vehicle-teaser .listing__finance-form {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    display: none;
    margin-top: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-teaser .listing__finance-form {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .listing--vehicle-teaser .listing__finance-form:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-teaser .listing__finance-form {
        margin-top: 1.875rem; } }
  .listing--vehicle-teaser .listing__item-count {
    margin-bottom: 0.625rem;
    text-align: center; }
    .listing--vehicle-teaser .listing__item-count span {
      font-weight: 600; }
  .listing--vehicle-teaser .listing__list {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-left: -0.625rem;
    margin-right: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-teaser .listing__list {
        margin-left: -0.9375rem;
        margin-right: -0.9375rem; } }
    .listing--vehicle-teaser .listing__list-item {
      min-width: 0;
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      margin-bottom: 1.25rem;
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .listing--vehicle-teaser .listing__list-item {
          margin-bottom: 1.875rem; } }
      @media screen and (min-width: 48em) {
        .listing--vehicle-teaser .listing__list-item {
          -webkit-flex-basis: 50%;
              -ms-flex-preferred-size: 50%;
                  flex-basis: 50%; } }
      @media print, screen and (min-width: 64em) {
        .listing--vehicle-teaser .listing__list-item {
          padding-left: 0.9375rem;
          padding-right: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
        .listing--vehicle-teaser .listing__list-item {
          -webkit-flex-basis: 33.33%;
              -ms-flex-preferred-size: 33.33%;
                  flex-basis: 33.33%; } }
      @media screen and (min-width: 90em) {
        .listing--vehicle-teaser .listing__list-item {
          -webkit-flex-basis: 25%;
              -ms-flex-preferred-size: 25%;
                  flex-basis: 25%; } }
  .listing--vehicle-teaser .listing__finance-disclaimer,
  .listing--vehicle-teaser .listing__description {
    margin-top: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-teaser .listing__finance-disclaimer,
      .listing--vehicle-teaser .listing__description {
        margin-top: 1.875rem; } }

.controller-vehicle.action-detail .listing.listing--block-usp .listing__title {
  display: none; }

.logo--primary {
  max-width: 12.5rem; }
  @media print, screen and (min-width: 40em) {
    .logo--primary {
      max-width: 18.75rem; } }
  @media screen and (min-width: 75em) {
    .logo--primary {
      max-width: 21.875rem; } }

.meet-the-team__category-title h2, .meet-the-team__category-title .offer--featured .offer__title, .offer--featured .meet-the-team__category-title .offer__title, .meet-the-team__category-title .order-progress__title, .meet-the-team__category-title .part--featured .part__title, .part--featured .meet-the-team__category-title .part__title, .meet-the-team__category-title .part--full .part__form-title, .part--full .meet-the-team__category-title .part__form-title, .meet-the-team__category-title .post--featured .post__title, .post--featured .meet-the-team__category-title .post__title, .meet-the-team__category-title .vehicle--general .vehicle__title, .vehicle--general .meet-the-team__category-title .vehicle__title, .meet-the-team__category-title .vehicle--latest .vehicle__title, .vehicle--latest .meet-the-team__category-title .vehicle__title, .meet-the-team__category-title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .meet-the-team__category-title .listing__title, .meet-the-team__category-title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .meet-the-team__category-title .listing__title, .meet-the-team__category-title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .meet-the-team__category-title .listing__title, .meet-the-team__category-title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .meet-the-team__category-title .listing__title, .meet-the-team__category-title .listing--offer-featured .listing__title, .listing--offer-featured .meet-the-team__category-title .listing__title, .meet-the-team__category-title .page--teaser .page__title, .page--teaser .meet-the-team__category-title .page__title {
  margin-bottom: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .meet-the-team__category-title h2, .meet-the-team__category-title .offer--featured .offer__title, .offer--featured .meet-the-team__category-title .offer__title, .meet-the-team__category-title .order-progress__title, .meet-the-team__category-title .part--featured .part__title, .part--featured .meet-the-team__category-title .part__title, .meet-the-team__category-title .part--full .part__form-title, .part--full .meet-the-team__category-title .part__form-title, .meet-the-team__category-title .post--featured .post__title, .post--featured .meet-the-team__category-title .post__title, .meet-the-team__category-title .vehicle--general .vehicle__title, .vehicle--general .meet-the-team__category-title .vehicle__title, .meet-the-team__category-title .vehicle--latest .vehicle__title, .vehicle--latest .meet-the-team__category-title .vehicle__title, .meet-the-team__category-title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .meet-the-team__category-title .listing__title, .meet-the-team__category-title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .meet-the-team__category-title .listing__title, .meet-the-team__category-title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .meet-the-team__category-title .listing__title, .meet-the-team__category-title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .meet-the-team__category-title .listing__title, .meet-the-team__category-title .listing--offer-featured .listing__title, .listing--offer-featured .meet-the-team__category-title .listing__title, .meet-the-team__category-title .page--teaser .page__title, .page--teaser .meet-the-team__category-title .page__title {
      margin-bottom: 1.25rem; } }

.meet-the-team__card {
  background-color: #ffffff;
  border-radius: 0.3125rem;
  box-shadow: 0 30px 60px 0 rgba(0, 0, 0, 0.1); }

.meet-the-team__primary-images {
  position: relative; }
  .meet-the-team__primary-images img {
    width: 100%;
    transition: all 0.5s;
    border-top-left-radius: 0.3125rem;
    border-top-right-radius: 0.3125rem; }
    .meet-the-team__primary-images img:hover {
      opacity: .8; }

.meet-the-team__content {
  position: relative;
  padding: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .meet-the-team__content {
      padding: 1.875rem; } }

.meet-the-team__title h3, .meet-the-team__title .block--sidebar .block__title, .block--sidebar .meet-the-team__title .block__title, .meet-the-team__title .offer--featured .offer__sub-title, .offer--featured .meet-the-team__title .offer__sub-title, .meet-the-team__title .add-on__title, .meet-the-team__title .calendar__header .calendar__month span, .calendar__header .calendar__month .meet-the-team__title span, .meet-the-team__title .collection-delivery__title, .meet-the-team__title .order-payment__title, .meet-the-team__title .order-state-summary__vehicle-title, .meet-the-team__title .part--featured .part__sub-title, .part--featured .meet-the-team__title .part__sub-title, .meet-the-team__title .post--featured .post__sub-title, .post--featured .meet-the-team__title .post__sub-title, .meet-the-team__title .quick-search__legend, .meet-the-team__title .listing--showroom-teaser .listing__title h1, .listing--showroom-teaser .listing__title .meet-the-team__title h1, .meet-the-team__title .listing--post-teaser .listing__title h1, .listing--post-teaser .listing__title .meet-the-team__title h1, .meet-the-team__title .listing--offer-teaser .listing__title h1, .listing--offer-teaser .listing__title .meet-the-team__title h1, .meet-the-team__title .listing--custom-entry-teaser .listing__title h1, .listing--custom-entry-teaser .listing__title .meet-the-team__title h1, .meet-the-team__title .listing--vehicle-teaser .listing__title h1, .listing--vehicle-teaser .listing__title .meet-the-team__title h1, .meet-the-team__title .block--index-header .block__title h1, .block--index-header .block__title .meet-the-team__title h1, .meet-the-team__title .branch--contact .branch__opening-hours-title, .branch--contact .meet-the-team__title .branch__opening-hours-title, .meet-the-team__title .form--part-exchange .form__title, .form--part-exchange .meet-the-team__title .form__title, .meet-the-team__title .finance-table--full .finance-table__title, .finance-table--full .meet-the-team__title .finance-table__title, .meet-the-team__title .finance-checker__details-title, .meet-the-team__title .finance-table--order .finance-table__title, .finance-table--order .meet-the-team__title .finance-table__title {
  margin-bottom: 0;
  color: #222222;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.2; }
  @media print, screen and (min-width: 40em) {
    .meet-the-team__title h3, .meet-the-team__title .block--sidebar .block__title, .block--sidebar .meet-the-team__title .block__title, .meet-the-team__title .offer--featured .offer__sub-title, .offer--featured .meet-the-team__title .offer__sub-title, .meet-the-team__title .add-on__title, .meet-the-team__title .calendar__header .calendar__month span, .calendar__header .calendar__month .meet-the-team__title span, .meet-the-team__title .collection-delivery__title, .meet-the-team__title .order-payment__title, .meet-the-team__title .order-state-summary__vehicle-title, .meet-the-team__title .part--featured .part__sub-title, .part--featured .meet-the-team__title .part__sub-title, .meet-the-team__title .post--featured .post__sub-title, .post--featured .meet-the-team__title .post__sub-title, .meet-the-team__title .quick-search__legend, .meet-the-team__title .listing--showroom-teaser .listing__title h1, .listing--showroom-teaser .listing__title .meet-the-team__title h1, .meet-the-team__title .listing--post-teaser .listing__title h1, .listing--post-teaser .listing__title .meet-the-team__title h1, .meet-the-team__title .listing--offer-teaser .listing__title h1, .listing--offer-teaser .listing__title .meet-the-team__title h1, .meet-the-team__title .listing--custom-entry-teaser .listing__title h1, .listing--custom-entry-teaser .listing__title .meet-the-team__title h1, .meet-the-team__title .listing--vehicle-teaser .listing__title h1, .listing--vehicle-teaser .listing__title .meet-the-team__title h1, .meet-the-team__title .block--index-header .block__title h1, .block--index-header .block__title .meet-the-team__title h1, .meet-the-team__title .branch--contact .branch__opening-hours-title, .branch--contact .meet-the-team__title .branch__opening-hours-title, .meet-the-team__title .form--part-exchange .form__title, .form--part-exchange .meet-the-team__title .form__title, .meet-the-team__title .finance-table--full .finance-table__title, .finance-table--full .meet-the-team__title .finance-table__title, .meet-the-team__title .finance-checker__details-title, .meet-the-team__title .finance-table--order .finance-table__title, .finance-table--order .meet-the-team__title .finance-table__title {
      font-size: 1.375rem; } }

.meet-the-team__description {
  margin-top: 0.3125rem;
  display: block;
  color: #666666;
  font-size: 0.875rem;
  font-weight: 500; }
  @media print, screen and (min-width: 40em) {
    .meet-the-team__description {
      font-size: 1rem; } }
  .meet-the-team__description p:last-child {
    margin-bottom: 0; }

.meet-the-team__list ul {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
  margin-bottom: 0;
  list-style: none; }
  @media print, screen and (min-width: 40em) {
    .meet-the-team__list ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .meet-the-team__list ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .meet-the-team__list ul::before, .meet-the-team__list ul::after {
    display: table;
    content: ' '; }
  .meet-the-team__list ul::after {
    clear: both; }
  .meet-the-team__list ul > li {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .meet-the-team__list ul > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .meet-the-team__list ul > li:nth-of-type(1n) {
      clear: none; }
    .meet-the-team__list ul > li:nth-of-type(1n+1) {
      clear: both; }
    .meet-the-team__list ul > li:last-child {
      float: left; }
  @media print, screen and (min-width: 40em) {
    .meet-the-team__list ul > li {
      float: left;
      width: 50%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .meet-the-team__list ul > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 40em) {
      .meet-the-team__list ul > li:nth-of-type(1n) {
        clear: none; }
      .meet-the-team__list ul > li:nth-of-type(2n+1) {
        clear: both; }
      .meet-the-team__list ul > li:last-child {
        float: left; } }
  @media screen and (min-width: 48em) {
    .meet-the-team__list ul > li {
      float: left;
      width: 33.33333%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 48em) and (min-width: 40em) {
    .meet-the-team__list ul > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (min-width: 48em) {
      .meet-the-team__list ul > li:nth-of-type(1n) {
        clear: none; }
      .meet-the-team__list ul > li:nth-of-type(3n+1) {
        clear: both; }
      .meet-the-team__list ul > li:last-child {
        float: left; } }
  @media print, screen and (min-width: 64em) {
    .meet-the-team__list ul > li {
      float: left;
      width: 25%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .meet-the-team__list ul > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .meet-the-team__list ul > li:nth-of-type(1n) {
        clear: none; }
      .meet-the-team__list ul > li:nth-of-type(4n+1) {
        clear: both; }
      .meet-the-team__list ul > li:last-child {
        float: left; } }
  .meet-the-team__list ul li {
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .meet-the-team__list ul li {
        margin-bottom: 1.875rem; } }

.menu-toggle a {
  padding-left: 0.9375rem;
  color: #222222;
  text-align: center;
  line-height: 4.8125rem; }
  .menu-toggle a i,
  .menu-toggle a span {
    display: inline-block;
    line-height: 1;
    vertical-align: middle; }
  .menu-toggle a i::before {
    font-size: 1.625rem; }

.menu--main {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .menu--main {
      gap: 1.875rem; } }
  @media print, screen and (min-width: 64em) {
    .menu--main {
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      gap: 0.9375rem; } }
  @media screen and (min-width: 100em) {
    .menu--main {
      -webkit-column-gap: 1.25rem;
              column-gap: 1.25rem; } }
  .menu--main.large-horizontal > li {
    display: block; }
  .menu--main li a {
    padding: 0;
    color: #222222;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1; }
    @media print, screen and (min-width: 40em) {
      .menu--main li a {
        font-size: 1.125rem; } }
  .menu--main li ul {
    display: none; }
    .menu--main li ul.is-drilldown-submenu.is-active {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        .menu--main li ul.is-drilldown-submenu.is-active {
          gap: 1.875rem; } }
    .menu--main li ul.is-dropdown-submenu {
      margin-top: 0.625rem;
      padding: 1.25rem;
      border-radius: 0.3125rem;
      z-index: 99999; }
      .menu--main li ul.is-dropdown-submenu li {
        margin-bottom: 1.25rem; }
        .menu--main li ul.is-dropdown-submenu li:last-child {
          margin-bottom: 0; }
        .menu--main li ul.is-dropdown-submenu li a {
          color: #ffffff;
          line-height: 1.4; }
  .menu--main .active > a {
    color: #c3002f;
    background: none; }

.menu--main-footer {
  margin-bottom: 0.9375rem; }
  .menu--main-footer.horizontal > li {
    display: inline-block; }
  .menu--main-footer li {
    margin-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .menu--main-footer li {
        margin-right: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .menu--main-footer li:last-child {
        margin-right: 0; } }
    .menu--main-footer li a {
      padding: 0;
      color: #222222;
      font-size: 0.875rem;
      font-weight: 600;
      line-height: 1; }
  .menu--main-footer .active > a {
    color: #222222;
    background: none; }
  .menu--main-footer > li > ul {
    display: none; }
  .menu--main-footer .submenu {
    margin-top: 1.25rem;
    padding-top: 0.3125rem;
    padding-bottom: 0.3125rem; }
    .menu--main-footer .submenu li a {
      padding: 0.625rem;
      color: #ffffff;
      line-height: 1.2;
      text-align: left; }

.menu--fixed {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.9375rem;
  list-style: none;
  margin: 0; }
  @media screen and (min-width: 90em) {
    .menu--fixed {
      gap: 1.25rem; } }
  .menu--fixed .menu-item a {
    padding: 0; }
    .menu--fixed .menu-item a i {
      margin-right: 0; }
      .menu--fixed .menu-item a i::before {
        color: #c3002f;
        font-size: 1.625rem; }
  .menu--fixed .menu-item--phone a {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  @media print, screen and (min-width: 64em) {
    .menu--fixed .menu-item--phone i {
      display: none; } }
  .menu--fixed .menu-item--phone span {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #c3002f;
    color: #ffffff;
    display: none;
    margin-bottom: 0;
    padding: 0.9375rem;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 0.3125rem;
    line-height: 1.1; }
    [data-whatinput='mouse'] .menu--fixed .menu-item--phone span {
      outline: 0; }
    .menu--fixed .menu-item--phone span:hover, .menu--fixed .menu-item--phone span:focus {
      background-color: #a60028;
      color: #ffffff; }
    @media print, screen and (min-width: 64em) {
      .menu--fixed .menu-item--phone span {
        display: block; } }
    @media screen and (min-width: 90em) {
      .menu--fixed .menu-item--phone span {
        padding-left: 1.875rem;
        padding-right: 1.875rem; } }
  @media print, screen and (min-width: 64em) {
    .menu--fixed .menu-item--menu-toggle {
      display: none; } }
  .menu--fixed .menu-item--social a i::before {
    color: #222222; }

.menu--footer {
  margin-bottom: 0;
  line-height: 1.4; }
  .menu--footer li {
    display: inline-block;
    vertical-align: inherit; }
    .menu--footer li a {
      padding: 0 0.25rem;
      color: #717580;
      font-size: 0.75rem;
      font-weight: 500; }
      @media print, screen and (min-width: 40em) {
        .menu--footer li a {
          font-size: 0.875rem; } }
      @media print, screen and (min-width: 64em) {
        .menu--footer li a {
          padding: 0 0.5rem 0 0; } }
    .menu--footer li.active > a {
      color: #717580;
      background: none; }
  .menu--footer > li > ul {
    display: none; }

.menu--share {
  margin: 0;
  list-style-type: none;
  display: table;
  width: 100%;
  table-layout: fixed; }
  .menu--share > li {
    display: table-cell;
    vertical-align: middle; }
    [data-whatinput='mouse'] .menu--share > li {
      outline: 0; }
  .menu--share > li > a {
    display: block;
    padding: 0.7rem 1rem;
    line-height: 1; }
  .menu--share input,
  .menu--share select,
  .menu--share a,
  .menu--share button {
    margin-bottom: 0; }
  .menu--share > li:first-child:last-child {
    width: 100%; }
  .menu--share .menu-item {
    text-align: center; }
    .menu--share .menu-item a {
      padding: 0; }
      .menu--share .menu-item a .icon {
        width: 2.5rem;
        margin-right: 0;
        padding: 0.5rem 0;
        color: #ffffff;
        font-size: 1.25rem;
        text-align: center;
        background-color: #c3002f; }
        .menu--share .menu-item a .icon--facebook {
          background-color: #0b5998; }
        .menu--share .menu-item a .icon--google-plus {
          background-color: #DA4835; }
        .menu--share .menu-item a .icon--linkedin {
          background-color: #0077B5; }
        .menu--share .menu-item a .icon--twitter {
          background-color: #4099ff; }
        .menu--share .menu-item a .icon--whatsapp {
          background-color: #01E675; }
    @media print, screen and (min-width: 40em) {
      .menu--share .menu-item--sms, .menu--share .menu-item--whatsapp {
        display: none; } }

.menu--share-blog .menu-item {
  display: inline-block;
  text-align: center;
  margin: 0.0625rem 0.0625rem 0 0; }
  @media print, screen and (min-width: 40em) {
    .menu--share-blog .menu-item {
      margin: 0.3125rem 0.3125rem 0 0; } }
  .menu--share-blog .menu-item a {
    padding: 0; }
    .menu--share-blog .menu-item a .icon {
      width: 2.5rem;
      margin-right: 0;
      padding: 0.5rem 0;
      color: #ffffff;
      font-size: 1.25rem;
      text-align: center;
      background-color: #c3002f; }
      .menu--share-blog .menu-item a .icon--facebook {
        background-color: #0b5998; }
      .menu--share-blog .menu-item a .icon--google-plus {
        background-color: #DA4835; }
      .menu--share-blog .menu-item a .icon--linkedin {
        background-color: #0077B5; }
      .menu--share-blog .menu-item a .icon--twitter {
        background-color: #4099ff; }
      .menu--share-blog .menu-item a .icon--whatsapp {
        background-color: #01E675; }
  @media print, screen and (min-width: 40em) {
    .menu--share-blog .menu-item--sms, .menu--share-blog .menu-item--whatsapp {
      display: none; } }

.menu--social {
  display: inline-block;
  margin: 0; }
  .menu--social li {
    display: inline-block;
    vertical-align: inherit; }
    .menu--social li a {
      padding: 0;
      margin-right: 0.75rem;
      font-size: 1.5rem;
      color: #222222; }
    .menu--social li.active > a {
      color: #222222;
      background: none; }
    .menu--social li:last-child a {
      margin-right: 0; }
  .menu--social > li > ul {
    display: none; }

.menu--vehicle-featured .menu-item a, .menu--vehicle-latest .menu-item a {
  padding: 0; }
  .menu--vehicle-featured .menu-item a i, .menu--vehicle-latest .menu-item a i {
    color: #c3002f;
    font-size: 1.5rem;
    margin-right: 0; }
  .menu--vehicle-featured .menu-item a span, .menu--vehicle-latest .menu-item a span {
    display: none; }
  .menu--vehicle-featured .menu-item a i::before, .menu--vehicle-latest .menu-item a i::before {
    font-family: 'Material Icons';
    content: '\e87e'; }
  .menu--vehicle-featured .menu-item a.js-save-vehicle--saved i::before, .menu--vehicle-latest .menu-item a.js-save-vehicle--saved i::before {
    font-family: 'Material Icons';
    content: '\e87d'; }

.menu--vehicle-teaser .menu-item {
  display: inline-block;
  float: right; }
  .menu--vehicle-teaser .menu-item a {
    font-size: 1rem; }
    @media screen and (max-width: 39.9375em) {
      .menu--vehicle-teaser .menu-item a {
        padding: 0.125rem 0.3125rem; } }
    .menu--vehicle-teaser .menu-item a i {
      font-size: 1.25rem; }
      @media screen and (max-width: 39.9375em) {
        .menu--vehicle-teaser .menu-item a i {
          margin-right: 0;
          color: #ffffff;
          font-size: 1.75rem; } }

@media screen and (max-width: 39.9375em) {
  .menu--vehicle-teaser .menu-item--finance {
    display: none; } }

@media print, screen and (min-width: 40em) {
  .menu--vehicle-teaser .menu-item--finance a {
    padding: 0.625rem 1rem 0.5625rem 0; } }

@media screen and (max-width: 39.9375em) {
  .menu--vehicle-teaser .menu-item--share {
    display: none; } }

@media print, screen and (min-width: 40em) {
  .menu--vehicle-teaser .menu-item--share a {
    padding: 0.625rem 1rem 0.5625rem 0; } }

.menu--vehicle-teaser .menu-item--save a {
  text-shadow: 0 1px rgba(34, 34, 34, 0.3); }
  @media print, screen and (min-width: 40em) {
    .menu--vehicle-teaser .menu-item--save a {
      padding: 0.625rem 1rem 0.5625rem 0;
      text-shadow: none; } }
  @media screen and (max-width: 39.9375em) {
    .menu--vehicle-teaser .menu-item--save a span {
      display: none; } }
  .menu--vehicle-teaser .menu-item--save a i::before {
    font-family: 'Material Icons';
    content: '\e87e'; }
  .menu--vehicle-teaser .menu-item--save a.js-save-vehicle--saved i::before {
    font-family: 'Material Icons';
    content: '\e87d'; }

@media screen and (max-width: 39.9375em) {
  .menu--vehicle-teaser .menu-item--view-details {
    display: none; } }

.menu--vehicle-full .menu-item {
  display: block;
  width: 100%; }
  .menu--vehicle-full .menu-item a {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #c3002f;
    color: #ffffff;
    width: 100%;
    margin-bottom: 0.625rem;
    padding-top: 1.125rem;
    padding-bottom: 1.125rem;
    color: #ffffff;
    font-size: 1rem;
    font-weight: 700;
    background-color: #c3002f;
    border-radius: 0.3125rem; }
    [data-whatinput='mouse'] .menu--vehicle-full .menu-item a {
      outline: 0; }
    .menu--vehicle-full .menu-item a:hover, .menu--vehicle-full .menu-item a:focus {
      background-color: #a60028;
      color: #ffffff; }

.menu--vehicle-full-secondary {
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }
  @media screen and (min-width: 48em) {
    .menu--vehicle-full-secondary {
      -webkit-order: 0;
          -ms-flex-order: 0;
              order: 0;
      text-align: center; } }
  .menu--vehicle-full-secondary .menu-item {
    display: inline-block;
    margin-right: 0.625rem; }
    .menu--vehicle-full-secondary .menu-item:last-child {
      margin-right: 0; }
    .menu--vehicle-full-secondary .menu-item a {
      padding: 0; }
      .menu--vehicle-full-secondary .menu-item a i {
        margin-right: 0.1875rem;
        color: #c3002f;
        font-size: 1.25rem; }
      .menu--vehicle-full-secondary .menu-item a span {
        font-size: 1rem;
        font-weight: 600;
        vertical-align: middle; }
  .menu--vehicle-full-secondary .menu-item--save a i::before {
    font-family: 'Material Icons';
    content: '\e87e'; }
  .menu--vehicle-full-secondary .menu-item--save a.js-save-vehicle--saved i::before {
    font-family: 'Material Icons';
    content: '\e87d'; }

.menu--showroom-full .menu-item, .menu--offer-full .menu-item {
  display: block;
  width: 100%; }
  .menu--showroom-full .menu-item a, .menu--offer-full .menu-item a {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #c3002f;
    color: #ffffff;
    width: 100%;
    margin-bottom: 0.625rem;
    padding-top: 1.125rem;
    padding-bottom: 1.125rem;
    font-size: 1rem;
    font-weight: 700;
    border-radius: 0.3125rem; }
    [data-whatinput='mouse'] .menu--showroom-full .menu-item a, [data-whatinput='mouse'] .menu--offer-full .menu-item a {
      outline: 0; }
    .menu--showroom-full .menu-item a:hover, .menu--showroom-full .menu-item a:focus, .menu--offer-full .menu-item a:hover, .menu--offer-full .menu-item a:focus {
      background-color: #a60028;
      color: #ffffff; }

.is-dropdown-submenu {
  border: none;
  z-index: 2; }

.dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a,
.dropdown.menu.horizontal > li.is-dropdown-submenu-parent > a {
  padding-right: 1.125rem; }

.dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after,
.dropdown.menu.horizontal > li.is-dropdown-submenu-parent > a::after {
  background-image: url("data:image/svg+xml;utf8,<svg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'><path d='M10.59.59L6 5.17 1.41.59 0 2l6 6 6-6' fill='%23999999' fill-rule='evenodd'/></svg>");
  background-size: 0.6875rem 0.4375rem;
  width: 0.6875rem;
  height: 0.4375rem;
  border: none;
  right: 0; }

.is-drilldown-submenu-parent > a::after {
  background-image: url("data:image/svg+xml;utf8,<svg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'><path d='M10.59.59L6 5.17 1.41.59 0 2l6 6 6-6' fill='%23999999' fill-rule='evenodd'/></svg>");
  background-size: 0.6875rem 0.4375rem;
  width: 0.6875rem;
  height: 0.4375rem;
  border: none;
  margin-top: -0.1875rem;
  -webkit-transform: rotate(270deg);
      -ms-transform: rotate(270deg);
          transform: rotate(270deg); }

.js-drilldown-back > a::before {
  background-image: url("data:image/svg+xml;utf8,<svg width='12' height='8' viewBox='0 0 12 8' xmlns='http://www.w3.org/2000/svg'><path d='M10.59.59L6 5.17 1.41.59 0 2l6 6 6-6' fill='%23999999' fill-rule='evenodd'/></svg>");
  background-size: 0.6875rem 0.4375rem;
  width: 0.6875rem;
  height: 0.4375rem;
  border: none;
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg); }

.js-drilldown-back > a span {
  vertical-align: middle; }

.pagination {
  text-align: center; }
  .pagination li {
    display: inline-block;
    margin-right: 0;
    padding: 0.5rem 0; }
    .pagination li a {
      padding: 0.3125rem 0.75rem 0.5rem;
      color: #222222;
      font-size: 1rem;
      line-height: 1;
      vertical-align: middle; }
      .pagination li a span {
        vertical-align: middle; }
      .pagination li a:focus, .pagination li a:hover {
        color: #ffffff;
        background-color: #c3002f; }
    .pagination li.active, .pagination li.current {
      padding: 0;
      background: none; }
      .pagination li.active a, .pagination li.current a {
        color: #ffffff;
        background-color: #c3002f; }
    .pagination li.first a span::before,
    .pagination li.previous a span::before,
    .pagination li.next a span::after,
    .pagination li.last a span::after {
      display: inline-block;
      font-family: 'Material Icons';
      font-size: 1rem;
      font-weight: normal;
      font-style: normal;
      font-size: inherit;
      line-height: 1;
      letter-spacing: normal;
      text-transform: none;
      display: inline-block;
      white-space: nowrap;
      word-wrap: normal;
      direction: ltr;
      -webkit-font-feature-settings: 'liga';
      -webkit-font-smoothing: antialiased;
      vertical-align: middle;
      cursor: pointer; }
    .pagination li.first a span::before {
      content: '\e5dc';
      margin-right: 0.125rem; }
    .pagination li.previous a span::before {
      content: '\e5cb';
      margin-right: 0.125rem; }
    .pagination li.next a span::after {
      content: '\e5cc';
      margin-left: 0.125rem; }
    .pagination li.last a span::after {
      content: '\e5dd';
      margin-left: 0.125rem; }
    .pagination li a:hover span::before,
    .pagination li a:hover span::after {
      color: #ffffff; }
  @media print, screen and (min-width: 40em) {
    .pagination--mobile {
      display: none; } }
  .pagination--mobile li.first a span, .pagination--mobile li.previous a span, .pagination--mobile li.next a span, .pagination--mobile li.last a span {
    color: transparent;
    font-size: 0px;
    line-height: 0px; }
    .pagination--mobile li.first a span::before, .pagination--mobile li.first a span::after, .pagination--mobile li.previous a span::before, .pagination--mobile li.previous a span::after, .pagination--mobile li.next a span::before, .pagination--mobile li.next a span::after, .pagination--mobile li.last a span::before, .pagination--mobile li.last a span::after {
      color: #222222;
      font-size: 1rem;
      line-height: 1; }
  .pagination--mobile li.first a:focus span::before, .pagination--mobile li.first a:focus span::after,
  .pagination--mobile li.first a:hover span::before,
  .pagination--mobile li.first a:hover span::after, .pagination--mobile li.previous a:focus span::before, .pagination--mobile li.previous a:focus span::after,
  .pagination--mobile li.previous a:hover span::before,
  .pagination--mobile li.previous a:hover span::after, .pagination--mobile li.next a:focus span::before, .pagination--mobile li.next a:focus span::after,
  .pagination--mobile li.next a:hover span::before,
  .pagination--mobile li.next a:hover span::after, .pagination--mobile li.last a:focus span::before, .pagination--mobile li.last a:focus span::after,
  .pagination--mobile li.last a:hover span::before,
  .pagination--mobile li.last a:hover span::after {
    color: #ffffff; }
  .pagination--desktop {
    display: none; }
    @media print, screen and (min-width: 40em) {
      .pagination--desktop {
        display: block; } }

.play {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  background: #c3002f;
  border-radius: 50% / 10%;
  color: #FFFFFF;
  font-size: 2em;
  /* change this to change size */
  height: 3em;
  padding: 0;
  text-align: center;
  text-indent: 0.1em;
  transition: all 150ms ease-out;
  width: 4em; }
  @media print, screen and (min-width: 40em) {
    .play {
      font-size: 3em;
      /* change this to change size */ } }
  .play:hover {
    background: #ff0000; }
  .play::before {
    background: inherit;
    border-radius: 5% / 50%;
    bottom: 9%;
    content: "";
    left: -5%;
    position: absolute;
    right: -5%;
    top: 9%; }
  .play::after {
    border-style: solid;
    border-width: 1em 0 1em 1.732em;
    border-color: transparent transparent transparent white;
    content: ' ';
    font-size: 0.75em;
    height: 0;
    margin: -1em 0 0 -0.75em;
    top: 50%;
    position: absolute;
    width: 0; }

.reveal-overlay {
  z-index: 99999999999; }

.reveal {
  outline: none;
  border-radius: 0.3125rem; }
  .reveal__header {
    margin-right: -0.625rem;
    margin-left: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .reveal__header {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .reveal__header {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .reveal__header::before, .reveal__header::after {
      display: table;
      content: ' '; }
    .reveal__header::after {
      clear: both; }
  .reveal__image {
    margin-top: 0.9375rem; }
  .reveal__title {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 0.9375rem;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1; }
    @media print, screen and (min-width: 40em) {
      .reveal__title {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .reveal__title:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .reveal__title {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .reveal__title {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .reveal__title:last-child:not(:first-child) {
          float: right; } }
  .reveal__vehicle {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 0.9375rem;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 2.3; }
    @media print, screen and (min-width: 40em) {
      .reveal__vehicle {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .reveal__vehicle:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .reveal__vehicle {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        text-align: right; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .reveal__vehicle {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .reveal__vehicle:last-child:not(:first-child) {
          float: right; } }
  .reveal__vehicle-make-model {
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.2; }
  .reveal__vehicle-image {
    float: left;
    margin-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .reveal__vehicle-image {
        float: right;
        margin-left: 0.625rem;
        margin-right: 0; } }
  .reveal__description {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 0.9375rem;
    font-size: 0.875rem;
    line-height: 1.5; }
    @media print, screen and (min-width: 40em) {
      .reveal__description {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .reveal__description:last-child:not(:first-child) {
      float: right; }
  @media print, screen and (min-width: 40em) {
    .reveal--custom-entry {
      width: 80%;
      max-width: 100rem; } }
  .reveal--vehicle-enquiry, .reveal--email-vehicle {
    padding: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .reveal--vehicle-enquiry, .reveal--email-vehicle {
        width: 80%;
        max-width: 100rem;
        padding: 3.125rem 1.875rem 1.875rem; } }
  .reveal--page-description {
    font-weight: 300; }
    @media print, screen and (min-width: 40em) {
      .reveal--page-description {
        width: 80%;
        max-width: 100rem;
        font-size: 1.125rem; } }
    .reveal--page-description .reveal__logo {
      margin-bottom: 0.9375rem; }
    .reveal--page-description .reveal__description p:last-child {
      margin-bottom: 0; }
  .reveal--ulez .reveal__header {
    margin: 0 0 0.9375rem 0; }
  .reveal--ulez .reveal__footer {
    padding: 0.9375rem;
    color: #ffffff;
    text-align: center;
    background-color: #103b92; }
  .reveal--vehicle-description, .reveal--vehicle-technical-data, .reveal--vehicle-specification {
    padding-top: 2.5rem; }
    @media print, screen and (min-width: 40em) {
      .reveal--vehicle-description, .reveal--vehicle-technical-data, .reveal--vehicle-specification {
        width: 100%; } }
    @media print, screen and (min-width: 64em) {
      .reveal--vehicle-description, .reveal--vehicle-technical-data, .reveal--vehicle-specification {
        width: 80%;
        max-width: 100rem; } }
  .reveal--admin-fee img {
    margin-bottom: 0.9375rem; }
  .reveal--admin-fee ol {
    margin-bottom: 0; }

.reviews {
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .reviews__image {
      width: 90%; } }
  .reviews__image img {
    width: 100%; }
  .reviews__content {
    padding: 1.25rem;
    background-color: #ffffff; }
    @media print, screen and (min-width: 64em) {
      .reviews__content {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        position: absolute;
        top: 5%;
        right: 0;
        width: 50%;
        height: 90%;
        padding: 1.875rem; } }
    @media screen and (min-width: 90em) {
      .reviews__content {
        top: 10%;
        height: 80%;
        width: 40%; } }
    .reviews__content-outer {
      position: relative;
      margin-top: -3.125rem;
      padding-left: 0.625rem;
      padding-right: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .reviews__content-outer {
          margin-top: -6.25rem;
          padding-left: 0.9375rem;
          padding-right: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
        .reviews__content-outer {
          position: static;
          margin-top: 0;
          padding-left: 0;
          padding-right: 0; } }
    .reviews__content-inner {
      width: 100%; }

.saved {
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 99; }
  .saved .button.disabled {
    display: none; }
  .saved a {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    border-top-right-radius: 0; }

.tabs {
  margin: 0;
  list-style-type: none;
  display: table;
  width: 100%;
  table-layout: fixed; }
  .tabs > li {
    display: table-cell;
    vertical-align: middle; }
    [data-whatinput='mouse'] .tabs > li {
      outline: 0; }
  .tabs > li > a {
    display: block;
    padding: 0.7rem 1rem;
    line-height: 1; }
  .tabs input,
  .tabs select,
  .tabs a,
  .tabs button {
    margin-bottom: 0; }
  .tabs > li:first-child:last-child {
    width: 100%; }
  .tabs::before, .tabs::after {
    display: none; }
  .tabs > li {
    float: none; }
    .tabs > li.tabs-title > a {
      height: 4.375rem;
      line-height: 4.375rem;
      padding: 0;
      color: #ffffff;
      font-size: 1.375rem;
      text-align: center;
      text-transform: uppercase;
      font-weight: 400;
      background-color: #222222; }
      .tabs > li.tabs-title > a h2, .tabs > li.tabs-title > a .offer--featured .offer__title, .offer--featured .tabs > li.tabs-title > a .offer__title, .tabs > li.tabs-title > a .order-progress__title, .tabs > li.tabs-title > a .part--featured .part__title, .part--featured .tabs > li.tabs-title > a .part__title, .tabs > li.tabs-title > a .part--full .part__form-title, .part--full .tabs > li.tabs-title > a .part__form-title, .tabs > li.tabs-title > a .post--featured .post__title, .post--featured .tabs > li.tabs-title > a .post__title, .tabs > li.tabs-title > a .vehicle--general .vehicle__title, .vehicle--general .tabs > li.tabs-title > a .vehicle__title, .tabs > li.tabs-title > a .vehicle--latest .vehicle__title, .vehicle--latest .tabs > li.tabs-title > a .vehicle__title, .tabs > li.tabs-title > a .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .tabs > li.tabs-title > a .listing__title, .tabs > li.tabs-title > a .listing--vehicle-featured .listing__title, .listing--vehicle-featured .tabs > li.tabs-title > a .listing__title, .tabs > li.tabs-title > a .listing--vehicle-similar .listing__title, .listing--vehicle-similar .tabs > li.tabs-title > a .listing__title, .tabs > li.tabs-title > a .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .tabs > li.tabs-title > a .listing__title, .tabs > li.tabs-title > a .listing--offer-featured .listing__title, .listing--offer-featured .tabs > li.tabs-title > a .listing__title, .tabs > li.tabs-title > a .page--teaser .page__title, .page--teaser .tabs > li.tabs-title > a .page__title {
        margin-bottom: 0;
        font-size: inherit;
        font-weight: 400;
        line-height: inherit; }
    .tabs > li.tabs-title > a:focus,
    .tabs > li.tabs-title > a:hover,
    .tabs > li.tabs-title > a[aria-selected='true'] {
      color: #ffffff;
      background-color: #c3002f; }
    .tabs > li:last-child.tabs-title > a {
      margin-right: 0; }

.vehicle__top .tabs-content .tabs-panel {
  padding: 0; }

.vehicle__middle .tabs-content .tabs-panel {
  padding: 1.25rem 0 0; }

.vehicle__data .tabs-content .tabs-panel {
  padding: 1.875rem 0 0; }

.toggler {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  max-width: 23.125rem;
  background-color: var(--body-background);
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.2);
  overflow-y: scroll;
  z-index: 999; }
  .toggler::-webkit-scrollbar {
    display: none; }

.toggler-overlay {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 998;
  background-color: rgba(34, 34, 34, 0.45); }

.top-makes-and-models ul {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
  margin: 0;
  list-style: none; }
  @media print, screen and (min-width: 40em) {
    .top-makes-and-models ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .top-makes-and-models ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .top-makes-and-models ul::before, .top-makes-and-models ul::after {
    display: table;
    content: ' '; }
  .top-makes-and-models ul::after {
    clear: both; }
  .top-makes-and-models ul > li {
    float: left;
    width: 50%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .top-makes-and-models ul > li {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .top-makes-and-models ul > li:nth-of-type(1n) {
      clear: none; }
    .top-makes-and-models ul > li:nth-of-type(2n+1) {
      clear: both; }
    .top-makes-and-models ul > li:last-child {
      float: left; }
  @media print, screen and (min-width: 40em) {
    .top-makes-and-models ul > li {
      float: left;
      width: 33.33333%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .top-makes-and-models ul > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 40em) {
      .top-makes-and-models ul > li:nth-of-type(1n) {
        clear: none; }
      .top-makes-and-models ul > li:nth-of-type(3n+1) {
        clear: both; }
      .top-makes-and-models ul > li:last-child {
        float: left; } }
  @media screen and (min-width: 48em) {
    .top-makes-and-models ul > li {
      float: left;
      width: 25%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 48em) and (min-width: 40em) {
    .top-makes-and-models ul > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (min-width: 48em) {
      .top-makes-and-models ul > li:nth-of-type(1n) {
        clear: none; }
      .top-makes-and-models ul > li:nth-of-type(4n+1) {
        clear: both; }
      .top-makes-and-models ul > li:last-child {
        float: left; } }
  @media print, screen and (min-width: 64em) {
    .top-makes-and-models ul > li {
      float: left;
      width: 33.33333%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .top-makes-and-models ul > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .top-makes-and-models ul > li:nth-of-type(1n) {
        clear: none; }
      .top-makes-and-models ul > li:nth-of-type(3n+1) {
        clear: both; }
      .top-makes-and-models ul > li:last-child {
        float: left; } }
  @media screen and (min-width: 75em) {
    .top-makes-and-models ul > li {
      float: left;
      width: 25%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .top-makes-and-models ul > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (min-width: 75em) {
      .top-makes-and-models ul > li:nth-of-type(1n) {
        clear: none; }
      .top-makes-and-models ul > li:nth-of-type(4n+1) {
        clear: both; }
      .top-makes-and-models ul > li:last-child {
        float: left; } }
  @media screen and (min-width: 90em) {
    .top-makes-and-models ul > li {
      float: left;
      width: 20%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 90em) and (min-width: 40em) {
    .top-makes-and-models ul > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (min-width: 90em) {
      .top-makes-and-models ul > li:nth-of-type(1n) {
        clear: none; }
      .top-makes-and-models ul > li:nth-of-type(5n+1) {
        clear: both; }
      .top-makes-and-models ul > li:last-child {
        float: left; } }
  @media screen and (min-width: 100em) {
    .top-makes-and-models ul > li {
      float: left;
      width: 16.66667%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 100em) and (min-width: 40em) {
    .top-makes-and-models ul > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (min-width: 100em) {
      .top-makes-and-models ul > li:nth-of-type(1n) {
        clear: none; }
      .top-makes-and-models ul > li:nth-of-type(6n+1) {
        clear: both; }
      .top-makes-and-models ul > li:last-child {
        float: left; } }
  .top-makes-and-models ul li {
    margin-bottom: 0.625rem;
    line-height: 1.4;
    text-transform: capitalize; }
    @media print, screen and (min-width: 40em) {
      .top-makes-and-models ul li {
        margin-bottom: 0.9375rem; } }

.block--about-us {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  margin-top: 1.875rem; }
  .block--about-us::before, .block--about-us::after {
    display: table;
    content: ' '; }
  .block--about-us::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .block--about-us {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .block--about-us {
      margin-top: 5rem; } }
  .block--about-us .block__first {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .block--about-us .block__first {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .block--about-us .block__first:last-child:not(:first-child) {
      float: right; }
  .block--about-us .block__second {
    display: none;
    padding-bottom: 1.875rem; }
    @media print, screen and (min-width: 64em) {
      .block--about-us .block__second {
        width: 41.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-left: 8.33333%;
        display: block; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .block--about-us .block__second {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .block--about-us .block__second:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 75em) {
      .block--about-us .block__second {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .block--about-us .block__second {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 75em) {
        .block--about-us .block__second:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 90em) {
      .block--about-us .block__second {
        padding-bottom: 2.5rem; } }
  @media print, screen and (min-width: 64em) {
    .block--about-us-image .block__first {
      width: 50%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .block--about-us-image .block__first {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .block--about-us-image .block__first:last-child:not(:first-child) {
        float: right; } }
  @media screen and (min-width: 75em) {
    .block--about-us-image .block__first {
      width: 58.33333%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .block--about-us-image .block__first {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (min-width: 75em) {
      .block--about-us-image .block__first:last-child:not(:first-child) {
        float: right; } }
  .block--about-us .block__title {
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .block--about-us .block__title {
        margin-bottom: 1.875rem; } }
  .block--about-us .block__description ul {
    margin: 0;
    list-style: none; }
    .block--about-us .block__description ul li {
      margin-bottom: 0.3125rem;
      color: #666666;
      font-size: 0.875rem; }
      @media print, screen and (min-width: 40em) {
        .block--about-us .block__description ul li {
          margin-bottom: 0.625rem;
          font-size: 1rem; } }
      @media print, screen and (min-width: 64em) {
        .block--about-us .block__description ul li {
          font-size: 1.125rem; } }
      .block--about-us .block__description ul li::before {
        content: '✓';
        margin-right: 0.625rem;
        color: #c3002f; }
  .block--about-us .block__primary-images {
    position: relative;
    box-shadow: -10px 10px #c3002f; }
    @media print, screen and (min-width: 40em) {
      .block--about-us .block__primary-images {
        box-shadow: -15px 15px #c3002f; } }
    @media print, screen and (min-width: 64em) {
      .block--about-us .block__primary-images {
        box-shadow: -30px 30px #c3002f; } }
    @media screen and (min-width: 90em) {
      .block--about-us .block__primary-images {
        box-shadow: -40px 40px #c3002f; } }

.block--banner {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-top: 1.875rem; }
  .block--banner::before, .block--banner::after {
    display: table;
    content: ' '; }
  .block--banner::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .block--banner {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .block--banner:last-child:not(:first-child) {
    float: right; }
  .block--banner, .block--banner:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .block--banner {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .block--banner {
      margin-top: 5rem; } }
  .block--banner ul {
    margin: 0;
    list-style: none; }
    .block--banner ul img {
      border-radius: 0.3125rem; }

.block--default {
  position: relative;
  border-radius: 0.3125rem; }
  .block--default .block__primary-images {
    position: relative; }
    .block--default .block__primary-images img {
      width: 100%;
      border-radius: 0.3125rem; }
    .block--default .block__primary-images-overlay {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.75) 75%, rgba(0, 0, 0, 0.75) 100%);
      z-index: 1;
      border-radius: 0.3125rem; }
  .block--default .block__details {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 2; }
    .block--default .block__details-inner {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin-right: 1.25rem;
      margin-bottom: 1.25rem;
      margin-left: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        .block--default .block__details-inner {
          margin-right: 1.875rem;
          margin-bottom: 1.875rem;
          margin-left: 1.875rem; } }
  .block--default .block__title {
    color: #ffffff;
    font-size: 1.625rem;
    font-weight: 600;
    line-height: 1.2; }
  .block--default .block__icon i::before {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    color: #ffffff;
    background-color: #c3002f;
    border-radius: 50%; }

.block--disclaimer {
  margin-bottom: 1.875rem;
  color: #717580;
  font-size: 0.75rem;
  line-height: 1.8;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .block--disclaimer {
      margin-bottom: 3.125rem;
      font-size: 0.8125rem; } }

.block--document {
  position: relative;
  border-radius: 0.3125rem; }
  .block--document .block__primary-images {
    position: relative; }
    .block--document .block__primary-images img {
      width: 100%;
      border-radius: 0.3125rem; }
    .block--document .block__primary-images-overlay {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background-color: rgba(34, 34, 34, 0.25);
      z-index: 1;
      border-radius: 0.3125rem;
      transition: all 0.5s; }
      .block--document .block__primary-images-overlay:hover {
        background-color: rgba(34, 34, 34, 0); }
  .block--document .block__details {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 2; }
    .block--document .block__details-inner {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      margin-right: 1.5625rem;
      margin-bottom: 1.5625rem;
      margin-left: 1.5625rem;
      padding: 1.125rem 1.25rem;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      background-color: #ffffff;
      border-radius: 0.3125rem; }
  .block--document .block__title,
  .block--document .block__icon {
    font-size: 1.0625rem;
    font-weight: 600;
    line-height: 1.2; }
  .block--document .block__icon i::before {
    color: #666666; }

.block--footer img {
  border-radius: 0.3125rem; }

.block--hero img {
  border-radius: 0.3125rem; }

.block--index-header .block__primary-images {
  margin-bottom: 1.875rem; }
  @media print, screen and (min-width: 40em) {
    .block--index-header .block__primary-images {
      margin-bottom: 3.125rem; } }
  .block--index-header .block__primary-images ul {
    margin: 0;
    list-style: none; }
  .block--index-header .block__primary-images img {
    width: 100%; }

.block--index-header .block__title {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 97.5rem;
  margin-top: 1.875rem;
  margin-bottom: 1.25rem; }
  .block--index-header .block__title::before, .block--index-header .block__title::after {
    display: table;
    content: ' '; }
  .block--index-header .block__title::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .block--index-header .block__title {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .block--index-header .block__title:last-child:not(:first-child) {
    float: right; }
  .block--index-header .block__title, .block--index-header .block__title:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .block--index-header .block__title {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .block--index-header .block__title {
      margin-top: 6.25rem;
      margin-bottom: 1.875rem; } }
  .block--index-header .block__title h1 {
    margin-bottom: 0;
    font-size: 1.625rem; }

.block--index-header .block__description {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 97.5rem;
  color: #717580;
  font-size: 1rem;
  line-height: 1.8; }
  .block--index-header .block__description::before, .block--index-header .block__description::after {
    display: table;
    content: ' '; }
  .block--index-header .block__description::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .block--index-header .block__description {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .block--index-header .block__description:last-child:not(:first-child) {
    float: right; }
  .block--index-header .block__description, .block--index-header .block__description:last-child {
    float: none; }

.block--offers {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-top: 1.875rem; }
  .block--offers::before, .block--offers::after {
    display: table;
    content: ' '; }
  .block--offers::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .block--offers {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .block--offers:last-child:not(:first-child) {
    float: right; }
  .block--offers, .block--offers:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .block--offers {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .block--offers {
      margin-top: 6.25rem; } }
  .block--offers ul {
    margin: 0;
    list-style: none; }

.block--partner-reviews {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem; }
  @media screen and (min-width: 75em) {
    .block--partner-reviews {
      gap: 0.9375rem; } }
  .block--partner-reviews .block__primary-images {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 9.375rem;
    height: 2.5rem;
    background-color: #ffffff;
    border-radius: 0.3125rem; }
    @media screen and (min-width: 75em) {
      .block--partner-reviews .block__primary-images {
        width: 11.875rem;
        height: 3.125rem; } }
  .block--partner-reviews .block__rating i::before {
    color: #FD8B1D;
    font-size: 1.5rem; }
  .block--partner-reviews .block__rating--1 i:nth-child(1)::before {
    content: '\e838'; }
  .block--partner-reviews .block__rating--2 i:nth-child(1)::before,
  .block--partner-reviews .block__rating--2 i:nth-child(2)::before {
    content: '\e838'; }
  .block--partner-reviews .block__rating--3 i:nth-child(1)::before,
  .block--partner-reviews .block__rating--3 i:nth-child(2)::before,
  .block--partner-reviews .block__rating--3 i:nth-child(3)::before {
    content: '\e838'; }
  .block--partner-reviews .block__rating--4 i:nth-child(1)::before,
  .block--partner-reviews .block__rating--4 i:nth-child(2)::before,
  .block--partner-reviews .block__rating--4 i:nth-child(3)::before,
  .block--partner-reviews .block__rating--4 i:nth-child(4)::before {
    content: '\e838'; }
  .block--partner-reviews .block__rating--5 i::before {
    content: '\e838'; }
  .block--partner-reviews .block__rating-value {
    display: none;
    font-size: 1.25rem;
    font-weight: 600; }
    @media screen and (min-width: 90em) {
      .block--partner-reviews .block__rating-value {
        display: block; } }

.block--partner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem; }
  @media screen and (min-width: 75em) {
    .block--partner {
      gap: 0.9375rem; } }
  .block--partner .block__primary-images {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 9.375rem;
    height: 2.5rem;
    background-color: #242321;
    border-radius: 0.3125rem; }
    @media screen and (min-width: 75em) {
      .block--partner .block__primary-images {
        width: 11.875rem;
        height: 3.125rem; } }
    .block--partner .block__primary-images img {
      -webkit-filter: brightness(0) invert(1);
              filter: brightness(0) invert(1);
      transition: all 0.5s; }
      .block--partner .block__primary-images img:hover {
        -webkit-filter: brightness(1) invert(0);
                filter: brightness(1) invert(0); }
  .block--partner .block__rating i::before {
    color: #FD8B1D;
    font-size: 1.5rem; }
  .block--partner .block__rating--1 i:nth-child(1)::before {
    content: '\e838'; }
  .block--partner .block__rating--2 i:nth-child(1)::before,
  .block--partner .block__rating--2 i:nth-child(2)::before {
    content: '\e838'; }
  .block--partner .block__rating--3 i:nth-child(1)::before,
  .block--partner .block__rating--3 i:nth-child(2)::before,
  .block--partner .block__rating--3 i:nth-child(3)::before {
    content: '\e838'; }
  .block--partner .block__rating--4 i:nth-child(1)::before,
  .block--partner .block__rating--4 i:nth-child(2)::before,
  .block--partner .block__rating--4 i:nth-child(3)::before,
  .block--partner .block__rating--4 i:nth-child(4)::before {
    content: '\e838'; }
  .block--partner .block__rating--5 i::before {
    content: '\e838'; }
  .block--partner .block__rating-value {
    display: none;
    color: #ffffff;
    font-size: 1.25rem;
    font-weight: 600; }
    @media screen and (min-width: 90em) {
      .block--partner .block__rating-value {
        display: block; } }

.pop-up {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9999;
  overflow-y: auto; }
  .pop-up__inner {
    display: inline-block;
    position: relative;
    top: 0.625rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    height: auto;
    padding: 0.625rem;
    text-align: center;
    background-color: #ffffff;
    box-shadow: 0 0 5px 5px rgba(0, 0, 0, 0.2);
    z-index: 9999;
    border-radius: 0.625rem;
    max-width: 95%; }
    @media print, screen and (min-width: 40em) {
      .pop-up__inner {
        top: 0.9375rem;
        max-width: auto; } }
    @media print, screen and (min-width: 64em) {
      .pop-up__inner {
        top: 1.875rem; } }
    @media screen and (min-width: 75em) {
      .pop-up__inner {
        top: 3.125rem; } }
  .pop-up__overlay {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(34, 34, 34, 0.8);
    z-index: 9999; }
  .pop-up__primary-image {
    margin-bottom: 0.625rem; }
    .pop-up__primary-image img {
      border-radius: 0.4375rem; }
  .pop-up__close-icon {
    right: 1.25rem;
    color: #ffffff; }
    .pop-up__close-icon:hover {
      color: #ffffff; }

body.pop-up-open {
  overflow: hidden; }

.block--results {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  gap: 1.25rem;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 1.25rem;
  border-radius: 0.3125rem;
  background-color: #ffffff; }
  @media print, screen and (min-width: 40em) {
    .block--results {
      padding: 1.875rem;
      gap: 1.875rem; } }
  .block--results .block__primary-images {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .block--results .block__description {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.2;
    text-align: center; }
    .block--results .block__description ul {
      margin: 0;
      list-style: inside; }

.block--search {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  text-align: center;
  background-color: #eeeeee;
  background: linear-gradient(45deg, #f0f9ff 0%, #d6d6d6 100%); }
  .block--search .block__details {
    padding: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .block--search .block__details {
        padding: 0.9375rem; } }
  .block--search .block__icon {
    font-size: 1.5rem; }
    @media print, screen and (min-width: 64em) {
      .block--search .block__icon {
        margin-bottom: 0.3125rem; } }
  .block--search .block__title {
    font-size: 1rem;
    font-weight: 600; }
  .block--search-1 {
    position: relative;
    color: #ffffff;
    background: linear-gradient(0deg, #5a5a5a 0%, black 100%); }

.block--service {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
      grid-template-columns: 1fr;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ffffff;
  border-radius: 0.3125rem;
  overflow: hidden; }
  @media print, screen and (min-width: 64em) {
    .block--service {
      -ms-grid-columns: 1fr 1fr;
          grid-template-columns: 1fr 1fr; } }
  .block--service .block__primary-images {
    position: relative; }
    .block--service .block__primary-images img {
      width: 100%; }
    .block--service .block__primary-images-fade {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.75) 75%, rgba(0, 0, 0, 0.75) 100%);
      z-index: 1;
      border-radius: 0.3125rem; }
  .block--service .block__overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 2; }
    .block--service .block__overlay-inner {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin-right: 1.25rem;
      margin-bottom: 1.25rem;
      margin-left: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        .block--service .block__overlay-inner {
          margin-right: 1.875rem;
          margin-bottom: 1.875rem;
          margin-left: 1.875rem; } }
  .block--service .block__title {
    color: #ffffff;
    font-size: 1.625rem;
    font-weight: 600;
    line-height: 1.2; }
  .block--service .block__icon i::before {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    color: #ffffff;
    background-color: #c3002f;
    border-radius: 50%; }
  .block--service .block__details {
    padding: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .block--service .block__details {
        padding: 1.875rem; } }
    @media print, screen and (min-width: 64em) {
      .block--service .block__details {
        padding: 3.125rem; } }
  .block--service .block__sub-title {
    margin-bottom: 1.25rem;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.4; }
    @media print, screen and (min-width: 40em) {
      .block--service .block__sub-title {
        margin-bottom: 1.875rem;
        font-size: 1.875rem; } }
  .block--service .block__description {
    color: #717580;
    line-height: 1.8; }

.block--tile {
  position: relative;
  margin-bottom: 0.9375rem;
  text-align: center;
  background-color: #ffffff;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.05), 0 6px 20px 0 rgba(0, 0, 0, 0.05);
  padding: 1.875rem 3.125rem; }
  @media print, screen and (min-width: 64em) {
    .block--tile {
      padding: 2.5rem; } }
  @media screen and (min-width: 90em) {
    .block--tile {
      padding: 3.125rem; } }
  .block--tile .block__icon {
    margin-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .block--tile .block__icon {
        margin-bottom: 0.9375rem; } }
    .block--tile .block__icon i {
      color: #c3002f;
      font-size: 1.875rem;
      line-height: 1; }
  .block--tile .block__title {
    margin-bottom: 0.625rem;
    font-size: 1.375rem;
    line-height: 1.2; }
  .block--tile .block__description {
    color: #6F6F6F;
    font-size: 1rem;
    line-height: 1.4; }

.block--usp {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.625rem;
  height: 100%; }
  @media print, screen and (min-width: 40em) {
    .block--usp {
      gap: 1.25rem; } }
  .block--usp .block__title {
    padding-left: 0.625rem;
    padding-right: 0.625rem;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
    text-align: center; }
    @media print, screen and (min-width: 40em) {
      .block--usp .block__title {
        font-size: 1.125rem; } }

.block--vehicle-types {
  padding: 1.25rem; }
  .block--vehicle-types .block__primary-images {
    margin-bottom: 0.625rem;
    transition: all 0.5s;
    opacity: 1; }
    .block--vehicle-types .block__primary-images img {
      width: 100%; }
  .block--vehicle-types .block__title {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.2;
    text-align: center; }
  .block--vehicle-types:hover .block__primary-images {
    opacity: 0.75; }

.branch--contact {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .branch--contact {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .branch--contact {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .branch--contact::before, .branch--contact::after {
    display: table;
    content: ' '; }
  .branch--contact::after {
    clear: both; }
  .branch--contact .branch__telephone {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 1.875rem;
    font-size: 1.25rem;
    line-height: 1.4; }
    @media print, screen and (min-width: 40em) {
      .branch--contact .branch__telephone {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .branch--contact .branch__telephone:last-child:not(:first-child) {
      float: right; }
    .branch--contact .branch__telephone a {
      display: block;
      font-size: 2.25rem;
      font-weight: 700; }
      @media print, screen and (min-width: 40em) {
        .branch--contact .branch__telephone a {
          font-size: 2.625rem; } }
    @media print, screen and (min-width: 40em) {
      .branch--contact .branch__telephone {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-bottom: 0; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .branch--contact .branch__telephone {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .branch--contact .branch__telephone:last-child:not(:first-child) {
          float: right; } }
  .branch--contact .branch__opening-hours {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .branch--contact .branch__opening-hours {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .branch--contact .branch__opening-hours:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .branch--contact .branch__opening-hours {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-bottom: 0; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .branch--contact .branch__opening-hours {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .branch--contact .branch__opening-hours:last-child:not(:first-child) {
          float: right; } }
    .branch--contact .branch__opening-hours select {
      margin-bottom: 0.9375rem; }

.branch--footer {
  color: #242321;
  font-size: 0.875rem;
  line-height: 1.6;
  text-align: center; }
  @media print, screen and (min-width: 40em) {
    .branch--footer {
      font-size: 1rem; } }
  .branch--footer a {
    color: #242321; }
  .branch--footer .branch__social {
    margin-bottom: 0.9375rem; }
  .branch--footer .branch__name {
    font-weight: 700; }
  .branch--footer .branch__address {
    font-weight: 500; }
    .branch--footer .branch__address span::after {
      content: ','; }
    .branch--footer .branch__address span:last-child::after {
      display: none; }

.branch--full {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  padding-top: 1.875rem;
  padding-bottom: 1.875rem; }
  .branch--full::before, .branch--full::after {
    display: table;
    content: ' '; }
  .branch--full::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .branch--full {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .branch--full:last-child:not(:first-child) {
    float: right; }
  .branch--full, .branch--full:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .branch--full {
      padding-top: 3.125rem;
      padding-bottom: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .branch--full {
      padding-top: 6.25rem;
      padding-bottom: 6.25rem; } }
  .branch--full .branch__description {
    margin-top: 1.875rem;
    color: #717580;
    font-size: 1rem; }
    @media print, screen and (min-width: 40em) {
      .branch--full .branch__description {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .branch--full .branch__description {
        margin-top: 6.25rem; } }
    .branch--full .branch__description a:not(.button) {
      color: #000000;
      font-weight: 700;
      text-decoration: none; }
      .branch--full .branch__description a:not(.button):hover {
        color: black;
        text-decoration: none; }
    .branch--full .branch__description h1,
    .branch--full .branch__description h2,
    .branch--full .branch__description .offer--featured .offer__title,
    .offer--featured .branch--full .branch__description .offer__title,
    .branch--full .branch__description .order-progress__title,
    .branch--full .branch__description .part--featured .part__title,
    .part--featured .branch--full .branch__description .part__title,
    .branch--full .branch__description .part--full .part__form-title,
    .part--full .branch--full .branch__description .part__form-title,
    .branch--full .branch__description .post--featured .post__title,
    .post--featured .branch--full .branch__description .post__title,
    .branch--full .branch__description .vehicle--general .vehicle__title,
    .vehicle--general .branch--full .branch__description .vehicle__title,
    .branch--full .branch__description .vehicle--latest .vehicle__title,
    .vehicle--latest .branch--full .branch__description .vehicle__title,
    .branch--full .branch__description .listing--custom-entry-review-featured .listing__title,
    .listing--custom-entry-review-featured .branch--full .branch__description .listing__title,
    .branch--full .branch__description .listing--vehicle-featured .listing__title,
    .listing--vehicle-featured .branch--full .branch__description .listing__title,
    .branch--full .branch__description .listing--vehicle-similar .listing__title,
    .listing--vehicle-similar .branch--full .branch__description .listing__title,
    .branch--full .branch__description .listing--vehicle-in-stock .listing__title,
    .listing--vehicle-in-stock .branch--full .branch__description .listing__title,
    .branch--full .branch__description .listing--offer-featured .listing__title,
    .listing--offer-featured .branch--full .branch__description .listing__title,
    .branch--full .branch__description .page--teaser .page__title,
    .page--teaser .branch--full .branch__description .page__title,
    .branch--full .branch__description h3,
    .branch--full .branch__description .block--sidebar .block__title,
    .block--sidebar .branch--full .branch__description .block__title,
    .branch--full .branch__description .offer--featured .offer__sub-title,
    .offer--featured .branch--full .branch__description .offer__sub-title,
    .branch--full .branch__description .add-on__title,
    .branch--full .branch__description .calendar__header .calendar__month span,
    .calendar__header .calendar__month .branch--full .branch__description span,
    .branch--full .branch__description .collection-delivery__title,
    .branch--full .branch__description .order-payment__title,
    .branch--full .branch__description .order-state-summary__vehicle-title,
    .branch--full .branch__description .part--featured .part__sub-title,
    .part--featured .branch--full .branch__description .part__sub-title,
    .branch--full .branch__description .post--featured .post__sub-title,
    .post--featured .branch--full .branch__description .post__sub-title,
    .branch--full .branch__description .quick-search__legend,
    .branch--full .branch__description .listing--showroom-teaser .listing__title h1,
    .listing--showroom-teaser .listing__title .branch--full .branch__description h1,
    .branch--full .branch__description .listing--post-teaser .listing__title h1,
    .listing--post-teaser .listing__title .branch--full .branch__description h1,
    .branch--full .branch__description .listing--offer-teaser .listing__title h1,
    .listing--offer-teaser .listing__title .branch--full .branch__description h1,
    .branch--full .branch__description .listing--custom-entry-teaser .listing__title h1,
    .listing--custom-entry-teaser .listing__title .branch--full .branch__description h1,
    .branch--full .branch__description .listing--vehicle-teaser .listing__title h1,
    .listing--vehicle-teaser .listing__title .branch--full .branch__description h1,
    .branch--full .branch__description .block--index-header .block__title h1,
    .block--index-header .block__title .branch--full .branch__description h1,
    .branch--full .branch__description .branch--contact .branch__opening-hours-title,
    .branch--contact .branch--full .branch__description .branch__opening-hours-title,
    .branch--full .branch__description .form--part-exchange .form__title,
    .form--part-exchange .branch--full .branch__description .form__title,
    .branch--full .branch__description .finance-table--full .finance-table__title,
    .finance-table--full .branch--full .branch__description .finance-table__title,
    .branch--full .branch__description .finance-checker__details-title,
    .branch--full .branch__description .finance-table--order .finance-table__title,
    .finance-table--order .branch--full .branch__description .finance-table__title,
    .branch--full .branch__description h4,
    .branch--full .branch__description .video--page .video__title,
    .video--page .branch--full .branch__description .video__title,
    .branch--full .branch__description .new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
    .new-vehicle--full .new-vehicle__specification > ul > li .branch--full .branch__description .specification-category__title,
    .branch--full .branch__description .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
    .new-vehicle--full .new-vehicle__technical-data > ul > li .branch--full .branch__description .technical-data-category__title,
    .branch--full .branch__description .vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
    .vehicle--full-reveal .vehicle__technical-data > ul > li .branch--full .branch__description .technical-data-category__title,
    .branch--full .branch__description .finance-form .finance-form__title,
    .finance-form .branch--full .branch__description .finance-form__title,
    .branch--full .branch__description .finance-tables .finance-warning,
    .finance-tables .branch--full .branch__description .finance-warning,
    .branch--full .branch__description .finance-table--full .finance-table__checker-title,
    .finance-table--full .branch--full .branch__description .finance-table__checker-title,
    .branch--full .branch__description .finance-example__title,
    .branch--full .branch__description h5,
    .branch--full .branch__description .block--sidebar .block__sub-title,
    .block--sidebar .branch--full .branch__description .block__sub-title,
    .branch--full .branch__description h6 {
      padding-top: 0.625rem;
      color: #222222; }
    
    .branch--full .branch__description h2,
    .branch--full .branch__description .offer--featured .offer__title,
    .offer--featured .branch--full .branch__description .offer__title,
    .branch--full .branch__description .order-progress__title,
    .branch--full .branch__description .part--featured .part__title,
    .part--featured .branch--full .branch__description .part__title,
    .branch--full .branch__description .part--full .part__form-title,
    .part--full .branch--full .branch__description .part__form-title,
    .branch--full .branch__description .post--featured .post__title,
    .post--featured .branch--full .branch__description .post__title,
    .branch--full .branch__description .vehicle--general .vehicle__title,
    .vehicle--general .branch--full .branch__description .vehicle__title,
    .branch--full .branch__description .vehicle--latest .vehicle__title,
    .vehicle--latest .branch--full .branch__description .vehicle__title,
    .branch--full .branch__description .listing--custom-entry-review-featured .listing__title,
    .listing--custom-entry-review-featured .branch--full .branch__description .listing__title,
    .branch--full .branch__description .listing--vehicle-featured .listing__title,
    .listing--vehicle-featured .branch--full .branch__description .listing__title,
    .branch--full .branch__description .listing--vehicle-similar .listing__title,
    .listing--vehicle-similar .branch--full .branch__description .listing__title,
    .branch--full .branch__description .listing--vehicle-in-stock .listing__title,
    .listing--vehicle-in-stock .branch--full .branch__description .listing__title,
    .branch--full .branch__description .listing--offer-featured .listing__title,
    .listing--offer-featured .branch--full .branch__description .listing__title,
    .branch--full .branch__description .page--teaser .page__title,
    .page--teaser .branch--full .branch__description .page__title {
      font-size: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        
        .branch--full .branch__description h2,
        .branch--full .branch__description .offer--featured .offer__title,
        .offer--featured .branch--full .branch__description .offer__title,
        .branch--full .branch__description .order-progress__title,
        .branch--full .branch__description .part--featured .part__title,
        .part--featured .branch--full .branch__description .part__title,
        .branch--full .branch__description .part--full .part__form-title,
        .part--full .branch--full .branch__description .part__form-title,
        .branch--full .branch__description .post--featured .post__title,
        .post--featured .branch--full .branch__description .post__title,
        .branch--full .branch__description .vehicle--general .vehicle__title,
        .vehicle--general .branch--full .branch__description .vehicle__title,
        .branch--full .branch__description .vehicle--latest .vehicle__title,
        .vehicle--latest .branch--full .branch__description .vehicle__title,
        .branch--full .branch__description .listing--custom-entry-review-featured .listing__title,
        .listing--custom-entry-review-featured .branch--full .branch__description .listing__title,
        .branch--full .branch__description .listing--vehicle-featured .listing__title,
        .listing--vehicle-featured .branch--full .branch__description .listing__title,
        .branch--full .branch__description .listing--vehicle-similar .listing__title,
        .listing--vehicle-similar .branch--full .branch__description .listing__title,
        .branch--full .branch__description .listing--vehicle-in-stock .listing__title,
        .listing--vehicle-in-stock .branch--full .branch__description .listing__title,
        .branch--full .branch__description .listing--offer-featured .listing__title,
        .listing--offer-featured .branch--full .branch__description .listing__title,
        .branch--full .branch__description .page--teaser .page__title,
        .page--teaser .branch--full .branch__description .page__title {
          font-size: 1.625rem; } }
    
    .branch--full .branch__description h3,
    .branch--full .branch__description .block--sidebar .block__title,
    .block--sidebar .branch--full .branch__description .block__title,
    .branch--full .branch__description .offer--featured .offer__sub-title,
    .offer--featured .branch--full .branch__description .offer__sub-title,
    .branch--full .branch__description .add-on__title,
    .branch--full .branch__description .calendar__header .calendar__month span,
    .calendar__header .calendar__month .branch--full .branch__description span,
    .branch--full .branch__description .collection-delivery__title,
    .branch--full .branch__description .order-payment__title,
    .branch--full .branch__description .order-state-summary__vehicle-title,
    .branch--full .branch__description .part--featured .part__sub-title,
    .part--featured .branch--full .branch__description .part__sub-title,
    .branch--full .branch__description .post--featured .post__sub-title,
    .post--featured .branch--full .branch__description .post__sub-title,
    .branch--full .branch__description .quick-search__legend,
    .branch--full .branch__description .listing--showroom-teaser .listing__title h1,
    .listing--showroom-teaser .listing__title .branch--full .branch__description h1,
    .branch--full .branch__description .listing--post-teaser .listing__title h1,
    .listing--post-teaser .listing__title .branch--full .branch__description h1,
    .branch--full .branch__description .listing--offer-teaser .listing__title h1,
    .listing--offer-teaser .listing__title .branch--full .branch__description h1,
    .branch--full .branch__description .listing--custom-entry-teaser .listing__title h1,
    .listing--custom-entry-teaser .listing__title .branch--full .branch__description h1,
    .branch--full .branch__description .listing--vehicle-teaser .listing__title h1,
    .listing--vehicle-teaser .listing__title .branch--full .branch__description h1,
    .branch--full .branch__description .block--index-header .block__title h1,
    .block--index-header .block__title .branch--full .branch__description h1,
    .branch--full .branch__description .branch--contact .branch__opening-hours-title,
    .branch--contact .branch--full .branch__description .branch__opening-hours-title,
    .branch--full .branch__description .form--part-exchange .form__title,
    .form--part-exchange .branch--full .branch__description .form__title,
    .branch--full .branch__description .finance-table--full .finance-table__title,
    .finance-table--full .branch--full .branch__description .finance-table__title,
    .branch--full .branch__description .finance-checker__details-title,
    .branch--full .branch__description .finance-table--order .finance-table__title,
    .finance-table--order .branch--full .branch__description .finance-table__title {
      font-size: 1.125rem; }
      @media print, screen and (min-width: 40em) {
        
        .branch--full .branch__description h3,
        .branch--full .branch__description .block--sidebar .block__title,
        .block--sidebar .branch--full .branch__description .block__title,
        .branch--full .branch__description .offer--featured .offer__sub-title,
        .offer--featured .branch--full .branch__description .offer__sub-title,
        .branch--full .branch__description .add-on__title,
        .branch--full .branch__description .calendar__header .calendar__month span,
        .calendar__header .calendar__month .branch--full .branch__description span,
        .branch--full .branch__description .collection-delivery__title,
        .branch--full .branch__description .order-payment__title,
        .branch--full .branch__description .order-state-summary__vehicle-title,
        .branch--full .branch__description .part--featured .part__sub-title,
        .part--featured .branch--full .branch__description .part__sub-title,
        .branch--full .branch__description .post--featured .post__sub-title,
        .post--featured .branch--full .branch__description .post__sub-title,
        .branch--full .branch__description .quick-search__legend,
        .branch--full .branch__description .listing--showroom-teaser .listing__title h1,
        .listing--showroom-teaser .listing__title .branch--full .branch__description h1,
        .branch--full .branch__description .listing--post-teaser .listing__title h1,
        .listing--post-teaser .listing__title .branch--full .branch__description h1,
        .branch--full .branch__description .listing--offer-teaser .listing__title h1,
        .listing--offer-teaser .listing__title .branch--full .branch__description h1,
        .branch--full .branch__description .listing--custom-entry-teaser .listing__title h1,
        .listing--custom-entry-teaser .listing__title .branch--full .branch__description h1,
        .branch--full .branch__description .listing--vehicle-teaser .listing__title h1,
        .listing--vehicle-teaser .listing__title .branch--full .branch__description h1,
        .branch--full .branch__description .block--index-header .block__title h1,
        .block--index-header .block__title .branch--full .branch__description h1,
        .branch--full .branch__description .branch--contact .branch__opening-hours-title,
        .branch--contact .branch--full .branch__description .branch__opening-hours-title,
        .branch--full .branch__description .form--part-exchange .form__title,
        .form--part-exchange .branch--full .branch__description .form__title,
        .branch--full .branch__description .finance-table--full .finance-table__title,
        .finance-table--full .branch--full .branch__description .finance-table__title,
        .branch--full .branch__description .finance-checker__details-title,
        .branch--full .branch__description .finance-table--order .finance-table__title,
        .finance-table--order .branch--full .branch__description .finance-table__title {
          font-size: 1.5rem; } }
    
    .branch--full .branch__description h4,
    .branch--full .branch__description .video--page .video__title,
    .video--page .branch--full .branch__description .video__title,
    .branch--full .branch__description .new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
    .new-vehicle--full .new-vehicle__specification > ul > li .branch--full .branch__description .specification-category__title,
    .branch--full .branch__description .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
    .new-vehicle--full .new-vehicle__technical-data > ul > li .branch--full .branch__description .technical-data-category__title,
    .branch--full .branch__description .vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
    .vehicle--full-reveal .vehicle__technical-data > ul > li .branch--full .branch__description .technical-data-category__title,
    .branch--full .branch__description .finance-form .finance-form__title,
    .finance-form .branch--full .branch__description .finance-form__title,
    .branch--full .branch__description .finance-tables .finance-warning,
    .finance-tables .branch--full .branch__description .finance-warning,
    .branch--full .branch__description .finance-table--full .finance-table__checker-title,
    .finance-table--full .branch--full .branch__description .finance-table__checker-title,
    .branch--full .branch__description .finance-example__title,
    .branch--full .branch__description h5,
    .branch--full .branch__description .block--sidebar .block__sub-title,
    .block--sidebar .branch--full .branch__description .block__sub-title,
    .branch--full .branch__description h6 {
      font-size: 1rem; }
      @media print, screen and (min-width: 40em) {
        
        .branch--full .branch__description h4,
        .branch--full .branch__description .video--page .video__title,
        .video--page .branch--full .branch__description .video__title,
        .branch--full .branch__description .new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
        .new-vehicle--full .new-vehicle__specification > ul > li .branch--full .branch__description .specification-category__title,
        .branch--full .branch__description .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
        .new-vehicle--full .new-vehicle__technical-data > ul > li .branch--full .branch__description .technical-data-category__title,
        .branch--full .branch__description .vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
        .vehicle--full-reveal .vehicle__technical-data > ul > li .branch--full .branch__description .technical-data-category__title,
        .branch--full .branch__description .finance-form .finance-form__title,
        .finance-form .branch--full .branch__description .finance-form__title,
        .branch--full .branch__description .finance-tables .finance-warning,
        .finance-tables .branch--full .branch__description .finance-warning,
        .branch--full .branch__description .finance-table--full .finance-table__checker-title,
        .finance-table--full .branch--full .branch__description .finance-table__checker-title,
        .branch--full .branch__description .finance-example__title,
        .branch--full .branch__description h5,
        .branch--full .branch__description .block--sidebar .block__sub-title,
        .block--sidebar .branch--full .branch__description .block__sub-title,
        .branch--full .branch__description h6 {
          font-size: 1.375rem; } }
    .branch--full .branch__description p:last-child {
      margin-bottom: 0; }
  .branch--full .branch__form {
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .branch--full .branch__form {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .branch--full .branch__form {
        margin-top: 6.25rem; } }
    .branch--full .branch__form-title h2, .branch--full .branch__form-title .offer--featured .offer__title, .offer--featured .branch--full .branch__form-title .offer__title, .branch--full .branch__form-title .order-progress__title, .branch--full .branch__form-title .part--featured .part__title, .part--featured .branch--full .branch__form-title .part__title, .branch--full .branch__form-title .part--full .part__form-title, .part--full .branch--full .branch__form-title .part__form-title, .branch--full .branch__form-title .post--featured .post__title, .post--featured .branch--full .branch__form-title .post__title, .branch--full .branch__form-title .vehicle--general .vehicle__title, .vehicle--general .branch--full .branch__form-title .vehicle__title, .branch--full .branch__form-title .vehicle--latest .vehicle__title, .vehicle--latest .branch--full .branch__form-title .vehicle__title, .branch--full .branch__form-title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .branch--full .branch__form-title .listing__title, .branch--full .branch__form-title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .branch--full .branch__form-title .listing__title, .branch--full .branch__form-title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .branch--full .branch__form-title .listing__title, .branch--full .branch__form-title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .branch--full .branch__form-title .listing__title, .branch--full .branch__form-title .listing--offer-featured .listing__title, .listing--offer-featured .branch--full .branch__form-title .listing__title, .branch--full .branch__form-title .page--teaser .page__title, .page--teaser .branch--full .branch__form-title .page__title {
      margin-bottom: 1.25rem;
      font-size: 1.5rem; }
      @media print, screen and (min-width: 40em) {
        .branch--full .branch__form-title h2, .branch--full .branch__form-title .offer--featured .offer__title, .offer--featured .branch--full .branch__form-title .offer__title, .branch--full .branch__form-title .order-progress__title, .branch--full .branch__form-title .part--featured .part__title, .part--featured .branch--full .branch__form-title .part__title, .branch--full .branch__form-title .part--full .part__form-title, .part--full .branch--full .branch__form-title .part__form-title, .branch--full .branch__form-title .post--featured .post__title, .post--featured .branch--full .branch__form-title .post__title, .branch--full .branch__form-title .vehicle--general .vehicle__title, .vehicle--general .branch--full .branch__form-title .vehicle__title, .branch--full .branch__form-title .vehicle--latest .vehicle__title, .vehicle--latest .branch--full .branch__form-title .vehicle__title, .branch--full .branch__form-title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .branch--full .branch__form-title .listing__title, .branch--full .branch__form-title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .branch--full .branch__form-title .listing__title, .branch--full .branch__form-title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .branch--full .branch__form-title .listing__title, .branch--full .branch__form-title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .branch--full .branch__form-title .listing__title, .branch--full .branch__form-title .listing--offer-featured .listing__title, .listing--offer-featured .branch--full .branch__form-title .listing__title, .branch--full .branch__form-title .page--teaser .page__title, .page--teaser .branch--full .branch__form-title .page__title {
          margin-bottom: 1.875rem;
          font-size: 1.875rem; } }

.branch--teaser {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
  background-color: #ffffff;
  border-radius: 0.3125rem;
  overflow: hidden; }
  @media print, screen and (min-width: 64em) {
    .branch--teaser {
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; } }
  .branch--teaser .branch__map {
    position: relative;
    width: 100%;
    height: 25rem; }
    @media print, screen and (min-width: 64em) {
      .branch--teaser .branch__map {
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1;
        height: auto; } }
    .branch--teaser .branch__map #map {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      width: 100%;
      height: 100%; }
      @media print, screen and (min-width: 64em) {
        .branch--teaser .branch__map #map {
          position: inherit;
          top: inherit;
          left: inherit;
          bottom: inherit;
          right: inherit;
          height: 100%; } }
  .branch--teaser .branch__details {
    position: relative; }
    @media print, screen and (min-width: 64em) {
      .branch--teaser .branch__details {
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1; } }
    .branch--teaser .branch__details-inner {
      padding: 1.25rem; }
      @media print, screen and (min-width: 64em) {
        .branch--teaser .branch__details-inner {
          padding: 1.875rem; } }
  .branch--teaser .branch__title {
    font-size: 1.0625rem;
    margin-bottom: 0.625rem;
    font-weight: 600; }
    @media print, screen and (min-width: 40em) {
      .branch--teaser .branch__title {
        font-size: 1.125rem; } }
  .branch--teaser .branch__name {
    margin-bottom: 0;
    font-size: 0.9375rem;
    font-weight: 600;
    line-height: 1.6; }
    @media print, screen and (min-width: 40em) {
      .branch--teaser .branch__name {
        font-size: 1rem; } }
  .branch--teaser h1.branch__name {
    margin-bottom: 0.9375rem;
    font-size: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .branch--teaser h1.branch__name {
        font-size: 1.875rem; } }
  .branch--teaser .branch__address {
    font-size: 0.9375rem;
    font-weight: 500;
    line-height: 1.6; }
    @media print, screen and (min-width: 40em) {
      .branch--teaser .branch__address {
        font-size: 1rem; } }
    .branch--teaser .branch__address span {
      display: block; }
  .branch--teaser .branch__telephone {
    margin-top: 1.875rem; }
    .branch--teaser .branch__telephone > ul {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 0.625rem;
      list-style: none;
      margin: 0; }
  .branch--teaser .branch__telephone-options {
    margin-top: 0.625rem; }
    .branch--teaser .branch__telephone-options strong {
      font-weight: 600; }
  .branch--teaser .branch__opening-hours {
    margin-top: 1.875rem; }
    .branch--teaser .branch__opening-hours select {
      margin-bottom: 0.9375rem;
      height: 3.0625rem;
      font-size: 0.875rem;
      font-weight: 600;
      border-radius: 0.3125rem; }
      @media print, screen and (min-width: 40em) {
        .branch--teaser .branch__opening-hours select {
          font-size: 1rem; } }
    .branch--teaser .branch__opening-hours ul {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 0.3125rem;
      margin: 0;
      list-style: none; }
  .branch--teaser .branch__stock {
    margin-top: 1.875rem; }
    .branch--teaser .branch__stock a {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      padding: 0.75rem 0.875rem;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 0;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 1.125rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      background-color: #c3002f;
      color: #ffffff;
      margin-bottom: 0;
      font-size: 1rem;
      font-weight: 600;
      border-radius: 0.3125rem; }
      [data-whatinput='mouse'] .branch--teaser .branch__stock a {
        outline: 0; }
      .branch--teaser .branch__stock a:hover, .branch--teaser .branch__stock a:focus {
        background-color: #a60028;
        color: #ffffff; }
  .branch--teaser .branch__link {
    position: absolute;
    right: 0.9375rem;
    bottom: 0.9375rem; }
    .branch--teaser .branch__link a i::before {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 2.5rem;
      height: 2.5rem;
      color: #ffffff;
      background-color: #c3002f;
      border-radius: 50%; }
  .branch--teaser .branch__directions {
    margin-top: 1.875rem; }
  @media screen and (min-width: 75em) {
    .branch--teaser.branch--teaser-vehicle .branch__map {
      -webkit-flex: none;
          -ms-flex: none;
              flex: none;
      -webkit-flex-basis: 70%;
          -ms-flex-preferred-size: 70%;
              flex-basis: 70%; } }
  .branch--teaser.branch--teaser-full .branch__details {
    -webkit-order: -1;
        -ms-flex-order: -1;
            order: -1; }

.branch--vehicle {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto; }
  .branch--vehicle::before, .branch--vehicle::after {
    display: table;
    content: ' '; }
  .branch--vehicle::after {
    clear: both; }
  .branch--vehicle .branch__first {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .branch--vehicle .branch__first {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .branch--vehicle .branch__first:last-child:not(:first-child) {
      float: right; }
  .branch--vehicle .branch__second {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    padding-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .branch--vehicle .branch__second {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .branch--vehicle .branch__second:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .branch--vehicle .branch__second {
        padding-bottom: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .branch--vehicle .branch__second {
        width: 41.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-left: 8.33333%;
        padding-bottom: 1.875rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .branch--vehicle .branch__second {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .branch--vehicle .branch__second:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 75em) {
      .branch--vehicle .branch__second {
        width: 25%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-left: 16.66667%; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .branch--vehicle .branch__second {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 75em) {
        .branch--vehicle .branch__second:last-child:not(:first-child) {
          float: right; } }
  .branch--vehicle-image .branch__first {
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .branch--vehicle-image .branch__first {
        margin-bottom: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .branch--vehicle-image .branch__first {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-bottom: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .branch--vehicle-image .branch__first {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .branch--vehicle-image .branch__first:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 75em) {
      .branch--vehicle-image .branch__first {
        width: 58.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .branch--vehicle-image .branch__first {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 75em) {
        .branch--vehicle-image .branch__first:last-child:not(:first-child) {
          float: right; } }
  .branch--vehicle .branch__details {
    padding: 1.25rem;
    background-color: #ffffff;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.03), 0 6px 20px 0 rgba(0, 0, 0, 0.03); }
    @media print, screen and (min-width: 40em) {
      .branch--vehicle .branch__details {
        padding: 1.875rem; } }
    .branch--vehicle .branch__details-inner {
      margin-right: -0.625rem;
      margin-left: -0.625rem; }
      @media print, screen and (min-width: 40em) {
        .branch--vehicle .branch__details-inner {
          margin-right: -0.9375rem;
          margin-left: -0.9375rem; } }
      @media print, screen and (min-width: 64em) {
        .branch--vehicle .branch__details-inner {
          margin-right: -0.9375rem;
          margin-left: -0.9375rem; } }
      .branch--vehicle .branch__details-inner::before, .branch--vehicle .branch__details-inner::after {
        display: table;
        content: ' '; }
      .branch--vehicle .branch__details-inner::after {
        clear: both; }
      @media screen and (min-width: 75em) {
        .branch--vehicle .branch__details-inner {
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center; } }
  .branch--vehicle .branch__address {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .branch--vehicle .branch__address {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .branch--vehicle .branch__address:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .branch--vehicle .branch__address {
        margin-bottom: 1.875rem; } }
    @media screen and (min-width: 75em) {
      .branch--vehicle .branch__address {
        width: 41.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-bottom: 0; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .branch--vehicle .branch__address {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 75em) {
        .branch--vehicle .branch__address:last-child:not(:first-child) {
          float: right; } }
    .branch--vehicle .branch__address span {
      display: block;
      font-size: 1.25rem; }
      .branch--vehicle .branch__address span.branch__name {
        font-weight: 600; }
  .branch--vehicle .branch__cta {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .branch--vehicle .branch__cta {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .branch--vehicle .branch__cta:last-child:not(:first-child) {
      float: right; }
    @media screen and (min-width: 75em) {
      .branch--vehicle .branch__cta {
        width: 58.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .branch--vehicle .branch__cta {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 75em) {
        .branch--vehicle .branch__cta:last-child:not(:first-child) {
          float: right; } }
    .branch--vehicle .branch__cta ul {
      margin-right: -0.625rem;
      margin-left: -0.625rem;
      margin-bottom: 0;
      list-style: none; }
      @media print, screen and (min-width: 40em) {
        .branch--vehicle .branch__cta ul {
          margin-right: -0.9375rem;
          margin-left: -0.9375rem; } }
      @media print, screen and (min-width: 64em) {
        .branch--vehicle .branch__cta ul {
          margin-right: -0.9375rem;
          margin-left: -0.9375rem; } }
      .branch--vehicle .branch__cta ul::before, .branch--vehicle .branch__cta ul::after {
        display: table;
        content: ' '; }
      .branch--vehicle .branch__cta ul::after {
        clear: both; }
      @media screen and (min-width: 90em) {
        .branch--vehicle .branch__cta ul {
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-align-items: center;
              -ms-flex-align: center;
                  align-items: center; } }
      .branch--vehicle .branch__cta ul li:first-child {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-bottom: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          .branch--vehicle .branch__cta ul li:first-child {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        .branch--vehicle .branch__cta ul li:first-child:last-child:not(:first-child) {
          float: right; }
        @media print, screen and (min-width: 40em) {
          .branch--vehicle .branch__cta ul li:first-child {
            margin-bottom: 0.9375rem; } }
        @media screen and (min-width: 90em) {
          .branch--vehicle .branch__cta ul li:first-child {
            width: 33.33333%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem;
            margin-bottom: 0; } }
  @media screen and (min-width: 90em) and (min-width: 40em) {
    .branch--vehicle .branch__cta ul li:first-child {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (min-width: 90em) {
            .branch--vehicle .branch__cta ul li:first-child:last-child:not(:first-child) {
              float: right; } }
      .branch--vehicle .branch__cta ul li:last-child {
        width: 100%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          .branch--vehicle .branch__cta ul li:last-child {
            padding-right: 0.9375rem;
            padding-left: 0.9375rem; } }
        .branch--vehicle .branch__cta ul li:last-child:last-child:not(:first-child) {
          float: right; }
        @media screen and (min-width: 90em) {
          .branch--vehicle .branch__cta ul li:last-child {
            width: 66.66667%;
            float: left;
            padding-right: 0.625rem;
            padding-left: 0.625rem; } }
  @media screen and (min-width: 90em) and (min-width: 40em) {
    .branch--vehicle .branch__cta ul li:last-child {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
        @media screen and (min-width: 90em) {
            .branch--vehicle .branch__cta ul li:last-child:last-child:not(:first-child) {
              float: right; } }
      .branch--vehicle .branch__cta ul a {
        display: inline-block;
        vertical-align: middle;
        margin: 0 0 1rem 0;
        padding: 0.75rem 0.875rem;
        -webkit-appearance: none;
        border: 1px solid transparent;
        border-radius: 0;
        transition: background-color 0.25s ease-out, color 0.25s ease-out;
        font-size: 1.125rem;
        line-height: 1;
        text-align: center;
        cursor: pointer;
        background-color: #c3002f;
        color: #ffffff;
        width: 100%;
        margin-bottom: 0;
        font-size: 1rem;
        font-weight: 600;
        border-radius: 0.3125rem; }
        [data-whatinput='mouse'] .branch--vehicle .branch__cta ul a {
          outline: 0; }
        .branch--vehicle .branch__cta ul a:hover, .branch--vehicle .branch__cta ul a:focus {
          background-color: #a60028;
          color: #ffffff; }
  .branch--vehicle .branch__primary-images {
    position: relative;
    box-shadow: -10px 10px #c3002f; }
    @media print, screen and (min-width: 40em) {
      .branch--vehicle .branch__primary-images {
        box-shadow: -15px 15px #c3002f; } }
    @media print, screen and (min-width: 64em) {
      .branch--vehicle .branch__primary-images {
        box-shadow: -30px 30px #c3002f; } }

.branch--widget {
  position: relative;
  text-align: center;
  background-color: #ffffff;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.05), 0 6px 20px 0 rgba(0, 0, 0, 0.05);
  padding: 1.875rem; }
  @media print, screen and (min-width: 40em) {
    .branch--widget {
      padding: 3.125rem; } }
  @media screen and (min-width: 90em) {
    .branch--widget {
      padding: 4.375rem; } }
  .branch--widget .branch__name {
    margin-bottom: 0.9375rem;
    font-size: 1.375rem; }
  .branch--widget .branch__address {
    color: #6F6F6F;
    line-height: 1.4; }
  .branch--widget .branch__link {
    position: absolute;
    bottom: -1.4375rem;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto; }
    .branch--widget .branch__link a {
      display: inline-block;
      padding: 0.3125rem 1.875rem;
      color: #ffffff;
      font-size: 1.25rem;
      background: #c3002f;
      border-radius: 0.3125rem; }
      @media print, screen and (min-width: 40em) {
        .branch--widget .branch__link a {
          padding-left: 3.125rem;
          padding-right: 3.125rem; } }

.custom-entry--faq {
  margin-top: 1.875rem; }
  @media print, screen and (min-width: 40em) {
    .custom-entry--faq {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .custom-entry--faq {
      margin-top: 6.25rem; } }
  .custom-entry--faq .custom-entry__inner {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    .custom-entry--faq .custom-entry__inner::before, .custom-entry--faq .custom-entry__inner::after {
      display: table;
      content: ' '; }
    .custom-entry--faq .custom-entry__inner::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .custom-entry--faq .custom-entry__inner {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .custom-entry--faq .custom-entry__inner:last-child:not(:first-child) {
      float: right; }
    .custom-entry--faq .custom-entry__inner, .custom-entry--faq .custom-entry__inner:last-child {
      float: none; }
  .custom-entry--faq .custom-entry__title h2, .custom-entry--faq .custom-entry__title .offer--featured .offer__title, .offer--featured .custom-entry--faq .custom-entry__title .offer__title, .custom-entry--faq .custom-entry__title .order-progress__title, .custom-entry--faq .custom-entry__title .part--featured .part__title, .part--featured .custom-entry--faq .custom-entry__title .part__title, .custom-entry--faq .custom-entry__title .part--full .part__form-title, .part--full .custom-entry--faq .custom-entry__title .part__form-title, .custom-entry--faq .custom-entry__title .post--featured .post__title, .post--featured .custom-entry--faq .custom-entry__title .post__title, .custom-entry--faq .custom-entry__title .vehicle--general .vehicle__title, .vehicle--general .custom-entry--faq .custom-entry__title .vehicle__title, .custom-entry--faq .custom-entry__title .vehicle--latest .vehicle__title, .vehicle--latest .custom-entry--faq .custom-entry__title .vehicle__title, .custom-entry--faq .custom-entry__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .custom-entry--faq .custom-entry__title .listing__title, .custom-entry--faq .custom-entry__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .custom-entry--faq .custom-entry__title .listing__title, .custom-entry--faq .custom-entry__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .custom-entry--faq .custom-entry__title .listing__title, .custom-entry--faq .custom-entry__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .custom-entry--faq .custom-entry__title .listing__title, .custom-entry--faq .custom-entry__title .listing--offer-featured .listing__title, .listing--offer-featured .custom-entry--faq .custom-entry__title .listing__title, .custom-entry--faq .custom-entry__title .page--teaser .page__title, .page--teaser .custom-entry--faq .custom-entry__title .page__title {
    margin-bottom: 1.25rem;
    font-size: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .custom-entry--faq .custom-entry__title h2, .custom-entry--faq .custom-entry__title .offer--featured .offer__title, .offer--featured .custom-entry--faq .custom-entry__title .offer__title, .custom-entry--faq .custom-entry__title .order-progress__title, .custom-entry--faq .custom-entry__title .part--featured .part__title, .part--featured .custom-entry--faq .custom-entry__title .part__title, .custom-entry--faq .custom-entry__title .part--full .part__form-title, .part--full .custom-entry--faq .custom-entry__title .part__form-title, .custom-entry--faq .custom-entry__title .post--featured .post__title, .post--featured .custom-entry--faq .custom-entry__title .post__title, .custom-entry--faq .custom-entry__title .vehicle--general .vehicle__title, .vehicle--general .custom-entry--faq .custom-entry__title .vehicle__title, .custom-entry--faq .custom-entry__title .vehicle--latest .vehicle__title, .vehicle--latest .custom-entry--faq .custom-entry__title .vehicle__title, .custom-entry--faq .custom-entry__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .custom-entry--faq .custom-entry__title .listing__title, .custom-entry--faq .custom-entry__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .custom-entry--faq .custom-entry__title .listing__title, .custom-entry--faq .custom-entry__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .custom-entry--faq .custom-entry__title .listing__title, .custom-entry--faq .custom-entry__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .custom-entry--faq .custom-entry__title .listing__title, .custom-entry--faq .custom-entry__title .listing--offer-featured .listing__title, .listing--offer-featured .custom-entry--faq .custom-entry__title .listing__title, .custom-entry--faq .custom-entry__title .page--teaser .page__title, .page--teaser .custom-entry--faq .custom-entry__title .page__title {
        margin-bottom: 1.875rem;
        font-size: 1.875rem; } }

.custom-entry--reviews.custom-entry--featured {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  @media print, screen and (min-width: 40em) {
    .custom-entry--reviews.custom-entry--featured {
      height: 100%; } }
  .custom-entry--reviews.custom-entry--featured .custom-entry__content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .custom-entry--reviews.custom-entry--featured .custom-entry__title {
    font-size: 1.875rem;
    font-weight: 600;
    line-height: 1.2; }
    @media print, screen and (min-width: 40em) {
      .custom-entry--reviews.custom-entry--featured .custom-entry__title {
        font-size: 3.125rem; } }
  .custom-entry--reviews.custom-entry--featured .custom-entry__description {
    margin-top: 0.625rem;
    color: #717580;
    font-size: 0.9375rem;
    font-weight: 500;
    line-height: 1.8; }
    @media print, screen and (min-width: 40em) {
      .custom-entry--reviews.custom-entry--featured .custom-entry__description {
        margin-top: 1.25rem;
        font-size: 1.0625rem; } }
  .custom-entry--reviews.custom-entry--featured .custom-entry__footer {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: auto;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.9375rem;
    margin-top: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .custom-entry--reviews.custom-entry--featured .custom-entry__footer {
        margin-top: 1.25rem;
        gap: 1.875rem; } }
  .custom-entry--reviews.custom-entry--featured .custom-entry__primary-images img {
    border-radius: 50%; }
  .custom-entry--reviews.custom-entry--featured .custom-entry__details {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.5rem; }
  .custom-entry--reviews.custom-entry--featured .custom-entry__name {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.2; }
    @media print, screen and (min-width: 40em) {
      .custom-entry--reviews.custom-entry--featured .custom-entry__name {
        font-size: 1.375rem; } }
  .custom-entry--reviews.custom-entry--featured .custom-entry__rating {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.1875rem; }
    .custom-entry--reviews.custom-entry--featured .custom-entry__rating span {
      color: #FD8B1D;
      font-size: 1.25rem; }

.custom-entry--reviews.custom-entry--teaser {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 1.25rem;
  background-color: #ffffff;
  border-radius: 0.3125rem; }
  @media print, screen and (min-width: 40em) {
    .custom-entry--reviews.custom-entry--teaser {
      height: 100%;
      padding: 1.875rem; } }
  .custom-entry--reviews.custom-entry--teaser .custom-entry__content {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .custom-entry--reviews.custom-entry--teaser .custom-entry__title {
    font-size: 1.625rem;
    font-weight: 600;
    line-height: 1.2; }
  .custom-entry--reviews.custom-entry--teaser .custom-entry__description {
    margin-top: 0.625rem;
    margin-bottom: 0.625rem;
    color: #717580;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.8; }
    @media print, screen and (min-width: 40em) {
      .custom-entry--reviews.custom-entry--teaser .custom-entry__description {
        margin-bottom: 1.25rem; } }
  .custom-entry--reviews.custom-entry--teaser .custom-entry__footer {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-top: auto;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.9375rem;
    margin-top: auto; }
    @media print, screen and (min-width: 40em) {
      .custom-entry--reviews.custom-entry--teaser .custom-entry__footer {
        gap: 1.875rem; } }
  .custom-entry--reviews.custom-entry--teaser .custom-entry__primary-images img {
    border-radius: 50%; }
  .custom-entry--reviews.custom-entry--teaser .custom-entry__details {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0.5rem; }
  .custom-entry--reviews.custom-entry--teaser .custom-entry__name {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.2; }
  .custom-entry--reviews.custom-entry--teaser .custom-entry__rating {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.1875rem; }
    .custom-entry--reviews.custom-entry--teaser .custom-entry__rating span {
      color: #FD8B1D;
      font-size: 1.25rem; }

.custom-entry--reviews.custom-entry--full .custom-entry__primary-images {
  padding-bottom: 1.875rem; }
  @media print, screen and (min-width: 40em) {
    .custom-entry--reviews.custom-entry--full .custom-entry__primary-images {
      padding-bottom: 3.125rem; } }
  .custom-entry--reviews.custom-entry--full .custom-entry__primary-images ul {
    margin: 0;
    list-style: none; }
    .custom-entry--reviews.custom-entry--full .custom-entry__primary-images ul img {
      width: 100%;
      border-radius: 0.3125rem; }

.custom-entry--reviews.custom-entry--full .custom-entry__custom-fields {
  margin-bottom: 0.9375rem; }
  .custom-entry--reviews.custom-entry--full .custom-entry__custom-fields ul {
    margin: 0;
    list-style: none; }
    .custom-entry--reviews.custom-entry--full .custom-entry__custom-fields ul li span {
      font-weight: 600; }

.custom-entry--reviews.custom-entry--full .custom-entry__description p a:not(.button) {
  text-decoration: underline; }
  .custom-entry--reviews.custom-entry--full .custom-entry__description p a:not(.button):hover {
    text-decoration: none; }

.department--footer {
  color: #ffffff;
  font-size: 0.875rem; }
  @media print, screen and (min-width: 40em) {
    .department--footer {
      font-size: 1rem; } }
  .department--footer a {
    color: #ffffff; }
  .department--footer .department__name {
    margin-bottom: 0.375rem;
    line-height: 1.2;
    font-weight: 700; }
  .department--footer .department__opening-hours {
    font-weight: 500; }
    .department--footer .department__opening-hours ul {
      margin: 0;
      list-style: none; }
      .department--footer .department__opening-hours ul li {
        margin-bottom: 0.375rem; }
        .department--footer .department__opening-hours ul li:last-child {
          margin-bottom: 0; }
    .department--footer .department__opening-hours .department__list-item {
      line-height: 1.2; }
  .department--footer .department__telephone ul {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 0.625rem;
    margin: 0;
    list-style: none; }
    @media print, screen and (min-width: 40em) {
      .department--footer .department__telephone ul {
        gap: 0.9375rem; } }
    .department--footer .department__telephone ul li i {
      margin-right: 0.3125rem;
      font-size: 1.25rem;
      vertical-align: middle;
      line-height: 1.5rem; }
      @media print, screen and (min-width: 40em) {
        .department--footer .department__telephone ul li i {
          font-size: 1.5rem; } }
    .department--footer .department__telephone ul li span {
      vertical-align: middle;
      line-height: 1.5rem;
      font-weight: 700; }

.department--teaser .department__name {
  font-size: 1.0625rem;
  margin-bottom: 0.625rem;
  font-weight: 600;
  line-height: 1.4; }
  @media print, screen and (min-width: 40em) {
    .department--teaser .department__name {
      font-size: 1.125rem; } }

.department--teaser .department__telephone ul {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.3125rem;
  margin: 0;
  list-style: none; }
  .department--teaser .department__telephone ul li {
    font-size: 0.9375rem;
    line-height: 1.6; }
    @media print, screen and (min-width: 40em) {
      .department--teaser .department__telephone ul li {
        font-size: 1rem; } }

.department--teaser .department__opening-hours {
  font-size: 0.9375rem;
  line-height: 1.6; }
  @media print, screen and (min-width: 40em) {
    .department--teaser .department__opening-hours {
      font-size: 1rem; } }

.department--teaser .department__label {
  font-weight: 600; }

.department--teaser .department__value {
  font-weight: 500; }

.form--directions {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .form--directions {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .form--directions {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .form--directions::before, .form--directions::after {
    display: table;
    content: ' '; }
  .form--directions::after {
    clear: both; }
  .form--directions .field-starting-point {
    width: 50%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--directions .field-starting-point {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--directions .field-starting-point:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .form--directions .field-starting-point {
        width: 41.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .form--directions .field-starting-point {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .form--directions .field-starting-point:last-child:not(:first-child) {
          float: right; } }
  .form--directions .field-destination {
    width: 50%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--directions .field-destination {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--directions .field-destination:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .form--directions .field-destination {
        width: 41.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .form--directions .field-destination {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .form--directions .field-destination:last-child:not(:first-child) {
          float: right; } }
  .form--directions .field-submit {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--directions .field-submit {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--directions .field-submit:last-child:not(:first-child) {
      float: right; }
    .form--directions .field-submit .button {
      margin-bottom: 0; }
    @media print, screen and (min-width: 40em) {
      .form--directions .field-submit {
        width: 16.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-top: 1.5625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .form--directions .field-submit {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .form--directions .field-submit:last-child:not(:first-child) {
          float: right; }
        .form--directions .field-submit .button {
          width: 100%; } }
  @media print, screen and (min-width: 40em) {
    .form--directions input,
    .form--directions select {
      height: 3.125rem; } }
  @media print, screen and (min-width: 40em) {
    .form--directions .help-block {
      margin-bottom: 0; } }
  .form--directions.form--single-branch .field-starting-point {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--directions.form--single-branch .field-starting-point {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--directions.form--single-branch .field-starting-point:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .form--directions.form--single-branch .field-starting-point {
        width: 83.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .form--directions.form--single-branch .field-starting-point {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .form--directions.form--single-branch .field-starting-point:last-child:not(:first-child) {
          float: right; } }

.form--vehicle-directions {
  position: relative; }
  .form--vehicle-directions .control-label {
    display: none; }
  .form--vehicle-directions input,
  .form--vehicle-directions [type='text'] {
    height: 3.125rem;
    border: none;
    border-radius: 0.3125rem;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
    font-size: 1rem;
    font-weight: 600;
    background-color: #F6F6F6; }
    @media print, screen and (min-width: 40em) {
      .form--vehicle-directions input,
      .form--vehicle-directions [type='text'] {
        padding-left: 0.9375rem;
        padding-right: 0.9375rem; } }
    .form--vehicle-directions input::-webkit-input-placeholder,
    .form--vehicle-directions [type='text']::-webkit-input-placeholder {
      color: #999999;
      font-size: 0.875rem;
      font-weight: 600; }
    .form--vehicle-directions input:-ms-input-placeholder,
    .form--vehicle-directions [type='text']:-ms-input-placeholder {
      color: #999999;
      font-size: 0.875rem;
      font-weight: 600; }
    .form--vehicle-directions input::placeholder,
    .form--vehicle-directions [type='text']::placeholder {
      color: #999999;
      font-size: 0.875rem;
      font-weight: 600; }
  .form--vehicle-directions .field-submit {
    margin-top: 0.625rem;
    margin-bottom: 0; }
    .form--vehicle-directions .field-submit .button {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      padding: 0.75rem 0.875rem;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 0;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 1.125rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      background-color: #c3002f;
      color: #ffffff;
      margin-bottom: 0;
      padding: 0;
      width: 2.5rem;
      height: 2.5rem;
      font-size: 1rem;
      border: none;
      border-radius: 0.3125rem; }
      [data-whatinput='mouse'] .form--vehicle-directions .field-submit .button {
        outline: 0; }
      .form--vehicle-directions .field-submit .button:hover, .form--vehicle-directions .field-submit .button:focus {
        background-color: #a60028;
        color: #ffffff; }

.form--enquiry {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .form--enquiry {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .form--enquiry {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .form--enquiry::before, .form--enquiry::after {
    display: table;
    content: ' '; }
  .form--enquiry::after {
    clear: both; }
  .form--enquiry .field-enquiryform-first_name,
  .form--enquiry .field-enquiryform-last_name,
  .form--enquiry .field-enquiryform-email,
  .form--enquiry .field-enquiryform-telephone {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--enquiry .field-enquiryform-first_name,
      .form--enquiry .field-enquiryform-last_name,
      .form--enquiry .field-enquiryform-email,
      .form--enquiry .field-enquiryform-telephone {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--enquiry .field-enquiryform-first_name:last-child:not(:first-child),
    .form--enquiry .field-enquiryform-last_name:last-child:not(:first-child),
    .form--enquiry .field-enquiryform-email:last-child:not(:first-child),
    .form--enquiry .field-enquiryform-telephone:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .form--enquiry .field-enquiryform-first_name,
      .form--enquiry .field-enquiryform-last_name,
      .form--enquiry .field-enquiryform-email,
      .form--enquiry .field-enquiryform-telephone {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .form--enquiry .field-enquiryform-first_name,
    .form--enquiry .field-enquiryform-last_name,
    .form--enquiry .field-enquiryform-email,
    .form--enquiry .field-enquiryform-telephone {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .form--enquiry .field-enquiryform-first_name:last-child:not(:first-child),
        .form--enquiry .field-enquiryform-last_name:last-child:not(:first-child),
        .form--enquiry .field-enquiryform-email:last-child:not(:first-child),
        .form--enquiry .field-enquiryform-telephone:last-child:not(:first-child) {
          float: right; } }
    @media print, screen and (min-width: 64em) {
      .form--enquiry .field-enquiryform-first_name,
      .form--enquiry .field-enquiryform-last_name,
      .form--enquiry .field-enquiryform-email,
      .form--enquiry .field-enquiryform-telephone {
        width: 25%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .form--enquiry .field-enquiryform-first_name,
    .form--enquiry .field-enquiryform-last_name,
    .form--enquiry .field-enquiryform-email,
    .form--enquiry .field-enquiryform-telephone {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .form--enquiry .field-enquiryform-first_name:last-child:not(:first-child),
        .form--enquiry .field-enquiryform-last_name:last-child:not(:first-child),
        .form--enquiry .field-enquiryform-email:last-child:not(:first-child),
        .form--enquiry .field-enquiryform-telephone:last-child:not(:first-child) {
          float: right; } }
  .form--enquiry .field-enquiryform-branch,
  .form--enquiry .field-enquiryform-message,
  .form--enquiry .form-marketing,
  .form--enquiry .field-submit,
  .form--enquiry .form-disclaimer {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--enquiry .field-enquiryform-branch,
      .form--enquiry .field-enquiryform-message,
      .form--enquiry .form-marketing,
      .form--enquiry .field-submit,
      .form--enquiry .form-disclaimer {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--enquiry .field-enquiryform-branch:last-child:not(:first-child),
    .form--enquiry .field-enquiryform-message:last-child:not(:first-child),
    .form--enquiry .form-marketing:last-child:not(:first-child),
    .form--enquiry .field-submit:last-child:not(:first-child),
    .form--enquiry .form-disclaimer:last-child:not(:first-child) {
      float: right; }

.form--part-exchange .form__title {
  margin-bottom: 0.625rem;
  font-size: 1.5rem; }

.form--part-exchange .form__description {
  margin-bottom: 1.25rem;
  color: #717580;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.4; }

.form--part-exchange .field-vehicle-registration {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-bottom: 0; }
  .form--part-exchange .field-vehicle-registration input {
    width: 100%;
    height: 3.375rem;
    padding-left: 0.3125rem;
    padding-right: 0.3125rem;
    border-radius: 0.3125rem;
    box-shadow: none;
    margin-bottom: 0;
    font-size: 1.25rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.0625rem;
    text-align: center;
    border: none; }
    .form--part-exchange .field-vehicle-registration input::-webkit-input-placeholder {
      color: #868686; }
    .form--part-exchange .field-vehicle-registration input:-ms-input-placeholder {
      color: #868686; }
    .form--part-exchange .field-vehicle-registration input::placeholder {
      color: #868686; }
  .form--part-exchange .field-vehicle-registration .control-label {
    display: none; }

.form--part-exchange .field-submit {
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-top: 0.625rem;
  margin-bottom: 0; }
  .form--part-exchange .field-submit .button {
    width: 100%;
    padding: 1.125rem;
    margin-bottom: 0; }

.form--part-exchange.form--part-exchange-no-vehicle .field-vehicle-registration input {
  background-color: #F6F6F6; }

.form--sell-your-vehicle [type='text'],
.form--sell-your-vehicle [type='password'],
.form--sell-your-vehicle [type='date'],
.form--sell-your-vehicle [type='datetime'],
.form--sell-your-vehicle [type='datetime-local'],
.form--sell-your-vehicle [type='month'],
.form--sell-your-vehicle [type='week'],
.form--sell-your-vehicle [type='email'],
.form--sell-your-vehicle [type='number'],
.form--sell-your-vehicle [type='search'],
.form--sell-your-vehicle [type='tel'],
.form--sell-your-vehicle [type='time'],
.form--sell-your-vehicle [type='url'],
.form--sell-your-vehicle [type='color'],
.form--sell-your-vehicle select,
.form--sell-your-vehicle textarea {
  margin-bottom: 0.9375rem; }

.form--sell-your-vehicle label.error {
  height: 1.1875rem;
  margin-top: -0.9375rem;
  margin-bottom: 0.9375rem;
  color: #cc4b37;
  font-size: 0.8125rem;
  line-height: 1.1875rem; }

.form--sell-your-vehicle .form__back a {
  display: block;
  margin-bottom: 0.375rem; }
  .form--sell-your-vehicle .form__back a i {
    font-size: 0.75rem; }
  .form--sell-your-vehicle .form__back a span {
    line-height: 1;
    vertical-align: middle; }

.form--sell-your-vehicle .form__step0 .field-vehicle-registration {
  margin-bottom: 0.9375rem; }
  .form--sell-your-vehicle .form__step0 .field-vehicle-registration .form-group__input {
    position: relative;
    width: 100%;
    height: 3.75rem;
    padding-left: 3.75rem;
    padding-right: 0.375rem;
    background-color: #eeeeee;
    border: none;
    border-radius: 0.375rem;
    box-shadow: none; }
    .form--sell-your-vehicle .form__step0 .field-vehicle-registration .form-group__input::before {
      font-family: "67degrees";
      content: "\47";
      position: absolute;
      top: 0;
      left: 0;
      height: 3.75rem;
      width: 3.125rem;
      font-size: 1.875rem;
      line-height: 2.1;
      text-align: center;
      background-color: #000000;
      color: #ffffff;
      border-top-left-radius: 0.375rem;
      border-bottom-left-radius: 0.375rem;
      font-weight: normal;
      font-style: normal;
      letter-spacing: normal;
      text-transform: none;
      display: inline-block;
      white-space: nowrap;
      word-wrap: normal;
      direction: ltr;
      -webkit-font-feature-settings: 'liga';
      -webkit-font-smoothing: antialiased;
      vertical-align: middle; }
    .form--sell-your-vehicle .form__step0 .field-vehicle-registration .form-group__input input {
      height: 3.625rem;
      font-size: 1.875rem;
      font-weight: 700;
      text-transform: uppercase;
      background-color: #eeeeee;
      border: none;
      box-shadow: none; }
  .form--sell-your-vehicle .form__step0 .field-vehicle-registration .control-label {
    display: none; }

.form--vehicle-enquiry {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .form--vehicle-enquiry {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .form--vehicle-enquiry {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .form--vehicle-enquiry::before, .form--vehicle-enquiry::after {
    display: table;
    content: ' '; }
  .form--vehicle-enquiry::after {
    clear: both; }
  .form--vehicle-enquiry .field-vehicleenquiryform-first_name,
  .form--vehicle-enquiry .field-vehicleenquiryform-last_name,
  .form--vehicle-enquiry .field-vehicleenquiryform-email,
  .form--vehicle-enquiry .field-vehicleenquiryform-telephone {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--vehicle-enquiry .field-vehicleenquiryform-first_name,
      .form--vehicle-enquiry .field-vehicleenquiryform-last_name,
      .form--vehicle-enquiry .field-vehicleenquiryform-email,
      .form--vehicle-enquiry .field-vehicleenquiryform-telephone {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--vehicle-enquiry .field-vehicleenquiryform-first_name:last-child:not(:first-child),
    .form--vehicle-enquiry .field-vehicleenquiryform-last_name:last-child:not(:first-child),
    .form--vehicle-enquiry .field-vehicleenquiryform-email:last-child:not(:first-child),
    .form--vehicle-enquiry .field-vehicleenquiryform-telephone:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .form--vehicle-enquiry .field-vehicleenquiryform-first_name,
      .form--vehicle-enquiry .field-vehicleenquiryform-last_name,
      .form--vehicle-enquiry .field-vehicleenquiryform-email,
      .form--vehicle-enquiry .field-vehicleenquiryform-telephone {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .form--vehicle-enquiry .field-vehicleenquiryform-first_name,
    .form--vehicle-enquiry .field-vehicleenquiryform-last_name,
    .form--vehicle-enquiry .field-vehicleenquiryform-email,
    .form--vehicle-enquiry .field-vehicleenquiryform-telephone {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .form--vehicle-enquiry .field-vehicleenquiryform-first_name:last-child:not(:first-child),
        .form--vehicle-enquiry .field-vehicleenquiryform-last_name:last-child:not(:first-child),
        .form--vehicle-enquiry .field-vehicleenquiryform-email:last-child:not(:first-child),
        .form--vehicle-enquiry .field-vehicleenquiryform-telephone:last-child:not(:first-child) {
          float: right; } }
    @media print, screen and (min-width: 64em) {
      .form--vehicle-enquiry .field-vehicleenquiryform-first_name,
      .form--vehicle-enquiry .field-vehicleenquiryform-last_name,
      .form--vehicle-enquiry .field-vehicleenquiryform-email,
      .form--vehicle-enquiry .field-vehicleenquiryform-telephone {
        width: 25%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .form--vehicle-enquiry .field-vehicleenquiryform-first_name,
    .form--vehicle-enquiry .field-vehicleenquiryform-last_name,
    .form--vehicle-enquiry .field-vehicleenquiryform-email,
    .form--vehicle-enquiry .field-vehicleenquiryform-telephone {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .form--vehicle-enquiry .field-vehicleenquiryform-first_name:last-child:not(:first-child),
        .form--vehicle-enquiry .field-vehicleenquiryform-last_name:last-child:not(:first-child),
        .form--vehicle-enquiry .field-vehicleenquiryform-email:last-child:not(:first-child),
        .form--vehicle-enquiry .field-vehicleenquiryform-telephone:last-child:not(:first-child) {
          float: right; } }
  .form--vehicle-enquiry .field-vehicleenquiryform-message,
  .form--vehicle-enquiry .form-marketing,
  .form--vehicle-enquiry .field-submit,
  .form--vehicle-enquiry .form-disclaimer {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .form--vehicle-enquiry .field-vehicleenquiryform-message,
      .form--vehicle-enquiry .form-marketing,
      .form--vehicle-enquiry .field-submit,
      .form--vehicle-enquiry .form-disclaimer {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .form--vehicle-enquiry .field-vehicleenquiryform-message:last-child:not(:first-child),
    .form--vehicle-enquiry .form-marketing:last-child:not(:first-child),
    .form--vehicle-enquiry .field-submit:last-child:not(:first-child),
    .form--vehicle-enquiry .form-disclaimer:last-child:not(:first-child) {
      float: right; }

.no-image {
  position: relative;
  width: 100%;
  padding-top: 75%;
  background-color: #c3002f; }
  .no-image__text {
    position: absolute;
    margin-top: -0.625rem;
    top: 50%;
    left: 0;
    bottom: 0;
    right: 0;
    color: #ffffff;
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1;
    text-align: center; }

.vehicle--recently-viewed .no-image .no-image__text {
  margin-top: -0.375rem;
  font-size: 0.75rem; }

.vehicle--full .no-image .no-image__text {
  margin-top: -0.8125rem;
  font-size: 1.625rem; }

.vehicle--similar .no-image .no-image__text {
  margin-top: -0.625rem;
  font-size: 1.25rem; }

@media print, screen and (min-width: 40em) {
  .vehicle--compare .no-image {
    height: 11.25rem;
    padding-top: 0; } }

@media screen and (max-width: 39.9375em) {
  .vehicle--teaser .no-image .no-image__text,
  .vehicle--featured .no-image .no-image__text,
  .vehicle--featured-sidebar .no-image .no-image__text,
  .vehicle--latest .no-image .no-image__text,
  .vehicle--latest-sidebar .no-image .no-image__text,
  .vehicle--similar .no-image .no-image__text {
    margin-top: -0.8125rem;
    font-size: 1.625rem; } }

.primary-image {
  position: relative; }
  .primary-image__title {
    position: absolute;
    bottom: 0;
    width: 100%;
    text-align: left;
    background-color: rgba(0, 0, 0, 0.5);
    padding: 0.75rem;
    color: #ffffff;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1; }
  .primary-image__description {
    display: none;
    color: #ffffff;
    font-size: 1.25rem;
    line-height: 1; }
    @media print, screen and (min-width: 40em) {
      .primary-image__description {
        display: block; } }
  .primary-image__enlarge {
    position: absolute;
    right: 0.625rem;
    top: 0.625rem;
    z-index: 999;
    color: #ffffff;
    font-size: 1.875rem;
    font-weight: 700;
    line-height: 1;
    z-index: 999; }
    @media print, screen and (min-width: 40em) {
      .primary-image__enlarge {
        right: 0.9375rem;
        top: 0.9375rem; } }
    .primary-image__enlarge span {
      margin-left: 0.1875rem;
      vertical-align: middle; }
  .primary-image--vehicle .primary-image__image img {
    color: transparent; }

.secondary-image {
  position: relative; }
  .secondary-image__image {
    position: relative; }
    .secondary-image__image img {
      width: 100%;
      border-radius: 0.3125rem; }
    .secondary-image__image-overlay {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.75) 75%, rgba(0, 0, 0, 0.75) 100%);
      z-index: 1;
      border-radius: 0.3125rem; }
  .secondary-image__details {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 2; }
    .secondary-image__details-inner {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin-right: 1.25rem;
      margin-bottom: 1.25rem;
      margin-left: 1.25rem; }
  .secondary-image__title {
    color: #ffffff;
    font-size: 1.625rem;
    font-weight: 600;
    line-height: 1.2; }
  .secondary-image__icon {
    margin-left: auto; }
    .secondary-image__icon i::before {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 2.5rem;
      height: 2.5rem;
      color: #ffffff;
      background-color: #c3002f;
      border-radius: 50%; }

.offer--full {
  padding-top: 1.875rem;
  overflow: hidden; }
  @media print, screen and (min-width: 40em) {
    .offer--full {
      padding-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .offer--full {
      padding-top: 6.25rem; } }
  .offer--full .offer__heading h2, .offer--full .offer__heading .offer--featured .offer__title, .offer--featured .offer--full .offer__heading .offer__title, .offer--full .offer__heading .order-progress__title, .offer--full .offer__heading .part--featured .part__title, .part--featured .offer--full .offer__heading .part__title, .offer--full .offer__heading .part--full .part__form-title, .part--full .offer--full .offer__heading .part__form-title, .offer--full .offer__heading .post--featured .post__title, .post--featured .offer--full .offer__heading .post__title, .offer--full .offer__heading .vehicle--general .vehicle__title, .vehicle--general .offer--full .offer__heading .vehicle__title, .offer--full .offer__heading .vehicle--latest .vehicle__title, .vehicle--latest .offer--full .offer__heading .vehicle__title, .offer--full .offer__heading .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .offer--full .offer__heading .listing__title, .offer--full .offer__heading .listing--vehicle-featured .listing__title, .listing--vehicle-featured .offer--full .offer__heading .listing__title, .offer--full .offer__heading .listing--vehicle-similar .listing__title, .listing--vehicle-similar .offer--full .offer__heading .listing__title, .offer--full .offer__heading .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .offer--full .offer__heading .listing__title, .offer--full .offer__heading .listing--offer-featured .listing__title, .listing--offer-featured .offer--full .offer__heading .listing__title, .offer--full .offer__heading .page--teaser .page__title, .page--teaser .offer--full .offer__heading .page__title {
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .offer--full .offer__heading h2, .offer--full .offer__heading .offer--featured .offer__title, .offer--featured .offer--full .offer__heading .offer__title, .offer--full .offer__heading .order-progress__title, .offer--full .offer__heading .part--featured .part__title, .part--featured .offer--full .offer__heading .part__title, .offer--full .offer__heading .part--full .part__form-title, .part--full .offer--full .offer__heading .part__form-title, .offer--full .offer__heading .post--featured .post__title, .post--featured .offer--full .offer__heading .post__title, .offer--full .offer__heading .vehicle--general .vehicle__title, .vehicle--general .offer--full .offer__heading .vehicle__title, .offer--full .offer__heading .vehicle--latest .vehicle__title, .vehicle--latest .offer--full .offer__heading .vehicle__title, .offer--full .offer__heading .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .offer--full .offer__heading .listing__title, .offer--full .offer__heading .listing--vehicle-featured .listing__title, .listing--vehicle-featured .offer--full .offer__heading .listing__title, .offer--full .offer__heading .listing--vehicle-similar .listing__title, .listing--vehicle-similar .offer--full .offer__heading .listing__title, .offer--full .offer__heading .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .offer--full .offer__heading .listing__title, .offer--full .offer__heading .listing--offer-featured .listing__title, .listing--offer-featured .offer--full .offer__heading .listing__title, .offer--full .offer__heading .page--teaser .page__title, .page--teaser .offer--full .offer__heading .page__title {
        margin-bottom: 1.875rem; } }
  .offer--full .offer__link {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #c3002f;
    color: #ffffff;
    margin-bottom: 0;
    padding: 0.5rem 0.875rem;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 0.3125rem; }
    [data-whatinput='mouse'] .offer--full .offer__link {
      outline: 0; }
    .offer--full .offer__link:hover, .offer--full .offer__link:focus {
      background-color: #a60028;
      color: #ffffff; }
  .offer--full .offer__content {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto; }
    .offer--full .offer__content::before, .offer--full .offer__content::after {
      display: table;
      content: ' '; }
    .offer--full .offer__content::after {
      clear: both; }
    .offer--full .offer__content-first {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .offer--full .offer__content-first {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .offer--full .offer__content-first:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 64em) {
        .offer--full .offer__content-first {
          width: 66.66667%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .offer--full .offer__content-first {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
          .offer--full .offer__content-first:last-child:not(:first-child) {
            float: right; } }
    .offer--full .offer__content-second {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      display: none; }
      @media print, screen and (min-width: 40em) {
        .offer--full .offer__content-second {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .offer--full .offer__content-second:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 64em) {
        .offer--full .offer__content-second {
          width: 33.33333%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          display: block;
          position: -webkit-sticky;
          position: sticky;
          top: 1.875rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .offer--full .offer__content-second {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
          .offer--full .offer__content-second:last-child:not(:first-child) {
            float: right; } }
  .offer--full .offer__media .offer__primary-images {
    position: relative;
    border-radius: 0.3125rem;
    overflow: hidden; }
    .offer--full .offer__media .offer__primary-images ul {
      margin: 0;
      list-style: none; }
      .offer--full .offer__media .offer__primary-images ul img {
        width: 100%; }
  .offer--full .offer__header {
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .offer--full .offer__header {
        margin-bottom: 1.875rem; } }
    @media print, screen and (min-width: 64em) {
      .offer--full .offer__header {
        margin-bottom: 3.125rem; } }
    .offer--full .offer__header .offer__title h1 {
      margin-bottom: 0;
      font-size: 1.375rem;
      font-weight: 600;
      line-height: 1.3; }
      @media print, screen and (min-width: 40em) {
        .offer--full .offer__header .offer__title h1 {
          font-size: 1.875rem; } }
    .offer--full .offer__header .offer__monthly-price {
      margin-top: 0.3125rem;
      font-size: 1.375rem;
      font-weight: 600;
      line-height: 1.3; }
      .offer--full .offer__header .offer__monthly-price span {
        color: #717580; }
  .offer--full .offer__mobile-sidebar {
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .offer--full .offer__mobile-sidebar {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .offer--full .offer__mobile-sidebar {
        display: none; } }
  .offer--full .offer__description {
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .offer--full .offer__description {
        margin-top: 3.125rem; } }
    .offer--full .offer__description .offer__sub-title {
      margin-bottom: 1.875rem;
      font-size: 1.625rem;
      font-weight: 600;
      line-height: 1.3; }
      @media print, screen and (min-width: 40em) {
        .offer--full .offer__description .offer__sub-title {
          font-size: 1.875rem; } }
    .offer--full .offer__description-inner {
      color: #717580;
      font-size: 1rem;
      line-height: 1.8; }
      .offer--full .offer__description-inner a:not(.button) {
        color: #c3002f;
        text-decoration: none; }
        .offer--full .offer__description-inner a:not(.button):hover {
          color: #900023;
          text-decoration: none; }
      .offer--full .offer__description-inner p:last-child {
        margin-bottom: 0; }
  .offer--full .offer__table {
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .offer--full .offer__table {
        margin-top: 3.125rem; } }
    .offer--full .offer__table table {
      margin-bottom: 0;
      border: none;
      border-spacing: 0;
      width: 100% !important;
      border-radius: 0.3125rem;
      overflow: hidden; }
      .offer--full .offer__table table tbody tr {
        font-size: 0.875rem; }
        @media print, screen and (min-width: 40em) {
          .offer--full .offer__table table tbody tr {
            font-size: 1rem; } }
        .offer--full .offer__table table tbody tr:nth-child(odd) {
          background: none; }
        .offer--full .offer__table table tbody tr:nth-child(even) {
          background: none; }
        .offer--full .offer__table table tbody tr th,
        .offer--full .offer__table table tbody tr td {
          padding: 0.375rem;
          border-bottom: 1px solid #F6F6F6; }
          @media print, screen and (min-width: 40em) {
            .offer--full .offer__table table tbody tr th,
            .offer--full .offer__table table tbody tr td {
              padding: 0.625rem; } }
        .offer--full .offer__table table tbody tr th {
          width: 75%;
          font-weight: 500;
          color: #717580;
          text-align: left; }
        .offer--full .offer__table table tbody tr td {
          width: 25%;
          font-weight: 600;
          color: #222222;
          text-align: right; }
  .offer--full .offer__videos {
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .offer--full .offer__videos {
        margin-top: 3.125rem; } }
    .offer--full .offer__videos ul {
      margin: 0;
      list-style: none; }
      .offer--full .offer__videos ul li {
        margin-bottom: 1.25rem; }
        @media print, screen and (min-width: 40em) {
          .offer--full .offer__videos ul li {
            margin-bottom: 1.875rem; } }
        .offer--full .offer__videos ul li::last-child {
          margin-bottom: 0; }
        .offer--full .offer__videos ul li iframe {
          border-radius: 0.3125rem; }
  .offer--full .offer__secondary-images {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 97.5rem;
    margin-top: 1.875rem; }
    .offer--full .offer__secondary-images::before, .offer--full .offer__secondary-images::after {
      display: table;
      content: ' '; }
    .offer--full .offer__secondary-images::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .offer--full .offer__secondary-images {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .offer--full .offer__secondary-images:last-child:not(:first-child) {
      float: right; }
    .offer--full .offer__secondary-images, .offer--full .offer__secondary-images:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .offer--full .offer__secondary-images {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .offer--full .offer__secondary-images {
        margin-top: 6.25rem; } }
    .offer--full .offer__secondary-images ul {
      margin: 0;
      list-style: none; }
      .offer--full .offer__secondary-images ul li img {
        border-radius: 0.3125rem; }
  .offer--full .offer__contact {
    padding: 1.875rem;
    background-color: #ffffff;
    border-radius: 0.3125rem; }
    .offer--full .offer__contact h3, .offer--full .offer__contact .block--sidebar .block__title, .block--sidebar .offer--full .offer__contact .block__title, .offer--full .offer__contact .offer--featured .offer__sub-title, .offer--featured .offer--full .offer__contact .offer__sub-title, .offer--full .offer__contact .add-on__title, .offer--full .offer__contact .calendar__header .calendar__month span, .calendar__header .calendar__month .offer--full .offer__contact span, .offer--full .offer__contact .collection-delivery__title, .offer--full .offer__contact .order-payment__title, .offer--full .offer__contact .order-state-summary__vehicle-title, .offer--full .offer__contact .part--featured .part__sub-title, .part--featured .offer--full .offer__contact .part__sub-title, .offer--full .offer__contact .post--featured .post__sub-title, .post--featured .offer--full .offer__contact .post__sub-title, .offer--full .offer__contact .quick-search__legend, .offer--full .offer__contact .listing--showroom-teaser .listing__title h1, .listing--showroom-teaser .listing__title .offer--full .offer__contact h1, .offer--full .offer__contact .listing--post-teaser .listing__title h1, .listing--post-teaser .listing__title .offer--full .offer__contact h1, .offer--full .offer__contact .listing--offer-teaser .listing__title h1, .listing--offer-teaser .listing__title .offer--full .offer__contact h1, .offer--full .offer__contact .listing--custom-entry-teaser .listing__title h1, .listing--custom-entry-teaser .listing__title .offer--full .offer__contact h1, .offer--full .offer__contact .listing--vehicle-teaser .listing__title h1, .listing--vehicle-teaser .listing__title .offer--full .offer__contact h1, .offer--full .offer__contact .block--index-header .block__title h1, .block--index-header .block__title .offer--full .offer__contact h1, .offer--full .offer__contact .branch--contact .branch__opening-hours-title, .branch--contact .offer--full .offer__contact .branch__opening-hours-title, .offer--full .offer__contact .form--part-exchange .form__title, .form--part-exchange .offer--full .offer__contact .form__title, .offer--full .offer__contact .finance-table--full .finance-table__title, .finance-table--full .offer--full .offer__contact .finance-table__title, .offer--full .offer__contact .finance-checker__details-title, .offer--full .offer__contact .finance-table--order .finance-table__title, .finance-table--order .offer--full .offer__contact .finance-table__title {
      display: none;
      margin-bottom: 0.625rem;
      font-size: 1.5rem; }
      @media print, screen and (min-width: 40em) {
        .offer--full .offer__contact h3, .offer--full .offer__contact .block--sidebar .block__title, .block--sidebar .offer--full .offer__contact .block__title, .offer--full .offer__contact .offer--featured .offer__sub-title, .offer--featured .offer--full .offer__contact .offer__sub-title, .offer--full .offer__contact .add-on__title, .offer--full .offer__contact .calendar__header .calendar__month span, .calendar__header .calendar__month .offer--full .offer__contact span, .offer--full .offer__contact .collection-delivery__title, .offer--full .offer__contact .order-payment__title, .offer--full .offer__contact .order-state-summary__vehicle-title, .offer--full .offer__contact .part--featured .part__sub-title, .part--featured .offer--full .offer__contact .part__sub-title, .offer--full .offer__contact .post--featured .post__sub-title, .post--featured .offer--full .offer__contact .post__sub-title, .offer--full .offer__contact .quick-search__legend, .offer--full .offer__contact .listing--showroom-teaser .listing__title h1, .listing--showroom-teaser .listing__title .offer--full .offer__contact h1, .offer--full .offer__contact .listing--post-teaser .listing__title h1, .listing--post-teaser .listing__title .offer--full .offer__contact h1, .offer--full .offer__contact .listing--offer-teaser .listing__title h1, .listing--offer-teaser .listing__title .offer--full .offer__contact h1, .offer--full .offer__contact .listing--custom-entry-teaser .listing__title h1, .listing--custom-entry-teaser .listing__title .offer--full .offer__contact h1, .offer--full .offer__contact .listing--vehicle-teaser .listing__title h1, .listing--vehicle-teaser .listing__title .offer--full .offer__contact h1, .offer--full .offer__contact .block--index-header .block__title h1, .block--index-header .block__title .offer--full .offer__contact h1, .offer--full .offer__contact .branch--contact .branch__opening-hours-title, .branch--contact .offer--full .offer__contact .branch__opening-hours-title, .offer--full .offer__contact .form--part-exchange .form__title, .form--part-exchange .offer--full .offer__contact .form__title, .offer--full .offer__contact .finance-table--full .finance-table__title, .finance-table--full .offer--full .offer__contact .finance-table__title, .offer--full .offer__contact .finance-checker__details-title, .offer--full .offer__contact .finance-table--order .finance-table__title, .finance-table--order .offer--full .offer__contact .finance-table__title {
          display: block; } }
    .offer--full .offer__contact p {
      display: none;
      color: #717580;
      font-size: 1rem;
      font-weight: 500;
      line-height: 1.4; }
      @media print, screen and (min-width: 40em) {
        .offer--full .offer__contact p {
          display: block; } }
  .offer--full .offer__telephone {
    margin-top: 1.25rem; }
    .offer--full .offer__telephone-label {
      color: #717580;
      font-size: 1rem;
      font-weight: 500;
      line-height: 1.4; }
    .offer--full .offer__telephone-value {
      font-size: 1.5rem;
      font-weight: 700;
      line-height: 1.4; }
      .offer--full .offer__telephone-value i {
        margin-right: 0.3125rem;
        color: #c3002f; }
      .offer--full .offer__telephone-value span {
        vertical-align: middle; }
  .offer--full .offer__form {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-top: 1.875rem; }
    .offer--full .offer__form::before, .offer--full .offer__form::after {
      display: table;
      content: ' '; }
    .offer--full .offer__form::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .offer--full .offer__form {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .offer--full .offer__form:last-child:not(:first-child) {
      float: right; }
    .offer--full .offer__form, .offer--full .offer__form:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .offer--full .offer__form {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .offer--full .offer__form {
        margin-top: 6.25rem; } }
    .offer--full .offer__form-title h2, .offer--full .offer__form-title .offer--featured .offer__title, .offer--featured .offer--full .offer__form-title .offer__title, .offer--full .offer__form-title .order-progress__title, .offer--full .offer__form-title .part--featured .part__title, .part--featured .offer--full .offer__form-title .part__title, .offer--full .offer__form-title .part--full .part__form-title, .part--full .offer--full .offer__form-title .part__form-title, .offer--full .offer__form-title .post--featured .post__title, .post--featured .offer--full .offer__form-title .post__title, .offer--full .offer__form-title .vehicle--general .vehicle__title, .vehicle--general .offer--full .offer__form-title .vehicle__title, .offer--full .offer__form-title .vehicle--latest .vehicle__title, .vehicle--latest .offer--full .offer__form-title .vehicle__title, .offer--full .offer__form-title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .offer--full .offer__form-title .listing__title, .offer--full .offer__form-title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .offer--full .offer__form-title .listing__title, .offer--full .offer__form-title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .offer--full .offer__form-title .listing__title, .offer--full .offer__form-title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .offer--full .offer__form-title .listing__title, .offer--full .offer__form-title .listing--offer-featured .listing__title, .listing--offer-featured .offer--full .offer__form-title .listing__title, .offer--full .offer__form-title .page--teaser .page__title, .page--teaser .offer--full .offer__form-title .page__title {
      margin-bottom: 1.875rem;
      font-size: 1.625rem;
      font-weight: 600;
      line-height: 1.3; }
      @media print, screen and (min-width: 40em) {
        .offer--full .offer__form-title h2, .offer--full .offer__form-title .offer--featured .offer__title, .offer--featured .offer--full .offer__form-title .offer__title, .offer--full .offer__form-title .order-progress__title, .offer--full .offer__form-title .part--featured .part__title, .part--featured .offer--full .offer__form-title .part__title, .offer--full .offer__form-title .part--full .part__form-title, .part--full .offer--full .offer__form-title .part__form-title, .offer--full .offer__form-title .post--featured .post__title, .post--featured .offer--full .offer__form-title .post__title, .offer--full .offer__form-title .vehicle--general .vehicle__title, .vehicle--general .offer--full .offer__form-title .vehicle__title, .offer--full .offer__form-title .vehicle--latest .vehicle__title, .vehicle--latest .offer--full .offer__form-title .vehicle__title, .offer--full .offer__form-title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .offer--full .offer__form-title .listing__title, .offer--full .offer__form-title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .offer--full .offer__form-title .listing__title, .offer--full .offer__form-title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .offer--full .offer__form-title .listing__title, .offer--full .offer__form-title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .offer--full .offer__form-title .listing__title, .offer--full .offer__form-title .listing--offer-featured .listing__title, .listing--offer-featured .offer--full .offer__form-title .listing__title, .offer--full .offer__form-title .page--teaser .page__title, .page--teaser .offer--full .offer__form-title .page__title {
          font-size: 1.875rem; } }

.offer--teaser {
  height: 100%;
  background-color: #ffffff;
  border-radius: 0.3125rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .offer--teaser .offer__primary-images {
    position: relative;
    border-top-left-radius: 0.3125rem;
    border-top-right-radius: 0.3125rem;
    overflow: hidden; }
    .offer--teaser .offer__primary-images img {
      width: 100%;
      transition: all 0.5s; }
      .offer--teaser .offer__primary-images img:hover {
        opacity: .8; }
  .offer--teaser .offer__details {
    position: relative;
    padding: 1.25rem 0.625rem;
    background-color: #ffffff; }
    @media print, screen and (min-width: 40em) {
      .offer--teaser .offer__details {
        padding: 1.25rem; } }
  .offer--teaser .offer__title h2, .offer--teaser .offer__title .offer--featured .offer__title, .offer--featured .offer--teaser .offer__title .offer__title, .offer--teaser .offer__title .order-progress__title, .offer--teaser .offer__title .part--featured .part__title, .part--featured .offer--teaser .offer__title .part__title, .offer--teaser .offer__title .part--full .part__form-title, .part--full .offer--teaser .offer__title .part__form-title, .offer--teaser .offer__title .post--featured .post__title, .post--featured .offer--teaser .offer__title .post__title, .offer--teaser .offer__title .vehicle--general .vehicle__title, .vehicle--general .offer--teaser .offer__title .vehicle__title, .offer--teaser .offer__title .vehicle--latest .vehicle__title, .vehicle--latest .offer--teaser .offer__title .vehicle__title, .offer--teaser .offer__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .offer--teaser .offer__title .listing__title, .offer--teaser .offer__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .offer--teaser .offer__title .listing__title, .offer--teaser .offer__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .offer--teaser .offer__title .listing__title, .offer--teaser .offer__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .offer--teaser .offer__title .listing__title, .offer--teaser .offer__title .listing--offer-featured .listing__title, .listing--offer-featured .offer--teaser .offer__title .listing__title, .offer--teaser .offer__title .page--teaser .page__title, .page--teaser .offer--teaser .offer__title .page__title {
    margin-bottom: 0;
    color: #222222;
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.2; }
    @media print, screen and (min-width: 40em) {
      .offer--teaser .offer__title h2, .offer--teaser .offer__title .offer--featured .offer__title, .offer--featured .offer--teaser .offer__title .offer__title, .offer--teaser .offer__title .order-progress__title, .offer--teaser .offer__title .part--featured .part__title, .part--featured .offer--teaser .offer__title .part__title, .offer--teaser .offer__title .part--full .part__form-title, .part--full .offer--teaser .offer__title .part__form-title, .offer--teaser .offer__title .post--featured .post__title, .post--featured .offer--teaser .offer__title .post__title, .offer--teaser .offer__title .vehicle--general .vehicle__title, .vehicle--general .offer--teaser .offer__title .vehicle__title, .offer--teaser .offer__title .vehicle--latest .vehicle__title, .vehicle--latest .offer--teaser .offer__title .vehicle__title, .offer--teaser .offer__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .offer--teaser .offer__title .listing__title, .offer--teaser .offer__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .offer--teaser .offer__title .listing__title, .offer--teaser .offer__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .offer--teaser .offer__title .listing__title, .offer--teaser .offer__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .offer--teaser .offer__title .listing__title, .offer--teaser .offer__title .listing--offer-featured .listing__title, .listing--offer-featured .offer--teaser .offer__title .listing__title, .offer--teaser .offer__title .page--teaser .page__title, .page--teaser .offer--teaser .offer__title .page__title {
        font-size: 1.375rem; } }
  .offer--teaser .offer__sub-title {
    margin-top: 0.3125rem;
    display: block;
    color: #666666;
    font-size: 0.875rem;
    font-weight: 500; }
    @media print, screen and (min-width: 40em) {
      .offer--teaser .offer__sub-title {
        font-size: 1.0625rem; } }
  .offer--teaser .offer__bottom {
    display: -ms-grid;
    display: grid;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    gap: 1.875rem;
    margin-top: auto;
    padding: 0.9375rem 0.625rem;
    border-top: 1px solid #E8E8E8; }
    @media print, screen and (min-width: 40em) {
      .offer--teaser .offer__bottom {
        padding: 1.25rem; } }
  .offer--teaser .offer__link a {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #c3002f;
    color: #ffffff;
    margin-bottom: 0;
    padding: 0.8125rem;
    width: 100%;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 0.3125rem; }
    [data-whatinput='mouse'] .offer--teaser .offer__link a {
      outline: 0; }
    .offer--teaser .offer__link a:hover, .offer--teaser .offer__link a:focus {
      background-color: #a60028;
      color: #ffffff; }
    @media print, screen and (min-width: 40em) {
      .offer--teaser .offer__link a {
        padding: 1rem; } }
  .offer--teaser .offer__monthly-price {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.2;
    text-align: right; }
    @media print, screen and (min-width: 40em) {
      .offer--teaser .offer__monthly-price {
        font-size: 1.375rem; } }
    .offer--teaser .offer__monthly-price span {
      color: #717580;
      font-size: 70%; }

.page--contact {
  padding-bottom: 1.875rem; }
  @media print, screen and (min-width: 40em) {
    .page--contact {
      padding-bottom: 3.125rem; } }
  .page--contact > .page__primary-images {
    position: relative;
    overflow: hidden; }
    .page--contact > .page__primary-images ul {
      margin: 0;
      list-style: none; }
    .page--contact > .page__primary-images img {
      width: 100%; }
  .page--contact > .page__content {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    .page--contact > .page__content::before, .page--contact > .page__content::after {
      display: table;
      content: ' '; }
    .page--contact > .page__content::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .page--contact > .page__content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--contact > .page__content:last-child:not(:first-child) {
      float: right; }
    .page--contact > .page__content, .page--contact > .page__content:last-child {
      float: none; }
    .page--contact > .page__content .page__title {
      margin-top: 1.875rem;
      margin-bottom: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        .page--contact > .page__content .page__title {
          margin-top: 3.125rem;
          margin-bottom: 1.875rem; } }
      @media print, screen and (min-width: 64em) {
        .page--contact > .page__content .page__title {
          margin-top: 6.25rem; } }
      .page--contact > .page__content .page__title h1 {
        font-size: 1.5rem; }
        @media print, screen and (min-width: 40em) {
          .page--contact > .page__content .page__title h1 {
            font-size: 1.875rem; } }
      .page--contact > .page__content .page__title h2, .page--contact > .page__content .page__title .offer--featured .offer__title, .offer--featured .page--contact > .page__content .page__title .offer__title, .page--contact > .page__content .page__title .order-progress__title, .page--contact > .page__content .page__title .part--featured .part__title, .part--featured .page--contact > .page__content .page__title .part__title, .page--contact > .page__content .page__title .part--full .part__form-title, .part--full .page--contact > .page__content .page__title .part__form-title, .page--contact > .page__content .page__title .post--featured .post__title, .post--featured .page--contact > .page__content .page__title .post__title, .page--contact > .page__content .page__title .vehicle--general .vehicle__title, .vehicle--general .page--contact > .page__content .page__title .vehicle__title, .page--contact > .page__content .page__title .vehicle--latest .vehicle__title, .vehicle--latest .page--contact > .page__content .page__title .vehicle__title, .page--contact > .page__content .page__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .page--contact > .page__content .page__title .listing__title, .page--contact > .page__content .page__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .page--contact > .page__content .page__title .listing__title, .page--contact > .page__content .page__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .page--contact > .page__content .page__title .listing__title, .page--contact > .page__content .page__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .page--contact > .page__content .page__title .listing__title, .page--contact > .page__content .page__title .listing--offer-featured .listing__title, .listing--offer-featured .page--contact > .page__content .page__title .listing__title, .page--contact > .page__content .page__title .page--teaser .page__title, .page--teaser .page--contact > .page__content .page__title .page__title {
        font-size: 1.25rem; }
        @media print, screen and (min-width: 40em) {
          .page--contact > .page__content .page__title h2, .page--contact > .page__content .page__title .offer--featured .offer__title, .offer--featured .page--contact > .page__content .page__title .offer__title, .page--contact > .page__content .page__title .order-progress__title, .page--contact > .page__content .page__title .part--featured .part__title, .part--featured .page--contact > .page__content .page__title .part__title, .page--contact > .page__content .page__title .part--full .part__form-title, .part--full .page--contact > .page__content .page__title .part__form-title, .page--contact > .page__content .page__title .post--featured .post__title, .post--featured .page--contact > .page__content .page__title .post__title, .page--contact > .page__content .page__title .vehicle--general .vehicle__title, .vehicle--general .page--contact > .page__content .page__title .vehicle__title, .page--contact > .page__content .page__title .vehicle--latest .vehicle__title, .vehicle--latest .page--contact > .page__content .page__title .vehicle__title, .page--contact > .page__content .page__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .page--contact > .page__content .page__title .listing__title, .page--contact > .page__content .page__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .page--contact > .page__content .page__title .listing__title, .page--contact > .page__content .page__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .page--contact > .page__content .page__title .listing__title, .page--contact > .page__content .page__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .page--contact > .page__content .page__title .listing__title, .page--contact > .page__content .page__title .listing--offer-featured .listing__title, .listing--offer-featured .page--contact > .page__content .page__title .listing__title, .page--contact > .page__content .page__title .page--teaser .page__title, .page--teaser .page--contact > .page__content .page__title .page__title {
            font-size: 1.625rem; } }
    .page--contact > .page__content .page__description {
      color: #717580;
      font-size: 1rem; }
      .page--contact > .page__content .page__description a:not(.button) {
        color: #000000;
        font-weight: 700;
        text-decoration: none; }
        .page--contact > .page__content .page__description a:not(.button):hover {
          color: black;
          text-decoration: none; }
      .page--contact > .page__content .page__description h1,
      .page--contact > .page__content .page__description h2,
      .page--contact > .page__content .page__description .offer--featured .offer__title,
      .offer--featured .page--contact > .page__content .page__description .offer__title,
      .page--contact > .page__content .page__description .order-progress__title,
      .page--contact > .page__content .page__description .part--featured .part__title,
      .part--featured .page--contact > .page__content .page__description .part__title,
      .page--contact > .page__content .page__description .part--full .part__form-title,
      .part--full .page--contact > .page__content .page__description .part__form-title,
      .page--contact > .page__content .page__description .post--featured .post__title,
      .post--featured .page--contact > .page__content .page__description .post__title,
      .page--contact > .page__content .page__description .vehicle--general .vehicle__title,
      .vehicle--general .page--contact > .page__content .page__description .vehicle__title,
      .page--contact > .page__content .page__description .vehicle--latest .vehicle__title,
      .vehicle--latest .page--contact > .page__content .page__description .vehicle__title,
      .page--contact > .page__content .page__description .listing--custom-entry-review-featured .listing__title,
      .listing--custom-entry-review-featured .page--contact > .page__content .page__description .listing__title,
      .page--contact > .page__content .page__description .listing--vehicle-featured .listing__title,
      .listing--vehicle-featured .page--contact > .page__content .page__description .listing__title,
      .page--contact > .page__content .page__description .listing--vehicle-similar .listing__title,
      .listing--vehicle-similar .page--contact > .page__content .page__description .listing__title,
      .page--contact > .page__content .page__description .listing--vehicle-in-stock .listing__title,
      .listing--vehicle-in-stock .page--contact > .page__content .page__description .listing__title,
      .page--contact > .page__content .page__description .listing--offer-featured .listing__title,
      .listing--offer-featured .page--contact > .page__content .page__description .listing__title,
      .page--contact > .page__content .page__description .page--teaser .page__title,
      .page--teaser .page--contact > .page__content .page__description .page__title,
      .page--contact > .page__content .page__description h3,
      .page--contact > .page__content .page__description .block--sidebar .block__title,
      .block--sidebar .page--contact > .page__content .page__description .block__title,
      .page--contact > .page__content .page__description .offer--featured .offer__sub-title,
      .offer--featured .page--contact > .page__content .page__description .offer__sub-title,
      .page--contact > .page__content .page__description .add-on__title,
      .page--contact > .page__content .page__description .calendar__header .calendar__month span,
      .calendar__header .calendar__month .page--contact > .page__content .page__description span,
      .page--contact > .page__content .page__description .collection-delivery__title,
      .page--contact > .page__content .page__description .order-payment__title,
      .page--contact > .page__content .page__description .order-state-summary__vehicle-title,
      .page--contact > .page__content .page__description .part--featured .part__sub-title,
      .part--featured .page--contact > .page__content .page__description .part__sub-title,
      .page--contact > .page__content .page__description .post--featured .post__sub-title,
      .post--featured .page--contact > .page__content .page__description .post__sub-title,
      .page--contact > .page__content .page__description .quick-search__legend,
      .page--contact > .page__content .page__description .listing--showroom-teaser .listing__title h1,
      .listing--showroom-teaser .listing__title .page--contact > .page__content .page__description h1,
      .page--contact > .page__content .page__description .listing--post-teaser .listing__title h1,
      .listing--post-teaser .listing__title .page--contact > .page__content .page__description h1,
      .page--contact > .page__content .page__description .listing--offer-teaser .listing__title h1,
      .listing--offer-teaser .listing__title .page--contact > .page__content .page__description h1,
      .page--contact > .page__content .page__description .listing--custom-entry-teaser .listing__title h1,
      .listing--custom-entry-teaser .listing__title .page--contact > .page__content .page__description h1,
      .page--contact > .page__content .page__description .listing--vehicle-teaser .listing__title h1,
      .listing--vehicle-teaser .listing__title .page--contact > .page__content .page__description h1,
      .page--contact > .page__content .page__description .block--index-header .block__title h1,
      .block--index-header .block__title .page--contact > .page__content .page__description h1,
      .page--contact > .page__content .page__description .branch--contact .branch__opening-hours-title,
      .branch--contact .page--contact > .page__content .page__description .branch__opening-hours-title,
      .page--contact > .page__content .page__description .form--part-exchange .form__title,
      .form--part-exchange .page--contact > .page__content .page__description .form__title,
      .page--contact > .page__content .page__description .finance-table--full .finance-table__title,
      .finance-table--full .page--contact > .page__content .page__description .finance-table__title,
      .page--contact > .page__content .page__description .finance-checker__details-title,
      .page--contact > .page__content .page__description .finance-table--order .finance-table__title,
      .finance-table--order .page--contact > .page__content .page__description .finance-table__title,
      .page--contact > .page__content .page__description h4,
      .page--contact > .page__content .page__description .video--page .video__title,
      .video--page .page--contact > .page__content .page__description .video__title,
      .page--contact > .page__content .page__description .new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
      .new-vehicle--full .new-vehicle__specification > ul > li .page--contact > .page__content .page__description .specification-category__title,
      .page--contact > .page__content .page__description .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
      .new-vehicle--full .new-vehicle__technical-data > ul > li .page--contact > .page__content .page__description .technical-data-category__title,
      .page--contact > .page__content .page__description .vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
      .vehicle--full-reveal .vehicle__technical-data > ul > li .page--contact > .page__content .page__description .technical-data-category__title,
      .page--contact > .page__content .page__description .finance-form .finance-form__title,
      .finance-form .page--contact > .page__content .page__description .finance-form__title,
      .page--contact > .page__content .page__description .finance-tables .finance-warning,
      .finance-tables .page--contact > .page__content .page__description .finance-warning,
      .page--contact > .page__content .page__description .finance-table--full .finance-table__checker-title,
      .finance-table--full .page--contact > .page__content .page__description .finance-table__checker-title,
      .page--contact > .page__content .page__description .finance-example__title,
      .page--contact > .page__content .page__description h5,
      .page--contact > .page__content .page__description .block--sidebar .block__sub-title,
      .block--sidebar .page--contact > .page__content .page__description .block__sub-title,
      .page--contact > .page__content .page__description h6 {
        padding-top: 0.625rem; }
      .page--contact > .page__content .page__description p:last-child {
        margin-bottom: 0; }
    .page--contact > .page__content .page__files {
      margin-top: 1.875rem; }
      .page--contact > .page__content .page__files ul {
        margin: 0;
        list-style: none; }
        .page--contact > .page__content .page__files ul li {
          display: inline-block;
          margin-right: 0.625rem; }
          .page--contact > .page__content .page__files ul li:last-child {
            margin-right: 0; }
  .page--contact .page__branches {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-top: 1.875rem; }
    .page--contact .page__branches::before, .page--contact .page__branches::after {
      display: table;
      content: ' '; }
    .page--contact .page__branches::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .page--contact .page__branches {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--contact .page__branches:last-child:not(:first-child) {
      float: right; }
    .page--contact .page__branches, .page--contact .page__branches:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .page--contact .page__branches {
        margin-top: 3.125rem; } }
  .page--contact .page__videos {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-top: 1.875rem; }
    .page--contact .page__videos::before, .page--contact .page__videos::after {
      display: table;
      content: ' '; }
    .page--contact .page__videos::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .page--contact .page__videos {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--contact .page__videos:last-child:not(:first-child) {
      float: right; }
    .page--contact .page__videos, .page--contact .page__videos:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .page--contact .page__videos {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .page--contact .page__videos {
        margin-top: 6.25rem; } }
    .page--contact .page__videos ul {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      gap: 1.25rem;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      margin: 0;
      list-style: none; }
      @media print, screen and (min-width: 40em) {
        .page--contact .page__videos ul {
          gap: 1.875rem; } }
      @media screen and (min-width: 48em) {
        .page--contact .page__videos ul {
          -webkit-flex-direction: row;
              -ms-flex-direction: row;
                  flex-direction: row; } }
      .page--contact .page__videos ul li {
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1; }
        .page--contact .page__videos ul li iframe {
          border-radius: 0.3125rem; }
  .page--contact .page__secondary-images {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 97.5rem;
    margin-top: 1.875rem; }
    .page--contact .page__secondary-images::before, .page--contact .page__secondary-images::after {
      display: table;
      content: ' '; }
    .page--contact .page__secondary-images::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .page--contact .page__secondary-images {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--contact .page__secondary-images:last-child:not(:first-child) {
      float: right; }
    .page--contact .page__secondary-images, .page--contact .page__secondary-images:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .page--contact .page__secondary-images {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .page--contact .page__secondary-images {
        margin-top: 6.25rem; } }
    .page--contact .page__secondary-images ul {
      margin: 0;
      list-style: none; }
      .page--contact .page__secondary-images ul li img {
        border-radius: 0.3125rem; }
  .page--contact .page__short-description {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-top: 1.875rem;
    color: #717580;
    font-size: 1rem;
    line-height: 1.8; }
    .page--contact .page__short-description::before, .page--contact .page__short-description::after {
      display: table;
      content: ' '; }
    .page--contact .page__short-description::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .page--contact .page__short-description {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--contact .page__short-description:last-child:not(:first-child) {
      float: right; }
    .page--contact .page__short-description, .page--contact .page__short-description:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .page--contact .page__short-description {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .page--contact .page__short-description {
        margin-top: 6.25rem; } }
    .page--contact .page__short-description p:last-child {
      margin-bottom: 0; }
  .page--contact .page__form {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-top: 1.875rem; }
    .page--contact .page__form::before, .page--contact .page__form::after {
      display: table;
      content: ' '; }
    .page--contact .page__form::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .page--contact .page__form {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--contact .page__form:last-child:not(:first-child) {
      float: right; }
    .page--contact .page__form, .page--contact .page__form:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .page--contact .page__form {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .page--contact .page__form {
        margin-top: 6.25rem; } }
    .page--contact .page__form-title h2, .page--contact .page__form-title .offer--featured .offer__title, .offer--featured .page--contact .page__form-title .offer__title, .page--contact .page__form-title .order-progress__title, .page--contact .page__form-title .part--featured .part__title, .part--featured .page--contact .page__form-title .part__title, .page--contact .page__form-title .part--full .part__form-title, .part--full .page--contact .page__form-title .part__form-title, .page--contact .page__form-title .post--featured .post__title, .post--featured .page--contact .page__form-title .post__title, .page--contact .page__form-title .vehicle--general .vehicle__title, .vehicle--general .page--contact .page__form-title .vehicle__title, .page--contact .page__form-title .vehicle--latest .vehicle__title, .vehicle--latest .page--contact .page__form-title .vehicle__title, .page--contact .page__form-title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .page--contact .page__form-title .listing__title, .page--contact .page__form-title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .page--contact .page__form-title .listing__title, .page--contact .page__form-title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .page--contact .page__form-title .listing__title, .page--contact .page__form-title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .page--contact .page__form-title .listing__title, .page--contact .page__form-title .listing--offer-featured .listing__title, .listing--offer-featured .page--contact .page__form-title .listing__title, .page--contact .page__form-title .page--teaser .page__title, .page--teaser .page--contact .page__form-title .page__title {
      margin-bottom: 1.25rem;
      font-size: 1.5rem; }
      @media print, screen and (min-width: 40em) {
        .page--contact .page__form-title h2, .page--contact .page__form-title .offer--featured .offer__title, .offer--featured .page--contact .page__form-title .offer__title, .page--contact .page__form-title .order-progress__title, .page--contact .page__form-title .part--featured .part__title, .part--featured .page--contact .page__form-title .part__title, .page--contact .page__form-title .part--full .part__form-title, .part--full .page--contact .page__form-title .part__form-title, .page--contact .page__form-title .post--featured .post__title, .post--featured .page--contact .page__form-title .post__title, .page--contact .page__form-title .vehicle--general .vehicle__title, .vehicle--general .page--contact .page__form-title .vehicle__title, .page--contact .page__form-title .vehicle--latest .vehicle__title, .vehicle--latest .page--contact .page__form-title .vehicle__title, .page--contact .page__form-title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .page--contact .page__form-title .listing__title, .page--contact .page__form-title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .page--contact .page__form-title .listing__title, .page--contact .page__form-title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .page--contact .page__form-title .listing__title, .page--contact .page__form-title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .page--contact .page__form-title .listing__title, .page--contact .page__form-title .listing--offer-featured .listing__title, .listing--offer-featured .page--contact .page__form-title .listing__title, .page--contact .page__form-title .page--teaser .page__title, .page--teaser .page--contact .page__form-title .page__title {
          margin-bottom: 1.875rem;
          font-size: 1.875rem; } }

.page--default > .page__primary-images {
  position: relative;
  overflow: hidden; }
  .page--default > .page__primary-images ul {
    margin: 0;
    list-style: none; }
  .page--default > .page__primary-images img {
    width: 100%; }

.page--default > .page__content {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  .page--default > .page__content::before, .page--default > .page__content::after {
    display: table;
    content: ' '; }
  .page--default > .page__content::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .page--default > .page__content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .page--default > .page__content:last-child:not(:first-child) {
    float: right; }
  .page--default > .page__content, .page--default > .page__content:last-child {
    float: none; }
  .page--default > .page__content .page__title {
    margin-top: 1.875rem;
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .page--default > .page__content .page__title {
        margin-top: 3.125rem;
        margin-bottom: 1.875rem; } }
    @media print, screen and (min-width: 64em) {
      .page--default > .page__content .page__title {
        margin-top: 6.25rem; } }
    .page--default > .page__content .page__title h1 {
      font-size: 1.5rem; }
      @media print, screen and (min-width: 40em) {
        .page--default > .page__content .page__title h1 {
          font-size: 1.875rem; } }
    .page--default > .page__content .page__title h2, .page--default > .page__content .page__title .offer--featured .offer__title, .offer--featured .page--default > .page__content .page__title .offer__title, .page--default > .page__content .page__title .order-progress__title, .page--default > .page__content .page__title .part--featured .part__title, .part--featured .page--default > .page__content .page__title .part__title, .page--default > .page__content .page__title .part--full .part__form-title, .part--full .page--default > .page__content .page__title .part__form-title, .page--default > .page__content .page__title .post--featured .post__title, .post--featured .page--default > .page__content .page__title .post__title, .page--default > .page__content .page__title .vehicle--general .vehicle__title, .vehicle--general .page--default > .page__content .page__title .vehicle__title, .page--default > .page__content .page__title .vehicle--latest .vehicle__title, .vehicle--latest .page--default > .page__content .page__title .vehicle__title, .page--default > .page__content .page__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .page--default > .page__content .page__title .listing__title, .page--default > .page__content .page__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .page--default > .page__content .page__title .listing__title, .page--default > .page__content .page__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .page--default > .page__content .page__title .listing__title, .page--default > .page__content .page__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .page--default > .page__content .page__title .listing__title, .page--default > .page__content .page__title .listing--offer-featured .listing__title, .listing--offer-featured .page--default > .page__content .page__title .listing__title, .page--default > .page__content .page__title .page--teaser .page__title, .page--teaser .page--default > .page__content .page__title .page__title {
      font-size: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        .page--default > .page__content .page__title h2, .page--default > .page__content .page__title .offer--featured .offer__title, .offer--featured .page--default > .page__content .page__title .offer__title, .page--default > .page__content .page__title .order-progress__title, .page--default > .page__content .page__title .part--featured .part__title, .part--featured .page--default > .page__content .page__title .part__title, .page--default > .page__content .page__title .part--full .part__form-title, .part--full .page--default > .page__content .page__title .part__form-title, .page--default > .page__content .page__title .post--featured .post__title, .post--featured .page--default > .page__content .page__title .post__title, .page--default > .page__content .page__title .vehicle--general .vehicle__title, .vehicle--general .page--default > .page__content .page__title .vehicle__title, .page--default > .page__content .page__title .vehicle--latest .vehicle__title, .vehicle--latest .page--default > .page__content .page__title .vehicle__title, .page--default > .page__content .page__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .page--default > .page__content .page__title .listing__title, .page--default > .page__content .page__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .page--default > .page__content .page__title .listing__title, .page--default > .page__content .page__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .page--default > .page__content .page__title .listing__title, .page--default > .page__content .page__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .page--default > .page__content .page__title .listing__title, .page--default > .page__content .page__title .listing--offer-featured .listing__title, .listing--offer-featured .page--default > .page__content .page__title .listing__title, .page--default > .page__content .page__title .page--teaser .page__title, .page--teaser .page--default > .page__content .page__title .page__title {
          font-size: 1.625rem; } }
  .page--default > .page__content .page__description {
    color: #717580;
    font-size: 1rem; }
    .page--default > .page__content .page__description a:not(.button) {
      color: #000000;
      font-weight: 700;
      text-decoration: none; }
      .page--default > .page__content .page__description a:not(.button):hover {
        color: black;
        text-decoration: none; }
    .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description h2,
    .page--default > .page__content .page__description .offer--featured .offer__title,
    .offer--featured .page--default > .page__content .page__description .offer__title,
    .page--default > .page__content .page__description .order-progress__title,
    .page--default > .page__content .page__description .part--featured .part__title,
    .part--featured .page--default > .page__content .page__description .part__title,
    .page--default > .page__content .page__description .part--full .part__form-title,
    .part--full .page--default > .page__content .page__description .part__form-title,
    .page--default > .page__content .page__description .post--featured .post__title,
    .post--featured .page--default > .page__content .page__description .post__title,
    .page--default > .page__content .page__description .vehicle--general .vehicle__title,
    .vehicle--general .page--default > .page__content .page__description .vehicle__title,
    .page--default > .page__content .page__description .vehicle--latest .vehicle__title,
    .vehicle--latest .page--default > .page__content .page__description .vehicle__title,
    .page--default > .page__content .page__description .listing--custom-entry-review-featured .listing__title,
    .listing--custom-entry-review-featured .page--default > .page__content .page__description .listing__title,
    .page--default > .page__content .page__description .listing--vehicle-featured .listing__title,
    .listing--vehicle-featured .page--default > .page__content .page__description .listing__title,
    .page--default > .page__content .page__description .listing--vehicle-similar .listing__title,
    .listing--vehicle-similar .page--default > .page__content .page__description .listing__title,
    .page--default > .page__content .page__description .listing--vehicle-in-stock .listing__title,
    .listing--vehicle-in-stock .page--default > .page__content .page__description .listing__title,
    .page--default > .page__content .page__description .listing--offer-featured .listing__title,
    .listing--offer-featured .page--default > .page__content .page__description .listing__title,
    .page--default > .page__content .page__description .page--teaser .page__title,
    .page--teaser .page--default > .page__content .page__description .page__title,
    .page--default > .page__content .page__description h3,
    .page--default > .page__content .page__description .block--sidebar .block__title,
    .block--sidebar .page--default > .page__content .page__description .block__title,
    .page--default > .page__content .page__description .offer--featured .offer__sub-title,
    .offer--featured .page--default > .page__content .page__description .offer__sub-title,
    .page--default > .page__content .page__description .add-on__title,
    .page--default > .page__content .page__description .calendar__header .calendar__month span,
    .calendar__header .calendar__month .page--default > .page__content .page__description span,
    .page--default > .page__content .page__description .collection-delivery__title,
    .page--default > .page__content .page__description .order-payment__title,
    .page--default > .page__content .page__description .order-state-summary__vehicle-title,
    .page--default > .page__content .page__description .part--featured .part__sub-title,
    .part--featured .page--default > .page__content .page__description .part__sub-title,
    .page--default > .page__content .page__description .post--featured .post__sub-title,
    .post--featured .page--default > .page__content .page__description .post__sub-title,
    .page--default > .page__content .page__description .quick-search__legend,
    .page--default > .page__content .page__description .listing--showroom-teaser .listing__title h1,
    .listing--showroom-teaser .listing__title .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description .listing--post-teaser .listing__title h1,
    .listing--post-teaser .listing__title .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description .listing--offer-teaser .listing__title h1,
    .listing--offer-teaser .listing__title .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description .listing--custom-entry-teaser .listing__title h1,
    .listing--custom-entry-teaser .listing__title .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description .listing--vehicle-teaser .listing__title h1,
    .listing--vehicle-teaser .listing__title .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description .block--index-header .block__title h1,
    .block--index-header .block__title .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description .branch--contact .branch__opening-hours-title,
    .branch--contact .page--default > .page__content .page__description .branch__opening-hours-title,
    .page--default > .page__content .page__description .form--part-exchange .form__title,
    .form--part-exchange .page--default > .page__content .page__description .form__title,
    .page--default > .page__content .page__description .finance-table--full .finance-table__title,
    .finance-table--full .page--default > .page__content .page__description .finance-table__title,
    .page--default > .page__content .page__description .finance-checker__details-title,
    .page--default > .page__content .page__description .finance-table--order .finance-table__title,
    .finance-table--order .page--default > .page__content .page__description .finance-table__title,
    .page--default > .page__content .page__description h4,
    .page--default > .page__content .page__description .video--page .video__title,
    .video--page .page--default > .page__content .page__description .video__title,
    .page--default > .page__content .page__description .new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
    .new-vehicle--full .new-vehicle__specification > ul > li .page--default > .page__content .page__description .specification-category__title,
    .page--default > .page__content .page__description .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
    .new-vehicle--full .new-vehicle__technical-data > ul > li .page--default > .page__content .page__description .technical-data-category__title,
    .page--default > .page__content .page__description .vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
    .vehicle--full-reveal .vehicle__technical-data > ul > li .page--default > .page__content .page__description .technical-data-category__title,
    .page--default > .page__content .page__description .finance-form .finance-form__title,
    .finance-form .page--default > .page__content .page__description .finance-form__title,
    .page--default > .page__content .page__description .finance-tables .finance-warning,
    .finance-tables .page--default > .page__content .page__description .finance-warning,
    .page--default > .page__content .page__description .finance-table--full .finance-table__checker-title,
    .finance-table--full .page--default > .page__content .page__description .finance-table__checker-title,
    .page--default > .page__content .page__description .finance-example__title,
    .page--default > .page__content .page__description h5,
    .page--default > .page__content .page__description .block--sidebar .block__sub-title,
    .block--sidebar .page--default > .page__content .page__description .block__sub-title,
    .page--default > .page__content .page__description h6 {
      padding-top: 0.625rem;
      color: #222222; }
    
    .page--default > .page__content .page__description h2,
    .page--default > .page__content .page__description .offer--featured .offer__title,
    .offer--featured .page--default > .page__content .page__description .offer__title,
    .page--default > .page__content .page__description .order-progress__title,
    .page--default > .page__content .page__description .part--featured .part__title,
    .part--featured .page--default > .page__content .page__description .part__title,
    .page--default > .page__content .page__description .part--full .part__form-title,
    .part--full .page--default > .page__content .page__description .part__form-title,
    .page--default > .page__content .page__description .post--featured .post__title,
    .post--featured .page--default > .page__content .page__description .post__title,
    .page--default > .page__content .page__description .vehicle--general .vehicle__title,
    .vehicle--general .page--default > .page__content .page__description .vehicle__title,
    .page--default > .page__content .page__description .vehicle--latest .vehicle__title,
    .vehicle--latest .page--default > .page__content .page__description .vehicle__title,
    .page--default > .page__content .page__description .listing--custom-entry-review-featured .listing__title,
    .listing--custom-entry-review-featured .page--default > .page__content .page__description .listing__title,
    .page--default > .page__content .page__description .listing--vehicle-featured .listing__title,
    .listing--vehicle-featured .page--default > .page__content .page__description .listing__title,
    .page--default > .page__content .page__description .listing--vehicle-similar .listing__title,
    .listing--vehicle-similar .page--default > .page__content .page__description .listing__title,
    .page--default > .page__content .page__description .listing--vehicle-in-stock .listing__title,
    .listing--vehicle-in-stock .page--default > .page__content .page__description .listing__title,
    .page--default > .page__content .page__description .listing--offer-featured .listing__title,
    .listing--offer-featured .page--default > .page__content .page__description .listing__title,
    .page--default > .page__content .page__description .page--teaser .page__title,
    .page--teaser .page--default > .page__content .page__description .page__title {
      font-size: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        
        .page--default > .page__content .page__description h2,
        .page--default > .page__content .page__description .offer--featured .offer__title,
        .offer--featured .page--default > .page__content .page__description .offer__title,
        .page--default > .page__content .page__description .order-progress__title,
        .page--default > .page__content .page__description .part--featured .part__title,
        .part--featured .page--default > .page__content .page__description .part__title,
        .page--default > .page__content .page__description .part--full .part__form-title,
        .part--full .page--default > .page__content .page__description .part__form-title,
        .page--default > .page__content .page__description .post--featured .post__title,
        .post--featured .page--default > .page__content .page__description .post__title,
        .page--default > .page__content .page__description .vehicle--general .vehicle__title,
        .vehicle--general .page--default > .page__content .page__description .vehicle__title,
        .page--default > .page__content .page__description .vehicle--latest .vehicle__title,
        .vehicle--latest .page--default > .page__content .page__description .vehicle__title,
        .page--default > .page__content .page__description .listing--custom-entry-review-featured .listing__title,
        .listing--custom-entry-review-featured .page--default > .page__content .page__description .listing__title,
        .page--default > .page__content .page__description .listing--vehicle-featured .listing__title,
        .listing--vehicle-featured .page--default > .page__content .page__description .listing__title,
        .page--default > .page__content .page__description .listing--vehicle-similar .listing__title,
        .listing--vehicle-similar .page--default > .page__content .page__description .listing__title,
        .page--default > .page__content .page__description .listing--vehicle-in-stock .listing__title,
        .listing--vehicle-in-stock .page--default > .page__content .page__description .listing__title,
        .page--default > .page__content .page__description .listing--offer-featured .listing__title,
        .listing--offer-featured .page--default > .page__content .page__description .listing__title,
        .page--default > .page__content .page__description .page--teaser .page__title,
        .page--teaser .page--default > .page__content .page__description .page__title {
          font-size: 1.625rem; } }
    
    .page--default > .page__content .page__description h3,
    .page--default > .page__content .page__description .block--sidebar .block__title,
    .block--sidebar .page--default > .page__content .page__description .block__title,
    .page--default > .page__content .page__description .offer--featured .offer__sub-title,
    .offer--featured .page--default > .page__content .page__description .offer__sub-title,
    .page--default > .page__content .page__description .add-on__title,
    .page--default > .page__content .page__description .calendar__header .calendar__month span,
    .calendar__header .calendar__month .page--default > .page__content .page__description span,
    .page--default > .page__content .page__description .collection-delivery__title,
    .page--default > .page__content .page__description .order-payment__title,
    .page--default > .page__content .page__description .order-state-summary__vehicle-title,
    .page--default > .page__content .page__description .part--featured .part__sub-title,
    .part--featured .page--default > .page__content .page__description .part__sub-title,
    .page--default > .page__content .page__description .post--featured .post__sub-title,
    .post--featured .page--default > .page__content .page__description .post__sub-title,
    .page--default > .page__content .page__description .quick-search__legend,
    .page--default > .page__content .page__description .listing--showroom-teaser .listing__title h1,
    .listing--showroom-teaser .listing__title .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description .listing--post-teaser .listing__title h1,
    .listing--post-teaser .listing__title .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description .listing--offer-teaser .listing__title h1,
    .listing--offer-teaser .listing__title .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description .listing--custom-entry-teaser .listing__title h1,
    .listing--custom-entry-teaser .listing__title .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description .listing--vehicle-teaser .listing__title h1,
    .listing--vehicle-teaser .listing__title .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description .block--index-header .block__title h1,
    .block--index-header .block__title .page--default > .page__content .page__description h1,
    .page--default > .page__content .page__description .branch--contact .branch__opening-hours-title,
    .branch--contact .page--default > .page__content .page__description .branch__opening-hours-title,
    .page--default > .page__content .page__description .form--part-exchange .form__title,
    .form--part-exchange .page--default > .page__content .page__description .form__title,
    .page--default > .page__content .page__description .finance-table--full .finance-table__title,
    .finance-table--full .page--default > .page__content .page__description .finance-table__title,
    .page--default > .page__content .page__description .finance-checker__details-title,
    .page--default > .page__content .page__description .finance-table--order .finance-table__title,
    .finance-table--order .page--default > .page__content .page__description .finance-table__title {
      font-size: 1.125rem; }
      @media print, screen and (min-width: 40em) {
        
        .page--default > .page__content .page__description h3,
        .page--default > .page__content .page__description .block--sidebar .block__title,
        .block--sidebar .page--default > .page__content .page__description .block__title,
        .page--default > .page__content .page__description .offer--featured .offer__sub-title,
        .offer--featured .page--default > .page__content .page__description .offer__sub-title,
        .page--default > .page__content .page__description .add-on__title,
        .page--default > .page__content .page__description .calendar__header .calendar__month span,
        .calendar__header .calendar__month .page--default > .page__content .page__description span,
        .page--default > .page__content .page__description .collection-delivery__title,
        .page--default > .page__content .page__description .order-payment__title,
        .page--default > .page__content .page__description .order-state-summary__vehicle-title,
        .page--default > .page__content .page__description .part--featured .part__sub-title,
        .part--featured .page--default > .page__content .page__description .part__sub-title,
        .page--default > .page__content .page__description .post--featured .post__sub-title,
        .post--featured .page--default > .page__content .page__description .post__sub-title,
        .page--default > .page__content .page__description .quick-search__legend,
        .page--default > .page__content .page__description .listing--showroom-teaser .listing__title h1,
        .listing--showroom-teaser .listing__title .page--default > .page__content .page__description h1,
        .page--default > .page__content .page__description .listing--post-teaser .listing__title h1,
        .listing--post-teaser .listing__title .page--default > .page__content .page__description h1,
        .page--default > .page__content .page__description .listing--offer-teaser .listing__title h1,
        .listing--offer-teaser .listing__title .page--default > .page__content .page__description h1,
        .page--default > .page__content .page__description .listing--custom-entry-teaser .listing__title h1,
        .listing--custom-entry-teaser .listing__title .page--default > .page__content .page__description h1,
        .page--default > .page__content .page__description .listing--vehicle-teaser .listing__title h1,
        .listing--vehicle-teaser .listing__title .page--default > .page__content .page__description h1,
        .page--default > .page__content .page__description .block--index-header .block__title h1,
        .block--index-header .block__title .page--default > .page__content .page__description h1,
        .page--default > .page__content .page__description .branch--contact .branch__opening-hours-title,
        .branch--contact .page--default > .page__content .page__description .branch__opening-hours-title,
        .page--default > .page__content .page__description .form--part-exchange .form__title,
        .form--part-exchange .page--default > .page__content .page__description .form__title,
        .page--default > .page__content .page__description .finance-table--full .finance-table__title,
        .finance-table--full .page--default > .page__content .page__description .finance-table__title,
        .page--default > .page__content .page__description .finance-checker__details-title,
        .page--default > .page__content .page__description .finance-table--order .finance-table__title,
        .finance-table--order .page--default > .page__content .page__description .finance-table__title {
          font-size: 1.5rem; } }
    
    .page--default > .page__content .page__description h4,
    .page--default > .page__content .page__description .video--page .video__title,
    .video--page .page--default > .page__content .page__description .video__title,
    .page--default > .page__content .page__description .new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
    .new-vehicle--full .new-vehicle__specification > ul > li .page--default > .page__content .page__description .specification-category__title,
    .page--default > .page__content .page__description .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
    .new-vehicle--full .new-vehicle__technical-data > ul > li .page--default > .page__content .page__description .technical-data-category__title,
    .page--default > .page__content .page__description .vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
    .vehicle--full-reveal .vehicle__technical-data > ul > li .page--default > .page__content .page__description .technical-data-category__title,
    .page--default > .page__content .page__description .finance-form .finance-form__title,
    .finance-form .page--default > .page__content .page__description .finance-form__title,
    .page--default > .page__content .page__description .finance-tables .finance-warning,
    .finance-tables .page--default > .page__content .page__description .finance-warning,
    .page--default > .page__content .page__description .finance-table--full .finance-table__checker-title,
    .finance-table--full .page--default > .page__content .page__description .finance-table__checker-title,
    .page--default > .page__content .page__description .finance-example__title,
    .page--default > .page__content .page__description h5,
    .page--default > .page__content .page__description .block--sidebar .block__sub-title,
    .block--sidebar .page--default > .page__content .page__description .block__sub-title,
    .page--default > .page__content .page__description h6 {
      font-size: 1rem; }
      @media print, screen and (min-width: 40em) {
        
        .page--default > .page__content .page__description h4,
        .page--default > .page__content .page__description .video--page .video__title,
        .video--page .page--default > .page__content .page__description .video__title,
        .page--default > .page__content .page__description .new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
        .new-vehicle--full .new-vehicle__specification > ul > li .page--default > .page__content .page__description .specification-category__title,
        .page--default > .page__content .page__description .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
        .new-vehicle--full .new-vehicle__technical-data > ul > li .page--default > .page__content .page__description .technical-data-category__title,
        .page--default > .page__content .page__description .vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
        .vehicle--full-reveal .vehicle__technical-data > ul > li .page--default > .page__content .page__description .technical-data-category__title,
        .page--default > .page__content .page__description .finance-form .finance-form__title,
        .finance-form .page--default > .page__content .page__description .finance-form__title,
        .page--default > .page__content .page__description .finance-tables .finance-warning,
        .finance-tables .page--default > .page__content .page__description .finance-warning,
        .page--default > .page__content .page__description .finance-table--full .finance-table__checker-title,
        .finance-table--full .page--default > .page__content .page__description .finance-table__checker-title,
        .page--default > .page__content .page__description .finance-example__title,
        .page--default > .page__content .page__description h5,
        .page--default > .page__content .page__description .block--sidebar .block__sub-title,
        .block--sidebar .page--default > .page__content .page__description .block__sub-title,
        .page--default > .page__content .page__description h6 {
          font-size: 1.375rem; } }
    .page--default > .page__content .page__description p:last-child {
      margin-bottom: 0; }
  .page--default > .page__content .page__files {
    margin-top: 1.875rem; }
    .page--default > .page__content .page__files ul {
      margin: 0;
      list-style: none; }
      .page--default > .page__content .page__files ul li {
        display: inline-block;
        margin-right: 0.625rem; }
        .page--default > .page__content .page__files ul li:last-child {
          margin-right: 0; }

.page--default .page__videos {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-top: 1.875rem; }
  .page--default .page__videos::before, .page--default .page__videos::after {
    display: table;
    content: ' '; }
  .page--default .page__videos::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__videos {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .page--default .page__videos:last-child:not(:first-child) {
    float: right; }
  .page--default .page__videos, .page--default .page__videos:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__videos {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .page--default .page__videos {
      margin-top: 6.25rem; } }
  .page--default .page__videos ul {
    margin: 0;
    list-style: none; }
    .page--default .page__videos ul li + li {
      margin-top: 1.25rem; }
    .page--default .page__videos ul li .video .video__title {
      margin-bottom: 0.625rem;
      font-size: 1rem;
      line-height: 1.6; }
      @media print, screen and (min-width: 40em) {
        .page--default .page__videos ul li .video .video__title {
          font-size: 1.125rem; } }
    .page--default .page__videos ul li iframe {
      border-radius: 0.3125rem; }
    @media screen and (min-width: 48em) {
      .page--default .page__videos ul {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        gap: 1.875rem; }
        .page--default .page__videos ul li {
          -webkit-flex: 1 1 45%;
              -ms-flex: 1 1 45%;
                  flex: 1 1 45%; }
          .page--default .page__videos ul li + li {
            margin-top: 0; } }

.page--default .page__service {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-top: 1.875rem; }
  .page--default .page__service::before, .page--default .page__service::after {
    display: table;
    content: ' '; }
  .page--default .page__service::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__service {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .page--default .page__service:last-child:not(:first-child) {
    float: right; }
  .page--default .page__service, .page--default .page__service:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__service {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .page--default .page__service {
      margin-top: 6.25rem; } }

.page--default .page__secondary-images {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 97.5rem;
  margin-top: 1.875rem; }
  .page--default .page__secondary-images::before, .page--default .page__secondary-images::after {
    display: table;
    content: ' '; }
  .page--default .page__secondary-images::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__secondary-images {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .page--default .page__secondary-images:last-child:not(:first-child) {
    float: right; }
  .page--default .page__secondary-images, .page--default .page__secondary-images:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__secondary-images {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .page--default .page__secondary-images {
      margin-top: 6.25rem; } }
  .page--default .page__secondary-images ul {
    margin: 0;
    list-style: none; }
    .page--default .page__secondary-images ul li img {
      border-radius: 0.3125rem; }

.page--default .page__short-description {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-top: 1.875rem;
  color: #717580;
  font-size: 1rem;
  line-height: 1.8; }
  .page--default .page__short-description::before, .page--default .page__short-description::after {
    display: table;
    content: ' '; }
  .page--default .page__short-description::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__short-description {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .page--default .page__short-description:last-child:not(:first-child) {
    float: right; }
  .page--default .page__short-description, .page--default .page__short-description:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__short-description {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .page--default .page__short-description {
      margin-top: 6.25rem; } }
  .page--default .page__short-description p:last-child {
    margin-bottom: 0; }

.page--default .page__children {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-top: 1.875rem; }
  .page--default .page__children::before, .page--default .page__children::after {
    display: table;
    content: ' '; }
  .page--default .page__children::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__children {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .page--default .page__children:last-child:not(:first-child) {
    float: right; }
  .page--default .page__children, .page--default .page__children:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__children {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .page--default .page__children {
      margin-top: 6.25rem; } }

.page--default .page__form {
  max-width: 81.25rem;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  float: left;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  margin-top: 1.875rem; }
  .page--default .page__form::before, .page--default .page__form::after {
    display: table;
    content: ' '; }
  .page--default .page__form::after {
    clear: both; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__form {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  .page--default .page__form:last-child:not(:first-child) {
    float: right; }
  .page--default .page__form, .page--default .page__form:last-child {
    float: none; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__form {
      margin-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .page--default .page__form {
      margin-top: 6.25rem; } }
  .page--default .page__form-title h2, .page--default .page__form-title .offer--featured .offer__title, .offer--featured .page--default .page__form-title .offer__title, .page--default .page__form-title .order-progress__title, .page--default .page__form-title .part--featured .part__title, .part--featured .page--default .page__form-title .part__title, .page--default .page__form-title .part--full .part__form-title, .part--full .page--default .page__form-title .part__form-title, .page--default .page__form-title .post--featured .post__title, .post--featured .page--default .page__form-title .post__title, .page--default .page__form-title .vehicle--general .vehicle__title, .vehicle--general .page--default .page__form-title .vehicle__title, .page--default .page__form-title .vehicle--latest .vehicle__title, .vehicle--latest .page--default .page__form-title .vehicle__title, .page--default .page__form-title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .page--default .page__form-title .listing__title, .page--default .page__form-title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .page--default .page__form-title .listing__title, .page--default .page__form-title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .page--default .page__form-title .listing__title, .page--default .page__form-title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .page--default .page__form-title .listing__title, .page--default .page__form-title .listing--offer-featured .listing__title, .listing--offer-featured .page--default .page__form-title .listing__title, .page--default .page__form-title .page--teaser .page__title, .page--teaser .page--default .page__form-title .page__title {
    margin-bottom: 1.25rem;
    font-size: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .page--default .page__form-title h2, .page--default .page__form-title .offer--featured .offer__title, .offer--featured .page--default .page__form-title .offer__title, .page--default .page__form-title .order-progress__title, .page--default .page__form-title .part--featured .part__title, .part--featured .page--default .page__form-title .part__title, .page--default .page__form-title .part--full .part__form-title, .part--full .page--default .page__form-title .part__form-title, .page--default .page__form-title .post--featured .post__title, .post--featured .page--default .page__form-title .post__title, .page--default .page__form-title .vehicle--general .vehicle__title, .vehicle--general .page--default .page__form-title .vehicle__title, .page--default .page__form-title .vehicle--latest .vehicle__title, .vehicle--latest .page--default .page__form-title .vehicle__title, .page--default .page__form-title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .page--default .page__form-title .listing__title, .page--default .page__form-title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .page--default .page__form-title .listing__title, .page--default .page__form-title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .page--default .page__form-title .listing__title, .page--default .page__form-title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .page--default .page__form-title .listing__title, .page--default .page__form-title .listing--offer-featured .listing__title, .listing--offer-featured .page--default .page__form-title .listing__title, .page--default .page__form-title .page--teaser .page__title, .page--teaser .page--default .page__form-title .page__title {
        margin-bottom: 1.875rem;
        font-size: 1.875rem; } }

.page--home {
  overflow: hidden; }
  .page--home .page__top,
  .page--home .page__media {
    position: relative; }
  .page--home .page__primary-images ul {
    margin: 0;
    list-style: none; }
  .page--home .page__primary-images img {
    width: 100%; }
  .page--home .page__overlay {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media print, screen and (min-width: 64em) {
      .page--home .page__overlay {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        z-index: 999; } }
  .page--home .page__hero {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    display: none;
    margin-bottom: 1.875rem;
    max-width: 97.5rem; }
    .page--home .page__hero::before, .page--home .page__hero::after {
      display: table;
      content: ' '; }
    .page--home .page__hero::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__hero {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--home .page__hero:last-child:not(:first-child) {
      float: right; }
    .page--home .page__hero, .page--home .page__hero:last-child {
      float: none; }
    @media print, screen and (min-width: 64em) {
      .page--home .page__hero {
        display: block; } }
    .page--home .page__hero-inner {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 1.875rem; }
  .page--home .page__slogan {
    color: #ffffff;
    font-size: 1.875rem;
    font-weight: 500;
    line-height: 1.1; }
    .page--home .page__slogan span {
      display: block;
      font-size: 4.375rem;
      font-weight: 800; }
  .page--home .page__partners {
    position: relative;
    margin-top: -4.375rem;
    padding-top: 0.9375rem;
    padding-bottom: 0.9375rem;
    background-color: rgba(34, 34, 34, 0.25);
    z-index: 999; }
    @media print, screen and (min-width: 64em) {
      .page--home .page__partners {
        margin-top: 3.125rem;
        -webkit-order: 2;
            -ms-flex-order: 2;
                order: 2; } }
    .page--home .page__partners-inner {
      max-width: 81.25rem;
      margin-right: auto;
      margin-left: auto;
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      max-width: 97.5rem; }
      .page--home .page__partners-inner::before, .page--home .page__partners-inner::after {
        display: table;
        content: ' '; }
      .page--home .page__partners-inner::after {
        clear: both; }
      @media print, screen and (min-width: 40em) {
        .page--home .page__partners-inner {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .page--home .page__partners-inner:last-child:not(:first-child) {
        float: right; }
      .page--home .page__partners-inner, .page--home .page__partners-inner:last-child {
        float: none; }
  .page--home .page__search {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 97.5rem;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
    background-color: #F6F6F6; }
    .page--home .page__search::before, .page--home .page__search::after {
      display: table;
      content: ' '; }
    .page--home .page__search::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__search {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--home .page__search:last-child:not(:first-child) {
      float: right; }
    .page--home .page__search, .page--home .page__search:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__search {
        padding-top: 0.9375rem;
        padding-bottom: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .page--home .page__search {
        background: none;
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1; } }
  .page--home .page__fade {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.15) 50%, rgba(0, 0, 0, 0.35) 75%, rgba(0, 0, 0, 0.35) 100%); }
  .page--home .page__middle {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media screen and (max-width: 39.9375em) {
      .page--home .page__middle .page__vehicle-types,
      .page--home .page__middle .page__judge-service {
        -webkit-order: -1;
            -ms-flex-order: -1;
                order: -1; } }
  .page--home .page__judge-service {
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__judge-service {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .page--home .page__judge-service {
        margin-top: 6.25rem;
        padding-top: 1.875rem;
        border-top: 1px solid #E3E3E3; } }
    .page--home .page__judge-service-inner {
      max-width: 81.25rem;
      margin-right: auto;
      margin-left: auto;
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      .page--home .page__judge-service-inner::before, .page--home .page__judge-service-inner::after {
        display: table;
        content: ' '; }
      .page--home .page__judge-service-inner::after {
        clear: both; }
      @media print, screen and (min-width: 40em) {
        .page--home .page__judge-service-inner {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .page--home .page__judge-service-inner:last-child:not(:first-child) {
        float: right; }
      .page--home .page__judge-service-inner, .page--home .page__judge-service-inner:last-child {
        float: none; }
  .page--home .page__content {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-top: 1.875rem;
    margin-bottom: 1.875rem; }
    .page--home .page__content::before, .page--home .page__content::after {
      display: table;
      content: ' '; }
    .page--home .page__content::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--home .page__content:last-child:not(:first-child) {
      float: right; }
    .page--home .page__content, .page--home .page__content:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__content {
        margin-top: 3.125rem;
        margin-bottom: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .page--home .page__content {
        margin-top: 6.25rem;
        margin-bottom: 6.25rem; } }
    .page--home .page__content-inner {
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: 1fr;
          grid-template-columns: 1fr;
      gap: 1.875rem; }
      @media print, screen and (min-width: 40em) {
        .page--home .page__content-inner {
          gap: 3.125rem; } }
      @media print, screen and (min-width: 64em) {
        .page--home .page__content-inner {
          -ms-grid-columns: 1fr 1fr;
              grid-template-columns: 1fr 1fr;
          gap: 6.25rem; } }
      @media screen and (min-width: 75em) {
        .page--home .page__content-inner {
          -ms-grid-columns: 50% 1fr;
              grid-template-columns: 50% 1fr;
          gap: 8.75rem; } }
    .page--home .page__content-images {
      min-width: 0; }
      @media print, screen and (min-width: 64em) {
        .page--home .page__content-images {
          -webkit-order: -1;
              -ms-flex-order: -1;
                  order: -1; } }
  .page--home .page__title h1 {
    margin-bottom: 0;
    font-size: 2.125rem;
    font-weight: 600; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__title h1 {
        font-size: 3.125rem; } }
  .page--home .page__sub-title {
    color: #c3002f;
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.4; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__sub-title {
        font-size: 1.25rem; } }
  .page--home .page__description {
    position: relative;
    margin-top: 0.9375rem;
    color: #666666;
    font-size: 0.9375rem;
    font-weight: 500;
    overflow: hidden;
    line-height: 2; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__description {
        margin-top: 1.25rem;
        font-size: 1.0625rem; } }
    .page--home .page__description a:not(.button) {
      color: #c3002f;
      text-decoration: none; }
      .page--home .page__description a:not(.button):hover {
        color: #900023;
        text-decoration: none; }
    .page--home .page__description p:last-child {
      margin-bottom: 0; }
    .page--home .page__description .expand {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      padding-top: 6.25rem;
      font-weight: 600;
      background: linear-gradient(to top, white 0%, white 25%, rgba(255, 255, 255, 0) 100%);
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 1.875rem; }
      .page--home .page__description .expand a.expand__read-more {
        display: inline-block;
        vertical-align: middle;
        margin: 0 0 1rem 0;
        padding: 0.75rem 0.875rem;
        -webkit-appearance: none;
        border: 1px solid transparent;
        border-radius: 0;
        transition: background-color 0.25s ease-out, color 0.25s ease-out;
        font-size: 1.125rem;
        line-height: 1;
        text-align: center;
        cursor: pointer;
        background-color: #c3002f;
        color: #ffffff;
        display: inline-block;
        margin-bottom: 0;
        padding: 0.9375rem 1.875rem;
        font-size: 1rem;
        border-radius: 0.3125rem; }
        [data-whatinput='mouse'] .page--home .page__description .expand a.expand__read-more {
          outline: 0; }
        .page--home .page__description .expand a.expand__read-more:hover, .page--home .page__description .expand a.expand__read-more:focus {
          background-color: #a60028;
          color: #ffffff; }
        @media print, screen and (min-width: 40em) {
          .page--home .page__description .expand a.expand__read-more {
            padding: 1.25rem 2.5rem; } }
      .page--home .page__description .expand a.expand__view-our-stock {
        color: #222222;
        font-size: 1rem; }
        .page--home .page__description .expand a.expand__view-our-stock span {
          margin-right: 0.625rem;
          vertical-align: middle; }
  .page--home .page__secondary-images {
    position: relative;
    border-radius: 0.3125rem;
    overflow: hidden; }
    .page--home .page__secondary-images ul {
      margin: 0;
      list-style: none; }
  .page--home .page__video {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 999;
    padding: 1.25rem;
    background-color: #c3002f;
    border-top-left-radius: 0.3125rem;
    border-bottom-right-radius: 0.3125rem; }
    @media screen and (min-width: 90em) {
      .page--home .page__video {
        padding: 1.875rem; } }
    .page--home .page__video i {
      display: block;
      margin-bottom: 0.9375rem; }
      .page--home .page__video i::before {
        color: #ffffff;
        font-size: 2.5rem; }
        @media print, screen and (min-width: 40em) {
          .page--home .page__video i::before {
            font-size: 4.375rem; } }
    .page--home .page__video span {
      display: block;
      color: #ffffff;
      font-size: 1rem;
      font-weight: 500;
      line-height: 1; }
      @media print, screen and (min-width: 40em) {
        .page--home .page__video span {
          font-size: 1.1875rem; } }
  .page--home .page__featured-vehicles {
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
    background-color: #F6F6F6; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__featured-vehicles {
        padding-top: 3.125rem;
        padding-bottom: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .page--home .page__featured-vehicles {
        padding-top: 6.25rem;
        padding-bottom: 6.25rem; } }
    .page--home .page__featured-vehicles-inner {
      max-width: 81.25rem;
      margin-right: auto;
      margin-left: auto;
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      max-width: 97.5rem; }
      .page--home .page__featured-vehicles-inner::before, .page--home .page__featured-vehicles-inner::after {
        display: table;
        content: ' '; }
      .page--home .page__featured-vehicles-inner::after {
        clear: both; }
      @media print, screen and (min-width: 40em) {
        .page--home .page__featured-vehicles-inner {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .page--home .page__featured-vehicles-inner:last-child:not(:first-child) {
        float: right; }
      .page--home .page__featured-vehicles-inner, .page--home .page__featured-vehicles-inner:last-child {
        float: none; }
  .page--home .page__blocks {
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__blocks {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .page--home .page__blocks {
        margin-top: 6.25rem;
        background: linear-gradient(180deg, white 0%, white 50%, #f6f6f6 50%, #f6f6f6 100%); } }
    .page--home .page__blocks-inner {
      max-width: 81.25rem;
      margin-right: auto;
      margin-left: auto;
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      .page--home .page__blocks-inner::before, .page--home .page__blocks-inner::after {
        display: table;
        content: ' '; }
      .page--home .page__blocks-inner::after {
        clear: both; }
      @media print, screen and (min-width: 40em) {
        .page--home .page__blocks-inner {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .page--home .page__blocks-inner:last-child:not(:first-child) {
        float: right; }
      .page--home .page__blocks-inner, .page--home .page__blocks-inner:last-child {
        float: none; }
  .page--home .page__reviews {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    padding-top: 1.875rem;
    padding-bottom: 1.875rem; }
    .page--home .page__reviews::before, .page--home .page__reviews::after {
      display: table;
      content: ' '; }
    .page--home .page__reviews::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__reviews {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--home .page__reviews:last-child:not(:first-child) {
      float: right; }
    .page--home .page__reviews, .page--home .page__reviews:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .page--home .page__reviews {
        padding-top: 3.125rem;
        padding-bottom: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .page--home .page__reviews {
        padding-top: 6.25rem;
        padding-bottom: 6.25rem; } }
    .page--home .page__reviews-outer {
      background: linear-gradient(180deg, #f6f6f6 0%, white 100%); }
    .page--home .page__reviews-inner {
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: 1fr;
          grid-template-columns: 1fr;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      gap: 1.875rem; }
      @media print, screen and (min-width: 64em) {
        .page--home .page__reviews-inner {
          -ms-grid-columns: 1fr 1fr;
              grid-template-columns: 1fr 1fr;
          gap: 3.125rem; } }
      @media screen and (min-width: 75em) {
        .page--home .page__reviews-inner {
          gap: 6.25rem; } }
      @media screen and (min-width: 90em) {
        .page--home .page__reviews-inner {
          -ms-grid-columns: 50% 1fr;
              grid-template-columns: 50% 1fr;
          gap: 8.4375rem; } }
    .page--home .page__reviews-first {
      display: none; }
      @media print, screen and (min-width: 64em) {
        .page--home .page__reviews-first {
          display: block; } }
      .page--home .page__reviews-first img {
        border-radius: 0.3125rem; }
    .page--home .page__reviews-second {
      min-width: 0; }

.page--teaser {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .page--teaser {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .page--teaser {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .page--teaser::before, .page--teaser::after {
    display: table;
    content: ' '; }
  .page--teaser::after {
    clear: both; }
  .page--teaser .page__primary-images,
  .page--teaser .page__videos {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .page--teaser .page__primary-images,
      .page--teaser .page__videos {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--teaser .page__primary-images:last-child:not(:first-child),
    .page--teaser .page__videos:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .page--teaser .page__primary-images,
      .page--teaser .page__videos {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-bottom: 0; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .page--teaser .page__primary-images,
    .page--teaser .page__videos {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .page--teaser .page__primary-images:last-child:not(:first-child),
        .page--teaser .page__videos:last-child:not(:first-child) {
          float: right; } }
    .page--teaser .page__primary-images img,
    .page--teaser .page__primary-images iframe,
    .page--teaser .page__videos img,
    .page--teaser .page__videos iframe {
      border-radius: 0.3125rem; }
  .page--teaser .page__content {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .page--teaser .page__content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--teaser .page__content:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .page--teaser .page__content {
        width: 66.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .page--teaser .page__content {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .page--teaser .page__content:last-child:not(:first-child) {
          float: right; } }
  .page--teaser .page__content--without-media {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .page--teaser .page__content--without-media {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .page--teaser .page__content--without-media:last-child:not(:first-child) {
      float: right; }
  .page--teaser .page__title {
    margin-bottom: 1.25rem;
    font-size: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .page--teaser .page__title {
        font-size: 1.875rem; } }
  .page--teaser .page__description {
    margin-bottom: 0.9375rem;
    color: #717580;
    font-size: 1rem;
    line-height: 1.8; }
  .page--teaser .page__link .button {
    margin-bottom: 0; }

.meta > ul {
  margin: 0 0 0.9375rem 0;
  list-style: none; }
  .meta > ul > li {
    display: inline-block;
    margin-right: 0.375rem; }

.meta__published span {
  font-weight: 600; }

.meta__categories-title, .meta__tags-title, .meta__read-time-title {
  display: inline-block;
  margin-right: 0.1875rem; }

.meta__categories ul, .meta__tags ul, .meta__read-time ul {
  display: inline-block;
  margin: 0;
  list-style: none; }
  .meta__categories ul li, .meta__tags ul li, .meta__read-time ul li {
    display: inline-block;
    font-weight: 600; }
    .meta__categories ul li::after, .meta__tags ul li::after, .meta__read-time ul li::after {
      content: ',';
      margin-right: 0.1875rem;
      font-weight: 400; }
    .meta__categories ul li:last-child::after, .meta__tags ul li:last-child::after, .meta__read-time ul li:last-child::after {
      content: '';
      margin-right: 0; }

.post--default {
  padding-top: 1.875rem; }
  @media print, screen and (min-width: 40em) {
    .post--default {
      padding-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .post--default {
      padding-top: 6.25rem; } }
  .post--default > .post__primary-images {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 64rem; }
    .post--default > .post__primary-images::before, .post--default > .post__primary-images::after {
      display: table;
      content: ' '; }
    .post--default > .post__primary-images::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .post--default > .post__primary-images {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .post--default > .post__primary-images:last-child:not(:first-child) {
      float: right; }
    .post--default > .post__primary-images, .post--default > .post__primary-images:last-child {
      float: none; }
    .post--default > .post__primary-images ul {
      margin: 0;
      list-style: none; }
    .post--default > .post__primary-images img {
      width: 100%;
      border-radius: 0.3125rem; }
  .post--default > .post__content {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 64rem; }
    .post--default > .post__content::before, .post--default > .post__content::after {
      display: table;
      content: ' '; }
    .post--default > .post__content::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .post--default > .post__content {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .post--default > .post__content:last-child:not(:first-child) {
      float: right; }
    .post--default > .post__content, .post--default > .post__content:last-child {
      float: none; }
    .post--default > .post__content .post__title {
      margin-top: 1.875rem;
      margin-bottom: 1.25rem; }
      @media print, screen and (min-width: 40em) {
        .post--default > .post__content .post__title {
          margin-top: 3.125rem;
          margin-bottom: 1.875rem; } }
      .post--default > .post__content .post__title h1 {
        font-size: 1.5rem; }
        @media print, screen and (min-width: 40em) {
          .post--default > .post__content .post__title h1 {
            font-size: 1.875rem; } }
      .post--default > .post__content .post__title h2, .post--default > .post__content .post__title .offer--featured .offer__title, .offer--featured .post--default > .post__content .post__title .offer__title, .post--default > .post__content .post__title .order-progress__title, .post--default > .post__content .post__title .part--featured .part__title, .part--featured .post--default > .post__content .post__title .part__title, .post--default > .post__content .post__title .part--full .part__form-title, .part--full .post--default > .post__content .post__title .part__form-title, .post--default > .post__content .post__title .post--featured .post__title, .post--featured .post--default > .post__content .post__title .post__title, .post--default > .post__content .post__title .vehicle--general .vehicle__title, .vehicle--general .post--default > .post__content .post__title .vehicle__title, .post--default > .post__content .post__title .vehicle--latest .vehicle__title, .vehicle--latest .post--default > .post__content .post__title .vehicle__title, .post--default > .post__content .post__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .post--default > .post__content .post__title .listing__title, .post--default > .post__content .post__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .post--default > .post__content .post__title .listing__title, .post--default > .post__content .post__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .post--default > .post__content .post__title .listing__title, .post--default > .post__content .post__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .post--default > .post__content .post__title .listing__title, .post--default > .post__content .post__title .listing--offer-featured .listing__title, .listing--offer-featured .post--default > .post__content .post__title .listing__title, .post--default > .post__content .post__title .page--teaser .page__title, .page--teaser .post--default > .post__content .post__title .page__title {
        font-size: 1.25rem; }
        @media print, screen and (min-width: 40em) {
          .post--default > .post__content .post__title h2, .post--default > .post__content .post__title .offer--featured .offer__title, .offer--featured .post--default > .post__content .post__title .offer__title, .post--default > .post__content .post__title .order-progress__title, .post--default > .post__content .post__title .part--featured .part__title, .part--featured .post--default > .post__content .post__title .part__title, .post--default > .post__content .post__title .part--full .part__form-title, .part--full .post--default > .post__content .post__title .part__form-title, .post--default > .post__content .post__title .post--featured .post__title, .post--featured .post--default > .post__content .post__title .post__title, .post--default > .post__content .post__title .vehicle--general .vehicle__title, .vehicle--general .post--default > .post__content .post__title .vehicle__title, .post--default > .post__content .post__title .vehicle--latest .vehicle__title, .vehicle--latest .post--default > .post__content .post__title .vehicle__title, .post--default > .post__content .post__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .post--default > .post__content .post__title .listing__title, .post--default > .post__content .post__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .post--default > .post__content .post__title .listing__title, .post--default > .post__content .post__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .post--default > .post__content .post__title .listing__title, .post--default > .post__content .post__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .post--default > .post__content .post__title .listing__title, .post--default > .post__content .post__title .listing--offer-featured .listing__title, .listing--offer-featured .post--default > .post__content .post__title .listing__title, .post--default > .post__content .post__title .page--teaser .page__title, .page--teaser .post--default > .post__content .post__title .page__title {
            font-size: 1.625rem; } }
    .post--default > .post__content .post__description {
      color: #717580;
      font-size: 1rem; }
      .post--default > .post__content .post__description a:not(.button) {
        color: #000000;
        font-weight: 700;
        text-decoration: none; }
        .post--default > .post__content .post__description a:not(.button):hover {
          color: black;
          text-decoration: none; }
      .post--default > .post__content .post__description h1,
      .post--default > .post__content .post__description h2,
      .post--default > .post__content .post__description .offer--featured .offer__title,
      .offer--featured .post--default > .post__content .post__description .offer__title,
      .post--default > .post__content .post__description .order-progress__title,
      .post--default > .post__content .post__description .part--featured .part__title,
      .part--featured .post--default > .post__content .post__description .part__title,
      .post--default > .post__content .post__description .part--full .part__form-title,
      .part--full .post--default > .post__content .post__description .part__form-title,
      .post--default > .post__content .post__description .post--featured .post__title,
      .post--featured .post--default > .post__content .post__description .post__title,
      .post--default > .post__content .post__description .vehicle--general .vehicle__title,
      .vehicle--general .post--default > .post__content .post__description .vehicle__title,
      .post--default > .post__content .post__description .vehicle--latest .vehicle__title,
      .vehicle--latest .post--default > .post__content .post__description .vehicle__title,
      .post--default > .post__content .post__description .listing--custom-entry-review-featured .listing__title,
      .listing--custom-entry-review-featured .post--default > .post__content .post__description .listing__title,
      .post--default > .post__content .post__description .listing--vehicle-featured .listing__title,
      .listing--vehicle-featured .post--default > .post__content .post__description .listing__title,
      .post--default > .post__content .post__description .listing--vehicle-similar .listing__title,
      .listing--vehicle-similar .post--default > .post__content .post__description .listing__title,
      .post--default > .post__content .post__description .listing--vehicle-in-stock .listing__title,
      .listing--vehicle-in-stock .post--default > .post__content .post__description .listing__title,
      .post--default > .post__content .post__description .listing--offer-featured .listing__title,
      .listing--offer-featured .post--default > .post__content .post__description .listing__title,
      .post--default > .post__content .post__description .page--teaser .page__title,
      .page--teaser .post--default > .post__content .post__description .page__title,
      .post--default > .post__content .post__description h3,
      .post--default > .post__content .post__description .block--sidebar .block__title,
      .block--sidebar .post--default > .post__content .post__description .block__title,
      .post--default > .post__content .post__description .offer--featured .offer__sub-title,
      .offer--featured .post--default > .post__content .post__description .offer__sub-title,
      .post--default > .post__content .post__description .add-on__title,
      .post--default > .post__content .post__description .calendar__header .calendar__month span,
      .calendar__header .calendar__month .post--default > .post__content .post__description span,
      .post--default > .post__content .post__description .collection-delivery__title,
      .post--default > .post__content .post__description .order-payment__title,
      .post--default > .post__content .post__description .order-state-summary__vehicle-title,
      .post--default > .post__content .post__description .part--featured .part__sub-title,
      .part--featured .post--default > .post__content .post__description .part__sub-title,
      .post--default > .post__content .post__description .post--featured .post__sub-title,
      .post--featured .post--default > .post__content .post__description .post__sub-title,
      .post--default > .post__content .post__description .quick-search__legend,
      .post--default > .post__content .post__description .listing--showroom-teaser .listing__title h1,
      .listing--showroom-teaser .listing__title .post--default > .post__content .post__description h1,
      .post--default > .post__content .post__description .listing--post-teaser .listing__title h1,
      .listing--post-teaser .listing__title .post--default > .post__content .post__description h1,
      .post--default > .post__content .post__description .listing--offer-teaser .listing__title h1,
      .listing--offer-teaser .listing__title .post--default > .post__content .post__description h1,
      .post--default > .post__content .post__description .listing--custom-entry-teaser .listing__title h1,
      .listing--custom-entry-teaser .listing__title .post--default > .post__content .post__description h1,
      .post--default > .post__content .post__description .listing--vehicle-teaser .listing__title h1,
      .listing--vehicle-teaser .listing__title .post--default > .post__content .post__description h1,
      .post--default > .post__content .post__description .block--index-header .block__title h1,
      .block--index-header .block__title .post--default > .post__content .post__description h1,
      .post--default > .post__content .post__description .branch--contact .branch__opening-hours-title,
      .branch--contact .post--default > .post__content .post__description .branch__opening-hours-title,
      .post--default > .post__content .post__description .form--part-exchange .form__title,
      .form--part-exchange .post--default > .post__content .post__description .form__title,
      .post--default > .post__content .post__description .finance-table--full .finance-table__title,
      .finance-table--full .post--default > .post__content .post__description .finance-table__title,
      .post--default > .post__content .post__description .finance-checker__details-title,
      .post--default > .post__content .post__description .finance-table--order .finance-table__title,
      .finance-table--order .post--default > .post__content .post__description .finance-table__title,
      .post--default > .post__content .post__description h4,
      .post--default > .post__content .post__description .video--page .video__title,
      .video--page .post--default > .post__content .post__description .video__title,
      .post--default > .post__content .post__description .new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
      .new-vehicle--full .new-vehicle__specification > ul > li .post--default > .post__content .post__description .specification-category__title,
      .post--default > .post__content .post__description .new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
      .new-vehicle--full .new-vehicle__technical-data > ul > li .post--default > .post__content .post__description .technical-data-category__title,
      .post--default > .post__content .post__description .vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
      .vehicle--full-reveal .vehicle__technical-data > ul > li .post--default > .post__content .post__description .technical-data-category__title,
      .post--default > .post__content .post__description .finance-form .finance-form__title,
      .finance-form .post--default > .post__content .post__description .finance-form__title,
      .post--default > .post__content .post__description .finance-tables .finance-warning,
      .finance-tables .post--default > .post__content .post__description .finance-warning,
      .post--default > .post__content .post__description .finance-table--full .finance-table__checker-title,
      .finance-table--full .post--default > .post__content .post__description .finance-table__checker-title,
      .post--default > .post__content .post__description .finance-example__title,
      .post--default > .post__content .post__description h5,
      .post--default > .post__content .post__description .block--sidebar .block__sub-title,
      .block--sidebar .post--default > .post__content .post__description .block__sub-title,
      .post--default > .post__content .post__description h6 {
        padding-top: 0.625rem; }
      .post--default > .post__content .post__description p:last-child {
        margin-bottom: 0; }
    .post--default > .post__content .post__files {
      margin-top: 1.875rem; }
      .post--default > .post__content .post__files ul {
        margin: 0;
        list-style: none; }
        .post--default > .post__content .post__files ul li {
          display: inline-block;
          margin-right: 0.625rem; }
          .post--default > .post__content .post__files ul li:last-child {
            margin-right: 0; }
  .post--default .post__videos {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-top: 1.875rem; }
    .post--default .post__videos::before, .post--default .post__videos::after {
      display: table;
      content: ' '; }
    .post--default .post__videos::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .post--default .post__videos {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .post--default .post__videos:last-child:not(:first-child) {
      float: right; }
    .post--default .post__videos, .post--default .post__videos:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .post--default .post__videos {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .post--default .post__videos {
        margin-top: 6.25rem; } }
    .post--default .post__videos ul {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      gap: 1.25rem;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      margin: 0;
      list-style: none; }
      @media print, screen and (min-width: 40em) {
        .post--default .post__videos ul {
          gap: 1.875rem; } }
      @media screen and (min-width: 48em) {
        .post--default .post__videos ul {
          -webkit-flex-direction: row;
              -ms-flex-direction: row;
                  flex-direction: row; } }
      .post--default .post__videos ul li {
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1; }
        .post--default .post__videos ul li iframe {
          border-radius: 0.3125rem; }
  .post--default .post__secondary-images {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 97.5rem;
    margin-top: 1.875rem; }
    .post--default .post__secondary-images::before, .post--default .post__secondary-images::after {
      display: table;
      content: ' '; }
    .post--default .post__secondary-images::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .post--default .post__secondary-images {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .post--default .post__secondary-images:last-child:not(:first-child) {
      float: right; }
    .post--default .post__secondary-images, .post--default .post__secondary-images:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .post--default .post__secondary-images {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .post--default .post__secondary-images {
        margin-top: 6.25rem; } }
    .post--default .post__secondary-images ul {
      margin: 0;
      list-style: none; }
      .post--default .post__secondary-images ul li img {
        border-radius: 0.3125rem; }
  .post--default .post__short-description {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-top: 1.875rem;
    color: #717580;
    font-size: 1rem;
    line-height: 1.8; }
    .post--default .post__short-description::before, .post--default .post__short-description::after {
      display: table;
      content: ' '; }
    .post--default .post__short-description::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .post--default .post__short-description {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .post--default .post__short-description:last-child:not(:first-child) {
      float: right; }
    .post--default .post__short-description, .post--default .post__short-description:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .post--default .post__short-description {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .post--default .post__short-description {
        margin-top: 6.25rem; } }
    .post--default .post__short-description p:last-child {
      margin-bottom: 0; }

.post--teaser {
  height: 100%;
  background-color: #ffffff;
  border-radius: 0.3125rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .post--teaser .post__primary-images {
    position: relative;
    border-top-left-radius: 0.3125rem;
    border-top-right-radius: 0.3125rem;
    overflow: hidden; }
    .post--teaser .post__primary-images img {
      width: 100%;
      transition: all 0.5s; }
      .post--teaser .post__primary-images img:hover {
        opacity: .8; }
  .post--teaser .post__sash {
    position: absolute;
    top: 0.9375rem;
    left: 0.9375rem;
    padding: 0.3125rem 0.625rem;
    color: #ffffff;
    font-size: 0.8125rem;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1;
    background-color: #262B35;
    border-radius: 0.3125rem; }
    @media print, screen and (min-width: 40em) {
      .post--teaser .post__sash {
        top: 1.25rem;
        left: 1.25rem;
        padding: 0.4375rem 0.8125rem;
        font-size: 0.875rem; } }
    .post--teaser .post__sash ul {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      gap: 0.625rem;
      margin: 0;
      list-style: none; }
      .post--teaser .post__sash ul li::after {
        content: ','; }
      .post--teaser .post__sash ul li:last-child::after {
        display: none; }
    .post--teaser .post__sash a {
      color: #ffffff; }
  .post--teaser .post__details {
    position: relative;
    padding: 1.25rem 0.625rem;
    background-color: #ffffff; }
    @media print, screen and (min-width: 40em) {
      .post--teaser .post__details {
        padding: 1.25rem; } }
  .post--teaser .post__title h2, .post--teaser .post__title .offer--featured .offer__title, .offer--featured .post--teaser .post__title .offer__title, .post--teaser .post__title .order-progress__title, .post--teaser .post__title .part--featured .part__title, .part--featured .post--teaser .post__title .part__title, .post--teaser .post__title .part--full .part__form-title, .part--full .post--teaser .post__title .part__form-title, .post--teaser .post__title .post--featured .post__title, .post--featured .post--teaser .post__title .post__title, .post--teaser .post__title .vehicle--general .vehicle__title, .vehicle--general .post--teaser .post__title .vehicle__title, .post--teaser .post__title .vehicle--latest .vehicle__title, .vehicle--latest .post--teaser .post__title .vehicle__title, .post--teaser .post__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .post--teaser .post__title .listing__title, .post--teaser .post__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .post--teaser .post__title .listing__title, .post--teaser .post__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .post--teaser .post__title .listing__title, .post--teaser .post__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .post--teaser .post__title .listing__title, .post--teaser .post__title .listing--offer-featured .listing__title, .listing--offer-featured .post--teaser .post__title .listing__title, .post--teaser .post__title .page--teaser .page__title, .page--teaser .post--teaser .post__title .page__title {
    margin-bottom: 0;
    color: #222222;
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.2; }
    @media print, screen and (min-width: 40em) {
      .post--teaser .post__title h2, .post--teaser .post__title .offer--featured .offer__title, .offer--featured .post--teaser .post__title .offer__title, .post--teaser .post__title .order-progress__title, .post--teaser .post__title .part--featured .part__title, .part--featured .post--teaser .post__title .part__title, .post--teaser .post__title .part--full .part__form-title, .part--full .post--teaser .post__title .part__form-title, .post--teaser .post__title .post--featured .post__title, .post--featured .post--teaser .post__title .post__title, .post--teaser .post__title .vehicle--general .vehicle__title, .vehicle--general .post--teaser .post__title .vehicle__title, .post--teaser .post__title .vehicle--latest .vehicle__title, .vehicle--latest .post--teaser .post__title .vehicle__title, .post--teaser .post__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .post--teaser .post__title .listing__title, .post--teaser .post__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .post--teaser .post__title .listing__title, .post--teaser .post__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .post--teaser .post__title .listing__title, .post--teaser .post__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .post--teaser .post__title .listing__title, .post--teaser .post__title .listing--offer-featured .listing__title, .listing--offer-featured .post--teaser .post__title .listing__title, .post--teaser .post__title .page--teaser .page__title, .page--teaser .post--teaser .post__title .page__title {
        font-size: 1.375rem; } }
  .post--teaser .post__read-time {
    margin-top: 0.3125rem;
    display: block;
    color: #666666;
    font-size: 0.875rem;
    font-weight: 500; }
    @media print, screen and (min-width: 40em) {
      .post--teaser .post__read-time {
        font-size: 1.0625rem; } }
  .post--teaser .post__bottom {
    display: -ms-grid;
    display: grid;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    gap: 1.875rem;
    margin-top: auto;
    padding: 0.9375rem 0.625rem;
    border-top: 1px solid #E8E8E8; }
    @media print, screen and (min-width: 40em) {
      .post--teaser .post__bottom {
        padding: 1.25rem; } }
  .post--teaser .post__link a {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #c3002f;
    color: #ffffff;
    margin-bottom: 0;
    padding: 0.8125rem;
    width: 100%;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 0.3125rem; }
    [data-whatinput='mouse'] .post--teaser .post__link a {
      outline: 0; }
    .post--teaser .post__link a:hover, .post--teaser .post__link a:focus {
      background-color: #a60028;
      color: #ffffff; }
    @media print, screen and (min-width: 40em) {
      .post--teaser .post__link a {
        padding: 1rem; } }

.search {
  border-radius: 0.3125rem;
  background-color: #F6F6F6;
  box-shadow: 0 30px 60px 0 rgba(0, 0, 0, 0.1); }
  .search__header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 3.125rem 1.875rem 0; }
    .search__header legend {
      margin-bottom: 0;
      font-size: 1.5rem;
      font-weight: 600;
      line-height: 1; }
  .search .search__form {
    padding: 1.875rem; }
    @media print, screen and (min-width: 64em) {
      .search .search__form {
        border-bottom-right-radius: 0.3125rem;
        border-bottom-left-radius: 0.3125rem; } }
  .search .help-block {
    margin-bottom: 0.625rem; }
  .search label.control-label {
    display: none;
    margin-bottom: 0.3125rem;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1; }
  .search select {
    height: 3.0625rem;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 0.3125rem; }
  .search .form-group label:not(.control-label) {
    display: block;
    position: relative;
    padding: 0.25rem 0.5rem;
    color: #222222;
    font-size: 0.875rem;
    font-weight: 600;
    background-color: #ffffff;
    border: 1px solid #eeeeee;
    cursor: pointer; }
    .search .form-group label:not(.control-label) .label-count {
      margin-left: 0.1875rem; }
    .search .form-group label:not(.control-label) input {
      margin-bottom: 0; }
  .search .form-group div:not(.help-block):not(#price_type) {
    border-radius: 0.3125rem; }
    .search .form-group div:not(.help-block):not(#price_type) label:not(:first-child) {
      border-top: none; }
    .search .form-group div:not(.help-block):not(#price_type) label:first-child {
      border-top-left-radius: 0.3125rem;
      border-top-right-radius: 0.3125rem; }
    .search .form-group div:not(.help-block):not(#price_type) label:last-child {
      border-bottom-left-radius: 0.3125rem;
      border-bottom-right-radius: 0.3125rem; }
    .search .form-group div:not(.help-block):not(#price_type)#colours label::after {
      content: "";
      position: absolute;
      top: 0.625rem;
      right: 0.5rem;
      display: block;
      height: 1rem;
      width: 1rem;
      border-radius: 50%; }
    .search .form-group div:not(.help-block):not(#price_type)#colours label[for=colours-white]::after {
      border: 1px solid #eeeeee; }
  .search .search__price {
    display: inline-block;
    width: 100%;
    vertical-align: top; }
    .search .search__price .field-price_type {
      float: left;
      width: 100%;
      margin-bottom: 0;
      border: none; }
      .search .search__price .field-price_type #price_type {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr 1fr;
            grid-template-columns: 1fr 1fr;
        gap: 0.625rem; }
        @media print, screen and (min-width: 64em) {
          .search .search__price .field-price_type #price_type {
            gap: 1.25rem; } }
      .search .search__price .field-price_type label {
        margin: 0;
        padding: 0;
        border: none;
        border-radius: 0.3125rem; }
        .search .search__price .field-price_type label:not(.control-label) {
          background: none; }
        .search .search__price .field-price_type label .label-value {
          display: block;
          padding: 0.625rem;
          color: #222222;
          font-size: 0.875rem;
          font-weight: 600;
          background-color: #ffffff;
          text-align: center;
          border: none;
          border-radius: 0.3125rem;
          line-height: 1.2; }
      .search .search__price .field-price_type input {
        display: none; }
      .search .search__price .field-price_type input:checked + .label-value {
        color: #ffffff;
        background-color: #c3002f; }
    .search .search__price .field-price_min,
    .search .search__price .field-price_monthly_min {
      float: left;
      width: 100%; }
    .search .search__price .field-price_max,
    .search .search__price .field-price_monthly_max {
      float: left;
      width: 100%; }
  .search .show-more {
    display: block;
    width: 100%;
    padding-top: 0.3125rem;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1;
    text-align: center;
    cursor: pointer; }
  .search .field-submit {
    margin-bottom: 0; }
    .search .field-submit a {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      padding: 0.75rem 0.875rem;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 0;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 1.125rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      background-color: #c3002f;
      color: #ffffff;
      margin-bottom: 0;
      padding: 1.3125rem 0.3125rem;
      width: 100%;
      font-size: 1rem;
      border-radius: 0.3125rem;
      font-weight: 600; }
      [data-whatinput='mouse'] .search .field-submit a {
        outline: 0; }
      .search .field-submit a:hover, .search .field-submit a:focus {
        background-color: #a60028;
        color: #ffffff; }

.page--home .search {
  background: none;
  overflow: hidden;
  box-shadow: none; }
  .page--home .search .search__header {
    display: none; }
  .page--home .search .search__form {
    padding: 0;
    background: none;
    border-radius: 0;
    display: -ms-grid;
    display: grid;
    gap: 0.625rem; }
    @media screen and (min-width: 48em) {
      .page--home .search .search__form {
        -ms-grid-columns: 1fr 2fr 2fr 1fr;
            grid-template-columns: 1fr 2fr 2fr 1fr; } }
    @media print, screen and (min-width: 64em) {
      .page--home .search .search__form {
        gap: 1.25rem; } }
  .page--home .search .help-block {
    margin-bottom: 0; }
  .page--home .search select {
    height: 3.75rem;
    padding-left: 1.25rem;
    padding-right: 2.5rem;
    font-size: 1rem;
    border: none; }
  .page--home .search .search__make-model {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    gap: 0.625rem; }
    @media print, screen and (min-width: 64em) {
      .page--home .search .search__make-model {
        gap: 1.25rem; } }
  .page--home .search .search__price {
    display: -ms-grid;
    display: grid;
    gap: 0.625rem; }
    @media print, screen and (min-width: 64em) {
      .page--home .search .search__price {
        gap: 1.25rem; } }
    .page--home .search .search__price-type {
      display: -ms-grid;
      display: grid;
      gap: 0.625rem;
      -ms-grid-columns: 1fr 1fr;
          grid-template-columns: 1fr 1fr; }
      @media print, screen and (min-width: 64em) {
        .page--home .search .search__price-type {
          gap: 1.25rem; } }
  @media screen and (min-width: 48em) {
    .page--home .search--finance .field-is_new,
    .page--home .search--finance .search__make-model,
    .page--home .search--finance .field-submit {
      margin-top: 2.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .page--home .search--finance .field-is_new,
    .page--home .search--finance .search__make-model,
    .page--home .search--finance .field-submit {
      margin-top: 3.5625rem; } }

@media screen and (max-width: 63.9375em) {
  .toggler .search {
    margin-bottom: 0; } }

@media screen and (max-width: 63.9375em) {
  .toggler .search .search__header {
    padding-top: 3.125rem; } }

.sensi-spinner-overlay {
  background-color: rgba(255, 255, 255, 0.75); }

.sk-spinner-three-bounce div {
  background-color: #c3002f; }

.showroom--full {
  padding-top: 1.875rem; }
  @media print, screen and (min-width: 40em) {
    .showroom--full {
      padding-top: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .showroom--full {
      padding-top: 6.25rem; } }
  .showroom--full .showroom__heading h2, .showroom--full .showroom__heading .offer--featured .offer__title, .offer--featured .showroom--full .showroom__heading .offer__title, .showroom--full .showroom__heading .order-progress__title, .showroom--full .showroom__heading .part--featured .part__title, .part--featured .showroom--full .showroom__heading .part__title, .showroom--full .showroom__heading .part--full .part__form-title, .part--full .showroom--full .showroom__heading .part__form-title, .showroom--full .showroom__heading .post--featured .post__title, .post--featured .showroom--full .showroom__heading .post__title, .showroom--full .showroom__heading .vehicle--general .vehicle__title, .vehicle--general .showroom--full .showroom__heading .vehicle__title, .showroom--full .showroom__heading .vehicle--latest .vehicle__title, .vehicle--latest .showroom--full .showroom__heading .vehicle__title, .showroom--full .showroom__heading .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .showroom--full .showroom__heading .listing__title, .showroom--full .showroom__heading .listing--vehicle-featured .listing__title, .listing--vehicle-featured .showroom--full .showroom__heading .listing__title, .showroom--full .showroom__heading .listing--vehicle-similar .listing__title, .listing--vehicle-similar .showroom--full .showroom__heading .listing__title, .showroom--full .showroom__heading .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .showroom--full .showroom__heading .listing__title, .showroom--full .showroom__heading .listing--offer-featured .listing__title, .listing--offer-featured .showroom--full .showroom__heading .listing__title, .showroom--full .showroom__heading .page--teaser .page__title, .page--teaser .showroom--full .showroom__heading .page__title {
    margin-bottom: 1.25rem;
    font-size: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .showroom--full .showroom__heading h2, .showroom--full .showroom__heading .offer--featured .offer__title, .offer--featured .showroom--full .showroom__heading .offer__title, .showroom--full .showroom__heading .order-progress__title, .showroom--full .showroom__heading .part--featured .part__title, .part--featured .showroom--full .showroom__heading .part__title, .showroom--full .showroom__heading .part--full .part__form-title, .part--full .showroom--full .showroom__heading .part__form-title, .showroom--full .showroom__heading .post--featured .post__title, .post--featured .showroom--full .showroom__heading .post__title, .showroom--full .showroom__heading .vehicle--general .vehicle__title, .vehicle--general .showroom--full .showroom__heading .vehicle__title, .showroom--full .showroom__heading .vehicle--latest .vehicle__title, .vehicle--latest .showroom--full .showroom__heading .vehicle__title, .showroom--full .showroom__heading .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .showroom--full .showroom__heading .listing__title, .showroom--full .showroom__heading .listing--vehicle-featured .listing__title, .listing--vehicle-featured .showroom--full .showroom__heading .listing__title, .showroom--full .showroom__heading .listing--vehicle-similar .listing__title, .listing--vehicle-similar .showroom--full .showroom__heading .listing__title, .showroom--full .showroom__heading .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .showroom--full .showroom__heading .listing__title, .showroom--full .showroom__heading .listing--offer-featured .listing__title, .listing--offer-featured .showroom--full .showroom__heading .listing__title, .showroom--full .showroom__heading .page--teaser .page__title, .page--teaser .showroom--full .showroom__heading .page__title {
        margin-bottom: 1.875rem;
        font-size: 1.875rem; } }
  .showroom--full .showroom__link {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #c3002f;
    color: #ffffff;
    margin-bottom: 0;
    padding: 0.5rem 0.875rem;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 0.3125rem; }
    [data-whatinput='mouse'] .showroom--full .showroom__link {
      outline: 0; }
    .showroom--full .showroom__link:hover, .showroom--full .showroom__link:focus {
      background-color: #a60028;
      color: #ffffff; }
  .showroom--full .showroom__banner {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 1.25rem; }
    .showroom--full .showroom__banner::before, .showroom--full .showroom__banner::after {
      display: table;
      content: ' '; }
    .showroom--full .showroom__banner::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .showroom--full .showroom__banner {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .showroom--full .showroom__banner:last-child:not(:first-child) {
      float: right; }
    .showroom--full .showroom__banner, .showroom--full .showroom__banner:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .showroom--full .showroom__banner {
        margin-bottom: 1.875rem; } }
    .showroom--full .showroom__banner ul {
      margin: 0;
      list-style: none; }
      .showroom--full .showroom__banner ul img {
        border-radius: 0.3125rem; }
  .showroom--full .showroom__content {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto; }
    .showroom--full .showroom__content::before, .showroom--full .showroom__content::after {
      display: table;
      content: ' '; }
    .showroom--full .showroom__content::after {
      clear: both; }
    .showroom--full .showroom__content-first {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      margin-top: 1.875rem; }
      @media print, screen and (min-width: 40em) {
        .showroom--full .showroom__content-first {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .showroom--full .showroom__content-first:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 40em) {
        .showroom--full .showroom__content-first {
          margin-top: 3.125rem; } }
      @media print, screen and (min-width: 64em) {
        .showroom--full .showroom__content-first {
          width: 66.66667%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          margin-top: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .showroom--full .showroom__content-first {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
          .showroom--full .showroom__content-first:last-child:not(:first-child) {
            float: right; } }
    .showroom--full .showroom__content-second {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      display: none; }
      @media print, screen and (min-width: 40em) {
        .showroom--full .showroom__content-second {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .showroom--full .showroom__content-second:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 64em) {
        .showroom--full .showroom__content-second {
          width: 33.33333%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          display: block;
          position: -webkit-sticky;
          position: sticky;
          top: 1.875rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .showroom--full .showroom__content-second {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
          .showroom--full .showroom__content-second:last-child:not(:first-child) {
            float: right; } }
  .showroom--full .showroom__media {
    padding: 0.625rem 0.625rem 0;
    background-color: #ffffff;
    border-top-right-radius: 0.3125rem;
    border-top-left-radius: 0.3125rem; }
    @media print, screen and (min-width: 40em) {
      .showroom--full .showroom__media {
        padding: 1.25rem 1.25rem 0; } }
    .showroom--full .showroom__media .showroom__primary-images {
      position: relative;
      border-radius: 0.3125rem;
      overflow: hidden; }
      .showroom--full .showroom__media .showroom__primary-images ul {
        margin: 0;
        list-style: none; }
        .showroom--full .showroom__media .showroom__primary-images ul img {
          width: 100%; }
  .showroom--full .showroom__header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.25rem;
    padding: 0.625rem;
    background-color: #ffffff;
    border-bottom-right-radius: 0.3125rem;
    border-bottom-left-radius: 0.3125rem; }
    @media print, screen and (min-width: 40em) {
      .showroom--full .showroom__header {
        gap: 1.875rem;
        padding: 1.25rem; } }
    .showroom--full .showroom__header .showroom__title h1 {
      margin-bottom: 0;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      font-size: 1.625rem;
      font-weight: 600;
      line-height: 1.3; }
    .showroom--full .showroom__header .showroom__sub-title {
      margin-top: 0.3125rem;
      color: #717580;
      font-size: 1.0625rem;
      font-weight: 500; }
    .showroom--full .showroom__header .showroom__price {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-align-items: flex-end;
          -ms-flex-align: end;
              align-items: flex-end;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      font-size: 1.625rem;
      font-weight: 600;
      line-height: 1.3; }
      .showroom--full .showroom__header .showroom__price span {
        font-size: 70%; }
  .showroom--full .showroom__mobile-contact {
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .showroom--full .showroom__mobile-contact {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .showroom--full .showroom__mobile-contact {
        display: none; } }
  .showroom--full .showroom__description {
    color: #666666;
    font-size: 0.9375rem;
    line-height: 1.8; }
    .showroom--full .showroom__description p:last-child {
      margin-bottom: 0; }
    .showroom--full .showroom__description p a:not(.button) {
      color: #666666;
      text-decoration: underline; }
      .showroom--full .showroom__description p a:not(.button):hover {
        text-decoration: none; }
    .showroom--full .showroom__description-outer {
      margin-top: 1.875rem; }
      @media print, screen and (min-width: 40em) {
        .showroom--full .showroom__description-outer {
          margin-top: 3.125rem; } }
  .showroom--full .showroom__videos {
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .showroom--full .showroom__videos {
        margin-top: 3.125rem; } }
    .showroom--full .showroom__videos ul {
      margin: 0;
      list-style: none; }
      .showroom--full .showroom__videos ul li {
        margin-bottom: 1.25rem; }
        @media print, screen and (min-width: 40em) {
          .showroom--full .showroom__videos ul li {
            margin-bottom: 1.875rem; } }
        .showroom--full .showroom__videos ul li::last-child {
          margin-bottom: 0; }
        .showroom--full .showroom__videos ul li iframe {
          border-radius: 0.3125rem; }
  .showroom--full .showroom__secondary-images {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 97.5rem;
    margin-top: 1.875rem; }
    .showroom--full .showroom__secondary-images::before, .showroom--full .showroom__secondary-images::after {
      display: table;
      content: ' '; }
    .showroom--full .showroom__secondary-images::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .showroom--full .showroom__secondary-images {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .showroom--full .showroom__secondary-images:last-child:not(:first-child) {
      float: right; }
    .showroom--full .showroom__secondary-images, .showroom--full .showroom__secondary-images:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .showroom--full .showroom__secondary-images {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .showroom--full .showroom__secondary-images {
        margin-top: 6.25rem; } }
    .showroom--full .showroom__secondary-images ul {
      margin: 0;
      list-style: none; }
      .showroom--full .showroom__secondary-images ul li img {
        border-radius: 0.3125rem; }
  .showroom--full .showroom__contact {
    padding: 1.875rem;
    background-color: #ffffff;
    border-radius: 0.3125rem; }
    .showroom--full .showroom__contact h3, .showroom--full .showroom__contact .block--sidebar .block__title, .block--sidebar .showroom--full .showroom__contact .block__title, .showroom--full .showroom__contact .offer--featured .offer__sub-title, .offer--featured .showroom--full .showroom__contact .offer__sub-title, .showroom--full .showroom__contact .add-on__title, .showroom--full .showroom__contact .calendar__header .calendar__month span, .calendar__header .calendar__month .showroom--full .showroom__contact span, .showroom--full .showroom__contact .collection-delivery__title, .showroom--full .showroom__contact .order-payment__title, .showroom--full .showroom__contact .order-state-summary__vehicle-title, .showroom--full .showroom__contact .part--featured .part__sub-title, .part--featured .showroom--full .showroom__contact .part__sub-title, .showroom--full .showroom__contact .post--featured .post__sub-title, .post--featured .showroom--full .showroom__contact .post__sub-title, .showroom--full .showroom__contact .quick-search__legend, .showroom--full .showroom__contact .listing--showroom-teaser .listing__title h1, .listing--showroom-teaser .listing__title .showroom--full .showroom__contact h1, .showroom--full .showroom__contact .listing--post-teaser .listing__title h1, .listing--post-teaser .listing__title .showroom--full .showroom__contact h1, .showroom--full .showroom__contact .listing--offer-teaser .listing__title h1, .listing--offer-teaser .listing__title .showroom--full .showroom__contact h1, .showroom--full .showroom__contact .listing--custom-entry-teaser .listing__title h1, .listing--custom-entry-teaser .listing__title .showroom--full .showroom__contact h1, .showroom--full .showroom__contact .listing--vehicle-teaser .listing__title h1, .listing--vehicle-teaser .listing__title .showroom--full .showroom__contact h1, .showroom--full .showroom__contact .block--index-header .block__title h1, .block--index-header .block__title .showroom--full .showroom__contact h1, .showroom--full .showroom__contact .branch--contact .branch__opening-hours-title, .branch--contact .showroom--full .showroom__contact .branch__opening-hours-title, .showroom--full .showroom__contact .form--part-exchange .form__title, .form--part-exchange .showroom--full .showroom__contact .form__title, .showroom--full .showroom__contact .finance-table--full .finance-table__title, .finance-table--full .showroom--full .showroom__contact .finance-table__title, .showroom--full .showroom__contact .finance-checker__details-title, .showroom--full .showroom__contact .finance-table--order .finance-table__title, .finance-table--order .showroom--full .showroom__contact .finance-table__title {
      margin-bottom: 0.625rem;
      font-size: 1.5rem; }
    .showroom--full .showroom__contact p {
      color: #717580;
      font-size: 1rem;
      font-weight: 500;
      line-height: 1.4; }
  .showroom--full .showroom__telephone {
    margin-top: 1.25rem; }
    .showroom--full .showroom__telephone-label {
      color: #717580;
      font-size: 1rem;
      font-weight: 500;
      line-height: 1.4; }
    .showroom--full .showroom__telephone-value {
      font-size: 1.5rem;
      font-weight: 700;
      line-height: 1.4; }
      .showroom--full .showroom__telephone-value i {
        margin-right: 0.3125rem;
        color: #c3002f; }
      .showroom--full .showroom__telephone-value span {
        vertical-align: middle; }
  .showroom--full .showroom__part-exchange {
    display: none;
    margin-top: 1.875rem;
    padding: 1.875rem;
    background-color: #ffffff;
    border-radius: 0.3125rem; }
    @media print, screen and (min-width: 64em) {
      .showroom--full .showroom__part-exchange {
        display: block; } }
  .showroom--full .showroom__reviews {
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .showroom--full .showroom__reviews {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .showroom--full .showroom__reviews {
        margin-top: 5rem; } }
  .showroom--full .showroom__part-exchange {
    position: relative;
    margin-bottom: -1.875rem; }
    @media print, screen and (min-width: 40em) {
      .showroom--full .showroom__part-exchange {
        margin-bottom: -3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .showroom--full .showroom__part-exchange {
        margin-bottom: -5rem; } }

.showroom--teaser {
  height: 100%;
  background-color: #ffffff;
  border-radius: 0.3125rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .showroom--teaser .showroom__primary-images {
    position: relative;
    border-top-left-radius: 0.3125rem;
    border-top-right-radius: 0.3125rem;
    overflow: hidden; }
    .showroom--teaser .showroom__primary-images img {
      width: 100%;
      transition: all 0.5s; }
      .showroom--teaser .showroom__primary-images img:hover {
        opacity: .8; }
  .showroom--teaser .showroom__details {
    position: relative;
    padding: 1.25rem 0.625rem;
    background-color: #ffffff; }
    @media print, screen and (min-width: 40em) {
      .showroom--teaser .showroom__details {
        padding: 1.25rem; } }
  .showroom--teaser .showroom__title h2, .showroom--teaser .showroom__title .offer--featured .offer__title, .offer--featured .showroom--teaser .showroom__title .offer__title, .showroom--teaser .showroom__title .order-progress__title, .showroom--teaser .showroom__title .part--featured .part__title, .part--featured .showroom--teaser .showroom__title .part__title, .showroom--teaser .showroom__title .part--full .part__form-title, .part--full .showroom--teaser .showroom__title .part__form-title, .showroom--teaser .showroom__title .post--featured .post__title, .post--featured .showroom--teaser .showroom__title .post__title, .showroom--teaser .showroom__title .vehicle--general .vehicle__title, .vehicle--general .showroom--teaser .showroom__title .vehicle__title, .showroom--teaser .showroom__title .vehicle--latest .vehicle__title, .vehicle--latest .showroom--teaser .showroom__title .vehicle__title, .showroom--teaser .showroom__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .showroom--teaser .showroom__title .listing__title, .showroom--teaser .showroom__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .showroom--teaser .showroom__title .listing__title, .showroom--teaser .showroom__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .showroom--teaser .showroom__title .listing__title, .showroom--teaser .showroom__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .showroom--teaser .showroom__title .listing__title, .showroom--teaser .showroom__title .listing--offer-featured .listing__title, .listing--offer-featured .showroom--teaser .showroom__title .listing__title, .showroom--teaser .showroom__title .page--teaser .page__title, .page--teaser .showroom--teaser .showroom__title .page__title {
    margin-bottom: 0;
    color: #222222;
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.2; }
    @media print, screen and (min-width: 40em) {
      .showroom--teaser .showroom__title h2, .showroom--teaser .showroom__title .offer--featured .offer__title, .offer--featured .showroom--teaser .showroom__title .offer__title, .showroom--teaser .showroom__title .order-progress__title, .showroom--teaser .showroom__title .part--featured .part__title, .part--featured .showroom--teaser .showroom__title .part__title, .showroom--teaser .showroom__title .part--full .part__form-title, .part--full .showroom--teaser .showroom__title .part__form-title, .showroom--teaser .showroom__title .post--featured .post__title, .post--featured .showroom--teaser .showroom__title .post__title, .showroom--teaser .showroom__title .vehicle--general .vehicle__title, .vehicle--general .showroom--teaser .showroom__title .vehicle__title, .showroom--teaser .showroom__title .vehicle--latest .vehicle__title, .vehicle--latest .showroom--teaser .showroom__title .vehicle__title, .showroom--teaser .showroom__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .showroom--teaser .showroom__title .listing__title, .showroom--teaser .showroom__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .showroom--teaser .showroom__title .listing__title, .showroom--teaser .showroom__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .showroom--teaser .showroom__title .listing__title, .showroom--teaser .showroom__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .showroom--teaser .showroom__title .listing__title, .showroom--teaser .showroom__title .listing--offer-featured .listing__title, .listing--offer-featured .showroom--teaser .showroom__title .listing__title, .showroom--teaser .showroom__title .page--teaser .page__title, .page--teaser .showroom--teaser .showroom__title .page__title {
        font-size: 1.375rem; } }
  .showroom--teaser .showroom__sub-title {
    margin-top: 0.3125rem;
    display: block;
    color: #666666;
    font-size: 0.875rem;
    font-weight: 500; }
    @media print, screen and (min-width: 40em) {
      .showroom--teaser .showroom__sub-title {
        font-size: 1.0625rem; } }
  .showroom--teaser .showroom__bottom {
    display: -ms-grid;
    display: grid;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    gap: 1.875rem;
    margin-top: auto;
    padding: 0.9375rem 0.625rem;
    border-top: 1px solid #E8E8E8; }
    @media print, screen and (min-width: 40em) {
      .showroom--teaser .showroom__bottom {
        padding: 1.25rem; } }
  .showroom--teaser .showroom__link a {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #c3002f;
    color: #ffffff;
    margin-bottom: 0;
    padding: 0.8125rem;
    width: 100%;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 0.3125rem; }
    [data-whatinput='mouse'] .showroom--teaser .showroom__link a {
      outline: 0; }
    .showroom--teaser .showroom__link a:hover, .showroom--teaser .showroom__link a:focus {
      background-color: #a60028;
      color: #ffffff; }
    @media print, screen and (min-width: 40em) {
      .showroom--teaser .showroom__link a {
        padding: 1rem; } }
  .showroom--teaser .showroom__price {
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.2;
    text-align: right; }
    @media print, screen and (min-width: 40em) {
      .showroom--teaser .showroom__price {
        font-size: 1.375rem; } }
    .showroom--teaser .showroom__price span {
      color: #717580;
      font-size: 70%; }

.price__total, .price__sold, .price__monthly {
  font-size: 1.125rem;
  line-height: 1.2; }

.price__sold {
  font-weight: 600; }

.price--teaser {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.1875rem; }
  .price--teaser .price__total,
  .price--teaser .price__monthly,
  .price--teaser .price__sold {
    font-size: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .price--teaser .price__total,
      .price--teaser .price__monthly,
      .price--teaser .price__sold {
        font-size: 1.375rem; } }

.price--full {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.1875rem; }
  @media screen and (min-width: 48em) {
    .price--full {
      text-align: right; } }
  .price--full .price__total,
  .price--full .price__monthly,
  .price--full .price__sold {
    font-size: 1.625rem; }

.price--compare .price__total,
.price--compare .price__sold {
  font-size: 100%;
  line-height: inherit; }

.price--recently-viewed .price__total,
.price--recently-viewed .price__sold {
  font-size: 1.125rem;
  line-height: 1; }

.price-combined {
  display: block; }
  .price-combined__value {
    display: block;
    font-weight: 600; }
  .price-combined__vat {
    display: block;
    margin-left: 0.25rem;
    font-size: 70%;
    font-weight: 600; }
  .price-combined__was {
    display: block;
    margin-left: 0.3125rem;
    font-weight: 600; }
    .price-combined__was-label {
      font-size: 70%; }
    .price-combined__was-value {
      font-size: 70%;
      text-decoration: line-through; }

.specification,
.specification-link {
  color: #222222;
  padding: 0.8125rem;
  font-size: 0.9375rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.6;
  background-color: #F6F6F6;
  border-radius: 0.3125rem; }

.specification-link {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.75rem 0.875rem;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 1.125rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #c3002f;
  color: #ffffff;
  margin-bottom: 0;
  padding: 1rem;
  width: 100%;
  font-size: 1rem;
  font-weight: 600;
  border-radius: 0.3125rem; }
  [data-whatinput='mouse'] .specification-link {
    outline: 0; }
  .specification-link:hover, .specification-link:focus {
    background-color: #a60028;
    color: #ffffff; }

.technical-data--default {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.2;
  background-color: #F6F6F6;
  border-radius: 0.3125rem; }
  .technical-data--default .technical-data__label {
    color: #717580; }

.technical-data--full {
  display: inline-block;
  width: 100%; }
  .technical-data--full .technical-data__label {
    float: left;
    font-size: 1rem;
    line-height: 1; }
  .technical-data--full .technical-data__value {
    float: right;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1; }

.technical-data--promoted {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
      grid-template-columns: 1fr 1fr;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 600; }
  @media screen and (min-width: 48em) {
    .technical-data--promoted {
      -ms-grid-columns: 1fr;
          grid-template-columns: 1fr; } }
  .technical-data--promoted .technical-data__icon {
    display: none;
    font-size: 1.875rem; }
    @media screen and (min-width: 48em) {
      .technical-data--promoted .technical-data__icon {
        display: block; } }
  .technical-data--promoted .technical-data__label {
    color: #666666;
    font-size: 0.875rem;
    line-height: 1.2; }
    @media screen and (min-width: 48em) {
      .technical-data--promoted .technical-data__label {
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1;
        font-size: 0.9375rem; } }
  .technical-data--promoted .technical-data__value {
    font-size: 0.875rem;
    line-height: 1.2; }
    @media screen and (min-width: 48em) {
      .technical-data--promoted .technical-data__value {
        margin-bottom: 0.1875rem;
        font-size: 1.0625rem; } }

.technical-data--promoted-reveal .technical-data__icon {
  float: left;
  width: 2.5rem;
  font-size: 1.5rem;
  line-height: 3.125rem;
  text-align: left; }
  @media print, screen and (min-width: 64em) {
    .technical-data--promoted-reveal .technical-data__icon {
      float: none;
      width: auto;
      margin-bottom: 0.625rem;
      font-size: 2.125rem;
      line-height: 1;
      text-align: center; } }

.technical-data--promoted-reveal .technical-data__label {
  float: left;
  color: #666666;
  font-size: 1rem;
  line-height: 3.125rem; }
  @media print, screen and (min-width: 64em) {
    .technical-data--promoted-reveal .technical-data__label {
      float: none;
      margin-bottom: 0.25rem;
      font-size: 0.875rem;
      line-height: 1;
      text-align: center; } }

.technical-data--promoted-reveal .technical-data__value {
  float: right;
  font-size: 1rem;
  font-weight: 600;
  line-height: 3.125rem; }
  @media print, screen and (min-width: 64em) {
    .technical-data--promoted-reveal .technical-data__value {
      float: none;
      font-size: 1.125rem;
      line-height: 1;
      text-align: center; } }

.technical-data--summary {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0.9375rem;
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.2;
  background-color: #F6F6F6;
  border-radius: 0.3125rem; }
  .technical-data--summary .technical-data__label {
    color: #717580; }

.technical-data--teaser {
  padding: 0.25rem 0.5rem;
  color: #666666;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  background-color: #F6F6F6;
  border-radius: 0.3125rem; }
  @media print, screen and (min-width: 40em) {
    .technical-data--teaser {
      font-size: 1rem; } }

.technical-data--featured .technical-data__icon {
  display: none; }

.technical-data--featured .technical-data__label {
  display: inline-block; }

.technical-data--featured .technical-data__value {
  display: inline-block;
  font-weight: 600; }

.technical-data--compare {
  position: relative;
  line-height: 1.2; }
  .technical-data--compare .technical-data__label {
    position: absolute;
    top: 0.3125rem;
    left: 0.3125rem;
    font-size: 0.75rem; }
    @media print, screen and (min-width: 40em) {
      .technical-data--compare .technical-data__label {
        display: none; } }
  .technical-data--compare .technical-data__value {
    display: inline-block;
    width: 100%;
    padding: 1.25rem;
    font-weight: 600;
    text-align: center; }
    @media print, screen and (min-width: 40em) {
      .technical-data--compare .technical-data__value {
        padding: 0; } }

.vehicle--compare .vehicle__primary-images {
  position: relative;
  margin-bottom: 0.1875rem;
  overflow: hidden; }
  @media print, screen and (min-width: 40em) {
    .vehicle--compare .vehicle__primary-images {
      height: 13.4375rem;
      background-color: #ffffff; } }
  @media print, screen and (min-width: 40em) {
    .vehicle--compare .vehicle__primary-images img {
      height: auto;
      width: auto;
      max-height: 100vh;
      max-width: 100vw; } }

.vehicle--compare .vehicle__technical-data {
  margin: 0;
  list-style: none; }
  @media print, screen and (min-width: 40em) {
    .vehicle--compare .vehicle__technical-data > li {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      height: 3.75rem; } }
  .vehicle--compare .vehicle__technical-data > li:nth-child(odd) {
    background-color: #eeeeee; }

.vehicle--compare .vehicle__admin-fee {
  display: inline-block;
  font-weight: 600;
  font-size: 65%;
  text-decoration: underline; }
  .vehicle--compare .vehicle__admin-fee::before {
    content: '+';
    display: inline-block;
    margin-right: 0.1875rem; }

.vehicle--compare .vehicle__footer {
  margin-top: 0.625rem;
  text-align: center; }
  .vehicle--compare .vehicle__footer a {
    margin: 0.1875rem; }

.vehicle--full {
  overflow: hidden; }
  .vehicle--full .vehicle__heading h2, .vehicle--full .vehicle__heading .offer--featured .offer__title, .offer--featured .vehicle--full .vehicle__heading .offer__title, .vehicle--full .vehicle__heading .order-progress__title, .vehicle--full .vehicle__heading .part--featured .part__title, .part--featured .vehicle--full .vehicle__heading .part__title, .vehicle--full .vehicle__heading .part--full .part__form-title, .part--full .vehicle--full .vehicle__heading .part__form-title, .vehicle--full .vehicle__heading .post--featured .post__title, .post--featured .vehicle--full .vehicle__heading .post__title, .vehicle--full .vehicle__heading .vehicle--general .vehicle__title, .vehicle--general .vehicle--full .vehicle__heading .vehicle__title, .vehicle--full .vehicle__heading .vehicle--latest .vehicle__title, .vehicle--latest .vehicle--full .vehicle__heading .vehicle__title, .vehicle--full .vehicle__heading .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .vehicle--full .vehicle__heading .listing__title, .vehicle--full .vehicle__heading .listing--vehicle-featured .listing__title, .listing--vehicle-featured .vehicle--full .vehicle__heading .listing__title, .vehicle--full .vehicle__heading .listing--vehicle-similar .listing__title, .listing--vehicle-similar .vehicle--full .vehicle__heading .listing__title, .vehicle--full .vehicle__heading .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .vehicle--full .vehicle__heading .listing__title, .vehicle--full .vehicle__heading .listing--offer-featured .listing__title, .listing--offer-featured .vehicle--full .vehicle__heading .listing__title, .vehicle--full .vehicle__heading .page--teaser .page__title, .page--teaser .vehicle--full .vehicle__heading .page__title {
    margin-bottom: 1.25rem;
    font-size: 1.5rem; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__heading h2, .vehicle--full .vehicle__heading .offer--featured .offer__title, .offer--featured .vehicle--full .vehicle__heading .offer__title, .vehicle--full .vehicle__heading .order-progress__title, .vehicle--full .vehicle__heading .part--featured .part__title, .part--featured .vehicle--full .vehicle__heading .part__title, .vehicle--full .vehicle__heading .part--full .part__form-title, .part--full .vehicle--full .vehicle__heading .part__form-title, .vehicle--full .vehicle__heading .post--featured .post__title, .post--featured .vehicle--full .vehicle__heading .post__title, .vehicle--full .vehicle__heading .vehicle--general .vehicle__title, .vehicle--general .vehicle--full .vehicle__heading .vehicle__title, .vehicle--full .vehicle__heading .vehicle--latest .vehicle__title, .vehicle--latest .vehicle--full .vehicle__heading .vehicle__title, .vehicle--full .vehicle__heading .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .vehicle--full .vehicle__heading .listing__title, .vehicle--full .vehicle__heading .listing--vehicle-featured .listing__title, .listing--vehicle-featured .vehicle--full .vehicle__heading .listing__title, .vehicle--full .vehicle__heading .listing--vehicle-similar .listing__title, .listing--vehicle-similar .vehicle--full .vehicle__heading .listing__title, .vehicle--full .vehicle__heading .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .vehicle--full .vehicle__heading .listing__title, .vehicle--full .vehicle__heading .listing--offer-featured .listing__title, .listing--offer-featured .vehicle--full .vehicle__heading .listing__title, .vehicle--full .vehicle__heading .page--teaser .page__title, .page--teaser .vehicle--full .vehicle__heading .page__title {
        margin-bottom: 1.875rem;
        font-size: 1.875rem; } }
  .vehicle--full .vehicle__back {
    display: none; }
    @media print, screen and (min-width: 64em) {
      .vehicle--full .vehicle__back {
        display: block; } }
    .vehicle--full .vehicle__back a {
      display: block;
      margin-bottom: 1.25rem;
      font-size: 0.875rem;
      font-weight: 600;
      line-height: 1; }
      .vehicle--full .vehicle__back a span {
        line-height: 1;
        vertical-align: middle; }
  @media print, screen and (min-width: 40em) {
    .vehicle--full .vehicle__top {
      padding: 1.25rem;
      background-color: #ffffff;
      border-radius: 0.3125rem; } }
  @media print, screen and (min-width: 64em) {
    .vehicle--full .vehicle__top {
      padding: 1.875rem; } }
  .vehicle--full .vehicle__top-bg {
    padding-top: 1.875rem;
    padding-bottom: 1.875rem;
    background-color: #F6F6F6; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__top-bg {
        padding-top: 3.125rem;
        padding-bottom: 3.125rem; } }
  @media print, screen and (min-width: 40em) {
    .vehicle--full .vehicle__top-outer {
      max-width: 81.25rem;
      margin-right: auto;
      margin-left: auto;
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      .vehicle--full .vehicle__top-outer::before, .vehicle--full .vehicle__top-outer::after {
        display: table;
        content: ' '; }
      .vehicle--full .vehicle__top-outer::after {
        clear: both; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .vehicle--full .vehicle__top-outer {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__top-outer:last-child:not(:first-child) {
        float: right; }
      .vehicle--full .vehicle__top-outer, .vehicle--full .vehicle__top-outer:last-child {
        float: none; } }
  .vehicle--full .vehicle__top-inner {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__top-inner {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .vehicle--full .vehicle__top-inner {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .vehicle--full .vehicle__top-inner::before, .vehicle--full .vehicle__top-inner::after {
      display: table;
      content: ' '; }
    .vehicle--full .vehicle__top-inner::after {
      clear: both; }
  .vehicle--full .vehicle__top .vehicle__primary-images {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__top .vehicle__primary-images {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .vehicle--full .vehicle__top .vehicle__primary-images:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .vehicle--full .vehicle__top .vehicle__primary-images {
        width: 66.66667%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        position: static; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .vehicle--full .vehicle__top .vehicle__primary-images {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .vehicle--full .vehicle__top .vehicle__primary-images:last-child:not(:first-child) {
          float: right; } }
    .vehicle--full .vehicle__top .vehicle__primary-images ul {
      margin: 0;
      list-style: none; }
      .vehicle--full .vehicle__top .vehicle__primary-images ul img {
        width: 100%; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__top .vehicle__primary-images-inner {
        border-radius: 0.3125rem;
        overflow: hidden; } }
  .vehicle--full .vehicle__primary-images-thumbnails {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    display: none;
    margin-top: 0.0625rem; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__primary-images-thumbnails {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .vehicle--full .vehicle__primary-images-thumbnails:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__primary-images-thumbnails {
        display: block;
        margin-top: 0.625rem; } }
    @media print, screen and (min-width: 64em) {
      .vehicle--full .vehicle__primary-images-thumbnails {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-top: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .vehicle--full .vehicle__primary-images-thumbnails {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .vehicle--full .vehicle__primary-images-thumbnails:last-child:not(:first-child) {
          float: right; } }
    .vehicle--full .vehicle__primary-images-thumbnails ul {
      list-style: none; }
      @media screen and (max-width: 63.9375em) {
        .vehicle--full .vehicle__primary-images-thumbnails ul {
          margin-bottom: 0; } }
      @media print, screen and (min-width: 64em) {
        .vehicle--full .vehicle__primary-images-thumbnails ul {
          margin-left: 0; } }
      .vehicle--full .vehicle__primary-images-thumbnails ul img {
        width: 100%; }
        @media print, screen and (min-width: 40em) {
          .vehicle--full .vehicle__primary-images-thumbnails ul img {
            border-radius: 0.3125rem; } }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__primary-images-thumbnails-inner {
        border-radius: 0.3125rem;
        overflow: hidden; } }
  .vehicle--full .vehicle__video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 6.25rem;
    margin-left: -3.125rem;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    text-align: center;
    z-index: 999; }
    .vehicle--full .vehicle__video i::before {
      color: #ffffff;
      font-size: 6.25rem; }
  .vehicle--full .vehicle__media-menu {
    display: none;
    position: absolute;
    left: 2.8125rem;
    bottom: 1.25rem;
    z-index: 999;
    text-shadow: 0.125rem 0.125rem 0.3125rem rgba(34, 34, 34, 0.15); }
    @media print, screen and (min-width: 64em) {
      .vehicle--full .vehicle__media-menu {
        display: block; } }
    .vehicle--full .vehicle__media-menu ul li {
      display: inline-block;
      margin-right: 0.9375rem;
      line-height: 1; }
      .vehicle--full .vehicle__media-menu ul li:last-child {
        margin-right: 0; }
      .vehicle--full .vehicle__media-menu ul li a {
        color: #ffffff;
        font-size: 0.875rem;
        font-weight: 700;
        line-height: 1; }
        .vehicle--full .vehicle__media-menu ul li a span {
          margin-left: 0.3125rem;
          vertical-align: middle; }
  .vehicle--full .vehicle__header {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-width: 81.25rem;
    margin: 0 auto;
    margin-top: 1.25rem;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
    gap: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__header {
        margin-top: 1.875rem;
        gap: 1.875rem;
        padding-left: 0;
        padding-right: 0; } }
    @media screen and (min-width: 48em) {
      .vehicle--full .vehicle__header {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
    .vehicle--full .vehicle__header .vehicle__title {
      margin-bottom: 0;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      font-size: 1rem;
      font-weight: 600;
      line-height: 1.3; }
      .vehicle--full .vehicle__header .vehicle__title .vehicle__make,
      .vehicle--full .vehicle__header .vehicle__title .vehicle__model {
        font-size: 1.625rem; }
      .vehicle--full .vehicle__header .vehicle__title .vehicle__model {
        margin-left: 0.125rem; }
      .vehicle--full .vehicle__header .vehicle__title .vehicle__model-variant {
        display: block;
        margin-top: 0.3125rem;
        color: #717580;
        font-size: 1.0625rem;
        font-weight: 500; }
    .vehicle--full .vehicle__header .vehicle__price {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1; }
      @media screen and (min-width: 48em) {
        .vehicle--full .vehicle__header .vehicle__price {
          -webkit-align-items: flex-end;
              -ms-flex-align: end;
                  align-items: flex-end; } }
    .vehicle--full .vehicle__header .vehicle__promo-text {
      margin-bottom: 0.625rem;
      padding: 0.5rem 0.9375rem;
      color: #ffffff;
      font-size: 0.8125rem;
      font-weight: 600;
      text-transform: uppercase;
      line-height: 1;
      background-color: #262B35;
      border-radius: 0.3125rem; }
  .vehicle--full .vehicle__content {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    margin-top: 1.875rem; }
    .vehicle--full .vehicle__content::before, .vehicle--full .vehicle__content::after {
      display: table;
      content: ' '; }
    .vehicle--full .vehicle__content::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__content {
        margin-top: 3.125rem; } }
    .vehicle--full .vehicle__content-first {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .vehicle--full .vehicle__content-first {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .vehicle--full .vehicle__content-first:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 64em) {
        .vehicle--full .vehicle__content-first {
          width: 33.33333%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          position: relative;
          left: 66.66667%;
          position: -webkit-sticky;
          position: sticky;
          top: 1.875rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .vehicle--full .vehicle__content-first {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
          .vehicle--full .vehicle__content-first:last-child:not(:first-child) {
            float: right; } }
    .vehicle--full .vehicle__content-second {
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      margin-top: 1.875rem; }
      @media print, screen and (min-width: 40em) {
        .vehicle--full .vehicle__content-second {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .vehicle--full .vehicle__content-second:last-child:not(:first-child) {
        float: right; }
      @media print, screen and (min-width: 40em) {
        .vehicle--full .vehicle__content-second {
          margin-top: 3.125rem; } }
      @media print, screen and (min-width: 64em) {
        .vehicle--full .vehicle__content-second {
          width: 66.66667%;
          float: left;
          padding-right: 0.625rem;
          padding-left: 0.625rem;
          position: relative;
          left: -33.33333%;
          margin-top: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .vehicle--full .vehicle__content-second {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
          .vehicle--full .vehicle__content-second:last-child:not(:first-child) {
            float: right; } }
    .vehicle--full .vehicle__content .vehicle__technical-data-promoted > ul {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 0.625rem;
      margin: 0;
      list-style: none; }
      @media screen and (min-width: 48em) {
        .vehicle--full .vehicle__content .vehicle__technical-data-promoted > ul {
          -webkit-flex-direction: row;
              -ms-flex-direction: row;
                  flex-direction: row; } }
      .vehicle--full .vehicle__content .vehicle__technical-data-promoted > ul li {
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1;
        padding-bottom: 0.625rem;
        border-bottom: 1px solid #E3E3E3; }
        @media screen and (min-width: 48em) {
          .vehicle--full .vehicle__content .vehicle__technical-data-promoted > ul li {
            padding-bottom: 0;
            border-bottom: none; } }
    .vehicle--full .vehicle__content .vehicle__technical-data-summary {
      display: none;
      margin-top: 3.125rem; }
      @media screen and (min-width: 48em) {
        .vehicle--full .vehicle__content .vehicle__technical-data-summary {
          display: block; } }
      .vehicle--full .vehicle__content .vehicle__technical-data-summary > ul {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr 1fr 1fr;
            grid-template-columns: 1fr 1fr 1fr;
        gap: 0.625rem;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        margin: 0;
        list-style-type: none; }
        @media print, screen and (min-width: 64em) {
          .vehicle--full .vehicle__content .vehicle__technical-data-summary > ul {
            -ms-grid-columns: 1fr 1fr;
                grid-template-columns: 1fr 1fr; } }
        @media screen and (min-width: 75em) {
          .vehicle--full .vehicle__content .vehicle__technical-data-summary > ul {
            -ms-grid-columns: 1fr 1fr 1fr;
                grid-template-columns: 1fr 1fr 1fr; } }
      .vehicle--full .vehicle__content .vehicle__technical-data-summary-link {
        display: inline-block;
        vertical-align: middle;
        margin: 0 0 1rem 0;
        padding: 0.75rem 0.875rem;
        -webkit-appearance: none;
        border: 1px solid transparent;
        border-radius: 0;
        transition: background-color 0.25s ease-out, color 0.25s ease-out;
        font-size: 1.125rem;
        line-height: 1;
        text-align: center;
        cursor: pointer;
        background-color: #c3002f;
        color: #ffffff;
        margin-bottom: 0;
        padding: 1rem;
        width: 100%;
        font-size: 1rem;
        font-weight: 600;
        border-radius: 0.3125rem; }
        [data-whatinput='mouse'] .vehicle--full .vehicle__content .vehicle__technical-data-summary-link {
          outline: 0; }
        .vehicle--full .vehicle__content .vehicle__technical-data-summary-link:hover, .vehicle--full .vehicle__content .vehicle__technical-data-summary-link:focus {
          background-color: #a60028;
          color: #ffffff; }
  .vehicle--full .vehicle__description {
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__description {
        margin-top: 3.125rem; } }
    .vehicle--full .vehicle__description-inner {
      color: #717580;
      font-size: 0.9375rem;
      line-height: 1.8; }
      @media print, screen and (min-width: 40em) {
        .vehicle--full .vehicle__description-inner {
          font-size: 1rem; } }
      .vehicle--full .vehicle__description-inner p:last-child {
        margin-bottom: 0; }
      .vehicle--full .vehicle__description-inner p a:not(.button) {
        color: #222222;
        text-decoration: underline; }
        .vehicle--full .vehicle__description-inner p a:not(.button):hover {
          text-decoration: none; }
  .vehicle--full .vehicle__specification {
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__specification {
        margin-top: 3.125rem; } }
    .vehicle--full .vehicle__specification ul {
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: 1fr;
          grid-template-columns: 1fr;
      gap: 0.625rem;
      margin: 0;
      list-style: none; }
      @media print, screen and (min-width: 40em) {
        .vehicle--full .vehicle__specification ul {
          -ms-grid-columns: 1fr 1fr;
              grid-template-columns: 1fr 1fr; } }
      @media screen and (min-width: 75em) {
        .vehicle--full .vehicle__specification ul {
          -ms-grid-columns: 1fr 1fr 1fr;
              grid-template-columns: 1fr 1fr 1fr; } }
  .vehicle--full .vehicle__sidebar-options {
    margin-top: 1.875rem;
    padding-top: 1.875rem;
    overflow: hidden;
    border-top: 1px solid #F6F6F6; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__sidebar-options {
        margin-top: 2.5rem;
        padding-top: 2.5rem; } }
    .vehicle--full .vehicle__sidebar-options ul {
      margin: 0;
      list-style: none; }
      .vehicle--full .vehicle__sidebar-options ul li {
        margin-bottom: 0.9375rem;
        padding-bottom: 0.9375rem;
        border-bottom: 1px solid #F6F6F6; }
        @media print, screen and (min-width: 40em) {
          .vehicle--full .vehicle__sidebar-options ul li {
            margin-bottom: 1.875rem;
            padding-bottom: 1.875rem; } }
        .vehicle--full .vehicle__sidebar-options ul li:last-child {
          margin-bottom: 0; }
    .vehicle--full .vehicle__sidebar-options .vehicle-sidebar-options {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      gap: 1.25rem; }
      .vehicle--full .vehicle__sidebar-options .vehicle-sidebar-options__title {
        font-size: 1.125rem;
        font-weight: 700;
        line-height: 1.2; }
        @media print, screen and (min-width: 40em) {
          .vehicle--full .vehicle__sidebar-options .vehicle-sidebar-options__title {
            font-size: 1.5rem; } }
      .vehicle--full .vehicle__sidebar-options .vehicle-sidebar-options__icon i::before {
        color: #c3002f;
        font-size: 1.875rem; }
  .vehicle--full .vehicle__contact {
    padding: 1.875rem;
    background-color: #F6F6F6;
    border-radius: 0.3125rem; }
    .vehicle--full .vehicle__contact h3, .vehicle--full .vehicle__contact .block--sidebar .block__title, .block--sidebar .vehicle--full .vehicle__contact .block__title, .vehicle--full .vehicle__contact .offer--featured .offer__sub-title, .offer--featured .vehicle--full .vehicle__contact .offer__sub-title, .vehicle--full .vehicle__contact .add-on__title, .vehicle--full .vehicle__contact .calendar__header .calendar__month span, .calendar__header .calendar__month .vehicle--full .vehicle__contact span, .vehicle--full .vehicle__contact .collection-delivery__title, .vehicle--full .vehicle__contact .order-payment__title, .vehicle--full .vehicle__contact .order-state-summary__vehicle-title, .vehicle--full .vehicle__contact .part--featured .part__sub-title, .part--featured .vehicle--full .vehicle__contact .part__sub-title, .vehicle--full .vehicle__contact .post--featured .post__sub-title, .post--featured .vehicle--full .vehicle__contact .post__sub-title, .vehicle--full .vehicle__contact .quick-search__legend, .vehicle--full .vehicle__contact .listing--showroom-teaser .listing__title h1, .listing--showroom-teaser .listing__title .vehicle--full .vehicle__contact h1, .vehicle--full .vehicle__contact .listing--post-teaser .listing__title h1, .listing--post-teaser .listing__title .vehicle--full .vehicle__contact h1, .vehicle--full .vehicle__contact .listing--offer-teaser .listing__title h1, .listing--offer-teaser .listing__title .vehicle--full .vehicle__contact h1, .vehicle--full .vehicle__contact .listing--custom-entry-teaser .listing__title h1, .listing--custom-entry-teaser .listing__title .vehicle--full .vehicle__contact h1, .vehicle--full .vehicle__contact .listing--vehicle-teaser .listing__title h1, .listing--vehicle-teaser .listing__title .vehicle--full .vehicle__contact h1, .vehicle--full .vehicle__contact .block--index-header .block__title h1, .block--index-header .block__title .vehicle--full .vehicle__contact h1, .vehicle--full .vehicle__contact .branch--contact .branch__opening-hours-title, .branch--contact .vehicle--full .vehicle__contact .branch__opening-hours-title, .vehicle--full .vehicle__contact .form--part-exchange .form__title, .form--part-exchange .vehicle--full .vehicle__contact .form__title, .vehicle--full .vehicle__contact .finance-table--full .finance-table__title, .finance-table--full .vehicle--full .vehicle__contact .finance-table__title, .vehicle--full .vehicle__contact .finance-checker__details-title, .vehicle--full .vehicle__contact .finance-table--order .finance-table__title, .finance-table--order .vehicle--full .vehicle__contact .finance-table__title {
      margin-bottom: 0.625rem;
      font-size: 1.5rem; }
    .vehicle--full .vehicle__contact p {
      color: #717580;
      font-size: 1rem;
      font-weight: 500;
      line-height: 1.4; }
  .vehicle--full .vehicle__branch {
    margin-top: 1.25rem; }
    .vehicle--full .vehicle__branch-name {
      margin-bottom: 0.625rem;
      color: #717580;
      font-size: 1rem;
      font-weight: 500;
      line-height: 1.4; }
      .vehicle--full .vehicle__branch-name span {
        color: #222222;
        font-weight: 700; }
    .vehicle--full .vehicle__branch-telephone-label {
      color: #717580;
      font-size: 1rem;
      font-weight: 500;
      line-height: 1.4; }
    .vehicle--full .vehicle__branch-telephone-value {
      font-size: 1.5rem;
      font-weight: 700;
      line-height: 1.4; }
      .vehicle--full .vehicle__branch-telephone-value i {
        margin-right: 0.3125rem;
        color: #c3002f; }
      .vehicle--full .vehicle__branch-telephone-value span {
        vertical-align: middle; }
  .vehicle--full .vehicle__part-exchange {
    display: none;
    margin-top: 1.875rem;
    padding: 1.875rem;
    background-color: #F6F6F6;
    border-radius: 0.3125rem; }
    @media print, screen and (min-width: 64em) {
      .vehicle--full .vehicle__part-exchange {
        display: block; } }
  .vehicle--full .vehicle__secondary-images {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 97.5rem;
    margin-top: 1.875rem; }
    .vehicle--full .vehicle__secondary-images::before, .vehicle--full .vehicle__secondary-images::after {
      display: table;
      content: ' '; }
    .vehicle--full .vehicle__secondary-images::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__secondary-images {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .vehicle--full .vehicle__secondary-images:last-child:not(:first-child) {
      float: right; }
    .vehicle--full .vehicle__secondary-images, .vehicle--full .vehicle__secondary-images:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__secondary-images {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .vehicle--full .vehicle__secondary-images {
        margin-top: 6.25rem; } }
    .vehicle--full .vehicle__secondary-images ul {
      margin: 0;
      list-style: none; }
      .vehicle--full .vehicle__secondary-images ul li img {
        border-radius: 0.3125rem; }
  .vehicle--full .vehicle__finance {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-top: 1.875rem; }
    .vehicle--full .vehicle__finance::before, .vehicle--full .vehicle__finance::after {
      display: table;
      content: ' '; }
    .vehicle--full .vehicle__finance::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__finance {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .vehicle--full .vehicle__finance:last-child:not(:first-child) {
      float: right; }
    .vehicle--full .vehicle__finance, .vehicle--full .vehicle__finance:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__finance {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .vehicle--full .vehicle__finance {
        margin-top: 6.25rem; } }
  .vehicle--full .vehicle__judge-service {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-top: 1.875rem; }
    .vehicle--full .vehicle__judge-service::before, .vehicle--full .vehicle__judge-service::after {
      display: table;
      content: ' '; }
    .vehicle--full .vehicle__judge-service::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__judge-service {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .vehicle--full .vehicle__judge-service:last-child:not(:first-child) {
      float: right; }
    .vehicle--full .vehicle__judge-service, .vehicle--full .vehicle__judge-service:last-child {
      float: none; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full .vehicle__judge-service {
        margin-top: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .vehicle--full .vehicle__judge-service {
        margin-top: 6.25rem; } }
  .vehicle--full .vehicle__technical-data ul {
    margin: 0;
    list-style: none; }
    .vehicle--full .vehicle__technical-data ul li {
      padding-top: 0.625rem;
      margin-top: 0.625rem; }
      .vehicle--full .vehicle__technical-data ul li:first-child {
        padding-top: 0;
        margin-top: 0;
        border-top: none; }
  .vehicle--full .vehicle__service-history > ul {
    margin: 0;
    list-style: none; }
    .vehicle--full .vehicle__service-history > ul > li {
      margin-bottom: 0.625rem; }
      .vehicle--full .vehicle__service-history > ul > li:last-child {
        margin-bottom: 0; }
      .vehicle--full .vehicle__service-history > ul > li > ul {
        margin: 0;
        list-style: none;
        padding: 1.25rem;
        background-color: #F6F6F6;
        border-radius: 0.3125rem; }
        .vehicle--full .vehicle__service-history > ul > li > ul > li {
          padding-top: 0.625rem;
          margin-top: 0.625rem; }
          .vehicle--full .vehicle__service-history > ul > li > ul > li:first-child {
            padding-top: 0;
            margin-top: 0;
            border-top: none; }
  .vehicle--full .vehicle__service-history .service-history {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    gap: 0.625rem;
    font-size: 0.875rem;
    line-height: 1.2; }
    .vehicle--full .vehicle__service-history .service-history .service-history__label {
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      font-weight: 700; }
    .vehicle--full .vehicle__service-history .service-history .service-history__value {
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1;
      color: #222222;
      font-weight: 600; }
  .vehicle--full .vehicle__documents {
    padding: 1.25rem;
    background-color: #F6F6F6;
    border-radius: 0.3125rem; }
    .vehicle--full .vehicle__documents ul {
      margin: 0;
      list-style: none; }
      .vehicle--full .vehicle__documents ul li {
        margin-bottom: 0.625rem; }
        .vehicle--full .vehicle__documents ul li:last-child {
          margin-bottom: 0; }
        .vehicle--full .vehicle__documents ul li a {
          display: inline-block;
          vertical-align: middle;
          margin: 0 0 1rem 0;
          padding: 0.75rem 0.875rem;
          -webkit-appearance: none;
          border: 1px solid transparent;
          border-radius: 0;
          transition: background-color 0.25s ease-out, color 0.25s ease-out;
          font-size: 1.125rem;
          line-height: 1;
          text-align: center;
          cursor: pointer;
          background-color: #c3002f;
          color: #ffffff;
          width: 100%;
          margin-bottom: 0;
          padding-top: 0.9375rem;
          padding-bottom: 0.9375rem;
          color: #ffffff;
          font-size: 1rem;
          font-weight: 700;
          background-color: #c3002f;
          border-radius: 0.3125rem; }
          [data-whatinput='mouse'] .vehicle--full .vehicle__documents ul li a {
            outline: 0; }
          .vehicle--full .vehicle__documents ul li a:hover, .vehicle--full .vehicle__documents ul li a:focus {
            background-color: #a60028;
            color: #ffffff; }
          .vehicle--full .vehicle__documents ul li a:focus, .vehicle--full .vehicle__documents ul li a:hover {
            color: #ffffff;
            background-color: color-mix(in srgb, #c3002f 90%, black); }
  .vehicle--full .vehicle__disclaimer {
    margin-top: 1.875rem;
    color: #222222;
    font-size: 0.75rem; }
  .vehicle--full-reveal .vehicle__specification ul {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
    gap: 0.625rem;
    margin: 0;
    list-style: none; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full-reveal .vehicle__specification ul {
        -ms-grid-columns: 1fr 1fr;
            grid-template-columns: 1fr 1fr; } }
    @media print, screen and (min-width: 64em) {
      .vehicle--full-reveal .vehicle__specification ul {
        -ms-grid-columns: 1fr 1fr 1fr;
            grid-template-columns: 1fr 1fr 1fr; } }
  .vehicle--full-reveal .vehicle__technical-data-promoted {
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full-reveal .vehicle__technical-data-promoted {
        margin-bottom: 1.875rem; } }
    .vehicle--full-reveal .vehicle__technical-data-promoted > ul {
      margin-bottom: 0;
      list-style: none; }
      @media screen and (max-width: 39.9375em) {
        .vehicle--full-reveal .vehicle__technical-data-promoted > ul {
          margin-right: -0.625rem;
          margin-left: -0.625rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 40em) {
    .vehicle--full-reveal .vehicle__technical-data-promoted > ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media screen and (max-width: 39.9375em) and (min-width: 64em) {
    .vehicle--full-reveal .vehicle__technical-data-promoted > ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
      @media screen and (max-width: 39.9375em) {
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul::before, .vehicle--full-reveal .vehicle__technical-data-promoted > ul::after {
            display: table;
            content: ' '; }
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul::after {
            clear: both; }
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li {
            float: left;
            width: 100%; }
            .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li:nth-of-type(1n) {
              clear: none; }
            .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li:nth-of-type(1n+1) {
              clear: both; }
            .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li:last-child {
              float: left; } }
      @media screen and (min-width: 40em) and (max-width: 63.9375em) {
        .vehicle--full-reveal .vehicle__technical-data-promoted > ul {
          margin-right: -0.625rem;
          margin-left: -0.625rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 40em) {
    .vehicle--full-reveal .vehicle__technical-data-promoted > ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) and (min-width: 64em) {
    .vehicle--full-reveal .vehicle__technical-data-promoted > ul {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
      @media screen and (min-width: 40em) and (max-width: 63.9375em) {
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul::before, .vehicle--full-reveal .vehicle__technical-data-promoted > ul::after {
            display: table;
            content: ' '; }
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul::after {
            clear: both; }
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li {
            float: left;
            width: 50%; }
            .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li:nth-of-type(1n) {
              clear: none; }
            .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li:nth-of-type(2n+1) {
              clear: both; }
            .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li:last-child {
              float: left; } }
      @media print, screen and (min-width: 64em) {
        .vehicle--full-reveal .vehicle__technical-data-promoted > ul {
          margin: 0;
          list-style-type: none;
          display: table;
          width: 100%;
          table-layout: fixed; }
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li {
            display: table-cell;
            vertical-align: middle; }
            [data-whatinput='mouse'] .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li {
              outline: 0; }
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li > a {
            display: block;
            padding: 0.7rem 1rem;
            line-height: 1; }
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul input,
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul select,
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul a,
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul button {
            margin-bottom: 0; }
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li:first-child:last-child {
            width: 100%; } }
      .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li {
        padding: 0 0.625rem; }
        @media print, screen and (min-width: 40em) {
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li {
            padding: 0 0.9375rem; } }
        @media print, screen and (min-width: 64em) {
          .vehicle--full-reveal .vehicle__technical-data-promoted > ul > li {
            vertical-align: top; } }
  .vehicle--full-reveal .vehicle__technical-data-summary {
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .vehicle--full-reveal .vehicle__technical-data-summary {
        margin-bottom: 1.875rem; } }
    .vehicle--full-reveal .vehicle__technical-data-summary > ul {
      margin-right: -0.625rem;
      margin-left: -0.625rem;
      margin-bottom: 0;
      list-style: none; }
      @media print, screen and (min-width: 40em) {
        .vehicle--full-reveal .vehicle__technical-data-summary > ul {
          margin-right: -0.9375rem;
          margin-left: -0.9375rem; } }
      @media print, screen and (min-width: 64em) {
        .vehicle--full-reveal .vehicle__technical-data-summary > ul {
          margin-right: -0.9375rem;
          margin-left: -0.9375rem; } }
      .vehicle--full-reveal .vehicle__technical-data-summary > ul::before, .vehicle--full-reveal .vehicle__technical-data-summary > ul::after {
        display: table;
        content: ' '; }
      .vehicle--full-reveal .vehicle__technical-data-summary > ul::after {
        clear: both; }
      .vehicle--full-reveal .vehicle__technical-data-summary > ul > li {
        float: left;
        width: 100%; }
        .vehicle--full-reveal .vehicle__technical-data-summary > ul > li:nth-of-type(1n) {
          clear: none; }
        .vehicle--full-reveal .vehicle__technical-data-summary > ul > li:nth-of-type(1n+1) {
          clear: both; }
        .vehicle--full-reveal .vehicle__technical-data-summary > ul > li:last-child {
          float: left; }
      @media print, screen and (min-width: 40em) {
        .vehicle--full-reveal .vehicle__technical-data-summary > ul > li {
          float: left;
          width: 50%;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .vehicle--full-reveal .vehicle__technical-data-summary > ul > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media print, screen and (min-width: 40em) {
          .vehicle--full-reveal .vehicle__technical-data-summary > ul > li:nth-of-type(1n) {
            clear: none; }
          .vehicle--full-reveal .vehicle__technical-data-summary > ul > li:nth-of-type(2n+1) {
            clear: both; }
          .vehicle--full-reveal .vehicle__technical-data-summary > ul > li:last-child {
            float: left; } }
      @media print, screen and (min-width: 64em) {
        .vehicle--full-reveal .vehicle__technical-data-summary > ul > li {
          float: left;
          width: 33.33333%;
          padding-right: 0.625rem;
          padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .vehicle--full-reveal .vehicle__technical-data-summary > ul > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
      @media print, screen and (min-width: 64em) {
          .vehicle--full-reveal .vehicle__technical-data-summary > ul > li:nth-of-type(1n) {
            clear: none; }
          .vehicle--full-reveal .vehicle__technical-data-summary > ul > li:nth-of-type(3n+1) {
            clear: both; }
          .vehicle--full-reveal .vehicle__technical-data-summary > ul > li:last-child {
            float: left; } }
      .vehicle--full-reveal .vehicle__technical-data-summary > ul > li {
        margin-bottom: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          .vehicle--full-reveal .vehicle__technical-data-summary > ul > li {
            margin-bottom: 0.9375rem; } }
        .vehicle--full-reveal .vehicle__technical-data-summary > ul > li:last-child {
          margin-bottom: 0; }
        @media print, screen and (min-width: 40em) {
          .vehicle--full-reveal .vehicle__technical-data-summary > ul > li:nth-last-child(2) {
            margin-bottom: 0; } }
        @media print, screen and (min-width: 64em) {
          .vehicle--full-reveal .vehicle__technical-data-summary > ul > li:nth-last-child(3) {
            margin-bottom: 0; } }
  .vehicle--full-reveal .vehicle__technical-data {
    padding: 1rem 1rem 0.375rem;
    background-color: #F6F6F6;
    border-radius: 0.3125rem; }
    .vehicle--full-reveal .vehicle__technical-data > ul {
      margin-right: -0.625rem;
      margin-left: -0.625rem;
      list-style: none; }
      @media print, screen and (min-width: 40em) {
        .vehicle--full-reveal .vehicle__technical-data > ul {
          margin-right: -0.9375rem;
          margin-left: -0.9375rem; } }
      @media print, screen and (min-width: 64em) {
        .vehicle--full-reveal .vehicle__technical-data > ul {
          margin-right: -0.9375rem;
          margin-left: -0.9375rem; } }
      .vehicle--full-reveal .vehicle__technical-data > ul::before, .vehicle--full-reveal .vehicle__technical-data > ul::after {
        display: table;
        content: ' '; }
      .vehicle--full-reveal .vehicle__technical-data > ul::after {
        clear: both; }
      .vehicle--full-reveal .vehicle__technical-data > ul > li {
        float: left;
        width: 100%; }
        .vehicle--full-reveal .vehicle__technical-data > ul > li:nth-of-type(1n) {
          clear: none; }
        .vehicle--full-reveal .vehicle__technical-data > ul > li:nth-of-type(1n+1) {
          clear: both; }
        .vehicle--full-reveal .vehicle__technical-data > ul > li:last-child {
          float: left; }
      @media print, screen and (min-width: 40em) {
        .vehicle--full-reveal .vehicle__technical-data > ul > li {
          float: left;
          width: 33.33333%; }
          .vehicle--full-reveal .vehicle__technical-data > ul > li:nth-of-type(1n) {
            clear: none; }
          .vehicle--full-reveal .vehicle__technical-data > ul > li:nth-of-type(3n+1) {
            clear: both; }
          .vehicle--full-reveal .vehicle__technical-data > ul > li:last-child {
            float: left; } }
      .vehicle--full-reveal .vehicle__technical-data > ul > li {
        padding: 0.625rem 0.625rem; }
        @media print, screen and (min-width: 40em) {
          .vehicle--full-reveal .vehicle__technical-data > ul > li {
            padding: 0.625rem 0.9375rem; } }
        .vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title {
          font-size: 1.25rem; }
        .vehicle--full-reveal .vehicle__technical-data > ul > li ul {
          margin-left: 0;
          list-style: none; }
          .vehicle--full-reveal .vehicle__technical-data > ul > li ul li {
            margin-bottom: 0.625rem; }
            .vehicle--full-reveal .vehicle__technical-data > ul > li ul li:last-child {
              margin-bottom: 0; }

.vehicle--teaser {
  height: 100%;
  background-color: #ffffff;
  border-radius: 0.3125rem;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .vehicle--teaser .vehicle__primary-images {
    position: relative;
    border-top-left-radius: 0.3125rem;
    border-top-right-radius: 0.3125rem;
    overflow: hidden; }
    .vehicle--teaser .vehicle__primary-images img {
      width: 100%;
      transition: all 0.5s; }
      .vehicle--teaser .vehicle__primary-images img:hover {
        opacity: .8; }
  .vehicle--teaser .vehicle__save {
    position: absolute;
    top: 0.9375rem;
    left: 0.9375rem;
    line-height: 1; }
    @media print, screen and (min-width: 40em) {
      .vehicle--teaser .vehicle__save {
        top: 1.25rem;
        left: 1.25rem; } }
    .vehicle--teaser .vehicle__save a i {
      margin-right: 0; }
    .vehicle--teaser .vehicle__save a i::before {
      font-family: 'Material Icons';
      content: '\e87e';
      color: #ffffff;
      font-size: 1.5rem; }
      @media print, screen and (min-width: 40em) {
        .vehicle--teaser .vehicle__save a i::before {
          font-size: 1.875rem; } }
    .vehicle--teaser .vehicle__save a.js-save-vehicle--saved i::before {
      font-family: 'Material Icons';
      content: '\e87d'; }
    .vehicle--teaser .vehicle__save a span {
      display: none; }
  .vehicle--teaser .vehicle__sash {
    position: absolute;
    bottom: 0.9375rem;
    left: 0.9375rem;
    padding: 0.3125rem 0.625rem;
    color: #ffffff;
    font-size: 0.8125rem;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1;
    background-color: #262B35;
    border-radius: 0.3125rem; }
    @media print, screen and (min-width: 40em) {
      .vehicle--teaser .vehicle__sash {
        bottom: 1.25rem;
        left: 1.25rem;
        padding: 0.4375rem 0.8125rem;
        font-size: 0.875rem; } }
  .vehicle--teaser .vehicle__details {
    position: relative;
    padding: 1.25rem 0.625rem;
    background-color: #ffffff; }
    @media print, screen and (min-width: 40em) {
      .vehicle--teaser .vehicle__details {
        padding: 1.25rem; } }
  .vehicle--teaser .vehicle__title h2, .vehicle--teaser .vehicle__title .offer--featured .offer__title, .offer--featured .vehicle--teaser .vehicle__title .offer__title, .vehicle--teaser .vehicle__title .order-progress__title, .vehicle--teaser .vehicle__title .part--featured .part__title, .part--featured .vehicle--teaser .vehicle__title .part__title, .vehicle--teaser .vehicle__title .part--full .part__form-title, .part--full .vehicle--teaser .vehicle__title .part__form-title, .vehicle--teaser .vehicle__title .post--featured .post__title, .post--featured .vehicle--teaser .vehicle__title .post__title, .vehicle--teaser .vehicle__title .vehicle--general .vehicle__title, .vehicle--general .vehicle--teaser .vehicle__title .vehicle__title, .vehicle--teaser .vehicle__title .vehicle--latest .vehicle__title, .vehicle--latest .vehicle--teaser .vehicle__title .vehicle__title, .vehicle--teaser .vehicle__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .vehicle--teaser .vehicle__title .listing__title, .vehicle--teaser .vehicle__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .vehicle--teaser .vehicle__title .listing__title, .vehicle--teaser .vehicle__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .vehicle--teaser .vehicle__title .listing__title, .vehicle--teaser .vehicle__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .vehicle--teaser .vehicle__title .listing__title, .vehicle--teaser .vehicle__title .listing--offer-featured .listing__title, .listing--offer-featured .vehicle--teaser .vehicle__title .listing__title, .vehicle--teaser .vehicle__title .page--teaser .page__title, .page--teaser .vehicle--teaser .vehicle__title .page__title {
    margin-bottom: 0;
    color: #222222;
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.2; }
    @media print, screen and (min-width: 40em) {
      .vehicle--teaser .vehicle__title h2, .vehicle--teaser .vehicle__title .offer--featured .offer__title, .offer--featured .vehicle--teaser .vehicle__title .offer__title, .vehicle--teaser .vehicle__title .order-progress__title, .vehicle--teaser .vehicle__title .part--featured .part__title, .part--featured .vehicle--teaser .vehicle__title .part__title, .vehicle--teaser .vehicle__title .part--full .part__form-title, .part--full .vehicle--teaser .vehicle__title .part__form-title, .vehicle--teaser .vehicle__title .post--featured .post__title, .post--featured .vehicle--teaser .vehicle__title .post__title, .vehicle--teaser .vehicle__title .vehicle--general .vehicle__title, .vehicle--general .vehicle--teaser .vehicle__title .vehicle__title, .vehicle--teaser .vehicle__title .vehicle--latest .vehicle__title, .vehicle--latest .vehicle--teaser .vehicle__title .vehicle__title, .vehicle--teaser .vehicle__title .listing--custom-entry-review-featured .listing__title, .listing--custom-entry-review-featured .vehicle--teaser .vehicle__title .listing__title, .vehicle--teaser .vehicle__title .listing--vehicle-featured .listing__title, .listing--vehicle-featured .vehicle--teaser .vehicle__title .listing__title, .vehicle--teaser .vehicle__title .listing--vehicle-similar .listing__title, .listing--vehicle-similar .vehicle--teaser .vehicle__title .listing__title, .vehicle--teaser .vehicle__title .listing--vehicle-in-stock .listing__title, .listing--vehicle-in-stock .vehicle--teaser .vehicle__title .listing__title, .vehicle--teaser .vehicle__title .listing--offer-featured .listing__title, .listing--offer-featured .vehicle--teaser .vehicle__title .listing__title, .vehicle--teaser .vehicle__title .page--teaser .page__title, .page--teaser .vehicle--teaser .vehicle__title .page__title {
        font-size: 1.375rem; } }
  .vehicle--teaser .vehicle__title .vehicle__model-variant {
    margin-top: 0.3125rem;
    display: block;
    color: #666666;
    font-size: 0.875rem;
    font-weight: 500; }
    @media print, screen and (min-width: 40em) {
      .vehicle--teaser .vehicle__title .vehicle__model-variant {
        font-size: 1.0625rem; } }
  .vehicle--teaser .vehicle__technical-data-promoted {
    margin-top: 0.9375rem; }
    @media print, screen and (min-width: 40em) {
      .vehicle--teaser .vehicle__technical-data-promoted {
        margin-top: 1.25rem; } }
    .vehicle--teaser .vehicle__technical-data-promoted > ul {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      gap: 0.3125rem;
      margin: 0;
      list-style: none; }
  .vehicle--teaser .vehicle__bottom {
    display: -ms-grid;
    display: grid;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
    gap: 1.875rem;
    margin-top: auto;
    padding: 0.9375rem 0.625rem;
    border-top: 1px solid #E8E8E8; }
    @media print, screen and (min-width: 40em) {
      .vehicle--teaser .vehicle__bottom {
        padding: 1.25rem; } }
  .vehicle--teaser .vehicle__link a {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #c3002f;
    color: #ffffff;
    margin-bottom: 0;
    padding: 0.8125rem;
    width: 100%;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 0.3125rem; }
    [data-whatinput='mouse'] .vehicle--teaser .vehicle__link a {
      outline: 0; }
    .vehicle--teaser .vehicle__link a:hover, .vehicle--teaser .vehicle__link a:focus {
      background-color: #a60028;
      color: #ffffff; }
    @media print, screen and (min-width: 40em) {
      .vehicle--teaser .vehicle__link a {
        padding: 1rem; } }
  .vehicle--teaser .vehicle__price {
    text-align: right; }
  .vehicle--teaser .vehicle__finance {
    display: none; }

.vehicle__media-count {
  position: absolute;
  top: 0;
  right: 0; }
  .vehicle__media-count > ul {
    margin-left: 0;
    margin-bottom: 0;
    padding-left: 0.375rem;
    padding-right: 0.375rem;
    font-size: 1rem;
    line-height: 1;
    background-color: rgba(255, 255, 255, 0.6); }
    .vehicle__media-count > ul li {
      display: inline-block;
      padding: 0.375rem 0.125rem; }
      .vehicle__media-count > ul li i {
        font-size: 1.25rem;
        line-height: 1; }

h1,
h2,
.offer--featured .offer__title,
.order-progress__title,
.part--featured .part__title,
.part--full .part__form-title,
.post--featured .post__title,
.vehicle--general .vehicle__title,
.vehicle--latest .vehicle__title,
.listing--custom-entry-review-featured .listing__title,
.listing--vehicle-featured .listing__title,
.listing--vehicle-similar .listing__title,
.listing--vehicle-in-stock .listing__title,
.listing--offer-featured .listing__title,
.page--teaser .page__title,
h3,
.block--sidebar .block__title,
.offer--featured .offer__sub-title,
.add-on__title,
.calendar__header .calendar__month span,
.collection-delivery__title,
.order-payment__title,
.order-state-summary__vehicle-title,
.part--featured .part__sub-title,
.post--featured .post__sub-title,
.quick-search__legend,
.listing--showroom-teaser .listing__title h1,
.listing--post-teaser .listing__title h1,
.listing--offer-teaser .listing__title h1,
.listing--custom-entry-teaser .listing__title h1,
.listing--vehicle-teaser .listing__title h1,
.block--index-header .block__title h1,
.branch--contact .branch__opening-hours-title,
.form--part-exchange .form__title,
.finance-table--full .finance-table__title,
.finance-checker__details-title,
.finance-table--order .finance-table__title,
h4,
.video--page .video__title,
.new-vehicle--full .new-vehicle__specification > ul > li .specification-category__title,
.new-vehicle--full .new-vehicle__technical-data > ul > li .technical-data-category__title,
.vehicle--full-reveal .vehicle__technical-data > ul > li .technical-data-category__title,
.finance-form .finance-form__title,
.finance-tables .finance-warning,
.finance-table--full .finance-table__checker-title,
.finance-example__title,
h5,
.block--sidebar .block__sub-title,
h6 {
  text-transform: uppercase; }

.body__wrapper {
  position: relative; }

.l-breadcrumbs {
  background-color: #F6F6F6; }

@font-face {
  font-family: 'Nissan-Bold';
  src: url("../../font/Nissan-Bold.woff2") format("woff2");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Nissan-Regular';
  src: url("../../font/Nissan-Regular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

.l-footer {
  padding-top: 3.125rem;
  padding-bottom: 1.875rem;
  background-color: #F6F6F6; }
  @media print, screen and (min-width: 64em) {
    .l-footer {
      padding-top: 6.25rem; } }
  .l-footer__inner {
    max-width: 81.25rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    .l-footer__inner::before, .l-footer__inner::after {
      display: table;
      content: ' '; }
    .l-footer__inner::after {
      clear: both; }
    @media print, screen and (min-width: 40em) {
      .l-footer__inner {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .l-footer__inner:last-child:not(:first-child) {
      float: right; }
    .l-footer__inner, .l-footer__inner:last-child {
      float: none; }
  .l-footer__first {
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .l-footer__first {
        margin-bottom: 3.125rem; } }
  .l-footer__second {
    margin-bottom: 1.875rem; }
    .l-footer__second hr {
      margin-top: 0;
      margin-bottom: 1.25rem;
      border-bottom: 1px solid #E3E3E3; }
      @media print, screen and (min-width: 40em) {
        .l-footer__second hr {
          margin-bottom: 1.875rem; } }
  .l-footer__third {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .l-footer__third {
        gap: 1.25rem; } }
    @media print, screen and (min-width: 64em) {
      .l-footer__third {
        -webkit-flex-direction: row;
            -ms-flex-direction: row;
                flex-direction: row; } }

.l-header {
  margin: 0 auto;
  padding: 1.25rem;
  max-width: 97.5rem; }
  @media print, screen and (min-width: 40em) {
    .l-header {
      padding: 1.875rem 0.9375rem; } }
  .l-header__inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-column-gap: 1.25rem;
            column-gap: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .l-header__inner {
        -webkit-column-gap: 1.875rem;
                column-gap: 1.875rem; } }
    @media print, screen and (min-width: 64em) {
      .l-header__inner {
        -webkit-flex-wrap: nowrap;
            -ms-flex-wrap: nowrap;
                flex-wrap: nowrap; } }
    @media screen and (min-width: 90em) {
      .l-header__inner {
        -webkit-column-gap: 2.5rem;
                column-gap: 2.5rem; } }
  @media print, screen and (min-width: 64em) {
    .l-header__second {
      -webkit-flex: 1 0 auto;
          -ms-flex: 1 0 auto;
              flex: 1 0 auto;
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: right;
          -ms-flex-pack: right;
              justify-content: right; } }
  .l-header__third {
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%; }
    @media print, screen and (min-width: 64em) {
      .l-header__third {
        -webkit-flex-basis: auto;
            -ms-flex-preferred-size: auto;
                flex-basis: auto;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        padding-left: 1.875rem;
        border-left: 1px solid #E3E3E3; } }
    @media screen and (min-width: 90em) {
      .l-header__third {
        padding-left: 2.5rem; } }

.l-main {
  background-color: #F6F6F6; }
  .l-main--full-width {
    padding-top: 1.875rem;
    padding-bottom: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .l-main--full-width {
        padding-top: 3.125rem;
        padding-bottom: 3.125rem; } }
    @media print, screen and (min-width: 64em) {
      .l-main--full-width {
        padding-top: 6.25rem;
        padding-bottom: 6.25rem; } }
    .l-main--full-width .l-main__inner {
      max-width: 81.25rem;
      margin-right: auto;
      margin-left: auto;
      width: 100%;
      float: left;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      .l-main--full-width .l-main__inner::before, .l-main--full-width .l-main__inner::after {
        display: table;
        content: ' '; }
      .l-main--full-width .l-main__inner::after {
        clear: both; }
      @media print, screen and (min-width: 40em) {
        .l-main--full-width .l-main__inner {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .l-main--full-width .l-main__inner:last-child:not(:first-child) {
        float: right; }
      .l-main--full-width .l-main__inner, .l-main--full-width .l-main__inner:last-child {
        float: none; }

.front .l-main,
.controller-vehicle.action-detail .l-main {
  background: none; }

.l-nav {
  margin-top: 1.25rem;
  padding: 0; }
  @media print, screen and (min-width: 40em) {
    .l-nav {
      margin-top: 1.875rem; } }
  @media print, screen and (min-width: 64em) {
    .l-nav {
      margin-top: 0; } }

.extras-price__value {
  font-weight: 600; }

.extras-price--teaser {
  margin-top: 0.1875rem;
  font-size: 1.125rem; }
  .extras-price--teaser .extras-price__label {
    font-size: 65%; }

.extras-price--full {
  padding: 0.9375rem;
  background-color: rgba(255, 255, 255, 0.25);
  text-align: center; }
  .extras-price--full .extras-price__values {
    margin-bottom: 0.625rem;
    color: #ffffff; }
    .extras-price--full .extras-price__values strong {
      font-size: 1.25rem; }
  .extras-price--full .extras-price__link a {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.75rem 0.875rem;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 0;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 1.125rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #222222;
    color: #ffffff;
    margin-bottom: 0;
    padding: 0.625rem;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    border-radius: 0.625rem; }
    [data-whatinput='mouse'] .extras-price--full .extras-price__link a {
      outline: 0; }
    .extras-price--full .extras-price__link a:hover, .extras-price--full .extras-price__link a:focus {
      background-color: #1b1b1b;
      color: #ffffff; }

.extras {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .extras {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .extras {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .extras::before, .extras::after {
    display: table;
    content: ' '; }
  .extras::after {
    clear: both; }
  @media print, screen and (min-width: 64em) {
    .extras {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; } }
  .extras__list {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .extras__list {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .extras__list:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .extras__list {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .extras__list {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .extras__list:last-child:not(:first-child) {
          float: right; } }
    .extras__list-heading {
      margin-bottom: 1.875rem; }
  .extras__summary {
    width: 50%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    display: none;
    text-align: center;
    text-shadow: 1px 1px #ffffff; }
    @media print, screen and (min-width: 40em) {
      .extras__summary {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .extras__summary:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .extras__summary {
        display: block; } }
    @media screen and (min-width: 75em) {
      .extras__summary {
        width: 33.33333%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem;
        margin-left: 8.33333%; } }
  @media screen and (min-width: 75em) and (min-width: 40em) {
    .extras__summary {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media screen and (min-width: 75em) {
        .extras__summary:last-child:not(:first-child) {
          float: right; } }
    .extras__summary-amount {
      font-size: 2.5rem;
      line-height: 1; }
    .extras__summary-label {
      display: block;
      margin-bottom: 0.625rem;
      font-size: 1.25rem;
      line-height: 1.4; }
    .extras__summary-value {
      display: block;
      font-weight: 700;
      font-size: 4.375rem;
      line-height: 1; }

.finance-price {
  margin-top: 0;
  line-height: 1; }
  .finance-price__list {
    display: inline-block;
    margin: 0;
    line-height: 1;
    list-style: none; }
    .finance-price__list-item {
      display: inline-block; }
  .finance-price__label {
    font-size: 65%; }
  .finance-price__value {
    font-weight: 600; }
  .finance-price__suffix {
    display: inline-block;
    margin-left: 0.1875rem;
    font-size: 60%; }
  .finance-price--teaser {
    display: block;
    color: #717580;
    font-size: 1.0625rem; }
  .finance-price--full {
    display: block;
    color: #717580;
    font-size: 1.125rem; }
    .finance-price--full .finance-price__list-item::after {
      display: inline-block;
      margin-right: 0.1875rem;
      margin-left: 0.1875rem;
      font-size: 65%;
      content: 'or'; }
    .finance-price--full .finance-price__list-item:last-child::after {
      display: none; }

.finance-form {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .finance-form {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .finance-form {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .finance-form::before, .finance-form::after {
    display: table;
    content: ' '; }
  .finance-form::after {
    clear: both; }
  .finance-form .finance-form__title {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    margin-bottom: 0.5rem; }
    @media print, screen and (min-width: 40em) {
      .finance-form .finance-form__title {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .finance-form .finance-form__title:last-child:not(:first-child) {
      float: right; }
  .finance-form .form-group {
    width: 50%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .finance-form .form-group {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .finance-form .form-group:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 64em) {
      .finance-form .form-group {
        width: 25%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .finance-form .form-group {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 64em) {
        .finance-form .form-group:last-child:not(:first-child) {
          float: right; } }
  .finance-form .button {
    width: 100%;
    margin-top: 1.5625rem;
    margin-bottom: 0; }

.finance-summary {
  display: none; }

.finance-tables {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .finance-tables {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .finance-tables {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .finance-tables::before, .finance-tables::after {
    display: table;
    content: ' '; }
  .finance-tables::after {
    clear: both; }
  .finance-tables > .finance-table {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .finance-tables > .finance-table {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .finance-tables > .finance-table:nth-of-type(1n) {
      clear: none; }
    .finance-tables > .finance-table:nth-of-type(1n+1) {
      clear: both; }
    .finance-tables > .finance-table:last-child {
      float: left; }
  @media print, screen and (min-width: 64em) {
    .finance-tables > .finance-table {
      float: left;
      width: 50%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .finance-tables > .finance-table {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .finance-tables > .finance-table:nth-of-type(1n) {
        clear: none; }
      .finance-tables > .finance-table:nth-of-type(2n+1) {
        clear: both; }
      .finance-tables > .finance-table:last-child {
        float: left; } }
  @media print, screen and (min-width: 64em) {
    .finance-tables--3 > .finance-table {
      float: left;
      width: 33.33333%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .finance-tables--3 > .finance-table {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
      .finance-tables--3 > .finance-table:nth-of-type(1n) {
        clear: none; }
      .finance-tables--3 > .finance-table:nth-of-type(3n+1) {
        clear: both; }
      .finance-tables--3 > .finance-table:last-child {
        float: left; } }
  .finance-tables .finance-warning {
    margin-top: 0.9375rem;
    text-align: center; }

.finance-table--teaser {
  margin-top: 0.9375rem;
  overflow-y: auto; }
  .finance-table--teaser table {
    margin-bottom: 0; }
    .finance-table--teaser table thead th,
    .finance-table--teaser table thead td,
    .finance-table--teaser table tbody td {
      padding: 0.25rem;
      font-size: 0.75rem;
      font-weight: 400;
      line-height: 1.3;
      text-align: center; }
    .finance-table--teaser table tbody td {
      font-weight: 600; }
    .finance-table--teaser table tbody tr:nth-child(even) {
      background-color: inherit; }

.finance-table--full {
  margin-top: 0.9375rem; }
  .finance-table--full .finance-table__table {
    font-size: 0.9375rem;
    border-collapse: collapse;
    border: none; }
    .finance-table--full .finance-table__table tbody {
      border: none; }
      .finance-table--full .finance-table__table tbody th,
      .finance-table--full .finance-table__table tbody td {
        padding-top: 0.625rem;
        padding-bottom: 0.625rem; }
      .finance-table--full .finance-table__table tbody th {
        font-weight: 400;
        text-align: left; }
      .finance-table--full .finance-table__table tbody td {
        font-weight: 600;
        text-align: right; }
  .finance-table--full .finance-table__checker {
    margin-bottom: 0.9375rem;
    padding-bottom: 0.9375rem;
    border-bottom: 1px solid #e6e6e6;
    text-align: center; }
    @media print, screen and (min-width: 40em) {
      .finance-table--full .finance-table__checker {
        padding: 0.9375rem; } }
    .finance-table--full .finance-table__checker-title {
      margin-bottom: 0.625rem; }
    .finance-table--full .finance-table__checker-image {
      display: block; }
      .finance-table--full .finance-table__checker-image img {
        max-width: 13.75rem; }
    .finance-table--full .finance-table__checker .button {
      margin-bottom: 0; }
  .finance-table--full .finance-table__apply {
    text-align: center; }
    .finance-table--full .finance-table__apply .button {
      margin-bottom: 0.3125rem; }
  .finance-table--full .finance-table__why-apply {
    text-align: center; }
  .finance-table--full .finance-table__video {
    position: relative;
    height: 0;
    margin-bottom: 1rem;
    padding-bottom: 56.25%;
    overflow: hidden;
    margin: 0.9375rem 0 0; }
    .finance-table--full .finance-table__video iframe,
    .finance-table--full .finance-table__video object,
    .finance-table--full .finance-table__video embed,
    .finance-table--full .finance-table__video video {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }

.finance-example {
  overflow-y: auto;
  margin: 0;
  padding: 0.9375rem;
  background: #ffffff;
  border-radius: 0.3125rem; }
  @media print, screen and (min-width: 64em) {
    .finance-example {
      padding: 1.875rem; } }
  .finance-example__title {
    margin-bottom: 0; }
  .finance-example__table {
    border: 1px solid #e6e6e6;
    margin-top: 0.9375rem;
    margin-bottom: 0; }
    .finance-example__table th,
    .finance-example__table td {
      border-right: 1px solid #e6e6e6;
      text-align: center; }
      .finance-example__table th:last-child,
      .finance-example__table td:last-child {
        border-right: none; }
    .finance-example__table thead,
    .finance-example__table tbody,
    .finance-example__table tfoot {
      background: none; }
    .finance-example__table thead th {
      padding-bottom: 0;
      font-size: 0.6875rem;
      font-weight: normal; }
    .finance-example__table tbody td {
      padding-top: 0; }
    .finance-example__table tfoot td {
      padding-top: 0.25rem;
      padding-bottom: 0.25rem;
      font-weight: normal;
      text-align: center;
      border-top: 1px solid #e6e6e6; }

.finance-disclaimer {
  margin-bottom: 0.9375rem;
  font-size: 0.75rem; }
  .finance-disclaimer--full {
    margin: 0.9375rem 0 0;
    text-align: center; }

.finance-checker {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
  margin-top: 0.9375rem; }
  @media print, screen and (min-width: 40em) {
    .finance-checker {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .finance-checker {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .finance-checker::before, .finance-checker::after {
    display: table;
    content: ' '; }
  .finance-checker::after {
    clear: both; }
  .finance-checker__video {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .finance-checker__video {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .finance-checker__video:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .finance-checker__video {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .finance-checker__video {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .finance-checker__video:last-child:not(:first-child) {
          float: right; } }
    .finance-checker__video-inner {
      position: relative;
      height: 0;
      margin-bottom: 1rem;
      padding-bottom: 56.25%;
      overflow: hidden; }
      .finance-checker__video-inner iframe,
      .finance-checker__video-inner object,
      .finance-checker__video-inner embed,
      .finance-checker__video-inner video {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
  .finance-checker__details {
    width: 100%;
    float: left;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .finance-checker__details {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .finance-checker__details:last-child:not(:first-child) {
      float: right; }
    @media print, screen and (min-width: 40em) {
      .finance-checker__details {
        width: 50%;
        float: left;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .finance-checker__details {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .finance-checker__details:last-child:not(:first-child) {
          float: right; } }
    .finance-checker__details-image img {
      max-width: 13.75rem;
      vertical-align: top; }

.finance-widget__videos {
  padding-top: 1.25rem; }
  @media print, screen and (min-width: 40em) {
    .finance-widget__videos {
      padding-top: 1.875rem; } }
  .finance-widget__videos ul {
    margin-right: -0.625rem;
    margin-left: -0.625rem;
    margin: 0;
    list-style: none; }
    @media print, screen and (min-width: 40em) {
      .finance-widget__videos ul {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    @media print, screen and (min-width: 64em) {
      .finance-widget__videos ul {
        margin-right: -0.9375rem;
        margin-left: -0.9375rem; } }
    .finance-widget__videos ul::before, .finance-widget__videos ul::after {
      display: table;
      content: ' '; }
    .finance-widget__videos ul::after {
      clear: both; }
    .finance-widget__videos ul > li {
      float: left;
      width: 100%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .finance-widget__videos ul > li {
          padding-right: 0.9375rem;
          padding-left: 0.9375rem; } }
      .finance-widget__videos ul > li:nth-of-type(1n) {
        clear: none; }
      .finance-widget__videos ul > li:nth-of-type(1n+1) {
        clear: both; }
      .finance-widget__videos ul > li:last-child {
        float: left; }
    @media print, screen and (min-width: 40em) {
      .finance-widget__videos ul > li {
        float: left;
        width: 50%;
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) and (min-width: 40em) {
    .finance-widget__videos ul > li {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
    @media print, screen and (min-width: 40em) {
        .finance-widget__videos ul > li:nth-of-type(1n) {
          clear: none; }
        .finance-widget__videos ul > li:nth-of-type(2n+1) {
          clear: both; }
        .finance-widget__videos ul > li:last-child {
          float: left; } }
    .finance-widget__videos ul li {
      margin-bottom: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .finance-widget__videos ul li {
          margin-bottom: 0; } }
      .finance-widget__videos ul li:last-child {
        margin-bottom: 0; }

.finance-widget__video {
  position: relative;
  height: 0;
  margin-bottom: 1rem;
  padding-bottom: 56.25%;
  overflow: hidden;
  margin-bottom: 0; }
  .finance-widget__video iframe,
  .finance-widget__video object,
  .finance-widget__video embed,
  .finance-widget__video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.finance-price-slider {
  margin-top: 1.25rem; }
  @media screen and (min-width: 90em) {
    .finance-price-slider {
      margin-top: 1.875rem; } }
  @media screen and (min-width: 100em) {
    .finance-price-slider {
      margin-top: 2.5rem; } }
  .finance-price-slider__label {
    margin-bottom: 1.25rem;
    font-size: 1.125rem;
    line-height: 1.2;
    font-weight: 600; }
    @media print, screen and (min-width: 40em) {
      .finance-price-slider__label {
        font-size: 1.25rem; } }
    .finance-price-slider__label-value {
      display: block;
      font-size: 2.25rem;
      font-weight: 800; }
      @media print, screen and (min-width: 40em) {
        .finance-price-slider__label-value {
          font-size: 2.625rem; } }
  .finance-price-slider__slider .noUi-connects {
    background-color: #E7E7E7; }
  .finance-price-slider__slider .noUi-target {
    border: none;
    box-shadow: none;
    background-color: #e6e6e6; }
  .finance-price-slider__slider .noUi-handle {
    background-color: #B1B1B1;
    border: 1px solid #B1B1B1;
    box-shadow: none; }
  .finance-price-slider__button {
    margin-top: 1.875rem; }
    .finance-price-slider__button a {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      padding: 0.75rem 0.875rem;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 0;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 1.125rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      background-color: #c3002f;
      color: #ffffff;
      margin-bottom: 0;
      padding: 1.125rem 1.875rem;
      font-weight: 600;
      border-radius: 0.3125rem;
      text-transform: uppercase; }
      [data-whatinput='mouse'] .finance-price-slider__button a {
        outline: 0; }
      .finance-price-slider__button a:hover, .finance-price-slider__button a:focus {
        background-color: #a60028;
        color: #ffffff; }

.finance-table--order,
.finance-table--full {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .finance-table--order,
    .finance-table--full {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .finance-table--order,
    .finance-table--full {
      margin-right: -0.9375rem;
      margin-left: -0.9375rem; } }
  .finance-table--order::before, .finance-table--order::after,
  .finance-table--full::before,
  .finance-table--full::after {
    display: table;
    content: ' '; }
  .finance-table--order::after,
  .finance-table--full::after {
    clear: both; }
  .finance-table--order > .finance-table__container,
  .finance-table--full > .finance-table__container {
    float: left;
    width: 100%;
    padding-right: 0.625rem;
    padding-left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .finance-table--order > .finance-table__container,
      .finance-table--full > .finance-table__container {
        padding-right: 0.9375rem;
        padding-left: 0.9375rem; } }
    .finance-table--order > .finance-table__container:nth-of-type(1n),
    .finance-table--full > .finance-table__container:nth-of-type(1n) {
      clear: none; }
    .finance-table--order > .finance-table__container:nth-of-type(1n+1),
    .finance-table--full > .finance-table__container:nth-of-type(1n+1) {
      clear: both; }
    .finance-table--order > .finance-table__container:last-child,
    .finance-table--full > .finance-table__container:last-child {
      float: left; }
  @media screen and (min-width: 48em) {
    .finance-table--order > .finance-table__container,
    .finance-table--full > .finance-table__container {
      float: left;
      width: 50%;
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 48em) and (min-width: 40em) {
    .finance-table--order > .finance-table__container,
    .finance-table--full > .finance-table__container {
      padding-right: 0.9375rem;
      padding-left: 0.9375rem; } }
  @media screen and (min-width: 48em) {
      .finance-table--order > .finance-table__container:nth-of-type(1n),
      .finance-table--full > .finance-table__container:nth-of-type(1n) {
        clear: none; }
      .finance-table--order > .finance-table__container:nth-of-type(2n+1),
      .finance-table--full > .finance-table__container:nth-of-type(2n+1) {
        clear: both; }
      .finance-table--order > .finance-table__container:last-child,
      .finance-table--full > .finance-table__container:last-child {
        float: left; } }
  .finance-table--order .finance-table__container,
  .finance-table--full .finance-table__container {
    margin-top: 0.9375rem; }
    .finance-table--order .finance-table__container:last-child,
    .finance-table--full .finance-table__container:last-child {
      margin-bottom: 0; }
    .finance-table--order .finance-table__container ul,
    .finance-table--full .finance-table__container ul {
      margin: 0;
      list-style: none; }
      .finance-table--order .finance-table__container ul li,
      .finance-table--full .finance-table__container ul li {
        margin-bottom: 0.625rem;
        padding-bottom: 0.625rem;
        line-height: 1.4;
        border-bottom: 1px solid #eeeeee; }
  .finance-table--order .finance-table__title,
  .finance-table--full .finance-table__title {
    display: inline-block;
    margin-bottom: 0.3125rem;
    padding: 0.625rem;
    color: #ffffff;
    background-color: #222222; }
  .finance-table--order .finance-table__sub-title,
  .finance-table--full .finance-table__sub-title {
    margin-bottom: 0.9375rem; }
  .finance-table--order .finance-table__link,
  .finance-table--order .finance-table__apply,
  .finance-table--order .finance-table__deal,
  .finance-table--full .finance-table__link,
  .finance-table--full .finance-table__apply,
  .finance-table--full .finance-table__deal {
    margin-top: 0.9375rem; }
    .finance-table--order .finance-table__link .button,
    .finance-table--order .finance-table__apply .button,
    .finance-table--order .finance-table__deal .button,
    .finance-table--full .finance-table__link .button,
    .finance-table--full .finance-table__apply .button,
    .finance-table--full .finance-table__deal .button {
      width: 100%;
      margin-bottom: 0; }
      @media print, screen and (min-width: 64em) {
        .finance-table--order .finance-table__link .button,
        .finance-table--order .finance-table__apply .button,
        .finance-table--order .finance-table__deal .button,
        .finance-table--full .finance-table__link .button,
        .finance-table--full .finance-table__apply .button,
        .finance-table--full .finance-table__deal .button {
          padding-left: 0.625rem;
          padding-right: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .finance-table--order .finance-table__apply,
    .finance-table--full .finance-table__apply {
      float: left;
      width: 48%; } }
  @media print, screen and (min-width: 64em) {
    .finance-table--order .finance-table__deal,
    .finance-table--full .finance-table__deal {
      float: right;
      width: 48%; } }
  .finance-table--order .finance-table__disclaimer,
  .finance-table--full .finance-table__disclaimer {
    float: left;
    margin-top: 0.9375rem;
    font-size: 0.75rem;
    line-height: 1.6; }

.slick-slider .slick-slide:hover, .slick-slider .slick-slide:focus {
  outline: none; }

.slick-slider .slick-prev,
.slick-slider .slick-next {
  position: absolute;
  display: block;
  height: 2.5rem;
  width: 2.5rem;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background-color: #c3002f;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
  z-index: 9;
  border-radius: 0.1875rem; }
  @media print, screen and (min-width: 40em) {
    .slick-slider .slick-prev,
    .slick-slider .slick-next {
      height: 3.125rem;
      width: 3.125rem; } }
  .slick-slider .slick-prev:hover, .slick-slider .slick-prev:focus,
  .slick-slider .slick-next:hover,
  .slick-slider .slick-next:focus {
    outline: none;
    color: transparent; }
  .slick-slider .slick-prev.slick-disabled:before,
  .slick-slider .slick-next.slick-disabled:before {
    opacity: 0.5;
    cursor: default; }
  .slick-slider .slick-prev:before,
  .slick-slider .slick-next:before {
    font-family: 'Material Icons';
    font-size: 1rem;
    line-height: 1;
    color: #ffffff;
    opacity: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
    @media print, screen and (min-width: 40em) {
      .slick-slider .slick-prev:before,
      .slick-slider .slick-next:before {
        font-size: 1.125rem; } }

.slick-slider .slick-prev {
  left: 0.3125rem; }
  .slick-slider .slick-prev:before {
    content: '\e5c4'; }

.slick-slider .slick-next {
  right: 0.3125rem; }
  .slick-slider .slick-next:before {
    content: '\e5c8'; }

.slick-slider.slick-dotted {
  padding-bottom: 1.25rem; }

.slick-slider .slick-dots {
  position: absolute;
  bottom: -0.4375rem;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-slider .slick-dots li {
    position: relative;
    display: inline-block;
    height: 0.1875rem;
    width: 1.25rem;
    margin: 0 0.125rem;
    cursor: pointer; }
    @media print, screen and (min-width: 40em) {
      .slick-slider .slick-dots li {
        width: 1.875rem;
        margin: 0 0.25rem; } }
    @media print, screen and (min-width: 64em) {
      .slick-slider .slick-dots li {
        width: 2.5rem;
        margin: 0 0.375rem; } }
    .slick-slider .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      width: 100%;
      height: 0.1875rem;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      cursor: pointer;
      background-color: #222222; }
      .slick-slider .slick-dots li button:hover, .slick-slider .slick-dots li button:focus {
        outline: none;
        opacity: 1; }
    .slick-slider .slick-dots li.slick-active button {
      background: #c3002f; }

.listing--block-tile .slick-slider {
  margin-left: -0.625rem;
  margin-right: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--block-tile .slick-slider {
      margin-left: -0.9375rem;
      margin-right: -0.9375rem; } }
  .listing--block-tile .slick-slider .slick-slide {
    margin-left: 0.625rem;
    margin-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--block-tile .slick-slider .slick-slide {
        margin-left: 0.9375rem;
        margin-right: 0.9375rem; } }
  .listing--block-tile .slick-slider .slick-prev,
  .listing--block-tile .slick-slider .slick-next {
    height: 6.25rem; }
  .listing--block-tile .slick-slider .slick-prev {
    left: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--block-tile .slick-slider .slick-prev {
        left: 0.9375rem; } }
  .listing--block-tile .slick-slider .slick-next {
    right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--block-tile .slick-slider .slick-next {
        right: 0.9375rem; } }

.listing--block-vehicle-type .slick-slider {
  margin-left: -0.625rem;
  margin-right: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--block-vehicle-type .slick-slider {
      margin-left: -0.9375rem;
      margin-right: -0.9375rem; } }
  .listing--block-vehicle-type .slick-slider .slick-slide {
    margin-left: 0.625rem;
    margin-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--block-vehicle-type .slick-slider .slick-slide {
        margin-left: 0.9375rem;
        margin-right: 0.9375rem; } }
  .listing--block-vehicle-type .slick-slider .slick-prev,
  .listing--block-vehicle-type .slick-slider .slick-next {
    width: 2.5rem;
    height: 2.5rem; }
    @media screen and (min-width: 30em) {
      .listing--block-vehicle-type .slick-slider .slick-prev,
      .listing--block-vehicle-type .slick-slider .slick-next {
        top: -2.5rem; } }
  .listing--block-vehicle-type .slick-slider .slick-prev {
    left: 0.625rem; }
    @media screen and (min-width: 30em) {
      .listing--block-vehicle-type .slick-slider .slick-prev {
        left: inherit;
        right: 3.4375rem; } }
    @media print, screen and (min-width: 40em) {
      .listing--block-vehicle-type .slick-slider .slick-prev {
        right: 3.75rem; } }
  .listing--block-vehicle-type .slick-slider .slick-next {
    right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--block-vehicle-type .slick-slider .slick-next {
        right: 0.9375rem; } }

.listing--showroom-featured {
  padding-top: 3.75rem; }
  .listing--showroom-featured .slick-slider {
    margin-left: -0.625rem;
    margin-right: -0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--showroom-featured .slick-slider {
        margin-left: -0.9375rem;
        margin-right: -0.9375rem; } }
    .listing--showroom-featured .slick-slider .slick-list {
      overflow: visible; }
    .listing--showroom-featured .slick-slider .slick-slide {
      margin-left: 0.625rem;
      margin-right: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .listing--showroom-featured .slick-slider .slick-slide {
          margin-left: 0.9375rem;
          margin-right: 0.9375rem; } }
    .listing--showroom-featured .slick-slider .slick-prev {
      top: -2.5rem;
      left: 0.625rem; }
      @media print, screen and (min-width: 40em) {
        .listing--showroom-featured .slick-slider .slick-prev {
          left: 0.9375rem; } }
    .listing--showroom-featured .slick-slider .slick-next {
      top: -2.5rem;
      right: inherit;
      left: 3.75rem; }
      @media print, screen and (min-width: 40em) {
        .listing--showroom-featured .slick-slider .slick-next {
          left: 4.0625rem; } }

.listing--block .slick-slider {
  margin-left: -0.3125rem;
  margin-right: -0.3125rem; }
  @media print, screen and (min-width: 40em) {
    .listing--block .slick-slider {
      margin-left: -0.9375rem;
      margin-right: -0.9375rem; } }
  .listing--block .slick-slider .slick-list {
    overflow: visible; }
  .listing--block .slick-slider .slick-track {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .listing--block .slick-slider .slick-slide {
    margin-left: 0.3125rem;
    margin-right: 0.3125rem; }
    @media print, screen and (min-width: 40em) {
      .listing--block .slick-slider .slick-slide {
        margin-left: 0.9375rem;
        margin-right: 0.9375rem; } }

.listing--vehicle-featured .slick-slider,
.listing--vehicle-similar .slick-slider,
.listing--vehicle-in-stock .slick-slider,
.listing--offer-featured .slick-slider {
  margin-left: -0.625rem;
  margin-right: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-featured .slick-slider,
    .listing--vehicle-similar .slick-slider,
    .listing--vehicle-in-stock .slick-slider,
    .listing--offer-featured .slick-slider {
      margin-left: -0.9375rem;
      margin-right: -0.9375rem; } }
  .listing--vehicle-featured .slick-slider .slick-track,
  .listing--vehicle-similar .slick-slider .slick-track,
  .listing--vehicle-in-stock .slick-slider .slick-track,
  .listing--offer-featured .slick-slider .slick-track {
    margin-left: inherit;
    margin-right: inherit; }
  .listing--vehicle-featured .slick-slider .slick-list,
  .listing--vehicle-similar .slick-slider .slick-list,
  .listing--vehicle-in-stock .slick-slider .slick-list,
  .listing--offer-featured .slick-slider .slick-list {
    overflow: visible; }
    @media screen and (min-width: 48em) {
      .listing--vehicle-featured .slick-slider .slick-list,
      .listing--vehicle-similar .slick-slider .slick-list,
      .listing--vehicle-in-stock .slick-slider .slick-list,
      .listing--offer-featured .slick-slider .slick-list {
        overflow: hidden; } }
  .listing--vehicle-featured .slick-slider .slick-track,
  .listing--vehicle-similar .slick-slider .slick-track,
  .listing--vehicle-in-stock .slick-slider .slick-track,
  .listing--offer-featured .slick-slider .slick-track {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .listing--vehicle-featured .slick-slider .slick-slide,
  .listing--vehicle-similar .slick-slider .slick-slide,
  .listing--vehicle-in-stock .slick-slider .slick-slide,
  .listing--offer-featured .slick-slider .slick-slide {
    height: inherit;
    margin-left: 0.625rem;
    margin-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--vehicle-featured .slick-slider .slick-slide,
      .listing--vehicle-similar .slick-slider .slick-slide,
      .listing--vehicle-in-stock .slick-slider .slick-slide,
      .listing--offer-featured .slick-slider .slick-slide {
        margin-left: 0.9375rem;
        margin-right: 0.9375rem; } }

.listing--custom-entry-review-featured .slick-slider {
  margin-left: -0.625rem;
  margin-right: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--custom-entry-review-featured .slick-slider {
      margin-left: -0.9375rem;
      margin-right: -0.9375rem; } }
  .listing--custom-entry-review-featured .slick-slider .slick-slide {
    margin-left: 0.625rem;
    margin-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .listing--custom-entry-review-featured .slick-slider .slick-slide {
        margin-left: 0.9375rem;
        margin-right: 0.9375rem; } }
  .listing--custom-entry-review-featured .slick-slider .slick-prev {
    top: inherit;
    left: 0.625rem;
    bottom: -5rem; }
    @media print, screen and (min-width: 40em) {
      .listing--custom-entry-review-featured .slick-slider .slick-prev {
        bottom: -6.5625rem;
        left: 0.9375rem; } }
  .listing--custom-entry-review-featured .slick-slider .slick-next {
    top: inherit;
    right: inherit;
    bottom: -5rem;
    left: 3.75rem; }
    @media print, screen and (min-width: 40em) {
      .listing--custom-entry-review-featured .slick-slider .slick-next {
        bottom: -6.5625rem;
        left: 4.6875rem; } }

@media print, screen and (min-width: 40em) {
  .vehicle__primary-images .slick-prev {
    left: 0.9375rem; } }

@media print, screen and (min-width: 40em) {
  .vehicle__primary-images .slick-next {
    right: 0.9375rem; } }

.vehicle__primary-images-thumbnails .slick-slider {
  margin-left: -0.0625rem;
  margin-right: -0.0625rem; }
  @media print, screen and (min-width: 40em) {
    .vehicle__primary-images-thumbnails .slick-slider {
      margin-left: -0.3125rem;
      margin-right: -0.3125rem; } }
  @media print, screen and (min-width: 64em) {
    .vehicle__primary-images-thumbnails .slick-slider {
      margin-top: -0.6875rem;
      margin-bottom: -0.6875rem;
      margin-left: inherit;
      margin-right: inherit; } }
  .vehicle__primary-images-thumbnails .slick-slider .slick-slide {
    margin-left: 0.0625rem;
    margin-right: 0.0625rem;
    cursor: pointer;
    border: none; }
    @media print, screen and (min-width: 40em) {
      .vehicle__primary-images-thumbnails .slick-slider .slick-slide {
        margin-left: 0.3125rem;
        margin-right: 0.3125rem; } }
    @media print, screen and (min-width: 64em) {
      .vehicle__primary-images-thumbnails .slick-slider .slick-slide {
        margin-top: 0.6875rem;
        margin-bottom: 0.6875rem;
        margin-left: inherit;
        margin-right: inherit; } }

.listing--vehicle-compare .slick-slider {
  padding-top: 2.5625rem; }
  @media print, screen and (min-width: 40em) {
    .listing--vehicle-compare .slick-slider .slick-slide {
      margin-left: 0.1875rem; } }
  .listing--vehicle-compare .slick-slider .slick-prev,
  .listing--vehicle-compare .slick-slider .slick-next {
    top: 1.25rem;
    height: 2.125rem;
    background: none; }
    .listing--vehicle-compare .slick-slider .slick-prev:before,
    .listing--vehicle-compare .slick-slider .slick-next:before {
      background-color: #c3002f;
      color: #ffffff; }
  .listing--vehicle-compare .slick-slider .slick-prev {
    left: inherit;
    right: 2.5625rem; }
  .listing--vehicle-compare .slick-slider .slick-next {
    right: 0; }

@media screen and (max-width: 63.9375em) {
  .listing--block-partner .slick-list {
    overflow: visible; } }

.listing--block-partner .slick-initialized .slick-slide {
  float: none;
  display: inline-block;
  vertical-align: middle; }

.listing--block-partner .slick-slider {
  margin-left: -0.625rem;
  margin-right: -0.625rem; }
  .listing--block-partner .slick-slider .slick-slide {
    margin-left: 0.625rem;
    margin-right: 0.625rem; }

.listing--vehicle-featured-sidebar .slick-slider .slick-prev,
.listing--vehicle-featured-sidebar .slick-slider .slick-next {
  top: 2.1875rem;
  height: 3.125rem; }
  @media screen and (min-width: 90em) {
    .listing--vehicle-featured-sidebar .slick-slider .slick-prev,
    .listing--vehicle-featured-sidebar .slick-slider .slick-next {
      top: 2.8125rem;
      height: 3.75rem; } }

.listing--vehicle-featured-sidebar .slick-slider .slick-prev {
  left: 0.625rem; }
  @media screen and (min-width: 90em) {
    .listing--vehicle-featured-sidebar .slick-slider .slick-prev {
      left: 0.9375rem; } }

.listing--vehicle-featured-sidebar .slick-slider .slick-next {
  right: inherit;
  left: 3.0625rem; }
  @media screen and (min-width: 90em) {
    .listing--vehicle-featured-sidebar .slick-slider .slick-next {
      left: 3.6875rem; } }

.page--default .page__secondary-images .slick-slider,
.post--default .post__secondary-images .slick-slider,
.page--contact .page__secondary-images .slick-slider,
.vehicle--full .vehicle__secondary-images .slick-slider,
.showroom--full .showroom__secondary-images .slick-slider,
.offer--full .offer__secondary-images .slick-slider {
  margin-left: -0.625rem;
  margin-right: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .page--default .page__secondary-images .slick-slider,
    .post--default .post__secondary-images .slick-slider,
    .page--contact .page__secondary-images .slick-slider,
    .vehicle--full .vehicle__secondary-images .slick-slider,
    .showroom--full .showroom__secondary-images .slick-slider,
    .offer--full .offer__secondary-images .slick-slider {
      margin-left: -0.9375rem;
      margin-right: -0.9375rem; } }
  .page--default .page__secondary-images .slick-slider .slick-slide,
  .post--default .post__secondary-images .slick-slider .slick-slide,
  .page--contact .page__secondary-images .slick-slider .slick-slide,
  .vehicle--full .vehicle__secondary-images .slick-slider .slick-slide,
  .showroom--full .showroom__secondary-images .slick-slider .slick-slide,
  .offer--full .offer__secondary-images .slick-slider .slick-slide {
    margin-left: 0.625rem;
    margin-right: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .page--default .page__secondary-images .slick-slider .slick-slide,
      .post--default .post__secondary-images .slick-slider .slick-slide,
      .page--contact .page__secondary-images .slick-slider .slick-slide,
      .vehicle--full .vehicle__secondary-images .slick-slider .slick-slide,
      .showroom--full .showroom__secondary-images .slick-slider .slick-slide,
      .offer--full .offer__secondary-images .slick-slider .slick-slide {
        margin-left: 0.9375rem;
        margin-right: 0.9375rem; } }
  .page--default .page__secondary-images .slick-slider .slick-prev,
  .post--default .post__secondary-images .slick-slider .slick-prev,
  .page--contact .page__secondary-images .slick-slider .slick-prev,
  .vehicle--full .vehicle__secondary-images .slick-slider .slick-prev,
  .showroom--full .showroom__secondary-images .slick-slider .slick-prev,
  .offer--full .offer__secondary-images .slick-slider .slick-prev {
    left: 0.9375rem; }
    @media print, screen and (min-width: 40em) {
      .page--default .page__secondary-images .slick-slider .slick-prev,
      .post--default .post__secondary-images .slick-slider .slick-prev,
      .page--contact .page__secondary-images .slick-slider .slick-prev,
      .vehicle--full .vehicle__secondary-images .slick-slider .slick-prev,
      .showroom--full .showroom__secondary-images .slick-slider .slick-prev,
      .offer--full .offer__secondary-images .slick-slider .slick-prev {
        left: 1.25rem; } }
  .page--default .page__secondary-images .slick-slider .slick-next,
  .post--default .post__secondary-images .slick-slider .slick-next,
  .page--contact .page__secondary-images .slick-slider .slick-next,
  .vehicle--full .vehicle__secondary-images .slick-slider .slick-next,
  .showroom--full .showroom__secondary-images .slick-slider .slick-next,
  .offer--full .offer__secondary-images .slick-slider .slick-next {
    right: 0.9375rem; }
    @media print, screen and (min-width: 40em) {
      .page--default .page__secondary-images .slick-slider .slick-next,
      .post--default .post__secondary-images .slick-slider .slick-next,
      .page--contact .page__secondary-images .slick-slider .slick-next,
      .vehicle--full .vehicle__secondary-images .slick-slider .slick-next,
      .showroom--full .showroom__secondary-images .slick-slider .slick-next,
      .offer--full .offer__secondary-images .slick-slider .slick-next {
        right: 1.25rem; } }

.listing--block-vehicle-types .slick-slider .slick-prev,
.listing--block-vehicle-types .slick-slider .slick-next {
  background: none;
  width: 60px;
  height: 40px;
  border-radius: 0;
  background-color: #F6F6F6; }
  .listing--block-vehicle-types .slick-slider .slick-prev:before,
  .listing--block-vehicle-types .slick-slider .slick-next:before {
    font-size: 1.25rem;
    color: #222222; }

.listing--block-vehicle-types .slick-slider .slick-prev {
  top: -1.3125rem;
  left: inherit;
  right: 3.75rem;
  border-top-left-radius: 0.3125rem; }
  .listing--block-vehicle-types .slick-slider .slick-prev:before {
    content: '\f1e6'; }
  .listing--block-vehicle-types .slick-slider .slick-prev:after {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    height: 2.5rem;
    width: 0.0625rem;
    background-color: #E3E3E3; }

.listing--block-vehicle-types .slick-slider .slick-next {
  top: -1.3125rem;
  right: 0;
  border-top-right-radius: 0.3125rem; }
  .listing--block-vehicle-types .slick-slider .slick-next:before {
    content: '\f1df'; }

.datepicker.dropdown-menu {
  z-index: 99999999999 !important; }

.material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24; }

.dropdown-pane {
  color: #ffffff;
  font-weight: 600;
  border-radius: 0.3125rem;
  top: 0;
  left: 0; }
  .dropdown-pane a {
    color: #ffffff; }

html {
  scroll-behavior: smooth; }

.table-scroll-wrapper {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; }
  .table-scroll-wrapper table {
    width: 100% !important;
    max-width: 100%;
    height: auto !important; }
    @media (max-width: 768px) {
      .table-scroll-wrapper table {
        min-width: 650px; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzIiwiX3NldHRpbmdzLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Jvdy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL191bml0LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3NpemUuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19oZWxwLXRleHQuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYXJkLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Nsb3NlLWJ1dHRvbi5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtaWNvbi5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmV2ZWFsLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYnMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbG9hdC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL19zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zbGlkZS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2ZhZGUuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL2VmZmVjdHMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9faGluZ2Uuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9hc3NldHMvYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL196b29tLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvYXNzZXRzL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2Fzc2V0cy9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdXRpbC9fYW5pbWF0aW9uLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2Jhc2UvX2Jhc2Uuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9fdGVtcG9yYXJ5LXNsb2dhbi5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL2Jsb2NrL19ibG9jay0tc2lkZWJhci5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL2RlcGFydG1lbnQvX2RlcGFydG1lbnQtLXZlaGljbGUuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9mb3JtL19mb3JtLS1kZWxpdmVyeS1jYWxlbmRhci5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL2Zvcm0vX2Zvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL2Zvcm0vX2Zvcm0tLXNlcnZpY2UtYm9va2luZy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL2Zvcm0vX2Zvcm0tLXZlaGljbGUtcGF5bWVudC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL2Zvcm0vX2Zvcm0tLXZlaGljbGUtc29ydC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL2Zvcm0vX2Zvcm0tLXZlaGljbGUtdmFsdWF0aW9uLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvZm9ybS9fZm9ybS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL21lZGlhL192aWRlby5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL25ldy12ZWhpY2xlL19uZXctdmVoaWNsZS0tZnVsbC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL25ldy12ZWhpY2xlL19uZXctdmVoaWNsZS0tdGVhc2VyLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvbmV3LXZlaGljbGUvX25ldy12ZWhpY2xlLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvb2ZmZXIvX29mZmVyLS1mZWF0dXJlZC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL29yZGVyL19hZGQtb24uc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9vcmRlci9fY2FsZW5kYXIuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9vcmRlci9fY29sbGVjdGlvbi1kZWxpdmVyeS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL29yZGVyL19vcmRlci1pbnRyb2R1Y3Rpb24uc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9vcmRlci9fb3JkZXItcGF5bWVudC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL29yZGVyL19vcmRlci1wcm9ncmVzcy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL29yZGVyL19vcmRlci1zdGF0ZS1zdW1tYXJ5LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvb3JkZXIvX29yZGVyLXN1bW1hcnkuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9vcmRlci9fb3JkZXIuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9vcmRlci9fcGFydC1leGNoYW5nZS5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL3BhcnQvX3BhcnQtLWZlYXR1cmVkLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvcGFydC9fcGFydC0tZnVsbC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL3BhcnQvX3BhcnQtLXRlYXNlci5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL3Bvc3QvX3Bvc3QtLWZlYXR1cmVkLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvc2VhcmNoL19xdWljay1zZWFyY2guc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9zZWFyY2gvX3NlYXJjaC1zZWxlY3Rpb24uc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9zaG93cm9vbS9fc2hvd3Jvb20tLWZlYXR1cmVkLnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvdmVoaWNsZS9fdmVoaWNsZS0tZ2VuZXJhbC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL3ZlaGljbGUvX3ZlaGljbGUtLWxhdGVzdC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL3ZlaGljbGUvX3ZlaGljbGUtLXJlY2VudGx5LXZpZXdlZC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9sYXlvdXQvX2FsZXJ0LnNjc3MiLCIuLi8uLi8uLi8uLi8uLi90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL3ZlbmRvci9fY3JlZGl0LWNhbGN1bGF0b3Iuc2NzcyIsIi4uLy4uLy4uLy4uLy4uL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvdmVuZG9yL19mYW5jeWJveC5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy92ZW5kb3IvX3Jldmlldy5zY3NzIiwiLi4vLi4vLi4vLi4vLi4vdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy92ZW5kb3IvX3dpemFyZC5zY3NzIiwiY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJjb21wb25lbnRzL19iYW5uZXIuc2NzcyIsImNvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCJjb21wb25lbnRzL19idXR0b24uc2NzcyIsImNvbXBvbmVudHMvX2Nsb3NlLWJ1dHRvbi5zY3NzIiwiY29tcG9uZW50cy9fY3JlZGl0cy5zY3NzIiwiY29tcG9uZW50cy9faWNvbi5zY3NzIiwiY29tcG9uZW50cy9fbGlzdGluZy5zY3NzIiwiY29tcG9uZW50cy9fbG9nby5zY3NzIiwiY29tcG9uZW50cy9fbWVldC10aGUtdGVhbS5zY3NzIiwiY29tcG9uZW50cy9fbWVudS5zY3NzIiwiY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fcGxheS5zY3NzIiwiY29tcG9uZW50cy9fcmV2ZWFsLnNjc3MiLCJjb21wb25lbnRzL19yZXZpZXdzLnNjc3MiLCJjb21wb25lbnRzL19zYXZlZC5zY3NzIiwiY29tcG9uZW50cy9fdGFicy5zY3NzIiwiY29tcG9uZW50cy9fdG9nZ2xlci5zY3NzIiwiY29tcG9uZW50cy9fdG9wLW1ha2VzLWFuZC1tb2RlbHMuc2NzcyIsImNvbXBvbmVudHMvYmxvY2svX2Jsb2NrLS1hYm91dC11cy5zY3NzIiwiY29tcG9uZW50cy9ibG9jay9fYmxvY2stLWJhbm5lci5zY3NzIiwiY29tcG9uZW50cy9ibG9jay9fYmxvY2stLWRlZmF1bHQuc2NzcyIsImNvbXBvbmVudHMvYmxvY2svX2Jsb2NrLS1kaXNjbGFpbWVyLnNjc3MiLCJjb21wb25lbnRzL2Jsb2NrL19ibG9jay0tZG9jdW1lbnQuc2NzcyIsImNvbXBvbmVudHMvYmxvY2svX2Jsb2NrLS1mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvYmxvY2svX2Jsb2NrLS1oZXJvLnNjc3MiLCJjb21wb25lbnRzL2Jsb2NrL19ibG9jay0taW5kZXgtaGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL2Jsb2NrL19ibG9jay0tb2ZmZXJzLnNjc3MiLCJjb21wb25lbnRzL2Jsb2NrL19ibG9jay0tcGFydG5lci1yZXZpZXdzLnNjc3MiLCJjb21wb25lbnRzL2Jsb2NrL19ibG9jay0tcGFydG5lci5zY3NzIiwiY29tcG9uZW50cy9ibG9jay9fYmxvY2stLXBvcC11cC5zY3NzIiwiY29tcG9uZW50cy9ibG9jay9fYmxvY2stLXJlc3VsdHMuc2NzcyIsImNvbXBvbmVudHMvYmxvY2svX2Jsb2NrLS1zZWFyY2guc2NzcyIsImNvbXBvbmVudHMvYmxvY2svX2Jsb2NrLS1zZXJ2aWNlLnNjc3MiLCJjb21wb25lbnRzL2Jsb2NrL19ibG9jay0tdGlsZS5zY3NzIiwiY29tcG9uZW50cy9ibG9jay9fYmxvY2stLXVzcC5zY3NzIiwiY29tcG9uZW50cy9ibG9jay9fYmxvY2stLXZlaGljbGUtdHlwZXMuc2NzcyIsImNvbXBvbmVudHMvYnJhbmNoL19icmFuY2gtLWNvbnRhY3Quc2NzcyIsImNvbXBvbmVudHMvYnJhbmNoL19icmFuY2gtLWZvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9icmFuY2gvX2JyYW5jaC0tZnVsbC5zY3NzIiwiY29tcG9uZW50cy9icmFuY2gvX2JyYW5jaC0tdGVhc2VyLnNjc3MiLCJjb21wb25lbnRzL2JyYW5jaC9fYnJhbmNoLS12ZWhpY2xlLnNjc3MiLCJjb21wb25lbnRzL2JyYW5jaC9fYnJhbmNoLS13aWRnZXQuc2NzcyIsImNvbXBvbmVudHMvY3VzdG9tLWVudHJ5L19jdXN0b20tZW50cnktLWZhcS5zY3NzIiwiY29tcG9uZW50cy9jdXN0b20tZW50cnkvX2N1c3RvbS1lbnRyeS0tcmV2aWV3cy5zY3NzIiwiY29tcG9uZW50cy9kZXBhcnRtZW50L19kZXBhcnRtZW50LS1mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvZGVwYXJ0bWVudC9fZGVwYXJ0bWVudC0tdGVhc2VyLnNjc3MiLCJjb21wb25lbnRzL2Zvcm0vX2Zvcm0tLWRpcmVjdGlvbnMuc2NzcyIsImNvbXBvbmVudHMvZm9ybS9fZm9ybS0tZW5xdWlyeS5zY3NzIiwiY29tcG9uZW50cy9mb3JtL19mb3JtLS1wYXJ0LWV4Y2hhbmdlLnNjc3MiLCJjb21wb25lbnRzL2Zvcm0vX2Zvcm0tLXNlbGwteW91ci12ZWhpY2xlLnNjc3MiLCJjb21wb25lbnRzL2Zvcm0vX2Zvcm0tLXZlaGljbGUtZW5xdWlyeS5zY3NzIiwiY29tcG9uZW50cy9tZWRpYS9fbm8taW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX3ByaW1hcnktaW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEvX3NlY29uZGFyeS1pbWFnZS5zY3NzIiwiY29tcG9uZW50cy9vZmZlci9fb2ZmZXItLWZ1bGwuc2NzcyIsImNvbXBvbmVudHMvb2ZmZXIvX29mZmVyLS10ZWFzZXIuc2NzcyIsImNvbXBvbmVudHMvcGFnZS9fcGFnZS0tY29udGFjdC5zY3NzIiwiY29tcG9uZW50cy9wYWdlL19wYWdlLS1kZWZhdWx0LnNjc3MiLCJjb21wb25lbnRzL3BhZ2UvX3BhZ2UtLWhvbWUuc2NzcyIsImNvbXBvbmVudHMvcGFnZS9fcGFnZS0tdGVhc2VyLnNjc3MiLCJjb21wb25lbnRzL3Bvc3QvX21ldGEuc2NzcyIsImNvbXBvbmVudHMvcG9zdC9fcG9zdC0tZGVmYXVsdC5zY3NzIiwiY29tcG9uZW50cy9wb3N0L19wb3N0LS10ZWFzZXIuc2NzcyIsImNvbXBvbmVudHMvc2VhcmNoL19zZWFyY2guc2NzcyIsImNvbXBvbmVudHMvc2hvd3Jvb20vX3Nob3dyb29tLS1mdWxsLnNjc3MiLCJjb21wb25lbnRzL3Nob3dyb29tL19zaG93cm9vbS0tdGVhc2VyLnNjc3MiLCJjb21wb25lbnRzL3ZlaGljbGUvX3ByaWNlLnNjc3MiLCJjb21wb25lbnRzL3ZlaGljbGUvX3NwZWNpZmljYXRpb24uc2NzcyIsImNvbXBvbmVudHMvdmVoaWNsZS9fdGVjaG5pY2FsLWRhdGEuc2NzcyIsImNvbXBvbmVudHMvdmVoaWNsZS9fdmVoaWNsZS0tY29tcGFyZS5zY3NzIiwiY29tcG9uZW50cy92ZWhpY2xlL192ZWhpY2xlLS1mdWxsLnNjc3MiLCJjb21wb25lbnRzL3ZlaGljbGUvX3ZlaGljbGUtLXRlYXNlci5zY3NzIiwiY29tcG9uZW50cy92ZWhpY2xlL192ZWhpY2xlLnNjc3MiLCJsYXlvdXQvX2JvZHkuc2NzcyIsImxheW91dC9fYnJlYWRjcnVtYnMuc2NzcyIsImxheW91dC9fZm9udHMuc2NzcyIsImxheW91dC9fZm9vdGVyLnNjc3MiLCJsYXlvdXQvX2hlYWRlci5zY3NzIiwibGF5b3V0L19tYWluLnNjc3MiLCJsYXlvdXQvX25hdi5zY3NzIiwidmVuZG9yL19leHRyYXMuc2NzcyIsInZlbmRvci9fZmluYW5jZS5zY3NzIiwidmVuZG9yL19zbGljay1zbGlkZXIuc2NzcyIsImFwcC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7Ozs7R0FLRztBQ3dDRCxpRUFBaUU7QUFHL0Q7b0ZBQ2dGO0FBRWhGOzs7OztPQUtHO0FBRUg7RUFDRSx3QkMxQ3VCO0VEMENTLE9BQU87RUFRckMsa0JBQWlCO0VBQUUsT0FBTztFQUU1QiwyQkFBMEI7RUFBRSxPQUFPO0VBQ25DLCtCQUE4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QkRicUQsRU42RmhEOztBQXBCRDtFS3hGSixpQkNlcUQsRU4yRWhEOztBQUlDO0VPN0ZKLG1CQUFrQjtFQUNsQixnQkFIbUQsRVBpRzlDOztBQUVEO0VPakdKLG1CQUFrQjtFQUNsQixpQkFIbUQsRVBxRzlDOztBQU1IO0VPOUVKLGlCRGJxRCxFTjZGaEQ7O0FBcEJEO0VLeEZKLGlCQ2VxRCxFTjJFaEQ7O0FBSUM7RU83RkosbUJBQWtCO0VBQ2xCLGdCQUhtRCxFUGlHOUM7O0FBRUQ7RU9qR0osbUJBQWtCO0VBQ2xCLGlCQUhtRCxFUHFHOUM7O0FBTUg7RU85RUosdUJEYnFELEVONkZoRDs7QUFwQkQ7RUt4RkosV0NlcUQsRU4yRWhEOztBQUlDO0VPN0ZKLG1CQUFrQjtFQUNsQixVQUhtRCxFUGlHOUM7O0FBRUQ7RU9qR0osbUJBQWtCO0VBQ2xCLFdBSG1ELEVQcUc5Qzs7QUFNSDtFTzlFSix1QkRicUQsRU42RmhEOztBQXBCRDtFS3hGSixpQkNlcUQsRU4yRWhEOztBQUlDO0VPN0ZKLG1CQUFrQjtFQUNsQixnQkFIbUQsRVBpRzlDOztBQUVEO0VPakdKLG1CQUFrQjtFQUNsQixpQkFIbUQsRVBxRzlDOztBQU1IO0VPOUVKLGlCRGJxRCxFTjZGaEQ7O0FBcEJEO0VLeEZKLGlCQ2VxRCxFTjJFaEQ7O0FBSUM7RU83RkosbUJBQWtCO0VBQ2xCLGdCQUhtRCxFUGlHOUM7O0FBRUQ7RU9qR0osbUJBQWtCO0VBQ2xCLGlCQUhtRCxFUHFHOUM7O0FBTUg7RU85RUosdUJEYnFELEVONkZoRDs7QUFwQkQ7RUt4RkosWUNlcUQsRU4yRWhEOztBQWdCRDtFTzlFSix1QkRicUQsRU42RmhEOztBQUtEO0VRekdGLFlYK0V1RDtFVzlFdkQsWUFBdUIsRUFpQ3hCO0VSdUVHO0lRakZBLFlBQVcsRUFDWjtFUmdGQztJUTdFQSxZQUFXLEVBQ1o7RVI0RUM7SVF6RUEsWVgrQ3FELEVXOUN0RDs7QVJ3RUM7RVF6R0YsWVgrRXVEO0VXOUV2RCxXQUF1QixFQWlDeEI7RVJ1RUc7SVFqRkEsWUFBVyxFQUNaO0VSZ0ZDO0lRN0VBLFlBQVcsRUFDWjtFUjRFQztJUXpFQSxZWCtDcUQsRVc5Q3REOztBUndFQztFUXpHRixZWCtFdUQ7RVc5RXZELGlCQUF1QixFQWlDeEI7RVJ1RUc7SVFqRkEsWUFBVyxFQUNaO0VSZ0ZDO0lRN0VBLFlBQVcsRUFDWjtFUjRFQztJUXpFQSxZWCtDcUQsRVc5Q3REOztBUndFQztFUXpHRixZWCtFdUQ7RVc5RXZELFdBQXVCLEVBaUN4QjtFUnVFRztJUWpGQSxZQUFXLEVBQ1o7RVJnRkM7SVE3RUEsWUFBVyxFQUNaO0VSNEVDO0lRekVBLFlYK0NxRCxFVzlDdEQ7O0FSd0VDO0VRekdGLFlYK0V1RDtFVzlFdkQsV0FBdUIsRUFpQ3hCO0VSdUVHO0lRakZBLFlBQVcsRUFDWjtFUmdGQztJUTdFQSxZQUFXLEVBQ1o7RVI0RUM7SVF6RUEsWVgrQ3FELEVXOUN0RDs7QVJ3RUM7RVF6R0YsWVgrRXVEO0VXOUV2RCxpQkFBdUIsRUFpQ3hCO0VSdUVHO0lRakZBLFlBQVcsRUFDWjtFUmdGQztJUTdFQSxZQUFXLEVBQ1o7RVI0RUM7SVF6RUEsWVgrQ3FELEVXOUN0RDs7QVJ3RUM7RVF6R0YsWVgrRXVEO0VXOUV2RCxpQkFBdUIsRUFpQ3hCO0VSdUVHO0lRakZBLFlBQVcsRUFDWjtFUmdGQztJUTdFQSxZQUFXLEVBQ1o7RVI0RUM7SVF6RUEsWVgrQ3FELEVXOUN0RDs7QVJ3RUM7RVF6R0YsWVgrRXVEO0VXOUV2RCxhQUF1QixFQWlDeEI7RVJ1RUc7SVFqRkEsWUFBVyxFQUNaO0VSZ0ZDO0lRN0VBLFlBQVcsRUFDWjtFUjRFQztJUXpFQSxZWCtDcUQsRVc5Q3REOztBUjhFRDtFRy9HQSxpQkR1RVM7RUN0RVQsZ0JEc0VTLEVGeUN1Qzs7QUFEaEQ7RUFJSSxnQkFBZTtFQUNmLGVBQWMsRUFDZjs7QUFHSDtFQUNFLGdCQUFlO0VBQ2YsZUFBYyxFQUNmOztBQUVEO0VHN0hBLHdCQUZxQztFQUdyQyx1QkFIcUMsRUhnSW9COztBQUl6RDtFT2pJQSxtQkFBa0I7RUFDbEIsa0JBQWlCLEVQa0loQjtFT3ZJRDtJQUNFLFlBQVc7SUFDWCxZQUFXLEVBQ1o7O0FQdUlEOzs7RU81SEYsaUJBQWdCO0VBQ2hCLFlBQVc7RUFDWCxnQkFBZTtFQUNmLGVBQWMsRVA2SFg7O0FJTkM7RUpyREE7SUt4RkosZ0JDZXFELEVOMkVoRDtFQUlDO0lPN0ZKLG1CQUFrQjtJQUNsQixlQUhtRCxFUGlHOUM7RUFFRDtJT2pHSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQcUc5QztFQU1IO0lPOUVKLGdCRGhCZ0MsRU5nRzNCO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJTzdGSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQaUc5QztFQUVEO0lPakdKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBxRzlDO0VBTUg7SU85RUosc0JEYnFELEVONkZoRDtFQXBCRDtJS3hGSixXQ2VxRCxFTjJFaEQ7RUFJQztJTzdGSixtQkFBa0I7SUFDbEIsVUFIbUQsRVBpRzlDO0VBRUQ7SU9qR0osbUJBQWtCO0lBQ2xCLFdBSG1ELEVQcUc5QztFQU1IO0lPOUVKLHVCRGJxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPN0ZKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVBpRzlDO0VBRUQ7SU9qR0osbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUHFHOUM7RUFNSDtJTzlFSixpQkRicUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJTzdGSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQaUc5QztFQUVEO0lPakdKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBxRzlDO0VBTUg7SU85RUosdUJEYnFELEVONkZoRDtFQXBCRDtJS3hGSixXQ2VxRCxFTjJFaEQ7RUFJQztJTzdGSixtQkFBa0I7SUFDbEIsVUFIbUQsRVBpRzlDO0VBRUQ7SU9qR0osbUJBQWtCO0lBQ2xCLFdBSG1ELEVQcUc5QztFQU1IO0lPOUVKLHVCRGJxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPN0ZKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVBpRzlDO0VBRUQ7SU9qR0osbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUHFHOUM7RUFNSDtJTzlFSixpQkRicUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJTzdGSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQaUc5QztFQUVEO0lPakdKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBxRzlDO0VBTUg7SU85RUosdUJEYnFELEVONkZoRDtFQXBCRDtJS3hGSixXQ2VxRCxFTjJFaEQ7RUFJQztJTzdGSixtQkFBa0I7SUFDbEIsVUFIbUQsRVBpRzlDO0VBRUQ7SU9qR0osbUJBQWtCO0lBQ2xCLFdBSG1ELEVQcUc5QztFQU1IO0lPOUVKLHVCRGJxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosaUJDZXFELEVOMkVoRDtFQUlDO0lPN0ZKLG1CQUFrQjtJQUNsQixnQkFIbUQsRVBpRzlDO0VBRUQ7SU9qR0osbUJBQWtCO0lBQ2xCLGlCQUhtRCxFUHFHOUM7RUFNSDtJTzlFSixpQkRicUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJTzdGSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQaUc5QztFQUVEO0lPakdKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBxRzlDO0VBTUg7SU85RUosdUJEYnFELEVONkZoRDtFQXBCRDtJS3hGSixZQ2VxRCxFTjJFaEQ7RUFnQkQ7SU85RUosdUJEYnFELEVONkZoRDtFQUtEO0lRekdGLFlYK0V1RDtJVzlFdkQsWUFBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVgrQ3FELEVXOUN0RDtFUndFQztJUXpHRixZWCtFdUQ7SVc5RXZELFdBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYK0NxRCxFVzlDdEQ7RVJ3RUM7SVF6R0YsWVgrRXVEO0lXOUV2RCxpQkFBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVgrQ3FELEVXOUN0RDtFUndFQztJUXpHRixZWCtFdUQ7SVc5RXZELFdBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYK0NxRCxFVzlDdEQ7RVJ3RUM7SVF6R0YsWVgrRXVEO0lXOUV2RCxXQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWCtDcUQsRVc5Q3REO0VSd0VDO0lRekdGLFlYK0V1RDtJVzlFdkQsaUJBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYK0NxRCxFVzlDdEQ7RVJ3RUM7SVF6R0YsWVgrRXVEO0lXOUV2RCxpQkFBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVgrQ3FELEVXOUN0RDtFUndFQztJUXpHRixZWCtFdUQ7SVc5RXZELGFBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYK0NxRCxFVzlDdEQ7RVI4RUQ7SUcvR0EsaUJEdUVTO0lDdEVULGdCRHNFUyxFRnlDdUM7RUFEaEQ7SUFJSSxnQkFBZTtJQUNmLGVBQWMsRUFDZjtFQUdIO0lBQ0UsZ0JBQWU7SUFDZixlQUFjLEVBQ2Y7RUFFRDtJRzdIQSx5QkFGcUM7SUFHckMsd0JBSHFDLEVIZ0lvQjtFQUl6RDtJT2pJQSxtQkFBa0I7SUFDbEIsa0JBQWlCLEVQa0loQjtJT3ZJRDtNQUNFLFlBQVc7TUFDWCxZQUFXLEVBQ1o7RVB1SUQ7OztJTzVIRixpQkFBZ0I7SUFDaEIsWUFBVztJQUNYLGdCQUFlO0lBQ2YsZUFBYyxFUDZIWCxFQUFBOztBSU5DO0VKckRBO0lLeEZKLGdCQ2VxRCxFTjJFaEQ7RUFJQztJTzdGSixtQkFBa0I7SUFDbEIsZUFIbUQsRVBpRzlDO0VBRUQ7SU9qR0osbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUHFHOUM7RUFNSDtJTzlFSixnQkRoQmdDLEVOZ0czQjtFQXBCRDtJS3hGSixpQkNlcUQsRU4yRWhEO0VBSUM7SU83RkosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUGlHOUM7RUFFRDtJT2pHSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVQcUc5QztFQU1IO0lPOUVKLHNCRGJxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosV0NlcUQsRU4yRWhEO0VBSUM7SU83RkosbUJBQWtCO0lBQ2xCLFVBSG1ELEVQaUc5QztFQUVEO0lPakdKLG1CQUFrQjtJQUNsQixXQUhtRCxFUHFHOUM7RUFNSDtJTzlFSix1QkRicUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJTzdGSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQaUc5QztFQUVEO0lPakdKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBxRzlDO0VBTUg7SU85RUosaUJEYnFELEVONkZoRDtFQXBCRDtJS3hGSixpQkNlcUQsRU4yRWhEO0VBSUM7SU83RkosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUGlHOUM7RUFFRDtJT2pHSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVQcUc5QztFQU1IO0lPOUVKLHVCRGJxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosV0NlcUQsRU4yRWhEO0VBSUM7SU83RkosbUJBQWtCO0lBQ2xCLFVBSG1ELEVQaUc5QztFQUVEO0lPakdKLG1CQUFrQjtJQUNsQixXQUhtRCxFUHFHOUM7RUFNSDtJTzlFSix1QkRicUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJTzdGSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQaUc5QztFQUVEO0lPakdKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBxRzlDO0VBTUg7SU85RUosaUJEYnFELEVONkZoRDtFQXBCRDtJS3hGSixpQkNlcUQsRU4yRWhEO0VBSUM7SU83RkosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUGlHOUM7RUFFRDtJT2pHSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVQcUc5QztFQU1IO0lPOUVKLHVCRGJxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosV0NlcUQsRU4yRWhEO0VBSUM7SU83RkosbUJBQWtCO0lBQ2xCLFVBSG1ELEVQaUc5QztFQUVEO0lPakdKLG1CQUFrQjtJQUNsQixXQUhtRCxFUHFHOUM7RUFNSDtJTzlFSix1QkRicUQsRU42RmhEO0VBcEJEO0lLeEZKLGlCQ2VxRCxFTjJFaEQ7RUFJQztJTzdGSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVQaUc5QztFQUVEO0lPakdKLG1CQUFrQjtJQUNsQixpQkFIbUQsRVBxRzlDO0VBTUg7SU85RUosaUJEYnFELEVONkZoRDtFQXBCRDtJS3hGSixpQkNlcUQsRU4yRWhEO0VBSUM7SU83RkosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFUGlHOUM7RUFFRDtJT2pHSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVQcUc5QztFQU1IO0lPOUVKLHVCRGJxRCxFTjZGaEQ7RUFwQkQ7SUt4RkosWUNlcUQsRU4yRWhEO0VBZ0JEO0lPOUVKLHVCRGJxRCxFTjZGaEQ7RUFLRDtJUXpHRixZWCtFdUQ7SVc5RXZELFlBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYK0NxRCxFVzlDdEQ7RVJ3RUM7SVF6R0YsWVgrRXVEO0lXOUV2RCxXQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWCtDcUQsRVc5Q3REO0VSd0VDO0lRekdGLFlYK0V1RDtJVzlFdkQsaUJBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYK0NxRCxFVzlDdEQ7RVJ3RUM7SVF6R0YsWVgrRXVEO0lXOUV2RCxXQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWCtDcUQsRVc5Q3REO0VSd0VDO0lRekdGLFlYK0V1RDtJVzlFdkQsV0FBdUIsRUFpQ3hCO0lSdUVHO01RakZBLFlBQVcsRUFDWjtJUmdGQztNUTdFQSxZQUFXLEVBQ1o7SVI0RUM7TVF6RUEsWVgrQ3FELEVXOUN0RDtFUndFQztJUXpHRixZWCtFdUQ7SVc5RXZELGlCQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWCtDcUQsRVc5Q3REO0VSd0VDO0lRekdGLFlYK0V1RDtJVzlFdkQsaUJBQXVCLEVBaUN4QjtJUnVFRztNUWpGQSxZQUFXLEVBQ1o7SVJnRkM7TVE3RUEsWUFBVyxFQUNaO0lSNEVDO01RekVBLFlYK0NxRCxFVzlDdEQ7RVJ3RUM7SVF6R0YsWVgrRXVEO0lXOUV2RCxhQUF1QixFQWlDeEI7SVJ1RUc7TVFqRkEsWUFBVyxFQUNaO0lSZ0ZDO01RN0VBLFlBQVcsRUFDWjtJUjRFQztNUXpFQSxZWCtDcUQsRVc5Q3REO0VSOEVEO0lHL0dBLGlCRHVFUztJQ3RFVCxnQkRzRVMsRUZ5Q3VDO0VBRGhEO0lBSUksZ0JBQWU7SUFDZixlQUFjLEVBQ2Y7RUFHSDtJQUNFLGdCQUFlO0lBQ2YsZUFBYyxFQUNmO0VBRUQ7SUc3SEEseUJBRnFDO0lBR3JDLHdCQUhxQyxFSGdJb0I7RUFJekQ7SU9qSUEsbUJBQWtCO0lBQ2xCLGtCQUFpQixFUGtJaEI7SU92SUQ7TUFDRSxZQUFXO01BQ1gsWUFBVyxFQUNaO0VQdUlEOzs7SU81SEYsaUJBQWdCO0lBQ2hCLFlBQVc7SUFDWCxnQkFBZTtJQUNmLGVBQWMsRVA2SFgsRUFBQTs7QUFJSDtFRzFGRSx1QkRhcUQsRUYrRXREO0VHMUZDO0lBQ0UsaUJBQWdCLEVBQ2pCO0VDNEVDO0lKVUo7TUcxRkUsd0JEYXFELEVGK0V0RDtNRzFGQztRQUNFLGlCQUFnQixFQUNqQixFQUFBOztBTWdMSDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFtQkUsVUFBUztFQUNULFdBQVUsRUFDWDs7QUFHRDtFQUNFLG9CWHhJMEI7RVcwSTFCLG1CQUFrQjtFQUNsQixpQlg1SXNCO0VXNkl0QixtQ1gzSXlDLEVXNEkxQzs7QUFHRDs7RUFFRSxtQkFBa0I7RUFDbEIscUJBQW9CLEVBQ3JCOztBQUdEOztFQUVFLGlCWDNOb0I7RVc0TnBCLHFCQUFvQixFQUNyQjs7QWZnREM7RWU1Q0EsZVhsS2lCO0VXbUtqQixxQkFBb0IsRUFDckI7O0FBR0Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFNRSw4Q1h2TWlEO0VXd01qRCxtQlh0TXNCO0VXdU10QixpQlg5T29CO0VXK09wQixlWHRNa0I7RVd1TWxCLG1DWGxMc0MsRVd3THZDO0VBaEJEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBYUksZUFBYztJQUNkLGVYdlFlLEVXd1FoQjs7QWYzTkQ7RWV1T1EsbUJQdlA2QztFT21RN0MsZVhuT1M7RVcyT1QsY0FBYTtFQU9iLG9CUGxSNkMsRU9vUmhEOzs7QUFyR1A7Ozs7Ozs7Ozs7Ozs7O0VBd0VVLG9CUHZQNkM7RU9tUTdDLGVYbk9TO0VXMk9ULGNBQWE7RUFPYixvQlBsUjZDLEVPb1JoRDs7O0FBcEdQOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBdUVVLG1CUHZQNkM7RU9tUTdDLGVYbk9TO0VXMk9ULGNBQWE7RUFPYixvQlBsUjZDLEVPb1JoRDs7O0FBbkdQOzs7Ozs7Ozs7RUFzRVUsb0JQdlA2QztFT21RN0MsZVhuT1M7RVcyT1QsY0FBYTtFQU9iLG9CUGxSNkMsRU9vUmhEOzs7QUFsR1A7O0VBcUVVLGdCUHZQNkM7RU9tUTdDLGVYbk9TO0VXMk9ULGNBQWE7RUFPYixvQlBsUjZDLEVPb1JoRDs7QUFqQ0Q7RUFJSSxvQlB2UDZDO0VPbVE3QyxlWG5PUztFVzJPVCxjQUFhO0VBT2Isb0JQbFI2QyxFT29SaEQ7O0FMak5IO0VWbkRGO0lldU9RLG1CUHZQNkMsRU9vUmhEOztFQXJHUDs7Ozs7Ozs7Ozs7Ozs7SUF3RVUsa0JQdlA2QyxFT29SaEQ7O0VBcEdQOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBdUVVLG9CUHZQNkMsRU9vUmhEOztFQW5HUDs7Ozs7Ozs7O0lBc0VVLGtCUHZQNkMsRU9vUmhEOztFQWxHUDs7SUFxRVUsb0JQdlA2QyxFT29SaEQ7RUFqQ0Q7SUFJSSxtQlB2UDZDLEVPb1JoRCxFQUFBOztBZm5HTDtFZTBHQSxxQkFBb0I7RUFDcEIsZVh2VFc7RVd3VFgsc0JYM055QjtFVzZOekIsZ0JBQWUsRUFhaEI7RUFsQkQ7SUFTSSxlWGxPMkQsRVdzTzVEO0VBYkg7SUFnQkksVUFBUyxFQUNWOztBZnZLRDtFZTRLQSxZQUFXO0VBRVgsb0JQbFRxRDtFT21UckQsVUFBUztFQUNULHFCWDlPeUI7RVdnUHpCLGNBQWE7RUFDYixnQkFBZTtFQUNmLGlDWHJWaUI7RVdzVmpCLGVBQWMsRUFDZjs7QUFHRDs7O0VBR0Usb0JYeFEwQjtFV3lRMUIsNkJYdlB5QjtFV3dQekIsaUJYM1FzQixFVzRRdkI7O0FBR0Q7RUFDRSxtQkFBa0IsRUFDbkI7O0FBR0Q7RUFDRSxxQlhqUXNCO0VXa1F0QixzQlhwUWtCLEVXcVFuQjs7QUFHRDtFQUNFLHFCWHZRc0IsRVd3UXZCOztBQUdEO0VBRUkscUJYNVEyQjtFVzZRM0IsaUJBQWdCLEVBQ2pCOztBQUlIO0VBQ0Usb0JYbFJ5QixFV3dSMUI7RUFQRDtJQUlJLHNCWG5SOEI7SVdvUjlCLGlCWDdXa0IsRVc4V25COztBQUlIO0VBQ0UsaUJYalQwQjtFV2tUMUIsdUNQMVdxRDtFTzJXckQsK0JYeFlpQixFVzhZbEI7RUFURDtJQU1JLGlCWHZUb0I7SVd3VHBCLGVYM1lhLEVXNFlkOztBQUlIO0VBQ0UsZUFBYztFQUNkLHFCUHRYcUQ7RU91WHJELGVYblplLEVXd1poQjtFQVJEO0lBTUksY1hyUzZCLEVBQUE7O0FXMFNqQztFQUNFLGtDWDNaVztFVzRaWCxlWDVaVztFVzZaWCxhQUFZLEVBQ2I7O0FmN1FDO0VlaVJBLFVBQVMsRUFDVjs7QUFHRDtFQUNFLHNDUDVZcUQ7RU84WXJELDBCWDNhaUI7RVc0YWpCLDBCWDdhZ0I7RVcrYWhCLDZEWG5YbUU7RVdvWG5FLGlCWC9ac0I7RVdnYXRCLGVYOWFXLEVXK2FaOztBQUdEO0VBQ0UsVUFBUztFQUNULDRCUHBaUztFT3NaVCwwQlh6YmdCO0VXMmJoQiw2RFgvWG1FO0VXZ1luRSxlWHpiVyxFVzhiWjs7QUM1Y0Q7RUFDRSxtQlo2SXlCO0VZNUl6QixzQlo2STRCO0VZM0k1QixpQlp3QnNCO0VZdkJ0QixpQlpzSXNCO0VZckl0QixlWk9lLEVZTmhCOztBQUdEO0VBQ0UsZ0JaOEhxQztFWTdIckMsaUJaOEhpQixFWTdIbEI7O0FBR0Q7RUFDRSxrQlorSG1CO0VZOUhuQixlQUFjLEVBS2Y7RUFIQztJQUNFLGtCQUFpQixFQUNsQjs7QUFJSDtFQUNFLGVBQWdDO0VBQ2hDLGlCQUFnQixFQUNqQjs7QUM5RE87RUFDRSxpQkFSZSxFQVNoQjs7QUFGRDtFQUNFLGtCQVJzQixFQVN2Qjs7QUFGRDtFQUNFLG1CQVI4QixFQVMvQjs7QUFGRDtFQUNFLG9CQVJ1QyxFQVN4Qzs7QVAySUw7RU9sSkk7SUFDRSxpQkFIZSxFQUloQjtFQUZEO0lBQ0Usa0JBSHNCLEVBSXZCO0VBRkQ7SUFDRSxtQkFIOEIsRUFJL0I7RUFGRDtJQUNFLG9CQUh1QyxFQUl4QyxFQUFBOztBUGdKTDtFT2xKSTtJQUNFLGlCQUhlLEVBSWhCO0VBRkQ7SUFDRSxrQkFIc0IsRUFJdkI7RUFGRDtJQUNFLG1CQUg4QixFQUkvQjtFQUZEO0lBQ0Usb0JBSHVDLEVBSXhDLEVBQUE7O0FDRVQ7RUFBa0IseUJBQXdCLEVBQUk7O0FBRTlDO0VBQ0U7SUFFSSxtQ0FBa0M7SUFHcEMsNEJBQTJCO0lBRTNCLHdCQUF1QjtJQUN2Qiw2QkFBNEIsRUFDN0I7RUFaSDtJQWNvQiwwQkFBeUIsRUFBSTtFQUMvQztJQUFrQix5QkFBd0IsRUFBSTtFQUU5QztJQUF1QiwwQkFBeUIsRUFBSTtFQUNwRDtJQUF1Qix1Q0FBc0MsRUFBSTtFQUNqRTtJQUF1QixvQ0FBbUMsRUFBSTtFQUM5RDtJQUFvQiw4QkFBNkIsRUFBSTtFQUNyRDtJQUFvQiwrQkFBOEIsRUFBSTtFQUN0RDtJQUFvQiwrQkFBOEIsRUFBSTtFQUd0RDs7SUFDWSwyQkFBMEIsRUFBRztFQUV2QztJQUFnQiw2QkFBNEIsRUFBSTtFQUlsRDs7O0lBRXFCLFlBQVcsRUFBSTtFQUdwQztJQUFvQiw4QkFBNkIsRUFBSTtFQUdyRDs7SUFFRSwwQmRLYTtJY0piLHlCQUF3QixFQUN6QjtFQUdEO0lBQVEsNEJBQTJCLEVBQUk7RUFFdkM7O0lBQ00seUJBQXdCLEVBQUk7RWxCZ1ZsQztJa0I5VU0sMkJBQTBCLEVBQUk7RUFFcEM7SUFBUSxjQUFhLEVBQUE7RUFFckI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFHRSxXQUFVO0lBQ1YsVUFBUyxFQUNWOztFSDZMSDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lHekxPLHdCQUF1QixFQUFJLEVBQUE7O0FDc0psQztFQXZKQSxzQkFBcUI7RUFDckIsdUJBQXNCO0VBQ3RCLG1CZjZLa0M7RWU1S2xDLDBCWFF1RDtFV052RCx5QkFBd0I7RUFDeEIsOEJBQTZCO0VBQzdCLGlCZkplO0VlS2Ysa0Vmd0x1RTtFZXRMdkUsb0JYQ3VEO0VXQXZELGVBQWM7RUFDZCxtQkFBa0I7RUFDbEIsZ0JBQWU7RUFxQ2YsMEJmM0VnQjtFZTRFaEIsZWZsRWEsRWUrT1o7RXJCdWlERDtJT2xxREUsV0FBVSxFQUNYO0VjakREO0lBQ0UsMEJmNEh1RTtJZTNIdkUsZWZ0RVcsRWV1RVo7RUErRkQ7SUFNTSxrQmYwQk0sRWV6QlA7RUFQTDtJQU1NLGdCWGxKaUQsRVdtSmxEO0VBUEw7SUFNTSxtQmY2QlEsRWU1QlQ7RUFQTDtJQW5JRSxlQUFjO0lBQ2QsWUFBVztJQUNYLGdCQUFlO0lBQ2YsZUFBYyxFQTBJeUI7RUFWekM7SUFyR0EsMEJmM0VnQjtJZTRFaEIsZWZsRWEsRWV1TE47SUFuSFA7TUFDRSwwQkFQb0Y7TUFRcEYsZWZ0RVcsRWV1RVo7RUErRkQ7SUFyR0EsMEJmMUVrQjtJZTJFbEIsZWZsRWEsRWV1TE47SUFuSFA7TUFDRSx3QkFQb0Y7TUFRcEYsZWZ0RVcsRWV1RVo7RUErRkQ7SUFyR0EsMEJmekVnQjtJZTBFaEIsZWZuRWEsRWV3TE47SUFuSFA7TUFDRSwwQkFQb0Y7TUFRcEYsZWZ2RVcsRWV3RVo7RUErRkQ7SUFyR0EsMEJmeEVnQjtJZXlFaEIsZWZuRWEsRWV3TE47SUFuSFA7TUFDRSwwQkFQb0Y7TUFRcEYsZWZ2RVcsRWV3RVo7RUErRkQ7SUFyR0EsMEJmdkVjO0lld0VkLGVmbEVhLEVldUxOO0lBbkhQO01BQ0UsMEJBUG9GO01BUXBGLGVmdEVXLEVldUVaO0VBK0ZEO0lBOUVBLDBCZmxHZ0I7SWVtR2hCLGVmbkdnQixFZXlOWDtJQW5JTDtNQUVFLDhCQUE2QixFQUM5QjtJQVlEO01BQ0Usc0JBTjZEO01BTzdELGVBUDZELEVBUTlEO0lBd0VEO01BOUVBLDBCZmxHZ0I7TWVtR2hCLGVmbkdnQixFZXVOUDtNQWxIVDtRQUNFLHNCQU42RDtRQU83RCxlQVA2RCxFQVE5RDtJQXdFRDtNQTlFQSwwQmZqR2tCO01la0dsQixlZmxHa0IsRWVzTlQ7TUFsSFQ7UUFDRSxvQkFONkQ7UUFPN0QsYUFQNkQsRUFROUQ7SUF3RUQ7TUE5RUEsMEJmaEdnQjtNZWlHaEIsZWZqR2dCLEVlcU5QO01BbEhUO1FBQ0Usc0JBTjZEO1FBTzdELGVBUDZELEVBUTlEO0lBd0VEO01BOUVBLDBCZi9GZ0I7TWVnR2hCLGVmaEdnQixFZW9OUDtNQWxIVDtRQUNFLHNCQU42RDtRQU83RCxlQVA2RCxFQVE5RDtJQXdFRDtNQTlFQSwwQmY5RmM7TWUrRmQsZWYvRmMsRWVtTkw7TUFsSFQ7UUFDRSxzQkFONkQ7UUFPN0QsZUFQNkQsRUFROUQ7RUF3RUQ7SUExREEsY2ZnRzRCO0llL0Y1QixvQkFBbUIsRUErR2hCO0lBN0dIO01BQ0UsMEJmMUhjO01lMkhkLGVmakhXLEVla0haO0lBb0REO01BMURBLGNmZ0c0QjtNZS9GNUIsb0JBQW1CLEVBNkdaO01BM0dQO1FBQ0UsMEJmMUhjO1FlMkhkLGVmakhXLEVla0haO0lBb0REO01BMURBLGNmZ0c0QjtNZS9GNUIsb0JBQW1CLEVBNkdaO01BM0dQO1FBQ0UsMEJmekhnQjtRZTBIaEIsZWZqSFcsRWVrSFo7SUFvREQ7TUExREEsY2ZnRzRCO01lL0Y1QixvQkFBbUIsRUE2R1o7TUEzR1A7UUFDRSwwQmZ4SGM7UWV5SGQsZWZsSFcsRWVtSFo7SUFvREQ7TUExREEsY2ZnRzRCO01lL0Y1QixvQkFBbUIsRUE2R1o7TUEzR1A7UUFDRSwwQmZ2SGM7UWV3SGQsZWZsSFcsRWVtSFo7SUFvREQ7TUExREEsY2ZnRzRCO01lL0Y1QixvQkFBbUIsRUE2R1o7TUEzR1A7UUFDRSwwQmZ0SFk7UWV1SFosZWZqSFcsRWVrSFo7RUFZRDtJZDFLQSxlQUFjO0lBQ2QsU0FBUTtJQUNSLFVBQVM7SUFFVCxvQmNrS1k7SWRoS1osWUFBVztJQUdULHVCQUFzQjtJQUN0Qix3QkFBdUI7SUFDdkIsOENBQXFEO0ljaUtyRCxtQkFBa0I7SUFDbEIsV0FBVTtJQUVWLHNCQUFxQjtJQUNyQixhQUFPO0lBQ1Asc0JYM0dxRCxFVzRHdEQ7RUFnQ0Q7SUFxRUksWUFBVztJQUNYLFlBQVc7SUFDWCxlQUFnQyxFQUNqQzs7QXJCbXJETDs7RXNCaDVERSxlQUFjO0VBQ2QsdUJBQXNCO0VBQ3RCLFlBQVc7RUFDWCxpQkFMaUU7RUFNakUsaUJaS3VEO0VZSnZELGdCQUEwQjtFQUUxQiwwQmhCK1M4QjtFZ0I5UzlCLGlCaEJQZTtFZ0JRZiwwQmhCMUJhO0VnQjJCYixrRGhCNUJhO0VnQjhCYixxQmhCb1N5QjtFZ0JuU3pCLHFCWkp1RDtFWUt2RCxpQmhCbEJ3QjtFZ0JtQnhCLGVoQmpDYTtFZ0JvQ1gsNERoQnlTOEQ7RWdCcFI5RCx5QkFBZ0I7VUFBaEIsaUJBQWdCLEVBQ2pCO0V0QjAzREQ7O0lzQjM0REUsY0FBYTtJQUNiLDBCaEIzQ2U7SWdCNENmLDBCaEIxQ1c7SWdCMkNYLDRCaEI5Q2lCO0lnQmlEZiw0RGhCOFI0RCxFZ0I1Ui9EOztBcEI4ZEM7RW9CamRBLGdCQUFlLEVBS2hCO0VBTkQ7SUFJSSxhQUFZLEVBQ2I7O0FBR0g7O0VBSUksZWhCMUVhLEVnQjJFZDs7QUFMSDs7RUFJSSxlaEIxRWEsRWdCMkVkOztBQUxIOztFQUlJLGVoQjFFYSxFZ0IyRWQ7O0FBTEg7OztFQVVJLDBCaEI5RVM7RWdCK0VULG9CaEI0UDZCLEVnQjNQOUI7O0F0QjAzREw7O0VzQnAzREkseUJBQWdCO1VBQWhCLGlCQUFnQjtFQUNoQixpQmhCckVhLEVnQnNFZDs7QUFHRDtFQUNFLHVCQUFzQixFQUN2Qjs7QXRCcTNESDs7O0V1QnBnRUksaUJiNEVxRCxFYTNFdEQ7O0F2QndnRUg7O0V1Qm5nRUksc0JBQXFCO0VBQ3JCLHlCQUF3QjtFQUV4QixvQkFBa0Q7RUFDbEQsbUJia0VxRDtFYWpFckQsaUJBQWdCLEVBS2pCO0V2QmdnRUQ7O0l1QmxnRUksZ0JBQWUsRUFDaEI7O0FBSUg7O0VBRUUscUJBQW1ELEVBQ3BEOztBdkJrZ0VIO0V1QjkvREksWUFBVyxFQUNaOztBQ0dEO0VBakJBLGVBQWM7RUFDZCxVQUFTO0VBRVQsb0JkNER1RDtFYzNEdkQsaUJsQjhDd0I7RWtCN0N4QixpQmxCMlYwQjtFa0IxVjFCLGVsQjhCYSxFa0JiWjtFQU5EO0lBTEEsaUJkbUR1RDtJY2xEdkQscUJBQThELEVBUzNEOztBQzFCSDtFQUdFLG9CQUZ1QztFQUd2QyxxQmYrRHFEO0VlOURyRCxtQm5CdVZ3QjtFbUJ0VnhCLGVuQmtDVyxFbUJqQ1o7O0FDRkQ7RUFDRSxlQUF3QztFQUN4QyxZQUFXO0VBQ1gsb0JoQjJEcUQsRWdCNUN0RDtFQWxCRDtJQVVJLHVCcEI0Q1csRW9CM0NaO0VBWEg7SUFlTSx1QkFBaUgsRUFDbEg7O0FBSUw7Ozs7RUFDRSxVQUFTO0VBQ1Qsb0JBQW1CO0VBR2pCLG9CQUFtQjtFQUNuQix1QkFBc0IsRUFFekI7O0FBRUQ7RUFFRSxnQnBCMlR1QjtFb0IxVHZCLDBCcEJ5VG1DO0VvQnhUbkMsb0JwQkZnQjtFb0JJaEIsZXBCRFc7RW9CRVgsbUJBQWtCO0VBQ2xCLG9CQUFtQjtFQVFqQixVQUFTO0VBQ1QsYUFBWSxFQVlmO0VBN0JEO0lBc0JNLGdCQUFpQyxFQUNsQztFQXZCTDtJQTBCTSxlQUFnQyxFQUNqQzs7QUFJTDtFQUVFLGlCQUFnQjtFQVFkLGtCQXpFNkMsRUEyRWhEOztBQUVEO0VBRUUsZUFBYztFQUNkLGtCQUFpQjtFQUNqQixtQkFBa0I7RUFNaEIsVUFBUztFQUNULGFBQVksRUFjZjtFQXpCRDs7OztJQW1CSSxrQkFoRzZDO0lBaUc3QyxlQUFjO0lBQ2Qsa0JBQWlCO0lBRWpCLHFCaEJwQ21ELEVnQnFDcEQ7O0FBS0M7RUFDSSxvQkFBbUIsRUFDdEI7O0F4Qm9hSDtFeUJoZ0JBLFVBQVM7RUFDVCxXQUFVO0VBQ1YsVUFBUyxFQUNWOztBekIwZ0JDO0V5QnZnQkEsZ0JBQWU7RUFDZixzQkFBa0MsRUFDbkM7O0FBRUQ7RUF6QkEsbUJqQm9FVztFaUJuRVgsaUJqQjhEdUQ7RWlCN0R2RCwwQnJCK1VpQyxFcUJ0VGhDO0VBdkJEO0lBRUUsVUFBUztJQUNULHdCakJ3RHFEO0lpQnZEckQscUJqQnVEcUQ7SWlCdERyRCxvQnJCaUNxQixFcUJoQ3RCOztBdEJxSUQ7RXVCakpBLGlCQUZpRTtFQUdqRSxpQmxCZ0V1RDtFa0IvRHZELGdCQUE0QjtFQUU1Qix5QkFBZ0I7VUFBaEIsaUJBQWdCO0VBQ2hCLDBCdEJ5VzhCO0VzQnhXOUIsaUJ0Qm1EZTtFc0JsRGYsMEJ0QmdDYTtFc0I5QmIscUJ0QitWeUI7RXNCOVZ6QixxQmxCdUR1RDtFa0J0RHZELG9CQUFtQjtFQUNuQixldEIwQmE7RUNpRWIsc09BQXlOO0VxQnZGdk4sK0JBQThCO0VBQzlCLHdDQUEwRDtFQUMxRCw2QkFBNEI7RUFDNUIseUJBQXdCO0VBRXhCLHNCQUF1RDtFQUl2RCw0RHRCMFY4RCxFc0J2VC9EO0VyQjZDRDtJRndDQTtNRXJDSSx3V0FBdVcsRXFCaEQxVyxFQUFBO0VBL0JEO0lBQ0UsY0FBYTtJQUNiLDBCdEJNZTtJc0JMZiwwQnRCT1c7SXNCTlgsNEJ0QkdpQjtJc0JBZiw0RHRCK1U0RCxFc0I3VS9EO0VBR0Q7SUFDRSwwQnRCSFc7SXNCSVgsb0J0QnVVK0IsRXNCdFVoQztFQUdEO0lBQ0UsY0FBYSxFQUNkO0VBRUQ7SUFDRSxhQUFZO0lBQ1osdUJBQXNCLEVBQ3ZCOztBQ2pDRDtFQUNFLHNCdkJXWTtFdUJWWiwwQkFBK0QsRUFJaEU7RUFIQztJQUNFLGV2QlFVLEV1QlBYO0VBRkQ7SUFDRSxldkJRVSxFdUJQWDtFQUZEO0lBQ0UsZXZCUVUsRXVCUFg7O0FBeUJEO0VBQ0UsZXZCbkJVLEV1Qm9CWDs7QUFJSDtFQXpCQSxjQUFhO0VBQ2Isb0JBQWdDO0VBQ2hDLG9CbkIrQnVEO0VtQjdCdkQsbUJuQjZCdUQ7RW1CNUJ2RCxpQnZCa0JzQjtFdUJqQnRCLGV2QkxjLEV1QjhCYjtFQU5EO0lBSUksZUFBYyxFQUNmOztBQ2lESDtFQWxGQSxlQUFnQztFQUNoQyxvQnhCMEo0QjtFd0J6SjVCLHNCQUFxQixFQWtGcEI7O0FBN0VEO0VBQ0UsdUJBQWdELEVBQ2pEOztBQUVEO0VBQ0UsdUJ4QmdCYSxFd0JmZDs7QUE2RUQ7RUFsRUEsbUJBQWtCO0VBQ2xCLGVBQWM7RUFDZCxzQnhCc0ltQztFd0JwSW5DLGF4QnNJNkI7RXdCckk3QixpQkFBZ0I7RUFFaEIsb0JwQkt1RDtFb0JKdkQsZUFBYztFQUNkLGV4QmpDZ0IsRXdCNEZmO0VBekREO0lBQ0Usb0J4QjhIMkI7SXdCN0gzQix1QnhCVGEsRXdCVWQ7RUFFRDtJQUVFLDBCeEJwQ2dCLEV3QnFDakI7RUFHQztJQUNFLG1CQUFrQjtJQUNsQixTQUFRO0lBQ1IsWUFBc0I7SUFDdEIsb0JBQW1CO0lBQ25CLGFBQVksRUFDYjtFQUVEO0lBQ0UsaUJBQWdCLEVBQ2pCOztBQXNDSDtFQTNCQSxjQUFhO0VBQ2IsY3hCZ0c4QjtFd0I5RjlCLGF4QjRGNkI7RXdCM0Y3QixpQkFBZ0I7RUFDaEIsMEJ4QnlGb0M7RXdCdkZwQyxleEJqRWEsRXdCdUZaO0VBcEJEO0lBQ0Usb0J4QnFGMkIsRXdCcEY1Qjs7QUMxQ0Q7RUE3Q0EsbUJ6Qm9NdUM7RXlCbk12QyxpQkFBZ0IsRUFtRGY7RXhCa0REO0lBRUUsZUFBYztJQUNkLGFBQVksRUFNYjtFQUVEO0lBQ0UsWUFBVyxFQUNaO0V3Qi9HRDtJQUNFLFlBQU87SUFFUCxxQnJCc0NxRDtJcUJyQ3JELGV6QlVXO0l5QlRYLGdCQUFlO0lBR2IsMEJBQXlCLEVBb0I1QjtJQWJHO01BQ0UsbUJBQWtCO01BQ2xCLFNBQVE7TUFDUixrQnpCbUx5QjtNeUJqTHpCLFdBQVU7TUFDVixhQVI2QztNQVM3QyxlekJWYSxFeUJXZDtFQVFMO0lBQ0UsZXpCM0JjLEV5QmdDZjtJQUhDO01BQ0UsMkJBQTBCLEVBQzNCO0VBS0g7SUFJSSxlekJqQ2U7SXlCa0NmLG9CQUFtQixFQUNwQjs7QUNOSDtFQTFDQSxtQkFBa0I7RUFDbEIsbUIxQitPeUI7RTBCOU96QixjMUIrT29CO0UwQjdPcEIseUMxQldhO0UwQlZiLGlCMUI2QmU7RTBCWmYsd0JBRnNFO0VBR3RFLGUxQlJhLEUwQjJDWjtFQWxERDtJQUNFLGNBQWEsRUFDZDtFQUVEO0lBQ0UsaUJBQWdCLEVBQ2pCO0VBNEJEO0lBcEJBLDBCQUZzRTtJQUd0RSxlMUJSYSxFMEJpQ1I7RUFOTDtJQXBCQSwwQkFGc0U7SUFHdEUsZTFCUmEsRTBCaUNSO0VBTkw7SUFwQkEsMEJBRnNFO0lBR3RFLGUxQlJhLEUwQmlDUjtFQU5MO0lBcEJBLDBCQUZzRTtJQUd0RSxlMUJSYSxFMEJpQ1I7RUFOTDtJQXBCQSwwQkFGc0U7SUFHdEUsZTFCUmEsRTBCaUNSO0VBTkw7SUFmQSxvQkF5QmdDO0lBeEJoQyxzQkF3QmdDO0lBdkJoQyx1QkF1QmdDO0lBdEJoQyxxQkFzQmdDLEVBQzdCO0VBWEg7SUFmQSxrQkE2QjhCO0lBNUI5QixvQkE0QjhCO0lBM0I5QixxQkEyQjhCO0lBMUI5QixtQkEwQjhCLEVBQzNCOztBQ01IO0VBakRBLG9CM0JZa0I7RTJCVmxCLDBCM0JKa0I7RTJCS2xCLGlCM0JpQmU7RTJCZmYsb0IzQkhhO0UyQkliLGlCM0IwT2dCO0UyQnhPaEIsaUJBQWdCO0VBQ2hCLGUzQlJhLEUyQmtEWjtFQXhDRDtJQUNFLGlCQUFnQixFQUNqQjs7QUF3Q0Q7RUE1QkEsYzNCWm1CO0UyQmFuQixvQjNCNUJrQixFMkJ5RGpCO0VBM0JEO0lBQ0UsaUJBQWdCLEVBQ2pCOztBQTJCRDtFQWhCQSxjM0I1Qm1CLEUyQjhDbEI7RUFoQkQ7SUFDRSxpQkFBZ0IsRUFDakI7O0FDVkQ7RUFYQSxtQkFBa0I7RUFDbEIsZTVCekJpQjtFNEIwQmpCLGdCQUFlLEVBY2Q7RWxDOHRFRDtJT2hwRUUsV0FBVSxFQUNYO0UyQjNGRDtJQUVFLGU1QjdCVyxFNEI4Qlo7RUFJRDtJQXZCQSxlNUI4T2M7STRCN09kLFk1QmlQYTtJNEJoUGIsaUI1Qm9QWTtJNEJuUFosZTVCc1B3QixFNEIvTndCO0VBSGhEO0lBdkJBLFk1QitPWTtJNEI5T1osWTVCa1BjO0k0QmpQZCxlNUJxUFc7STRCcFBYLGU1QnNQd0IsRTRCOU42Qjs7QUM2SnJEO0VBdE5BLFU3QjBYYTtFNkJ6WGIsc0JBQXFCLEVBbVRwQjtFQXpTRDtJQU9JLG9CQUFtQjtJQUNuQix1QkFBc0IsRUFFekI7SW5Dd3hFQztNT3JxRUEsV0FBVSxFQUNYO0U0QmpIRDtJQUNFLGVBQWM7SUFDZCxxQjdCa1cyQjtJNkJqVzNCLGVBQWMsRUFDZjtFQUdEOzs7O0lBSUUsaUJBQWdCLEVBQ2pCO0VBK0dLOzs7SUFHRSx1QkFBc0IsRUFLdkI7SUFIQzs7O01BQ0UsdUJBQXNCLEVBQ3ZCO0VBUEg7OztJQXNCQSxzQjdCc05tQjtJNkJuTmpCLHNCQUFxQixFQUV4QjtFQXpHRDtJQUNFLG9CQUFtQixFQUNwQjtFQStJTDtJQXZLRSxlQUFjO0lBQ2QsWUFBVztJQUNYLG9CQUFtQixFQWlMbEI7SUE5S0g7TUFDRSxZQUFXLEVBQ1o7RUFtQ0c7SUFDRSxlQUFjLEVBQ2Y7RXZCc0JEO0l1QjVDQTtNQUNFLG9CQUFtQixFQUNwQjtJQStJTDtNQXZLRSxlQUFjO01BQ2QsWUFBVztNQUNYLG9CQUFtQixFQStMaEI7TUE1TEw7UUFDRSxZQUFXLEVBQ1o7SUFtQ0c7TUFDRSxlQUFjLEVBQ2YsRUFBQTtFdkJzQkQ7SXVCNUNBO01BQ0Usb0JBQW1CLEVBQ3BCO0lBK0lMO01BdktFLGVBQWM7TUFDZCxZQUFXO01BQ1gsb0JBQW1CLEVBK0xoQjtNQTVMTDtRQUNFLFlBQVcsRUFDWjtJQW1DRztNQUNFLGVBQWMsRUFDZixFQUFBO0VBV0w7SUFDRSxzQkFBcUI7SUFDckIsb0JBQW1CO0lBQ25CLGVBQWMsRUFDZjtFQUVEO0lBQ0UsV0FBVSxFQUNYO0VBUkQ7SUFzQkUsZUFBa0M7SUFDbEMsbUI3QitQMkIsRTZCOVA1QjtFQUhEO0lBQ0UsZ0JBQWtDO0lBQ2xDLGtCN0IrUDJCLEU2QjlQNUI7RTVCdkJEO0lBRUUsZUFBYztJQUNkLGFBQVksRUFNYjtFQUVEO0lBQ0UsWUFBVyxFQUNaO0U0QmtHRDtJQW1EUSxhOUI3TWtELEU4QjhNbkQ7RUF4Rkw7SUFLSSxtQkFBa0IsRUFnQnJCO0lBYkM7OztNQUlJLGVBQWM7TUFDZCx1QjdCZ01pQixFNkJ6THBCO0VBZ0JMO0lBOERRLGFBQVksRUFDYjtFQS9EUDtJQWxGQSxrQjdCdVB1QixFNkIvRnBCO0VBdEVIO0lBMEVJLG9CN0J0Ulk7STZCdVJaLGU3QjdRUyxFNkI4UVY7RUE1RUg7SUFpRk0sMEI3QnZSWSxFNkIyUmI7SUFyRkw7TUFtRlEsY0FBYSxFQUNkO0VBcEZQO0lBMkZNLDBCN0JqU1ksRTZCa1NiOztBQUlMO0VBMUdBLGVBQWM7RUFDZCxrQkFBaUI7RUFDakIscUI3QjhLNkI7RTZCNUs3QixrQkFBaUI7RUFDakIsZUFBYztFQUNkLGVBQWMsRUFzR2I7O0FBR0Q7RUFDRSxtQkFBa0IsRUFNbkI7RUFQRDtJQUlJLHNCQUFxQjtJQUNyQixvQkFBbUIsRUFDcEI7O0FBSUg7RUFDRSxjQUFhLEVBQ2Q7O0FDaFhEO0U3QmdGQSxtQkFBa0I7RUFDbEIsc0JBQXFCO0VBQ3JCLHVCQUFzQjtFQUN0QixZQXpCWTtFQTBCWixhQXpCYTtFQTBCYixnQkFBZSxFNkJuRmQ7RTdCc0ZEO0lBQ0UsbUJBQWtCO0lBQ2xCLE9BQU07SUFDTixRQUFPO0lBRVAsZUFBYztJQUNkLFlBQVc7SUFDWCxZQW5DVTtJQXFDVixvQkRwQ1c7SUNxQ1gsOENEckNXO0lDdUNYLFlBQVcsRUFDWjtFQVVDO0lBQ0Usb0JEdERlO0lDdURmLDhDRHZEZSxFQ3dEaEI7O0E2QjlHSDtFN0I0RUEsbUJBQWtCO0VBQ2xCLHNCQUFxQjtFQUNyQix1QkFBc0I7RUFDdEIsWUF6Qlk7RUEwQlosYUF6QmE7RUEwQmIsZ0JBQWUsRTZCL0VkO0U3QmtGRDtJQUNFLG1CQUFrQjtJQUNsQixPQUFNO0lBQ04sUUFBTztJQUVQLGVBQWM7SUFDZCxZQUFXO0lBQ1gsWUFuQ1U7SUFxQ1Ysb0JEckNXO0lDc0NYLDhDRHRDVztJQ3dDWCxZQUFXLEVBQ1o7RUFVQztJQUNFLG9CRHJEYTtJQ3NEYiw4Q0R0RGEsRUN1RGQ7O0E4QnJGSDtFQUNFLG1CQUFrQjtFQUNsQixpQkFBZ0IsRUFTakI7RUFYRDtJQUtJLGVBQWMsRUFDZjtFQU5IO0lBU0ksd0JBQXVCLEVBQ3hCOztBQUlIO0VBQ0UsbUJBQWtCO0VBQ2xCLE9BQU07RUFDTixXQUFxQjtFQUNyQixZQUFXO0VBRVgsWUFBVztFQUNYLG9CL0JnQnFCO0UrQmZyQiwyQy9Cb1J5QztFK0JwUnpDLG1DL0JvUnlDO0UrQnBSekMsbUUvQm9SeUMsRStCelExQztFQW5CRDtJQVdJLFdBQVU7SUFDVixlQUFjO0lBQ2QscUNBQXFFO1FBQXJFLGlDQUFxRTtZQUFyRSw2QkFBcUUsRUFDdEU7RUFkSDtJQWlCSSxvQ0FBcUU7UUFBckUsZ0NBQXFFO1lBQXJFLDRCQUFxRSxFQUN0RTs7QUFHSDtFQUNFLGlCQUFnQixFQUNqQjs7QUFHQztFQUNFLG1CQUFrQixFQVNuQjtFQVZEO0k5QnBERixlQUFjO0lBQ2QsU0FBUTtJQUNSLFVBQVM7SUFFVCxrQkRxVHdCO0lDblR4QixZQUFXO0lBYVQsc0JBQXFCO0lBQ3JCLHlCQUF3QjtJQUN4QiwwRERhYztJK0J1QlYsbUJBQWtCO0lBQ2xCLFNBQVE7SUFDUixpQkFBc0M7SUFDdEMsWUFBc0IsRUFDdkI7O0FBR0g7RTlCaEVGLGVBQWM7RUFDZCxTQUFRO0VBQ1IsVUFBUztFQUVULGtCRHFUd0I7RUNuVHhCLFlBQVc7RUFrQlQscUJBQW9CO0VBQ3BCLDBCQUF5QjtFQUN6QiwwREFBaUU7RThCd0MvRCxxQkFBNEM7RUFDNUMsc0JBQXFCO0VBQ3JCLHVCQUFzQjtFQUN0QixzQkFBdUM7RUFFdkMscUJBQTRDLEVBQzdDOztBQzVCSDtFQXBCQSxtQkFBa0I7RUFDbEIsWUFBVztFQUVYLGVBQWM7RUFDZCxhaEN1U29CO0VnQ3RTcEIsY2hDa1NxQjtFZ0NoU3JCLG1CQUFrQjtFQUNsQixhaENpU29CO0VnQ2hTcEIsaUJoQ21TaUI7RWdDbFNqQiwwQmhDQWdCO0VnQ0VoQixnQmhDOFJ1QixFZ0NwUnRCO0VBUkQ7SUFDRSxvQkFBbUIsRUFDcEI7O0FBU0M7RUFDRSxhaENvUk8sRWdDblJSOztBQUZEO0VBQ0UsYWhDcVJRLEVnQ3BSVDs7QUFGRDtFQUNFLGFoQ3NSUSxFZ0NyUlQ7O0FDZkM7RUFDRSxVQUFTO0VBQ1QsU0FBUTtFQUNSLFdBQVUsRUFDWDs7QUFJRDtFQUNFLFVBQVM7RUFDVCxZQUFXO0VBQ1gsUUFBTyxFQUNSOztBQUlEO0VBQ0UsbUJBQWtCO0VBQ2xCLHNCQUF3QyxFQUN6Qzs7QUFFRDtFaEN6REosZUFBYztFQUNkLFNBQVE7RUFDUixVQUFTO0VBRVQsa0JENFUyQjtFQzFVM0IsWUFBVztFQUdULHVCQUFzQjtFQUN0Qix3QkFBdUI7RUFDdkIsOENBQXFEO0VnQ2dEakQsV0FBcUI7RUFDckIsaUJBQStDLEVBQ2hEOztBdkM2Z0ZQO0VPMTZFSSxXQUFVLEVBQ1g7O0FnQzNEQztFQUNFLGNBQWEsRUFDZDs7QUF0Q0M7RUFDRSxPQUFNLEVBQ1A7O0FBR0M7RUFDRSxZQUFXO0VBQ1gsV0FBVSxFQUNYOztBQUlEO0VBQ0UsWUFBVztFQUNYLFdBQVUsRUFDWDs7QUE3RFA7RUFDRSxZQUFzQixFQUN2Qjs7QUFFRDtFaEN4QkEsZUFBYztFQUNkLFNBQVE7RUFDUixVQUFTO0VBRVQsa0JENFUyQjtFQzFVM0IsWUFBVztFQWtCVCxxQkFBb0I7RUFDcEIsMEJBQXlCO0VBQ3pCLDBEQUFpRSxFZ0NBbEU7O0FBRUQ7RWhDNUJBLGVBQWM7RUFDZCxTQUFRO0VBQ1IsVUFBUztFQUVULGtCRDRVMkI7RUMxVTNCLFlBQVc7RUFhVCxzQkFBcUI7RUFDckIseUJBQXdCO0VBQ3hCLDBERHNCVyxFaUNiWjs7QTNCMkdHO0UyQnJHQTtJQUNFLFVBQVM7SUFDVCxTQUFRO0lBQ1IsV0FBVSxFQUNYO0VBSUQ7SUFDRSxVQUFTO0lBQ1QsWUFBVztJQUNYLFFBQU8sRUFDUjtFQUlEO0lBQ0UsbUJBQWtCO0lBQ2xCLHNCQUF3QyxFQUN6QztFQUVEO0loQ3pESixlQUFjO0lBQ2QsU0FBUTtJQUNSLFVBQVM7SUFFVCxrQkQ0VTJCO0lDMVUzQixZQUFXO0lBR1QsdUJBQXNCO0lBQ3RCLHdCQUF1QjtJQUN2Qiw4Q0FBcUQ7SWdDZ0RqRCxXQUFxQjtJQUNyQixpQkFBK0MsRUFDaEQ7RUFLRDtJQUNFLE9BQU0sRUFDUDtFQUdDO0lBQ0UsWUFBVztJQUNYLFdBQVUsRUFDWDtFQUlEO0lBQ0UsWUFBVztJQUNYLFdBQVUsRUFDWDtFQTdEUDtJQUNFLFlBQXNCLEVBQ3ZCO0VBRUQ7SWhDeEJBLGVBQWM7SUFDZCxTQUFRO0lBQ1IsVUFBUztJQUVULGtCRDRVMkI7SUMxVTNCLFlBQVc7SUFrQlQscUJBQW9CO0lBQ3BCLDBCQUF5QjtJQUN6QiwwREFBaUUsRWdDQWxFO0VBRUQ7SWhDNUJBLGVBQWM7SUFDZCxTQUFRO0lBQ1IsVUFBUztJQUVULGtCRDRVMkI7SUMxVTNCLFlBQVc7SUFhVCxzQkFBcUI7SUFDckIseUJBQXdCO0lBQ3hCLDBERHNCVyxFaUNiWixFQUFBOztBM0IyR0c7RTJCckdBO0lBQ0UsVUFBUztJQUNULFNBQVE7SUFDUixXQUFVLEVBQ1g7RUFJRDtJQUNFLFVBQVM7SUFDVCxZQUFXO0lBQ1gsUUFBTyxFQUNSO0VBSUQ7SUFDRSxtQkFBa0I7SUFDbEIsc0JBQXdDLEVBQ3pDO0VBRUQ7SWhDekRKLGVBQWM7SUFDZCxTQUFRO0lBQ1IsVUFBUztJQUVULGtCRDRVMkI7SUMxVTNCLFlBQVc7SUFHVCx1QkFBc0I7SUFDdEIsd0JBQXVCO0lBQ3ZCLDhDQUFxRDtJZ0NnRGpELFdBQXFCO0lBQ3JCLGlCQUErQyxFQUNoRDtFQUtEO0lBQ0UsT0FBTSxFQUNQO0VBR0M7SUFDRSxZQUFXO0lBQ1gsV0FBVSxFQUNYO0VBSUQ7SUFDRSxZQUFXO0lBQ1gsV0FBVSxFQUNYO0VBN0RQO0lBQ0UsWUFBc0IsRUFDdkI7RUFFRDtJaEN4QkEsZUFBYztJQUNkLFNBQVE7SUFDUixVQUFTO0lBRVQsa0JENFUyQjtJQzFVM0IsWUFBVztJQWtCVCxxQkFBb0I7SUFDcEIsMEJBQXlCO0lBQ3pCLDBEQUFpRSxFZ0NBbEU7RUFFRDtJaEM1QkEsZUFBYztJQUNkLFNBQVE7SUFDUixVQUFTO0lBRVQsa0JENFUyQjtJQzFVM0IsWUFBVztJQWFULHNCQUFxQjtJQUNyQix5QkFBd0I7SUFDeEIsMEREc0JXLEVpQ2JaLEVBQUE7O0FBaUVEO0VBK0JNLFVBQVM7RUFDVCxTQUFRO0VBQ1IsV0FBVSxFQUNYOztBQUlMO0VBQ0UsYUFBWSxFQUtiO0VBTkQ7SUFJSSxhQUFZLEVBQ2I7O0FBR0g7RUFDRSxtQkFBa0IsRUE2Qm5CO0VBOUJEO0lBSUksbUJBQWtCO0lBQ2xCLFNBQVE7SUFDUixXQUFxQjtJQUNyQixpQkFBeUMsRUFDMUM7RUFSSDtJQVlJLFVBQVM7SUFLUCxXQUFVLEVBRWI7RUFuQkg7SUFzQkksWUFBVztJQUNYLFdBQVUsRUFDWDtFQXhCSDtJQTJCSSxZQUFXO0lBQ1gsV0FBVSxFQUNYOztBQUdIO0VBQ0UsbUJBQWtCO0VBQ2xCLE9BQU07RUFDTixXQUFxQjtFQUNyQixXQUFVO0VBRVYsY0FBYTtFQUNiLGlCakM2SjBCO0VpQzNKMUIsMEJqQzdJaUI7RWlDOElqQixvQmpDckpjLEVpQzRLZjtFQTFMRDtJQUNFLFlBQXNCLEVBQ3ZCO0VBRUQ7SWhDeEJBLGVBQWM7SUFDZCxTQUFRO0lBQ1IsVUFBUztJQUVULGtCRDRVMkI7SUMxVTNCLFlBQVc7SUFrQlQscUJBQW9CO0lBQ3BCLDBCQUF5QjtJQUN6QiwwREFBaUUsRWdDQWxFO0VBRUQ7SWhDNUJBLGVBQWM7SUFDZCxTQUFRO0lBQ1IsVUFBUztJQUVULGtCRDRVMkI7SUMxVTNCLFlBQVc7SUFhVCxzQkFBcUI7SUFDckIseUJBQXdCO0lBQ3hCLDBERHNCVyxFaUNiWjtFQStJRDtJQW9CTSxpQmpDa0ppQixFaUNqSmxCO0VBckJMO0lBeUJJLFlBQVcsRUFDWjtFQTFCSDtJQStCSSxlQUFjLEVBQ2Y7O0FDbkxIOztFQW5CQSxtQkFBa0I7RUFDbEIsVUFBUztFQUNULG9COUI2RHVEO0U4QjVEdkQsb0JDMENzQjtFRHpDdEIsaUJBQWdCLEVBMEJmO0VBeEJEOzs7Ozs7OztJQUlFLG1CQUFrQjtJQUNsQixPQUFNO0lBQ04sUUFBa0I7SUFDbEIsWUFBVztJQUNYLGFBQVksRUFDYjtFQUlEOztJQVFNLHVCQ2tCZ0IsRURqQmpCOztBRUhMO0VBWkEsc0JBQXFCO0VBQ3JCLDJCcENnWCtCO0VvQzlXL0IsaUJwQ3VDZTtFb0NyQ2Ysa0JwQzJXc0I7RW9DMVd0QixlQUFjO0VBQ2Qsb0JBQW1CO0VBQ25CLGdCQUFlO0VBT2Isb0JwQ0RjO0VvQ0VkLGVwQ1FXLEVvQ0FaO0VBWkQ7SUFRTSxvQnBDTlU7SW9DT1YsZXBDR08sRW9DRlI7RUFWTDtJQVFNLG9CcENMWTtJb0NNWixlcENHTyxFb0NGUjtFQVZMO0lBUU0sb0JwQ0pVO0lvQ0tWLGVwQ0VPLEVvQ0RSO0VBVkw7SUFRTSxvQnBDSFU7SW9DSVYsZXBDRU8sRW9DRFI7RUFWTDtJQVFNLG9CcENGUTtJb0NHUixlcENHTyxFb0NGUjs7QUNhTDtFQW5EQSxlQUF3QztFQUN4QyxvQnJDaURrQixFcUNxQmpCO0VBcEJEO0lBSUksZ0JBQWUsRUFDaEI7RS9Ca0ZDO0krQnZGSjtNQWpCQSxXQUFVO01BQ1YscUJyQ2dCbUI7TXFDVGpCLGVBQWMsRUE0QmI7TUF6Qkg7UUFDRSxZckMyVmtDLEVxQzFWbkMsRUFBQTs7QUEwQkQ7RUExREUsb0JBQW1CO0VBQ25CLG9CQUFtQixFQTBFcEI7RUF2RUQ7SUFDRSxvQnJDK0JpQixFcUM5QmxCO0VBRUQ7SUFDRSxtQnJDMkJpQixFcUMxQmxCO0VBRUQ7SUFDRSxpQkFBZ0IsRUFDakI7RUE0Q0Q7SUFVTSx1QkFBc0IsRUFDdkI7RUFYTDtJQWNNLHVCQUFzQixFQUN2Qjs7QUNtREw7RUFuRkEsZUFBZ0M7RUFDaEMsb0J0Q1BrQixFc0N1R2pCO0VyQzlCRDtJQUVFLGVBQWM7SUFDZCxhQUFZLEVBTWI7RUFFRDtJQUNFLFlBQVcsRUFDWjtFcUM1RUQ7SUFDRSx3QmxDS3FEO0lrQ0pyRCxpQnRDSmE7SXNDS2Isb0JsQ0dxRDtJa0NHbkQsY0FBYSxFQWlCaEI7SUFmRztNQUVFLHNCQUFxQixFQUN0QjtJaEMyREQ7TWdDekVKO1FBdUJNLHNCQUFxQixFQUcxQixFQUFBO0VBR0Q7O0lBRUUsZUFBYztJQUNkLDRCbEMxQnFEO0lrQzJCckQsaUJ0Q25DYTtJc0NvQ2IsZXRDdkRXLEVzQzREWjtJQUhDOztNQUNFLG9CdEM3RGMsRXNDOERmO0VBeUNIO0lBL0JBLDRCbEMxQ3VEO0lrQzJDdkQsb0J0Qy9FZ0I7SXNDZ0ZoQixldEN0RWE7SXNDdUViLGdCQUFlLEVBaUNaO0VBTEg7SUFwQkEsNEJsQ3JEdUQ7SWtDc0R2RCxldENuRm1CO0lzQ29GbkIsb0JBQW1CLEVBMkJoQjtJQXpCSDtNQUNFLHdCQUF1QixFQUN4QjtFQWNEO0lBTkEsNEJsQ25FdUQ7SWtDb0V2RCxpQkFBZ0I7SUFDaEIsZXRDaEdhLEVzQ2lIVjs7QUFJRDs7RUFFRSxzQkFBcUI7RUFDckIscUJBQXNDO0VBQ3RDLGlCQUFnQixFQUNqQjs7QUFFRDs7RUFFRSxzQkFBcUI7RUFDckIsb0JBQXFDO0VBQ3JDLGlCQUFnQixFQUNqQjs7QUN6RUg7RUFDRSxpQkFBZ0IsRUFDakI7O0FBR0Q7O0VBRUUsaUJBQWdCO0VBQ2hCLGlCQUFnQjtFQUNoQiwwQkFBaUI7TUFBakIsc0JBQWlCO1VBQWpCLGtCQUFpQixFQUNsQjs7QUFHRDtFQXZGQSxnQkFBZTtFQUNmLE9BQU07RUFDTixTQUFRO0VBQ1IsVUFBUztFQUNULFFBQU87RUFDUCxjdkNtZGtCO0V1Q2pkbEIsY0FBYTtFQUNiLHlDdkNVYTtFdUNUYixtQkFBa0IsRUFnRmpCOztBQUdEO0VBN0VBLGN2Q3lja0I7RXVDdmNsQixvQ0FBMkI7VUFBM0IsNEJBQTJCO0VBRTNCLGNBQWE7RUFDYixjdkNVbUI7RXVDUm5CLGF2Q2dja0I7RXVDL2JsQixpQnZDY2U7RXVDYmYsMEJ2Q0F1QjtFdUN1RXJCLG1CQUFrQjtFQUNsQixXQUFVO0VBQ1YsbUJBQWtCO0VBQ2xCLGtCQUFpQjtFQUNqQixpQkFBZ0IsRUFrQ2pCO0U3Q2d5RkQ7SU85eEZFLFdBQVUsRUFDWDtFS3hCRztJaUNwQko7TUFqRUUsY0FBYSxFQTBHZCxFQUFBO0VBdEdEOztJQUVFLGFBQVksRUFDYjtFQUdEO0lBQ0UsaUJBQWdCLEVBQ2pCO0VqQ3lFRztJaUNwQko7TUF6Q0UsYXZDZ2FnQjtNdUMvWmhCLG9CbkNQcUQsRW1Dd0Z0RCxFQUFBO0VqQ3JCRztJaUNwQko7TUFhTSxZQUFXO01BQ1gsV0FBVTtNQUNWLGVBQWMsRUFDZixFQUFBO0VBaEJMO0lBcUJJLFdBQVUsRUFDWDtFakNGQztJaUNwQko7TUF6Q0UsV0FrRXlDO01BakV6QyxvQm5DUHFELEVtQ3dFUCxFQUFBO0VqQ0w1QztJaUNwQko7TUF6Q0UsV0FtRXlDO01BbEV6QyxvQm5DUHFELEVtQ3lFUCxFQUFBO0VqQ041QztJaUNwQko7TUF6Q0UsV0FvRXlDO01BbkV6QyxvQm5DUHFELEVtQzBFUCxFQUFBO0VBM0JoRDtJQWxDQSxPQUFNO0lBQ04sUUFBTztJQUVQLFlBQVc7SUFDWCxnQkFBZTtJQUNmLGFBQVk7SUFDWixjQUFhO0lBQ2Isa0JBQWlCO0lBQ2pCLGVBQWM7SUFFZCxVQUFTO0lBQ1QsaUJBQWdCLEVBdURiO0VqQ1BDO0lpQ3pCSjtNQWxDQSxPQUFNO01BQ04sUUFBTztNQUVQLFlBQVc7TUFDWCxnQkFBZTtNQUNmLGFBQVk7TUFDWixjQUFhO01BQ2Isa0JBQWlCO01BQ2pCLGVBQWM7TUFFZCxVQUFTO01BQ1QsaUJBQWdCLEVBZ0VmLEVBQUE7RUF6Q0Q7SUF1Q0ksZ0JBQWUsRUFDaEI7O0FDZ0lIO0VBakhBLFlBQVc7RUFDWCxvQnhDdkhrQjtFd0N3SGxCLGlCeENoSGUsRXdDaU9kO0VBdk1EOzs7SUFHRSwwQkNsQjZDO0lEbUI3QywwQnhDM0NxQixFd0M0Q3RCO0VBR0Q7SUFDRSxrQ3BDM0JxRDtJb0M0QnJELGlCeEN0Q29CLEV3Q3VDckI7RTFCekRDO0kwQjZEQSxvQkM5QjZDO0lEK0I3QyxleEM3RFcsRXdDOERaO0VBR0Q7SUFDRSxvQkNwQzZDO0lEcUM3QyxleENuRVcsRXdDb0VaO0VBR0Q7O0lBSUksd0JBQXVCLEVBQ3hCO0VBTEg7Ozs7SUFVSSxrQ3BDdERtRDtJb0N1RG5ELGlCeENqRWtCO0l3Q2tFbEIsaUJBQVksRUFDYjtFQUlIOztJQUdJLGtDcENoRW1ELEVvQ2lFcEQ7RUF2RUM7SUFDRSxpQkFBZ0I7SUFDaEIsMEJDT3lDLEVETjFDO0VBOEVEO0lBRUUsMEJ4Q2xHaUIsRXdDbUdsQjtJQXBFTDtNQUNFLGlCQUFnQjtNQUNoQixpQ0NUNkM7TURVN0MsMEJ4Q2xDcUIsRXdDbUN0Qjs7QWxDMERHO0VrQzBIRjtJQUNFLGNBQWEsRUFDZDtFQUdIO0lBQ0UsY0FBYSxFQUNkO0VBRUQ7OztJQUdFLGVBQWMsRUFDZjtFQUVEO0lBQ0UsY0FBYSxFQUNkLEVBQUE7O0FBY0Q7RUEzR0EsZUFBYztFQUNkLFlBQVc7RUFDWCxpQkFBZ0IsRUEyR2Y7O0FBcEdDO0VBQ0UsMEJ4QzBWbUUsRXdDelZwRTs7QUFLRDtFQUNFLDBCeENxVm1FLEV3Q3BWcEU7O0FBS0Q7RUFDRSwwQnhDc1V5RCxFd0NyVTFEOztBQU1DO0VBQ0UsMEJ4QytUbUYsRXdDOVRwRjs7QUFrRkw7RUFDRSxpQkFBZ0IsRUFLakI7RUFORDtJQUlJLFlBQVcsRUFDWjs7QUVwTEg7RUFoRkEsVTFDMGZZO0UwQ3pmWix1QjFDbWdCdUI7RTBDbGdCdkIsb0IxQ05hO0UwQ09iLHNCQUFxQixFQStFcEI7RXpDSEQ7SUFFRSxlQUFjO0lBQ2QsYUFBWSxFQU1iO0VBRUQ7SUFDRSxZQUFXLEVBQ1o7O0F5Q3BGRDtFQUNFLGVBQWM7RUFDZCxZQUFXO0VBQ1gsWUFBVyxFQUNaOztBQThFRDtFQUVJLFdBQVUsRUFLWDtFQVBIO0lBS00sd0JBQXVCLEVBQ3hCOztBQUtMO0VBQ0Usb0IxQ3BIYyxFMEM4SGY7RUFYRDtJQUlJLGUxQzdHUyxFMENtSFY7SUFWSDtNQVFNLG9CRHBGeUMsRUNxRjFDOztBQUlMO0VBMUZBLFlBQU8sRUE0Rk47RUExRkQ7SUFDRSxlQUFjO0lBQ2Qsd0IxQ3FlNkI7STBDcGU3QixvQnRDUHFEO0lzQ1FyRCxlQUFjO0lBQ2QsZTFDN0NjLEUwQ3lEZjtJQVZDO01BQ0Usb0IxQ3RDUztNMEN1Q1QsZUFBNEMsRUFDN0M7SUFFRDtNQUVFLG9CMUN0RFk7TTBDdURaLGUxQzdDUyxFMEM4Q1Y7O0FBNEVIO0VBbEVBLHVCMUNnZHVCO0UwQy9jdkIsY0FBYTtFQUNiLG9CMUM2YzhCO0UwQzVjOUIsZTFDNURhO0UwQzZEYiwwQkFBeUIsRUFnRXhCOztBQUVEO0VBM0RBLHVCMUNxY3VCO0UwQ3BjdkIsZUFBZ0MsRUE0RC9COztBQUVEO0VBdkRBLGNBQWE7RUFDYixjMUM4YndCLEUwQ3RZdkI7RUF0REQ7SUFDRSxlQUFjLEVBQ2Y7O0FDakZEO0VBQ0UseUJBQXdCLEVBQ3pCOztBQUVEO0VBQ0UsbUJBQWtCLEVBQ25COztBckM2Rkc7RXFDL0VGO0lBMUJBLHlCQUF3QixFQTRCdkIsRUFBQTs7QUEvQ0Q7RUFpREE7SUFoREUseUJBQXdCLEVBa0R6QixFQUFBOztBckNvRUM7RXFDbkZBO0lBekJGLHlCQUF3QixFQTJCckIsRUFBQTs7QXJDc0ZEO0VxQ3BGQTtJQWpFRix5QkFBd0IsRUFtRXJCLEVBQUE7O0FyQ2tGRDtFcUMvRUY7SUExQkEseUJBQXdCLEVBNEJ2QixFQUFBOztBQS9DRDtFQWlEQTtJQWhERSx5QkFBd0IsRUFrRHpCLEVBQUE7O0FyQ29FQztFcUNuRkE7SUF6QkYseUJBQXdCLEVBMkJyQixFQUFBOztBckNzRkQ7RXFDcEZBO0lBakVGLHlCQUF3QixFQW1FckIsRUFBQTs7QXJDa0ZEO0VxQy9FRjtJQTFCQSx5QkFBd0IsRUE0QnZCLEVBQUE7O0FBL0NEO0VBaURBO0lBaERFLHlCQUF3QixFQWtEekIsRUFBQTs7QUFLSDs7RTFDNkZBLDhCQUE2QjtFQUM3QixXQUFVO0VBQ1YsWUFBVztFQUNYLGlCQUFnQjtFQUNoQix1QkFBc0IsRTBDOUZyQjs7QUFHRDtFMUNnR0EsNEJBQTJCO0VBQzNCLFlBQVc7RUFDWCxhQUFZO0VBQ1osa0JBQWlCO0VBQ2pCLFdBQVUsRTBDaEdQOztBQUlIOztFQUVFLDBCQUF5QixFQVMxQjtFckMyQ0c7SXFDdERKOztNQUtJLDBCQUF5QixFQU01QixFQUFBO0VyQzJDRztJcUN0REo7O01BU0kseUJBQXdCLEVBRTNCLEVBQUE7O0FBRUQ7O0VBRUUseUJBQXdCLEVBU3pCO0VyQzhCRztJcUN6Q0o7O01BS0kseUJBQXdCLEVBTTNCLEVBQUE7RXJDOEJHO0lxQ3pDSjs7TUFTSSwwQkFBeUIsRUFFNUIsRUFBQTs7QUN6SEQ7RUFDRSx1QkFBc0IsRUFDdkI7O0FBRUQ7RUFDRSx3QkFBdUIsRUFDeEI7O0FBRUQ7RUFDRSxlQUFjO0VBQ2QsbUJBQWtCO0VBQ2xCLGtCQUFpQixFQUNsQjs7QTNDNEhEO0VBRUUsZUFBYztFQUNkLGFBQVksRUFNYjs7QUFFRDtFQUNFLFlBQVcsRUFDWjs7QTRDeklDO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIscUNBRnlCO01BRXpCLGlDQUZ5QjtVQUV6Qiw2QkFGeUI7RUN2QnZCLGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBR3pDLG9DQUEyQjtVQUEzQiw0QkFBMkIsRUpSMUI7O0FBVUQ7RUdvQkEsaUNBRnlCO01BRXpCLDZCQUZ5QjtVQUV6Qix5QkFGeUIsRUhoQnhCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIscUNBRnlCO01BRXpCLGlDQUZ5QjtVQUV6Qiw2QkFGeUI7RUN2QnZCLGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBR3pDLG9DQUEyQjtVQUEzQiw0QkFBMkIsRUpSMUI7O0FBVUQ7RUdvQkEsaUNBRnlCO01BRXpCLDZCQUZ5QjtVQUV6Qix5QkFGeUIsRUhoQnhCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0NBRnlCO01BRXpCLGdDQUZ5QjtVQUV6Qiw0QkFGeUI7RUN2QnZCLGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBR3pDLG9DQUEyQjtVQUEzQiw0QkFBMkIsRUpSMUI7O0FBVUQ7RUdvQkEsaUNBRnlCO01BRXpCLDZCQUZ5QjtVQUV6Qix5QkFGeUIsRUhoQnhCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0NBRnlCO01BRXpCLGdDQUZ5QjtVQUV6Qiw0QkFGeUI7RUN2QnZCLGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBR3pDLG9DQUEyQjtVQUEzQiw0QkFBMkIsRUpSMUI7O0FBVUQ7RUdvQkEsaUNBRnlCO01BRXpCLDZCQUZ5QjtVQUV6Qix5QkFGeUIsRUhoQnhCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsaUNBRnlCO01BRXpCLDZCQUZ5QjtVQUV6Qix5QkFGeUI7RUN2QnZCLGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBR3pDLG9DQUEyQjtVQUEzQiw0QkFBMkIsRUpSMUI7O0FBVUQ7RUdvQkEsb0NBRnlCO01BRXpCLGdDQUZ5QjtVQUV6Qiw0QkFGeUIsRUhoQnhCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsaUNBRnlCO01BRXpCLDZCQUZ5QjtVQUV6Qix5QkFGeUI7RUN2QnZCLGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBR3pDLG9DQUEyQjtVQUEzQiw0QkFBMkIsRUpSMUI7O0FBVUQ7RUdvQkEsb0NBRnlCO01BRXpCLGdDQUZ5QjtVQUV6Qiw0QkFGeUIsRUhoQnhCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsaUNBRnlCO01BRXpCLDZCQUZ5QjtVQUV6Qix5QkFGeUI7RUN2QnZCLGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBR3pDLG9DQUEyQjtVQUEzQiw0QkFBMkIsRUpSMUI7O0FBVUQ7RUdvQkEscUNBRnlCO01BRXpCLGlDQUZ5QjtVQUV6Qiw2QkFGeUIsRUhoQnhCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsaUNBRnlCO01BRXpCLDZCQUZ5QjtVQUV6Qix5QkFGeUI7RUN2QnZCLGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBR3pDLG9DQUEyQjtVQUEzQiw0QkFBMkIsRUpSMUI7O0FBVUQ7RUdvQkEscUNBRnlCO01BRXpCLGlDQUZ5QjtVQUV6Qiw2QkFGeUIsRUhoQnhCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsV0ZoQ2tDO0VJQWxDLDZCQUE0QixFTEUzQjs7QUFVRDtFR29CQSxXRmhDcUMsRURjcEM7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixXRi9Ca0M7RUlEbEMsNkJBQTRCLEVMRTNCOztBQVVEO0VHb0JBLFdGL0JxQyxFRGFwQzs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLHVER3JDbUM7VUhxQ25DLCtDR3JDbUM7RUhxQ25DLDhCRjVCbUQ7TUU0Qm5ELDBCRjVCbUQ7VUU0Qm5ELHNCRjVCbUQ7RU1HakQsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBMkIsRVBONUI7O0FBVUQ7RUdvQkEsb0RHVjRDO1VIVTVDLDRDR1Y0QztFQ0oxQyxXQUEyQixFUEo1Qjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLHVER3BDcUM7VUhvQ3JDLCtDR3BDcUM7RUhvQ3JDLGdDRjNCcUQ7TUUyQnJELDRCRjNCcUQ7VUUyQnJELHdCRjNCcUQ7RU1FbkQsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBMkIsRVBONUI7O0FBVUQ7RUdvQkEsb0RHVjRDO1VIVTVDLDRDR1Y0QztFQ0oxQyxXQUEyQixFUEo1Qjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLHNER25DaUM7VUhtQ2pDLDhDR25DaUM7RUhtQ2pDLGlDRjFCc0Q7TUUwQnRELDZCRjFCc0Q7VUUwQnRELHlCRjFCc0Q7RU1DcEQsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBMkIsRVBONUI7O0FBVUQ7RUdvQkEsb0RHVjRDO1VIVTVDLDRDR1Y0QztFQ0oxQyxXQUEyQixFUEo1Qjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLHNER2xDK0I7VUhrQy9CLDhDR2xDK0I7RUhrQy9CLCtCRnpCb0Q7TUV5QnBELDJCRnpCb0Q7VUV5QnBELHVCRnpCb0Q7RU1BbEQsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBMkIsRVBONUI7O0FBVUQ7RUdvQkEsb0RHVjRDO1VIVTVDLDRDR1Y0QztFQ0oxQyxXQUEyQixFUEo1Qjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLHVER3JDbUM7VUhxQ25DLCtDR3JDbUM7RUhxQ25DLGlDR0NlO01IRGYsNkJHQ2U7VUhEZix5QkdDZTtFQzFCYixnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZDLDJEQUF1QztFQUN2QyxXQUEyQixFUE41Qjs7QUFVRDtFR29CQSxvREdWNEM7VUhVNUMsNENHVjRDO0VDSjFDLFdBQTJCLEVQSjVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsdURHcENxQztVSG9DckMsK0NHcENxQztFSG9DckMsaUNHQ2U7TUhEZiw2QkdDZTtVSERmLHlCR0NlO0VDMUJiLGdEQUF1QztFQUF2Qyx3Q0FBdUM7RUFBdkMsMkRBQXVDO0VBQ3ZDLFdBQTJCLEVQTjVCOztBQVVEO0VHb0JBLG9ER1Y0QztVSFU1Qyw0Q0dWNEM7RUNKMUMsV0FBMkIsRVBKNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixvREdSOEM7VUhROUMsNENHUjhDO0VIUTlDLDhCRnRCbUQ7TUVzQm5ELDBCRnRCbUQ7VUVzQm5ELHNCRnRCbUQ7RU1IakQsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBOEIsRVBOL0I7O0FBVUQ7RUdvQkEsdURHckNtQztVSHFDbkMsK0NHckNtQztFQ3VCakMsV0FBOEIsRVBKL0I7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixvREdSOEM7VUhROUMsNENHUjhDO0VIUTlDLGdDRnJCcUQ7TUVxQnJELDRCRnJCcUQ7VUVxQnJELHdCRnJCcUQ7RU1KbkQsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBOEIsRVBOL0I7O0FBVUQ7RUdvQkEsdURHcENxQztVSG9DckMsK0NHcENxQztFQ3NCbkMsV0FBOEIsRVBKL0I7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixvREdSOEM7VUhROUMsNENHUjhDO0VIUTlDLGlDRnBCc0Q7TUVvQnRELDZCRnBCc0Q7VUVvQnRELHlCRnBCc0Q7RU1McEQsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBOEIsRVBOL0I7O0FBVUQ7RUdvQkEsc0RHbkNpQztVSG1DakMsOENHbkNpQztFQ3FCL0IsV0FBOEIsRVBKL0I7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixvREdSOEM7VUhROUMsNENHUjhDO0VIUTlDLCtCRm5Cb0Q7TUVtQnBELDJCRm5Cb0Q7VUVtQnBELHVCRm5Cb0Q7RU1ObEQsZ0RBQXVDO0VBQXZDLHdDQUF1QztFQUF2QywyREFBdUM7RUFDdkMsV0FBOEIsRVBOL0I7O0FBVUQ7RUdvQkEsc0RHbEMrQjtVSGtDL0IsOENHbEMrQjtFQ29CN0IsV0FBOEIsRVBKL0I7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixvREdSOEM7VUhROUMsNENHUjhDO0VIUTlDLGlDR0NlO01IRGYsNkJHQ2U7VUhEZix5QkdDZTtFQzFCYixnREFBdUM7RUFBdkMsd0NBQXVDO0VBQXZD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LEVBQUE7RTFEbUNDO0kwRDNKTjtNM0RzQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFMkRvR3BDLEVBQUE7STFEbUNDO1FFeEZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0l3RHJFTDtNQW1HUSxlaEVyQ087TWdFc0NQLDBCaEVoRFU7TWdFaURWLGlCNURiaUQsRTREY2xEO0lBdEdQO01Bd0dRLHlCNURoQmlEO000RGlCakQsZWhFM0NPO01nRTRDUCxrQjVEbEJpRDtNNERtQmpELGlCaEU5QnFCO01nRStCckIsZUFBYyxFQUNmO0lBN0dQO01BK0dRLFVBQVM7TUFDVCxpQkFBZ0IsRUFDakI7SUFqSFA7TUFvSFUsYUFBWTtNQUNaLGlCaEV4Q21CLEVnRXlDcEI7O0FBTVA7RUFDRSxrQjVEckNxRDtFNERzQ3JELGlCaEVoRG9CLEVnRWlEckI7O0FDL0hIO0U5RG9GSSx3QkFGK0Q7RUFHL0QsdUJBSCtELEU4RDJLbEU7RTNEbEdLO0kyRDNKTjtNOURvRkkseUJBRitEO01BRy9ELHdCQUgrRCxFOEQyS2xFLEVBQUE7RTNEbEdLO0kyRDNKTjtNOURvRkkseUJBRitEO01BRy9ELHdCQUgrRCxFOEQyS2xFLEVBQUE7RWhFNUdDO0lBRUUsZUFBYztJQUNkLGFBQVksRUFNYjtFQUVEO0lBQ0UsWUFBVyxFQUNaO0VnRTlKSDs7Ozs7Ozs7Ozs7Ozs7OztJQWlCYSx5QjdEdUU0QyxFNkR2RWI7RUFqQjVDO0lBbUJJLGtCN0RxRXFEO0k2RHBFckQsdUI3RG9FcUQ7STZEbkVyRCx5QjdEbUVxRDtJNkRsRXJELGVqRWtDWTtJaUVqQ1oscUI3RGlFcUQ7STZEaEVyRCx1QjdEZ0VxRCxFNkQvRHREO0VBekJIO0kxRGNFLFlDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUMsRTREU3RDO0kzRDhIRztNMkQzSk47UTVEc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRTREU3RDLEVBQUE7SXpEc0NDO01BQ0UsYVRrQ3NELEVTakN2RDtJRnNGQztNMkQzSk47UTFEY0UsV0NlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFNERTdEMsRUFBQTtFM0Q4SEc7STJEM0pOO001RHNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEU0RFN0QyxFQUFBO0kzRDhIRztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFeURyRUw7STFEY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFNERhdEM7STNEMEhHO00yRDNKTjtRNURzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFNERhdEMsRUFBQTtJekRrQ0M7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO00yRDNKTjtRMURjRSxXQ2VxRDtRQStCckQsWVR5Q3lEO1FNL0V2RCx3QkFGcUM7UUFHckMsdUJBSHFDLEU0RGF0QyxFQUFBO0UzRDBIRztJMkQzSk47TTVEc0JJLHlCQUZxQztNQUdyQyx3QkFIcUMsRTREYXRDLEVBQUE7STNEMEhHO1FFeEZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0V5RHJFTDtJMURjRSxZQ2VxRDtJQStCckQsWVR5Q3lEO0lNL0V2RCx3QkFGcUM7SUFHckMsdUJBSHFDLEU0RGdCdEM7STNEdUhHO00yRDNKTjtRNURzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFNERnQnRDLEVBQUE7SXpEK0JDO01BQ0UsYVRrQ3NELEVTakN2RDtFeURyRUw7SUFzQ0kseUI3RGtEcUQsRTZERHREO0lBdkZIO01Bd0NNLG1CQUFrQjtNQUNsQixZQUFXO01BQ1gsZ0I3RDhDbUQ7TTZEN0NuRCxzQjdENkNtRDtNNkQ1Q25ELHdCN0Q0Q21EO002RDNDbkQsMEJqRWlCUztNaUVoQlQsYUFBWTtNQUNaLHdCN0R5Q21EO002RHhDbkQsaUJBQWdCLEVBcUNqQjtNQXJGTDtRQWtEUSx5QkFBd0I7UUFDeEIsZUFBYztRQUNkLG1CQUFrQjtRQUNsQixPQUFNO1FBQ04sUUFBTztRQUNQLGdCN0RpQ2lEO1E2RGhDakQsZ0I3RGdDaUQ7UTZEL0JqRCxvQjdEK0JpRDtRNkQ5QmpELGlCQUFnQjtRQUNoQixtQkFB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cUMsRWtFNEV0QztFakUyREc7SWlFM0pOO01sRXNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVrRTRFdEMsRUFBQTtFL0Q3QkM7SUFDRSxhVGtDc0QsRVNqQ3ZEO0VGMkZDO0lpRWhLTjtNaEVjRSxpQkNlcUQ7TUErQnJELFlUeUN5RDtNTS9FdkQsd0JBRnFDO01BR3JDLHVCQUhxQyxFa0U0RXRDLEVBQUE7RWpFMkRHO0lpRTNKTjtNbEVzQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFa0U0RXRDLEVBQUE7RWpFZ0VHO01FN0ZGO1FBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0VGc0ZDO0lpRTNKTjtNaEVjRSxpQkNlcUQ7TUErQnJELFlUeUN5RDtNTS9FdkQsd0JBRnFDO01BR3JDLHVCQUhxQyxFa0U0RXRDLEVBQUE7RWpFMkRHO0lpRTNKTjtNbEVzQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFa0U0RXRDLEVBQUE7RWpFMkRHO01FeEZGO1FBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0UrRHJFTDtJQWlFTSxrQm5FdUJtRDtJbUV0Qm5ELDBCdkVDbUIsRXVFNEJwQjtJakU0REM7TWlFM0pOO1FBb0VRLG1CbkVvQmlELEVtRU9wRCxFQUFBO0lBL0ZMO01BdUVRLHlCbkVpQmlEO01tRWhCakQsZUFBYyxFQU1mO01BOUVQO1FBMEVVLGVBQWM7UUFDZCxrQm5FYStDO1FtRVovQyxpQnZFRGdCLEV1RUVqQjtJQTdFVDtNQStFNEIseUJuRVM2QixFbUVURTtJQS9FM0Q7TUFpRlEseUJuRU9pRDtNbUVOakQsZ0JuRU1pRDtNbUVMakQsbUJBQWtCO01BQ2xCLG9CbkVJaUQsRW1FRWxEO01BMUZQO1FBc0ZVLGVBQWM7UUFDZCxvQm5FQytDO1FtRUEvQyxpQnZFWG1CLEV1RVlwQjtJQXpGVDtNQTRGUSwwQm5FSmlEO01tRUtqRCwwQjlCRnlDLEU4QkcxQzs7QUE5RlA7RWhFY0UsWUNlcUQ7RUErQnJELFlUeUN5RDtFTS9FdkQsd0JBRnFDO0VBR3JDLHVCQUhxQztFa0UrRXJDLG9CbkVYcUQsRW1FZXREO0VqRW9ERztJaUUzSk47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RTNKTjtRbkVjRSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFcUVadEMsRUFBQTtFcEVtSkc7SW9FM0pOO01yRXNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVxRVp0QyxFQUFBO0lwRW1KRztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFa0VyRUw7SW5FY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFcUVOdEM7SXBFNklHO01vRTNKTjtRckVzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFcUVOdEMsRUFBQTtJbEVxREM7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO01vRTNKTjtRbkVjRSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFcUVOdEMsRUFBQTtFcEU2SUc7SW9FM0pOO01yRXNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVxRU50QyxFQUFBO0lwRTZJRztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFa0VyRUw7SW5FY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFcUVMc0I7SXBFNEl6RDtNb0UzSk47UXJFc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRXFFTHNCLEVBQUE7SWxFb0QzRDtNQUNFLGFUa0NzRCxFU2pDdkQ7RWtFckVMO0lBa0JJLHdCdEVzRXFELEVzRXJFdEQ7RUFuQkg7SUFzQkksd0J0RWtFcUQsRXNFakV0RDtFQXZCSDtJQXlCSSx5QnRFK0RxRDtJc0U5RHJELGlCQUFnQixFQUNqQjtFQTNCSDtJQTZCYyxpQkFBZ0IsRUFBSTs7QUM3QmxDO0VBQ0Msa0J2RXVGd0Q7RXVFdEZ2RCwwQmxDeUYrQyxFa0MvQ2hEO0VyRStHSztJcUUzSk47TUFHZ0MsbUJ2RXFGeUIsRXVFNUN4RCxFQUFBO0VBNUNEO0lBSWtCLGUzRW9ERixFMkVwRHlCO0VBQ3hDO0l4RStFRyx3QkFGK0Q7SUFHL0QsdUJBSCtELEV3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WGhDO0VoRm9GSSx3QkFGK0Q7RUFHL0QsdUJBSCtELEVnRm5EbEU7RTdFNEhLO0k2RTNKTjtNaEZvRkkseUJBRitEO01BRy9ELHdCQUgrRCxFZ0ZuRGxFLEVBQUE7RTdFNEhLO0k2RTNKTjtNaEZvRkkseUJBRitEO01BRy9ELHdCQUgrRCxFZ0ZuRGxFLEVBQUE7RWxGa0hDO0lBRUUsZUFBYztJQUNkLGFBQVksRUFNYjtFQUVEO0lBQ0UsWUFBVyxFQUNaO0VrRjVKRDtJNUVZQSxZQ2VxRDtJQStCckQsWVR5Q3lEO0lNL0V2RCx3QkFGcUM7SUFHckMsdUJBSHFDO0k4RWhCckMsdUIvRW9GcUQsRStFbEZ0RDtJN0VxSkc7TTZFekpKO1E5RW9CRSx5QkFGcUM7UUFHckMsd0JBSHFDLEU4RWR0QyxFQUFBO0kzRTZEQztNQUNFLGFUa0NzRCxFU2pDdkQ7SUZzRkM7TTZFekpKO1FBR2dDLHdCL0VtRnVCLEUrRWxGdEQsRUFBQTtFQUNEO0k1RU9BLFlDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUMsRThFUnRDO0k3RStJRztNNkVwSko7UTlFZUUseUJBRnFDO1FBR3JDLHdCQUhxQyxFOEVSdEMsRUFBQTtJM0V1REM7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO002RXBKSjtRNUVPQSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFOEVSdEMsRUFBQTtFN0UrSUc7STZFcEpKO005RWVFLHlCQUZxQztNQUdyQyx3QkFIcUMsRThFUnRDLEVBQUE7STdFK0lHO1FFeEZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0UyRXhESDtJNUVDQSxZQ2VxRDtJQStCckQsWVR5Q3lEO0lNL0V2RCx3QkFGcUM7SUFHckMsdUJBSHFDO0k4RUxyQyxvQi9FeUVxRCxFK0VuRXREO0k3RXNJRztNNkU5SUo7UTlFU0UseUJBRnFDO1FBR3JDLHdCQUhxQyxFOEVDdEMsRUFBQTtJM0U4Q0M7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO002RTlJSjtRQUdnQyxxQi9Fd0V1QixFK0VuRXRELEVBQUE7STdFc0lHO002RTlJSjtRNUVDQSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQztROEVEbkMsY0FBYSxFQUVoQixFQUFBO0U3RXNJRztJNkU5SUo7TTlFU0UseUJBRnFDO01BR3JDLHdCQUhxQyxFOEVDdEMsRUFBQTtJN0VzSUc7UUV4RkY7VUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7RTJFL0NIO0lBQ0UseUIvRWlFcUQ7SStFaEVyRCxpQm5GdUhzQixFbUZ0SHZCO0VBQ0Q7SUFDRSxvQi9FNkRxRCxFK0UxRHREO0k3RTZIRztNNkVqSUo7UUFFZ0MscUIvRTREdUIsRStFMUR0RCxFQUFBO0lBSkE7TUFHVyxpQkFBZ0IsRUFBSTs7QUM1QmhDO0VBQ0UscUJoRnNGcUQsRWdGL0V0RDtFOUVrSkc7SThFMUpKO01BRWdDLG9CaEZxRnVCLEVnRi9FdEQsRUFBQTtFQVJBO0lBSUcsc0JBQXFCO0lBQ3JCLHVCaEZrRm1EO0lnRmpGbkQscUJoRmlGbUQsRWdGaEZwRDs7QUNSTDtFbEZvRkksd0JBRitEO0VBRy9ELHVCQUgrRCxFa0ZuRGxFO0UvRTRISztJK0UzSk47TWxGb0ZJLHlCQUYrRDtNQUcvRCx3QkFIK0QsRWtGbkRsRSxFQUFBO0UvRTRISztJK0UzSk47TWxGb0ZJLHlCQUYrRDtNQUcvRCx3QkFIK0QsRWtGbkRsRSxFQUFBO0VwRmtIQztJQUVFLGVBQWM7SUFDZCxhQUFZLEVBTWI7RUFFRDtJQUNFLFlBQVcsRUFDWjtFb0Y5Skg7STlFY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQztJZ0ZoQnJDLHdCakZvRnFELEVpRmhGdEQ7SS9FbUpHO00rRTNKTjtRaEZzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFZ0ZadEMsRUFBQTtJN0UyREM7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO00rRTNKTjtROUVjRSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFZ0ZadEMsRUFBQTtFL0VtSkc7SStFM0pOO01oRnNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVnRlp0QyxFQUFBO0kvRW1KRztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFNkVyRUw7STlFY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFZ0ZOdEM7SS9FNklHO00rRTNKTjtRaEZzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFZ0ZOdEMsRUFBQTtJN0VxREM7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO00rRTNKTjtROUVjRSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFZ0ZOdEMsRUFBQTtFL0U2SUc7SStFM0pOO01oRnNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVnRk50QyxFQUFBO0kvRTZJRztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFNkVyRUw7STlFY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFZ0ZMcUI7SS9FNEl4RDtNK0UzSk47UWhGc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRWdGTHFCLEVBQUE7STdFb0QxRDtNQUNFLGFUa0NzRCxFU2pDdkQ7RTZFckVMO0lBa0JJLHdCakZzRXFELEVpRnJFdEQ7RUFuQkg7SUFzQkksd0JqRmtFcUQsRWlGakV0RDtFQXZCSDtJQXlCSSx5QmpGK0RxRDtJaUY5RHJELGlCQUFnQixFQUNqQjtFQTNCSDtJQTZCYyxpQkFBZ0IsRUFBSTs7QUM3QmxDO0VBRUksdUJsRnNGcUQsRWtGakZ0RDtFQVBIO0lBSU0sVUFBUztJQUNULGlCQUFnQixFQUNqQjs7QUFOTDtFQVNJLHVCbEYrRXFELEVrRnJFdEQ7RWhGd0lHO0lnRjNKTjtNQVdNLGFBQVk7TUFDWixhbEY0RW1EO01rRjNFbkQscUJsRjJFbUQsRWtGckV0RCxFQUFBO0VBbkJIO0lBZ0JNLFVBQVM7SUFDVCxpQkFBZ0IsRUFDakI7O0FoRnlJQztFZ0YzSk47SUFzQk0sYUFBWTtJQUNaLGFBQVk7SUFDWixhbEZnRW1EO0lrRi9EbkQscUJsRitEbUQsRWtGdER0RCxFQUFBOztBQWxDSDtFQTRCTSxpQkFBZ0I7RUFDaEIsZUFBYztFbkZ1RGhCLHdCQUYrRDtFQUcvRCx1QkFIK0QsRW1GakQ5RDtFaEYwSEM7SWdGM0pOO01uRm9GSSx5QkFGK0Q7TUFHL0Qsd0JBSCtELEVtRmpEOUQsRUFBQTtFaEYwSEM7SWdGM0pOO01uRm9GSSx5QkFGK0Q7TUFHL0Qsd0JBSCtELEVtRmpEOUQsRUFBQTtFckZnSEg7SUFFRSxlQUFjO0lBQ2QsYUFBWSxFQU1iO0VBRUQ7SUFDRSxZQUFXLEVBQ1o7RVN6SUQ7SUFDRSxZWCtFdUQ7SVc5RXZELFlBQXVCO0lBVWYsd0JBSDRCO0lBSTVCLHVCQUo0QixFQTBCckM7SUptR0c7TUl0SUo7UUFZVSx5QkFINEI7UUFJNUIsd0JBSjRCLEVBMEJyQyxFQUFBO0lBWEM7TUFDRSxZQUFXLEVBQ1o7SUFFRDtNQUNFLFlBQVcsRUFDWjtJQUVEO01BQ0UsWVgrQ3FELEVXOUN0RDtFNEV2REw7SUFnQ1csdUJsRndEOEMsRWtGeERmOztBQWhDMUM7RUFvQ0kseUJsRm9EcUQsRWtGM0N0RDtFaEY4R0c7SWdGM0pOO01BcUNrQyx3QmxGbUR1QixFa0YzQ3RELEVBQUE7RUE3Q0g7SUF1Q3FCLGlCQUFnQixFQUFJO0VBdkN6QztJQXlDUSwyQkFBMEIsRUFFM0I7SUEzQ1A7TUEwQ2tCLHNCQUFxQixFQUFJOztBQTFDM0M7RUFnRE0sZUFBYztFQUNkLGlCQUFnQixFQUtqQjtFQXRETDtJQW1EUSxzQkFBcUI7SUFDckIsc0JsRm9DaUQsRWtGbkNsRDs7QUFyRFA7RUF5REksYUFBWSxFQUdiO0VoRm9HRztJZ0ZoS047TUEwRHNDLHdCbEY4Qm1CLEVrRjVCdEQsRUFBQTs7QUM1REg7RXBGb0ZJLHdCQUYrRDtFQUcvRCx1QkFIK0QsRW9GMURsRTtFakZtSUs7SWlGM0pOO01wRm9GSSx5QkFGK0Q7TUFHL0Qsd0JBSCtELEVvRjFEbEUsRUFBQTtFakZtSUs7SWlGM0pOO01wRm9GSSx5QkFGK0Q7TUFHL0Qsd0JBSCtELEVvRjFEbEUsRUFBQTtFdEZ5SEM7SUFFRSxlQUFjO0lBQ2QsYUFBWSxFQU1iO0VBRUQ7SUFDRSxZQUFXLEVBQ1o7RXNGOUpIO0loRmNFLFlDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUM7SWtGaEJyQyx3Qm5Gb0ZxRCxFbUYvRXREO0lqRmtKRztNaUYzSk47UWxGc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRWtGWHRDLEVBQUE7SS9FMERDO01BQ0UsYVRrQ3NELEVTakN2RDtJRnNGQztNaUYzSk47UWhGY0UsaUJDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUM7UWtGYm5DLGlCQUFnQixFQUVuQixFQUFBO0VqRmtKRztJaUYzSk47TWxGc0JJLHlCQUZxQztNQUdyQyx3QkFIcUMsRWtGWHRDLEVBQUE7SWpGa0pHO1FFeEZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0UrRXJFTDtJaEZjRSxZQ2VxRDtJQStCckQsWVR5Q3lEO0lNL0V2RCx3QkFGcUM7SUFHckMsdUJBSHFDLEVrRkx0QztJakY0SUc7TWlGM0pOO1FsRnNCSSx5QkFGcUM7UUFHckMsd0JBSHFDLEVrRkx0QyxFQUFBO0kvRW9EQztNQUNFLGFUa0NzRCxFU2pDdkQ7SUZzRkM7TWlGM0pOO1FoRmNFLGlCQ2VxRDtRQStCckQsWVR5Q3lEO1FNL0V2RCx3QkFGcUM7UUFHckMsdUJBSHFDLEVrRkx0QyxFQUFBO0VqRjRJRztJaUYzSk47TWxGc0JJLHlCQUZxQztNQUdyQyx3QkFIcUMsRWtGTHRDLEVBQUE7SWpGNElHO1FFeEZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0UrRXJFTDtJaEZjRSxZQ2VxRDtJQStCckQsWVR5Q3lEO0lNL0V2RCx3QkFGcUM7SUFHckMsdUJBSHFDLEVrRkpxQjtJakYySXhEO01pRjNKTjtRbEZzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFa0ZKcUIsRUFBQTtJL0VtRDFEO01BQ0UsYVRrQ3NELEVTakN2RDtFK0VyRUw7SUFrQkkseUJuRnNFcUQ7SW1GckVyRCxpQkFBZ0IsRUFDakI7RUFwQkg7SUFzQmMsaUJBQWdCLEVBQUk7O0FDdEJsQztFckZvRkksd0JBRitEO0VBRy9ELHVCQUgrRCxFcUZuRGxFO0VsRjRISztJa0YzSk47TXJGb0ZJLHlCQUYrRDtNQUcvRCx3QkFIK0QsRXFGbkRsRSxFQUFBO0VsRjRISztJa0YzSk47TXJGb0ZJLHlCQUYrRDtNQUcvRCx3QkFIK0QsRXFGbkRsRSxFQUFBO0V2RmtIQztJQUVFLGVBQWM7SUFDZCxhQUFZLEVBTWI7RUFFRDtJQUNFLFlBQVcsRUFDWjtFdUY5Skg7SWpGY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQztJbUZoQnJDLHdCcEZvRnFELEVvRmhGdEQ7SWxGbUpHO01rRjNKTjtRbkZzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFbUZadEMsRUFBQTtJaEYyREM7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO01rRjNKTjtRakZjRSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFbUZadEMsRUFBQTtFbEZtSkc7SWtGM0pOO01uRnNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVtRlp0QyxFQUFBO0lsRm1KRztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFZ0ZyRUw7SWpGY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFbUZOdEM7SWxGNklHO01rRjNKTjtRbkZzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFbUZOdEMsRUFBQTtJaEZxREM7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO01rRjNKTjtRakZjRSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFbUZOdEMsRUFBQTtFbEY2SUc7SWtGM0pOO01uRnNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVtRk50QyxFQUFBO0lsRjZJRztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFZ0ZyRUw7SWpGY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFbUZMcUI7SWxGNEl4RDtNa0YzSk47UW5Gc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRW1GTHFCLEVBQUE7SWhGb0QxRDtNQUNFLGFUa0NzRCxFU2pDdkQ7RWdGckVMO0lBa0JJLHdCcEZzRXFELEVvRnJFdEQ7RUFuQkg7SUFzQkksd0JwRmtFcUQsRW9GakV0RDtFQXZCSDtJQXlCSSx5QnBGK0RxRDtJb0Y5RHJELGlCQUFnQixFQUNqQjtFQTNCSDtJQTZCYyxpQkFBZ0IsRUFBSTs7QUM3QmxDO0V0Rm9GSSx3QkFGK0Q7RUFHL0QsdUJBSCtEO0VzRmhGakUseUJyRnNGdUQsRXFGakV4RDtFbkZvSUs7SW1GM0pOO010Rm9GSSx5QkFGK0Q7TUFHL0Qsd0JBSCtELEVzRjNEbEUsRUFBQTtFbkZvSUs7SW1GM0pOO010Rm9GSSx5QkFGK0Q7TUFHL0Qsd0JBSCtELEVzRjNEbEUsRUFBQTtFeEYwSEM7SUFFRSxlQUFjO0lBQ2QsYUFBWSxFQU1iO0VBRUQ7SUFDRSxZQUFXLEVBQ1o7RXdGM0pEO0lsRldBLFlDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUMsRW9GZHRDO0luRnFKRztNbUZ4Sko7UXBGbUJFLHlCQUZxQztRQUdyQyx3QkFIcUMsRW9GZHRDLEVBQUE7SWpGNkRDO01BQ0UsYVRrQ3NELEVTakN2RDtFaUZyRUw7SWxGY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFb0ZSdEM7SW5GK0lHO01tRjNKTjtRcEZzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFb0ZSdEMsRUFBQTtJakZ1REM7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO01tRjNKTjtRbEZjRSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFb0ZSdEMsRUFBQTtFbkYrSUc7SW1GM0pOO01wRnNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVvRlJ0QyxFQUFBO0luRitJRztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFaUZyRUw7SWxGY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFb0ZFdEM7SW5GcUlHO01tRjNKTjtRcEZzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFb0ZFdEMsRUFBQTtJakY2Q0M7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO01tRjNKTjtRbEZjRSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFb0ZFdEMsRUFBQTtFbkZxSUc7SW1GM0pOO01wRnNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVvRkV0QyxFQUFBO0luRnFJRztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtJaUZyRUw7TUFtQk0saUJBQWdCLEVBRWpCO01uRnNJQztRbUYzSk47VUFvQm1DLFlBQVcsRUFDekMsRUFBQTs7QUNwQkg7RUFBVyxzQkFBcUIsRUFBSTs7QUFDcEM7RUFDRSxzQkFBcUIsRUFVdEI7RUFYQTtJQUdHLHNCQUFxQjtJQUNyQixhQUFZO0lBQ1osd0J0RmlGbUQsRXNGaEZwRDtFQU5GO0lBUUcsMkJBQTBCLEVBRTNCO0lBVkY7TUFTYSxzQkFBcUIsRUFBSTs7QUFHdkM7RUFDRSxzQnRGeUVxRCxFc0ZqRXREO0VwRnlJRztJb0ZsSko7TUFHSSxZQUFXO01BQ1gsbUJBQWtCO01BQ2xCLG1CQUFrQjtNQUNsQixvQkFBbUIsRUFHdEI7TUFUQTtRQU8wQixjQUFhLEVBQUksRUFBQTs7QUFHNUM7RUFDRSxzQnRGK0RxRDtFc0Y5RHJELFdBQVU7RUFDVixpQkFBZ0IsRUFDakI7O0FBQ0Q7RUFDRSxzQkFBcUI7RUFDckIsd0N0RjhEUyxFc0Y3RFY7O0FBQ0Q7RUFDRSxnQkFBZTtFQUNmLDhDdEZxRHFEO0VzRnBEckQsaUIxRnlDeUI7RTBGeEN6QixlQUFjO0VBQ2QsMEIxRjZCcUI7RTBGNUJyQiwwQjFGb0JpQjtFMEZuQmpCLHlCdEZnRHFELEVzRmpDdEQ7RUF0QkE7SUFVSyxlMUZtQk87STBGbEJQLDBCMUZZUSxFMEZYVDtFQVpKO0lBZUcsc0J0RndDbUQ7SXNGdkNuRCxvQnRGdUNtRDtJc0Z0Q25ELGlCMUZ5Qm9CO0kwRnhCcEIsZUFBYztJQUNkLDBCakR1QzJDO0lpRHRDM0MsbUJBQWtCLEVBQ25COztBQ3RETDtFQUM4Qix3QnZGdUYyQixFdUZ2Rkk7O0FDRDdEO0V6RmlHRSxvQkNUdUQ7RUQxQnJELG1CQUFrQjtFQUNsQixrQkFBaUIsRXlGQ3BCO0UzRmlGQztJQUVFLGVBQWM7SUFDZCxhQUFZLEVBTWI7RUFFRDtJQUNFLFlBQVcsRUFDWjtFMkY5Skg7SXJGY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsaUJEdUVTO0lDdEVULGdCRHNFUztJd0Z6RlQsbUJBQWtCLEVBQ25CO0lwRjhEQztNQUNFLGFUa0NzRCxFU2pDdkQ7RW9GckVMO0lBT0ksbUJBQWtCO0lBQ2xCLE9BQU07SUFDTixTQUFRLEVBQ1Q7RUFWSDtJckZjRSxZQ2VxRDtJQStCckQsWVR5Q3lEO0lNL0V2RCx3QkFGcUM7SUFHckMsdUJBSHFDO0l1RlByQyxzQnhGMkVxRDtJd0YxRXJELHlCeEYwRXFEO0l3RnpFckQsMEI1Rm9EcUI7STRGbkRyQix1QkFBc0IsRUFLdkI7SXRGc0lHO01zRjNKTjtRdkZzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFdUZDdEMsRUFBQTtJcEY4Q0M7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO01zRjNKTjtRQWtCTSx1QnhGc0VtRDtRd0ZyRW5ELDBCeEZxRW1ELEV3Rm5FdEQsRUFBQTtFQXJCSDtJQXNCcUIsd0J4RmtFb0MsRXdGbEVMO0VBdEJwRDtJQXlCSSx3QnhGK0RxRDtJd0Y5RHJELGtCeEY4RHFEO0l3RjdEckQsZUFBYyxFQVlmO0lBdkNIOztNQThCTSxrQnhGMERtRDtNd0Z6RG5ELGVBQWMsRUFDZjtJQWhDTDtNQWtDTSxlQUFjO01BQ2Qsb0J4RnFEbUQ7TXdGcERuRCxpQjVGdUNvQjtNNEZ0Q3BCLGVBQWMs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R3VFb0I7RWtHdEVwQixlQUFjLEVBS2Y7RUFSQTtJQUtHLGVBQWM7SUFDZCxpQmxHa0V1QixFa0dqRXhCOztBQUVIO0VBQ0Usc0I5RnlFcUQ7RThGeEVyRCxvQjlGd0VxRCxFOEZ2RXREOztBQUNBO0VuRjJERCxzQkFBcUI7RUFDckIsdUJBQXNCO0VBQ3RCLG1CZjZLa0M7RWU1S2xDLDBCWFF1RDtFV052RCx5QkFBd0I7RUFDeEIsOEJBQTZCO0VBQzdCLGlCZkplO0VlS2Ysa0Vmd0x1RTtFZXRMdkUsb0JYQ3VEO0VXQXZELGVBQWM7RUFDZCxtQkFBa0I7RUFDbEIsZ0JBQWU7RUFxQ2YsMEJmM0VnQjtFZTRFaEIsZWZsRWEsRWtHekNWO0V4R2kwTkg7SU9wcU5FLFdBQVUsRUFDWDtFY2pERDtJQUNFLDBCZjRIdUU7SWUzSHZFLGVmdEVXLEVldUVaOztBbUY1R0Q7RS9GMkRFLHdCQUYrRDtFQUcvRCx1QkFIK0Q7RStGdkQvRCx5QjlGNkRxRCxFOEZoRHREO0U1Rm1IRztJNEZsSUo7TS9GMkRFLHlCQUYrRDtNQUcvRCx3QkFIK0QsRStGMUNoRSxFQUFBO0U1Rm1IRztJNEZsSUo7TS9GMkRFLHlCQUYrRDtNQUcvRCx3QkFIK0QsRStGMUNoRSxFQUFBO0VqR3lHRDtJQUVFLGVBQWM7SUFDZCxhQUFZLEVBTWI7RUFFRDtJQUNFLFlBQVcsRUFDWjtFaUdsSUM7STNGZEYsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFNkZhcEM7STVGMEhDO000Ri9IRjtRN0ZOQSx5QkFGcUM7UUFHckMsd0JBSHFDLEU2RmFwQyxFQUFBO0kxRmtDRDtNQUNFLGFUa0NzRCxFU2pDdkQ7SUZzRkM7TTRGL0hGO1EzRmRGLFdDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUMsRTZGYXBDLEVBQUE7RTVGMEhDO0k0Ri9IRjtNN0ZOQSx5QkFGcUM7TUFHckMsd0JBSHFDLEU2RmFwQyxFQUFBO0k1RjBIQztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFMEZuQ0Q7STNGcEJGLFlDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUMsRTZGbUJwQztJNUZvSEM7TTRGekhGO1E3RlpBLHlCQUZxQztRQUdyQyx3QkFIcUMsRTZGbUJwQyxFQUFBO0kxRjRCRDtNQUNFLGFUa0NzRCxFU2pDdkQ7SUZzRkM7TTRGekhGO1EzRnBCRixXQ2VxRDtRQStCckQsWVR5Q3lEO1FNL0V2RCx3QkFGcUM7UUFHckMsdUJBSHFDLEU2Rm1CcEMsRUFBQTtFNUZvSEM7STRGekhGO003RlpBLHlCQUZxQztNQUdyQyx3QkFIcUMsRTZGbUJwQyxFQUFBO0k1Rm9IQztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTs7QTBGNUJIO0VBQVUsd0I5RitDNkMsRThGL0NkOztBNUZrSHJDO0U0RmpISjtJQUNnQyxhQUFZLEVBQzNDLEVBQUE7O0FBQ0Q7RUFDRSxVQUFTO0VBQ1QsV0FBVTtFQUNWLGlCQUFnQixFQUNqQjs7QUFDRDtFQUFlLHlCOUZzQ3dDLEU4RnRDVDs7QUFDN0M7RW5GMEJELHNCQUFxQjtFQUNyQix1QkFBc0I7RUFDdEIsbUJmNktrQztFZTVLbEMsMEJYUXVEO0VXTnZELHlCQUF3QjtFQUN4Qiw4QkFBNkI7RUFDN0IsaUJmSmU7RWVLZixrRWZ3THVFO0VldEx2RSxvQlhDdUQ7RVdBdkQsZUFBYztFQUNkLG1CQUFrQjtFQUNsQixnQkFBZTtFQXFDZiwwQmYzRWdCO0VlNEVoQixlZmxFYSxFa0dSVjtFeEdzNE5IO0lPMXdORSxXQUFVLEVBQ1g7RWNqREQ7SUFDRSwwQmY0SHVFO0llM0h2RSxlZnRFVyxFZXVFWjs7QW1GNUVIO0VBQ0Usa0I5RjhCdUQ7RThGN0J2RCwwQmxHR2EsRWtHb0NkO0U1RnlESztJNEZsR047TUFHZ0MsbUI5RjRCeUIsRThGVXhELEVBQUE7RUFyQ0M7SS9GdUJFLHdCQUYrRDtJQUcvRCx1QkFIK0Q7SStGbkIvRCx5QjlGeUJxRCxFOEZYdEQ7STVGOEVHO000RjlGSjtRL0Z1QkUseUJBRitEO1FBRy9ELHdCQUgrRCxFK0ZMaEUsRUFBQTtJNUY4RUc7TTRGOUZKO1EvRnVCRSx5QkFGK0Q7UUFHL0Qsd0JBSCtELEUrRkxoRSxFQUFBO0lqR29FRDtNQUVFLGVBQWM7TUFDZCxhQUFZLEVBTWI7SUFFRDtNQUNFLFlBQVcsRUFDWjtJaUc5RkM7TTNGbERGLFlDZXFEO01BK0JyRCxZVHlDeUQ7TU0vRXZELHdCQUZxQztNQUdyQyx1QkFIcUMsRTZGaURwQztNNUZzRkM7UTRGM0ZGO1U3RjFDQSx5QkFGcUM7VUFHckMsd0JBSHFDLEU2RmlEcEMsRUFBQTtNMUZGRDtRQUNFLGFUa0NzRCxFU2pDdkQ7TUZzRkM7UTRGM0ZGO1UzRmxERixXQ2VxRDtVQStCckQsWVR5Q3lEO1VNL0V2RCx3QkFGcUM7VUFHckMsdUJBSHFDLEU2RmlEcEMsRUFBQTtFNUZzRkM7STRGM0ZGO003RjFDQSx5QkFGcUM7TUFHckMsd0JBSHFDLEU2RmlEcEMsRUFBQTtNNUZzRkM7VUV4RkY7WUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7STBGQ0Q7TTNGeERGLFlDZXFEO01BK0JyRCxZVHlDeUQ7TU0vRXZELHdCQUZxQztNQUdyQyx1QkFIcUMsRTZGd0RwQztNNUYrRUM7UTRGckZGO1U3RmhEQSx5QkFGcUM7VUFHckMsd0JBSHFDLEU2RndEcEMsRUFBQTtNMUZURDtRQUNFLGFUa0NzRCxFU2pDdkQ7TUZzRkM7UTRGckZGO1UzRnhERixXQ2VxRDtVQStCckQsWVR5Q3lEO1VNL0V2RCx3QkFGcUM7VUFHckMsdUJBSHFDO1U2RnNEakMsa0JBQWlCLEVBRXBCLEVBQUE7RTVGK0VDO0k0RnJGRjtNN0ZoREEseUJBRnFDO01BR3JDLHdCQUhxQyxFNkZ3RHBDLEVBQUE7TTVGK0VDO1VFeEZGO1lBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0UwRlNGO0lBRUcsd0I5RlFtRDtJOEZQbkQsb0I5Rk9tRCxFOEZOcEQ7RUFFSDtJQUNFLHNCOUZHcUQ7SThGRnJELG9COUZFcUQ7SThGRHJELGlCbEdWeUI7SWtHV3pCLGVBQWMsRUFDZjtFQUNEO0lBQ0UsY0FBYSxFQU1kO0k1RjBERztNNEZqRUo7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QWlEO01nR0NqRCx1QmhHRGlEO01nR0VqRCwwQnBHNUJPO01vRzZCUCxlcEc5Qk87TW9HK0JQLGdCaEdKaUQ7TWdHS2pELGlCcEdoQnFCO01vR2lCckIseUJoR05pRCxFZ0dTbEQ7TUFuQko7UUFpQmlCLGVoR1BxQyxFZ0dPZDtNQWpCeEM7UUFrQmdCLGNBQWEsRUFBSTtFQWxCakM7SUFzQkcsMkJoR1ptRDtJZ0dhbkQsc0NoR2JtRDtJZ0djbkQscUNoR2RtRDtJZ0dlbkQsMEJwR3pDUyxFb0crQ1Y7SUEvQkY7TUE0QnFCLGlCQUFnQixFQUFJO0VBS3pDO0lBRUcsaUNwR3BEUztJb0dxRFQsd0JoRzFCbUQ7SWdHMkJuRCx5QmhHM0JtRCxFZ0cyRXBEO0k5RlJDO004RjVDSDtRQU1LLHlCaEc3QmlEO1FnRzhCakQsMEJoRzlCaUQsRWdHMkVwRCxFQUFBO0lBcERGO01BVUssb0JBQW1CO01BQ25CLGlCQUFnQjtNQUNoQixrQkFBaUIsRUFDbEI7SUFiSjtNQWVLLHFCaEd0Q2lEO01nR3VDakQsZ0JBQWU7TUFDZix3QmhHeENpRDtNZ0d5Q2pELHdCaEd6Q2lEO01nRzBDakQsZXBHckVPO01vR3NFUCxpQnBHckRnQjtNb0dzRGhCLDBCQUF5QjtNQUN6QixnQmhHN0NpRDtNZ0c4Q2pELGlCQUFnQixFQVdqQjtNOUZVRDtROEY1Q0g7VUF3Qm1DLG9CaEcvQ21CLEVnR3lEbEQsRUFBQTtNQWxDSjtRQTBCTyxlcEc1RUs7UW9HNkVMLDBCQUF5QixFQUMxQjtNQTVCTjtRQTZCaUIsU0FBUSxFQUFJO01BN0I3QjtRQStCTyxpQnBHakVtQixFb0dtRXBCO1E5RldIO1U4RjVDSDtZQWdDb0MsYUFBWSxFQUMxQyxFQUFBO0lBakNOOzs7TUFzQ0ssZXBHeEZPO01vR3lGUCwwQkFBeUIsRUFDMUI7SUF4Q0o7TUEwQ2dCLGNBQWEsRUFBSTtJQTFDakM7TUE2Q0ssV0FBVTtNQUNWLGlCcEdsRmtCO01vR21GbEIsZUFBYztNQUNkLGdCaEd2RWlELEVnRzBFbEQ7TTlGUEQ7UThGNUNIO1VBaURtQyxvQmhHeEVtQixFZ0cwRWxE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aURBLHNCQUFxQjtJQUNyQix1QkFBc0I7SUFDdEIsbUJmNktrQztJZTVLbEMsMEJYUXVEO0lXTnZELHlCQUF3QjtJQUN4Qiw4QkFBNkI7SUFDN0IsaUJmSmU7SWVLZixrRWZ3THVFO0lldEx2RSxvQlhDdUQ7SVdBdkQsZUFBYztJQUNkLG1CQUFrQjtJQUNsQixnQkFBZTtJQXFDZiwwQmYzRWdCO0llNEVoQixlZmxFYTtJdUdoQ1gsaUJBQWdCO0lBQ2hCLHNDbkd5RHFEO0ltR3hEckQsb0JuR3dEcUQ7SW1HdkRyRCxpQnZHNEN5QjtJdUczQ3pCLHlCbkdzRHFEO0ltR3JEckQsMEJBQXlCLEVBQzFCO0k3R3U3T0M7TU96eU9BLFdBQVUsRUFDWDtJY2pERDtNQUNFLDBCZjRIdUU7TWUzSHZFLGVmdEVXLEVldUVaO0V3RmhHRDtJeEZ3Q0Esc0JBQXFCO0lBQ3JCLHVCQUFzQjtJQUN0QixtQmY2S2tDO0llNUtsQywwQlhRdUQ7SVdOdkQseUJBQXdCO0lBQ3hCLDhCQUE2QjtJQUM3QixpQmZKZTtJZUtmLGtFZndMdUU7SWV0THZFLG9CWEN1RDtJV0F2RCxlQUFjO0lBQ2QsbUJBQWtCO0lBQ2xCLGdCQUFlO0lBcUNmLDBCZjdEbUI7SWU4RG5CLGVmbEVhO0l1R3ZCWCxrQm5HaURxRDtJbUdoRHJELHFCQUFvQjtJQUNwQixpQnZHb0N5QjtJdUduQ3pCLDBCQUF5QjtJQUN6QixtQm5HNkNxRDtJbUc1Q3JELHlCbkc0Q3FELEVtRzNDdEQ7STdHdzhPQztNT24wT0EsV0FBVSxFQUNYO0ljakREO01BQ0UsMEJBUG9GO01BUXBGLGVmdEVXLEVldUVaO0V3RnZGRDtJeEYrQkEsc0JBQXFCO0lBQ3JCLHVCQUFzQjtJQUN0QixtQmY2S2tDO0llNUtsQywwQlhRdUQ7SVdOdkQseUJBQXdCO0lBQ3hCLDhCQUE2QjtJQUM3QixpQmZKZTtJZUtmLGtFZndMdUU7SWV0THZFLG9CWEN1RDtJV0F2RCxlQUFjO0lBQ2QsbUJBQWtCO0lBQ2xCLGdCQUFlO0lBcUNmLDBCZjFFa0I7SWUyRWxCLGVmbEVhO0l1R2RYLGlCdkc2QnlCO0l1RzVCekIsMEJBQXlCLEVBQzFCO0k3R3k5T0M7TU96MU9BLFdBQVUsRUFDWDtJY2pERDtNQUNFLHdCQVBvRjtNQVFwRixlZnRFVyxFZXVFWjtFd0ZsRkQ7SXhGMEJBLHNCQUFxQjtJQUNyQix1QkFBc0I7SUFDdEIsbUJmNktrQztJZTVLbEMsMEJYUXVEO0lXTnZELHlCQUF3QjtJQUN4Qiw4QkFBNkI7SUFDN0IsaUJmSmU7SWVLZixrRWZ3THVFO0lldEx2RSxvQlhDdUQ7SVdBdkQsZUFBYztJQUNkLG1CQUFrQjtJQUNsQixnQkFBZTtJQXFDZiwwQmY5RFk7SWUrRFosZWZsRWE7SXVHVFgsaUJ2R3dCeUI7SXVHdkJ6QiwwQkFBeUIsRUFDMUI7STdHMCtPQztNTy8yT0EsV0FBVSxFQUNYO0ljakREO01BQ0UsMEJBUG9GO01BUXBGLGVmdEVXLEVldUVaO0V3RmxIRDtJQXNDRSwwQm5HK0JxRDtJbUc5QnJELGdCbkc4QnFELEVtRzdCdEQ7RUFDRDtJQUNFLDBCbkcyQnFEO0ltRzFCckQsZ0JuRzBCcUQsRW1HekJ0RDtFQUNEO0lBQ0UseUJuR3VCcUQ7SW1HdEJyRCxvQm5Hc0JxRCxFbUdyQnREO0VBQ0Q7SUFBZSxpQkFBZ0IsRUFBSTs7QUFFckM7RUFFSSxpQ25HZ0JxRDtFbUdmckQsb0NuR2VxRCxFbUdkdEQ7O0EzRXFCRDtFNEU5RkEsYXBHdUZ1RDtFb0d0RnZELG9CcEdzRnVELEVvRzVFeEQ7RUFUQztJQUNFLE9BQU07SUFDTixnQnBHbUZxRDtJb0dsRnJELGV4R3VEVztJd0d0RFgsc0JwR2lGcUQ7SW9HaEZyRCxXQUFVLEVBR1g7SUFSQTtNQU9XLGV4R21EQyxFd0duRGdCOztBQ1YvQjtFQUNFLGVBQWM7RUFDZCxtQnJHc0Z1RDtFcUdyRnZELGlCekd5RXdCO0V5R3hFeEIsaUJ6RzJJd0IsRXlHckl6QjtFbkdpSks7SW1HM0pOO01BS2dDLG9CckdtRnlCLEVxRzlFeEQsRUFBQTtFbkdpSks7SW1HM0pOO01BTStCLGtCQUFTO1VBQVQsbUJBQVM7Y0FBVCxVQUFTLEVBSXZDLEVBQUE7RUFWRDtJQU9NLGVB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QyxFc0crWXBDO0VyR3hRQztJcUdpUUg7TXRHdFlDLHlCQUZxQztNQUdyQyx3QkFIcUMsRXNHK1lwQyxFQUFBO0VuR2hXRDtJQUNFLGFUa0NzRCxFU2pDdkQ7RUZzRkM7SXFHaVFIO01wRzlZRCxpQkNlcUQ7TUErQnJELFlUeUN5RDtNTS9FdkQsd0JBRnFDO01BR3JDLHVCQUhxQyxFc0crWXBDLEVBQUE7RXJHeFFDO0lxR2lRSDtNdEd0WUMseUJBRnFDO01BR3JDLHdCQUhxQyxFc0crWXBDLEVBQUE7RXJHeFFDO01FeEZGO1FBQ0UsYVRrQ3NELEVTakN2RCxFQUFBOztBbUd1VkY7RXBHOVlELFlDZXFEO0VBK0JyRCxZVHlDeUQ7RU0vRXZELHdCQUZxQztFQUdyQyx1QkFIcUMsRXNHa1pwQztFckczUUM7SXFHaVFIO010R3RZQyx5QkFGcUM7TUFHckMsd0JBSHFDLEVzR2tacEMsRUFBQTtFbkduV0Q7SUFDRSxhVGtDc0QsRVNqQ3ZEOztBbUd1VkY7RXBHOVlELFlDZXFEO0VBK0JyRCxZVHlDeUQ7RU0vRXZELHdCQUZxQztFQUdyQyx1QkFIcUMsRXNHeVpwQztFckdsUkM7SXFHaVFIO010R3RZQyx5QkFGcUM7TUFHckMsd0JBSHFDLEVzR3lacEMsRUFBQTtFbkcxV0Q7SUFDRSxhVGtDc0QsRVNqQ3ZEO0VGc0ZDO0lxR2lRSDtNcEc5WUQsaUJDZXFEO01BK0JyRCxZVHlDeUQ7TU0vRXZELHdCQUZxQztNQUdyQyx1QkFIcUMsRXNHeVpwQyxFQUFBO0VyR2xSQztJcUdpUUg7TXRHdFlDLHlCQUZxQztNQUdyQyx3QkFIcUMsRXNHeVpwQyxFQUFBO0VyR2xSQztNRXhGRjtRQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFbUd1VkY7SXhHeFVDLHdCQUYrRDtJQUcvRCx1QkFIK0QsRXdHd1ZOO0lyRy9RdkQ7TXFHaVFIO1F4R3hVQyx5QkFGK0Q7UUFHL0Qsd0JBSCtELEV3R3dWTixFQUFBO0lyRy9RdkQ7TXFHaVFIO1F4R3hVQyx5QkFGK0Q7UUFHL0Qsd0JBSCtELEV3R3dWTixFQUFBO0kxR3pSM0Q7TUFFRSxlQUFj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RSxZQUFXLEVBQ1o7RW1HdXZCQTtJeEd4dkJDLHdCQUYrRDtJQUcvRCx1QkFIK0Q7SXdHK3ZCN0Qsd0J2R3p2Qm1ELEV1RzJ2QnBEO0lyR3hyQkM7TXFHaXJCSDtReEd4dkJDLHlCQUYrRDtRQUcvRCx3QkFIK0QsRXdHaXdCOUQsRUFBQTtJckd4ckJDO01xR2lyQkg7UXhHeHZCQyx5QkFGK0Q7UUFHL0Qsd0JBSCtELEV3R2l3QjlELEVBQUE7STFHbHNCSDtNQUVFLGVBQWM7TUFDZCxhQUFZLEVBTWI7SUFFRDtNQUNFLFlBQVcsRUFDWjtJS0hHO01xR2lyQkg7UUFNZ0Msd0J2RzF2QnNCLEV1RzJ2QnBELEVBQUE7RUFQRjtJcEc5ekJELFlDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUMsRXNHNDBCcEM7SXJHcnNCQztNcUdpckJIO1F0R3R6QkMseUJBRnFDO1FBR3JDLHdCQUhxQyxFc0c0MEJwQyxFQUFBO0luRzd4QkQ7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO01xR2lyQkg7UXBHOXpCRCxXQ2VxRDtRQStCckQsWVR5Q3lEO1FNL0V2RCx3QkFGcUM7UUFHckMsdUJBSHFDO1FzR28wQmpDLHNCdkdod0JpRCxFdUd3d0JwRCxFQUFBO0VyR3JzQkM7SXFHaXJCSDtNdEd0ekJDLHlCQUZxQztNQUdyQyx3QkFIcUMsRXNHNDBCcEMsRUFBQTtJckdyc0JDO1FFeEZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0lGMkZDO01xRzRxQkg7UXBHOXpCRCxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFc0c0MEJwQyxFQUFBO0VyR3JzQkM7SXFHaXJCSDtNdEd0ekJDLHlCQUZxQztNQUdyQyx3QkFIcUMsRXNHNDBCcEMsRUFBQTtJckdoc0JDO1FFN0ZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0ltR3V3QkY7TUFpQkssb0J2R3J3QmlELEV1R3V3QmxEO01yR3BzQkQ7UXFHaXJCSDtVQWtCa0MsaUJBQWdCLEVBQzlDLEVBQUE7RUFuQko7SXBHOXpCRCxZQ2VxRDtJQStCckQsWVR5Q3lEO0lNL0V2RCx3QkFGcUM7SUFHckMsdUJBSHFDLEVzR2kyQnBDO0lyRzF0QkM7TXFHaXJCSDtRdEd0ekJDLHlCQUZxQztRQUdyQyx3QkFIcUMsRXNHaTJCcEMsRUFBQTtJbkdsekJEO01BQ0UsYVRrQ3NELEVTakN2RDtJRnNGQztNcUdpckJIO1FwRzl6QkQsV0NlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFc0dpMkJwQyxFQUFBO0VyRzF0QkM7SXFHaXJCSDtNdEd0ekJDLHlCQUZxQztNQUdyQyx3QkFIcUMsRXNHaTJCcEMsRUFBQTtJckcxdEJDO1FFeEZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0lGMkZDO01xRzRxQkg7UXBHOXpCRCxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFc0dpMkJwQyxFQUFBO0VyRzF0QkM7SXFHaXJCSDtNdEd0ekJDLHlCQUZxQztNQUdyQyx3QkFIcUMsRXNHaTJCcEMsRUFBQTtJckdydEJDO1FFN0ZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0ltR3V3QkY7TXhHeHZCQyx3QkFGK0Q7TUFHL0QsdUJBSCtELEV3R214Qk47TXJHMXNCdkQ7UXFHaXJCSDtVeEd4dkJDLHlCQUYrRDtVQUcvRCx3QkFIK0QsRXdHbXhCTixFQUFBO01yRzFzQnZEO1FxR2lyQkg7VXhHeHZCQyx5QkFGK0Q7VUFHL0Qsd0JBSCtELEV3R214Qk4sRUFBQTtNMUdwdEIzRDtRQUVFLGVBQWM7UUFDZCxhQUFZLEVBTWI7TUFFRDtRQUNFLFlBQVcsRUFDWjtJMEc4cUJBO01wRzl6QkQsaUJDZXFEO01BK0JyRCxZVHlDeUQ7TU0vRXZELHdCQUZxQztNQUdyQyx1QkFIcUMsRXNHazFCc0I7TXJHM3NCekQ7UXFHaXJCSDtVdEd0ekJDLHlCQUZxQztVQUdyQyx3QkFIcUMsRXNHazFCc0IsRUFBQTtNbkdueUIzRDtRQUNFLGFUa0NzRCxFU2pDdkQ7SW1HdXdCRjtNcEc5ekJELGlCQ2VxRDtNQStCckQsWVR5Q3lEO01NL0V2RCx3QkFGcUM7TUFHckMsdUJBSHFDLEVzR20xQnlCO01yRzVzQjVEO1FxR2lyQkg7VXRHdHpCQyx5QkFGcUM7VUFHckMsd0JBSHFDLEVzR20xQnlCLEVBQUE7TW5HcHlCOUQ7UUFDRSxhVGtDc0QsRVNqQ3ZEO0ltR3V3QkY7TUE2QksscUJ2R2p4QmlEO011R2t4QmpELGlCM0c3eEJxQixFMkc4eEJ0QjtJQS9CSjtNQWlDSyxpQjNHaHlCcUI7TTJHaXlCckIsYUFBWTtNQUNaLHlCdkd2eEJpRCxFdUd5eEJsRDtNckd0dEJEO1FxR2lyQkg7VUFvQ2tDLGlCdkd4eEJvQixFdUd5eEJsRCxFQUFBO0lyR3R0QkQ7TXFHaXJCSDtRQXVDa0MsY0FBYSxFQUMzQyxFQUFBO0VBeENKO0lwRzl6QkQsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFc0c2MkJwQztJckd0dUJDO01xR2lyQkg7UXRHdHpCQyx5QkFGcUM7UUFHckMsd0JBSHFDLEVzRzYyQnBDLEVBQUE7SW5HOXpCRDtNQUNFLGFUa0NzRCxFU2pDdkQ7SUZzRkM7TXFHaXJCSDtRcEc5ekJELFdDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUM7UXNHczJCakMsdUJBQXNCLEVBT3pCLEVBQUE7RXJHdHVCQztJcUdpckJIO010R3R6QkMseUJBRnFDO01BR3JDLHdCQUhxQyxFc0c2MkJwQyxFQUFBO0lyR3R1QkM7UUV4RkY7VUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7SUYyRkM7TXFHNHFCSDtRcEc5ekJELGlCQ2VxRDtRQStCckQsWVR5Q3lEO1FNL0V2RCx3QkFGcUM7UUFHckMsdUJBSHFDLEVzRzYyQnBDLEVBQUE7RXJHdHVCQztJcUdpckJIO010R3R6QkMseUJBRnFDO01BR3JDLHdCQUhxQyxFc0c2MkJwQyxFQUFBO0lyR2p1QkM7UUU3RkY7VUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7SW1HdXdCRjtNQWtESyxZQUFXO01BQ1gsaUJBQWdCLEVBQ2pCO0VyR2h1QkQ7SXFHNHFCSDtNcEc5ekJELFdDZXFEO01BK0JyRCxZVHlDeUQ7TU0vRXZELHdCQUZxQztNQUdyQyx1QkFIcUMsRXNHazNCcEMsRUFBQTtFckczdUJDO0lxR2lyQkg7TXRHdHpCQyx5QkFGcUM7TUFHckMsd0JBSHFDLEVzR2szQnBDLEVBQUE7RXJHdHVCQztNRTdGRjtRQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFbUd1d0JGO0lwRzl6QkQsV0NlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFc0cyM0JwQztJckdwdkJDO01xR2lyQkg7UXRHdHpCQyx5QkFGcUM7UUFHckMsd0JBSHFDLEVzRzIzQnBDLEVBQUE7SW5HNTBCRDtNQUNFLGFUa0NzRCxFU2pDdkQ7SUZzRkM7TXFHaXJCSDtRcEc5ekJELFdDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUMsRXNHMjNCcEMsRUFBQTtFckdwdkJDO0lxR2lyQkg7TXRHdHpCQyx5QkFGcUM7TUFHckMsd0JBSHFDLEVzRzIzQnBDLEVBQUE7SXJHcHZCQztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtJRjJGQztNcUc0cUJIO1FwRzl6QkQsaUJDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUMsRXNHMjNCcEMsRUFBQTtFckdwdkJDO0lxR2lyQkg7TXRHdHpCQyx5QkFGcUM7TUFHckMsd0JBSHFDLEVzRzIzQnBDLEVBQUE7SXJHL3VCQztRRTdGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtJbUd1d0JGO01BZ0VLLFlBQVc7TUFDWCxpQkFBZ0IsRUFDakI7RUFsRUo7SXBHOXpCRCxZQ2VxRDtJQStCckQsWVR5Q3lEO0lNL0V2RCx3QkFGcUM7SUFHckMsdUJBSHFDO0lzRzgzQm5DLGNBQWE7SUFDYixvQnZHM3pCbUQsRXVHNnpCcEQ7SXJHMXZCQztNcUdpckJIO1F0R3R6QkMseUJBRnFDO1FBR3JDLHdCQUhxQyxFc0dpNEJwQyxFQUFBO0luR2wx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MUdRQSxXQ2VxRDtRQStCckQsWVR5Q3lEO1FNL0V2RCx3QkFGcUM7UUFHckMsdUJBSHFDLEU0R0x0QyxFQUFBO0UzRzRJRztJMkdySko7TTVHZ0JFLHlCQUZxQztNQUdyQyx3QkFIcUMsRTRHTHRDLEVBQUE7STNHNElHO1FFeEZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0V5R3JESDtJMUdGQSxZQ2VxRDtJQStCckQsWVR5Q3lEO0lNL0V2RCx3QkFGcUM7SUFHckMsdUJBSHFDO0k0R0ZyQyx5QjdHc0VxRDtJNkdyRXJELG9CN0dxRXFEO0k2R3BFckQsaUJqSHdEc0I7SWlIdkR0QixpQkFBZ0IsRUFLakI7STNHaUlHO00yRzNJSjtRNUdNRSx5QkFGcUM7UUFHckMsd0JBSHFDLEU0R010QyxFQUFBO0l6R3lDQztNQUNFLGFUa0NzRCxFU2pDdkQ7SUZzRkM7TTJHM0lKO1ExR0ZBLFdDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUM7UTRHSW5DLGtCQUFpQixFQUVwQixFQUFBO0UzR2lJRztJMkczSUo7TTVHTUUseUJBRnFDO01BR3JDLHdCQUhxQyxFNEdNdEMsRUFBQTtJM0dpSUc7UUV4RkY7VUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7RXlHMUNIO0lBQ0Usb0I3RzREcUQ7STZHM0RyRCxpQmpIZ0R5QjtJaUgvQ3pCLGlCQUFnQixFQUNqQjtFQUNEO0lBQ0UsWUFBVztJQUNYLHVCN0dzRHFELEU2R2hEdEQ7STNHbUhHO00yRzNISjtRQUlJLGFBQVk7UUFDWixzQjdHbURtRDtRNkdsRG5ELGdCQUFlLEVBRWxCLEVBQUE7RUFDRDtJMUczQkEsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQztJNEd1QnJDLHlCN0c2Q3FEO0k2RzVDckQsb0I3RzRDcUQ7STZHM0NyRCxpQkFBZ0IsRUFDakI7STNHNkdHO00yR2xISjtRNUduQkUseUJBRnFDO1FBR3JDLHdCQUhxQyxFNEcwQnRDLEVBQUE7SXpHcUJDO01BQ0UsYVRrQ3NELEVTakN2RDtFRnNG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SUl0SUo7TUFZVSx5QkFINEI7TUFJNUIsd0JBSjRCLEVBMEJyQyxFQUFBO0VKd0dHO01JbkhGO1FBQ0UsWUFBVyxFQUNaO01BRUQ7UUFDRSxZQUFXLEVBQ1o7TUFFRDtRQUNFLFlYK0NxRCxFVzlDdEQsRUFBQTtFNEd2REw7SUF5Qk0sd0JsSCtEbUQ7SWtIOURuRCxpQkFBZ0I7SUFDaEIsMkJBQTBCLEVBRTNCO0loSDhIQztNZ0gzSk47UUE0Qm9DLHlCbEg0RHFCLEVrSDNEcEQsRUFBQTs7QUM3Qkw7RXBIaUdFLG9CQ1R1RDtFRDFCckQsbUJBQWtCO0VBQ2xCLGtCQUFpQjtFb0g3RG5CLHFCbkhzRnVELEVtSHpCeEQ7RXRIa0ZDO0lBRUUsZUFBYztJQUNkLGFBQVksRUFNYjtFQUVEO0lBQ0UsWUFBVyxFQUNaO0VLSEc7SWlIM0pOO01BR2dDLHFCbkhxRnlCLEVtSHpCeEQsRUFBQTtFakg0Rks7SWlIM0pOO01BSStCLGlCbkhvRjBCLEVtSHpCeEQsRUFBQTtFQS9ERDtJaEhjRSxZQ2VxRDtJQStCckQsWVR5Q3lEO0lNL0V2RCx3QkFGcUM7SUFHckMsdUJBSHFDLEVrSGJ0QztJakhvSkc7TWlIM0pOO1FsSHNCSSx5QkFGcUM7UUFHckMsd0JBSHFDLEVrSGJ0QyxFQUFBO0kvRzREQztNQUNFLGFUa0NzRCxFU2pDdkQ7RStHckVMO0lBU0ksY0FBYTtJQUNiLHlCbkg4RXFELEVtSHBFdEQ7SWpIdUlHO01pSDNKTjtRaEhjRSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQztRSXNCdkMsc0JEYnFEO1ErR2ZqRCxlQUFjLEVBTWpCLEVBQUE7RWpIdUlHO0lpSDNKTjtNbEhzQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFa0hBdEMsRUFBQTtJakh1SUc7UUV4RkY7VUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7SUYyRkM7TWlIaEtOO1FoSGNFLGlCQ2VxRDtRQStCckQsWVR5Q3lEO1FNL0V2RCx3QkFGcUM7UUFHckMsdUJBSHFDLEVrSEF0QyxFQUFBO0VqSHVJRztJaUgzSk47TWxIc0JJLHlCQUZxQztNQUdyQyx3QkFIcUMsRWtIQXRDLEVBQUE7SWpINElHO1FFN0ZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0lGMkZDO01pSGhLTjtRQW1CbUMsdUJuSHFFc0IsRW1IcEV0RCxFQUFBO0VqSHVJRztJaUh0SUg7TWhIUEQsV0NlcUQ7TUErQnJELFlUeUN5RDtNTS9FdkQsd0JBRnFDO01BR3JDLHVCQUhxQyxFa0hTcEMsRUFBQTtFakg4SEM7SWlIdElIO01sSENDLHlCQUZxQztNQUdyQyx3QkFIcUMsRWtIU3BDLEVBQUE7RWpIOEhDO01FeEZGO1FBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0VGMkZDO0lpSDNJSDtNaEhQRCxpQkNlcUQ7TUErQnJELFlUeUN5RDtNTS9FdkQsd0JBRnFDO01BR3JDLHVCQUhxQyxFa0hTcEMsRUFBQTtFakg4SEM7SWlIdElIO01sSENDLHlCQUZxQztNQUdyQyx3QkFIcUMsRWtIU3BDLEVBQUE7RWpIbUlDO01FN0ZGO1FBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0UrR3JFTDtJQWdDSSx1Qm5Id0RxRCxFbUh0RHREO0lqSHlIRztNaUgzSk47UUFpQ2tDLHdCbkh1RHVCLEVtSHREdEQsRUFBQTtFQWxDSDtJQXFDTSxVQUFTO0lBQ1QsaUJBQWdCLEVBZ0JqQjtJQXRETDtNQXdDUSx5Qm5IZ0RpRDtNbUgvQ2pELGVBQWM7TUFDZCxvQm5IOENpRCxFbUhuQ2xEO01qSHNHRDtRaUgzSk47VUE0Q1Usd0JuSDRDK0M7VW1IM0MvQyxnQm5IMkMrQyxFbUhuQ2xELEVBQUE7TWpIc0dEO1FpSDNKTjtVQStDcUMsb0JuSHlDb0IsRW1IbkNsRCxFQUFBO01BckRQO1FBaURVLGFBQWE7UUFDYix1Qm5Ic0MrQztRbUhyQy9DLGV2SENRLEV1SEFUO0VBcERUO0lBeURJLG1CQUFrQjtJQUNsQiwrQnZITmMsRXVIVWY7SWpINkZHO01pSDNKTjtRQTJEa0MsK0J2SFBoQixFdUhVZixFQUFBO0lqSDZGRztNaUgzSk47UUE0RGlDLCtCdkhSZixFdUhVZixFQUFBO0lqSGtHRztNaUhoS047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QW1CO01BQ25CLHdCdkh5RG1EO011SHhEbkQseUJ2SHdEbUQ7TXVIdkRuRCx1QnZIdURtRDtNdUh0RG5ELDBCdkhzRG1EO011SHJEbkQsdUNBQThCO1VBQTlCLHVCQUE4QjtjQUE5QiwrQkFBOEI7TUFDOUIsMEIzSDBCUztNMkh6QlQseUJ2SG1EbUQsRXVIbERwRDtFQXRDTDs7SUEwQ0kscUJ2SDhDcUQ7SXVIN0NyRCxpQjNIa0N5QjtJMkhqQ3pCLGlCQUFnQixFQUNqQjtFQTdDSDtJQThDMkIsZUFBYyxFQUFJOztBQzlDN0M7RUFDUSx5QnhIdUZpRCxFd0h2Rm5COztBQ0R0QztFQUNRLHlCekh1RmlELEV5SHZGbkI7O0FDRHRDO0VBRUksd0IxSHNGcUQsRTBIL0V0RDtFeEhrSkc7SXdIM0pOO01BR2tDLHdCMUhxRnVCLEUwSC9FdEQsRUFBQTtFQVRIO0lBS00sVUFBUztJQUNULGlCQUFnQixFQUNqQjtFQVBMO0lBUVUsWUFBVyxFQUFJOztBQVJ6QjtFM0hpR0Usb0JDVHVEO0VEMUJyRCxtQkFBa0I7RUFDbEIsa0JBQWlCO0VJakRuQixZQ2VxRDtFQStCckQsWVR5Q3lEO0VNL0V2RCx3QkFGcUM7RUFHckMsdUJBSHFDO0V5SFJyQyxtQjFINEVxRDtFMEgzRXJELHFCMUgyRXFEO0UwSDFFckQsdUIxSDBFcUQsRTBIL0R0RDtFN0h3SEQ7SUFFRSxlQUFjO0lBQ2QsYUFBWSxFQU1iO0VBRUQ7SUFDRSxZQUFXLEVBQ1o7RUtIRztJd0gzSk47TXpIc0JJLHlCQUZxQztNQUdyQyx3QkFIcUMsRXlIS3RDLEVBQUE7RXRIMENDO0lBQ0UsYVRrQ3NELEVTakN2RDtFQWFIO0lBRUUsWUFBVyxFQUNaO0VGc0VHO0l3SDNKTjtNQWVrQyxxQjFIeUV1QixFMEgvRHRELEVBQUE7RXhIa0lHO0l3SDNKTjtNQWlCTSxvQjFIdUVtRDtNMEh0RW5ELHdCMUhzRW1ELEUwSC9EdEQsRUFBQTtFQXpCSDtJQXNCTSxpQkFBZ0I7SUFDaEIsb0IxSGlFbUQsRTBIaEVwRDs7QUF4Qkw7RTNIaUdFLG9CQ1R1RDtFRDFCckQsbUJBQWtC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RWtCLEV5SWxFbkI7TW5JK0lDO1FtSTNKTjtVQVdvQyxvQnJJNkVxQixFcUk1RXBELEVBQUE7SW5JK0lDO01tSTNKTjtRbEljRSxXQ2VxRDtRQStCckQsWVR5Q3lEO1FNL0V2RCx3QkFGcUM7UUFHckMsdUJBSHFDO1FvSUxuQyxpQkFBZ0IsRUFFbkIsRUFBQTtFbkkwSUc7SW1JM0pOO01wSXNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVvSUh0QyxFQUFBO0luSTBJRztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFaUlyRUw7SWxJY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQztJb0lBckMsd0JySW9FcUQsRXFJN0R0RDtJbklnSUc7TW1JM0pOO1FwSXNCSSx5QkFGcUM7UUFHckMsd0JBSHFDLEVvSU90QyxFQUFBO0lqSXdDQztNQUNFLGFUa0NzRCxFU2pDdkQ7SUZzRkM7TW1JM0pOO1FsSWNFLFdDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUM7UW9JR25DLGlCQUFnQixFQUluQixFQUFBO0VuSWdJRztJbUkzSk47TXBJc0JJLHlCQUZxQztNQUdyQyx3QkFIcUMsRW9JT3RDLEVBQUE7SW5JZ0lHO1FFeEZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0lpSXJFTDtNQTBCYSx5QnJJOEQ0QyxFcUk5RGI7O0FDMUI1QztFQUNFLGVBQWM7RUFDZCxvQnRJc0Z1RDtFc0lyRnZELGlCQUFnQjtFQUNoQixtQkFBa0IsRUFjbkI7RXBJeUlLO0lvSTNKTjtNQUtnQyxnQnRJbUZ5QixFc0l0RXhELEVBQUE7RUFsQkQ7SUFNTSxlQUFjLEVBQUk7RUFOeEI7SUFPb0IseUJ0SWlGcUMsRXNJakZOO0VBUG5EO0lBUWtCLGlCMUlzRU0sRTBJdEU4QjtFQVJ0RDtJQVVJLGlCMUlrRXNCLEUwSTNEdkI7SUFqQkg7TUFhUSxhQUFZLEVBQ2I7SUFkUDtNQWU0QixjQUFhLEVBQUk7O0FDZjdDO0V4SWlHRSxvQkNUdUQ7RUQxQnJELG1CQUFrQjtFQUNsQixrQkFBaUI7RUlqRG5CLFlDZXFEO0VBK0JyRCxZVHlDeUQ7RU0vRXZELHdCQUZxQztFQUdyQyx1QkFIcUM7RXNJbEJ2QyxzQnZJc0Z1RDtFdUlyRnZELHlCdklxRnVELEV1SW5CeEQ7RTFJNEVDO0lBRUUsZUFBYztJQUNkLGFBQVksRUFNYjtFQUVEO0lBQ0UsWUFBVyxFQUNaO0VLSEc7SXFJM0pOO010SXNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVzSWlEeEMsRUFBQTtFbklGRztJQUNFLGFUa0NzRCxFU2pDdkQ7RUFhSDtJQUVFLFlBQVcsRUFDWjtFRnNFRztJcUkzSk47TUFLSSxzQnZJbUZxRDtNdUlsRnJELHlCdklrRnFELEV1SW5CeEQsRUFBQTtFcklzRks7SXFJM0pOO01BU0kscUJ2SStFcUQ7TXVJOUVyRCx3QnZJOEVxRCxFdUluQnhELEVBQUE7RUFyRUQ7SUFhSSxxQnZJMkVxRDtJdUkxRXJELGVBQWM7SUFDZCxnQnZJeUVxRCxFdUluQ3REO0lySXNHRztNcUkzSk47UUFnQmtDLHFCdkl3RXVCLEV1SW5DdEQsRUFBQTtJcklzR0c7TXFJM0pOO1FBaUJpQyxvQnZJdUV3QixFdUluQ3RELEVBQUE7SUFyREg7TUFtQk0sZTNJa0NjO00ySWpDZCxpQjNJMERrQjtNMkl6RGxCLHNCQUFxQixFQUt0QjtNQTFCTDtRQXVCUSxhQUFtQztRQUNuQyxzQkFBcUIsRUFDdEI7SUF6QlA7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQWlDTSxzQnZJdURtRDtNdUl0RG5ELGUzSTJCUyxFMkkxQlY7O0lBbkNMOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQXFDTSxtQnZJbURtRCxFdUlqRHBEO01ySW9IQzs7UXFJM0pOOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztVQXNDb0Msb0J2SWtEcUIsRXVJakRwRCxFQUFBOztJQXZDTDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztN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QVU7Y0FBVixXQUFVO01BQ1Ysd0JBQWU7VUFBZiw2QkFBZTtjQUFmLGdCQUFlLEVBRWxCLEVBQUE7RUF2SUw7SUEwSXVCLGtCQUFTO1FBQVQsbUJBQVM7WUFBVCxVQUFTLEVBQUk7O0FDMUlwQztFMUlpR0Usb0JDVHVEO0VEMUJyRCxtQkFBa0I7RUFDbEIsa0JBQWlCLEUwSXdDcEI7RTVJMENDO0lBRUUsZUFBYztJQUNkLGFBQVksRUFNYjtFQUVEO0lBQ0UsWUFBVyxFQUNaO0U0STlKSDtJdEljRSxZQ2VxRDtJQStCckQsWVR5Q3lEO0lNL0V2RCx3QkFGcUM7SUFHckMsdUJBSHFDLEV3SWhCdEM7SXZJdUpHO011STNKTjtReElzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFd0loQnRDLEVBQUE7SXJJK0RDO01BQ0UsYVRrQ3NELEVTakN2RDtFcUlyRUw7SXRJY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQztJd0lickMseUJ6SWlGcUQsRXlJdEV0RDtJdkl5SUc7TXVJM0pOO1F4SXNCSSx5QkFGcUM7UUFHckMsd0JBSHFDLEV3SUZ0QyxFQUFBO0lySWlEQztNQUNFLGFUa0NzRCxFU2pDdkQ7SUZzRkM7TXVJM0pOO1FBUWtDLDBCeklnRnVCLEV5SXRFdEQsRUFBQTtJdkl5SUc7TXVJM0pOO1F0SWNFLGlCQ2VxRDtRQStCckQsWVR5Q3lEO1FNL0V2RCx3QkFGcUM7UUFHckMsdUJBSHFDO1FJc0J2QyxzQkRicUQ7UXFJakJqRCx5QnpJNEVtRCxFeUl0RXRELEVBQUE7RXZJeUlHO0l1STNKTjtNeElzQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFd0lGdEMsRUFBQTtJdkl5SUc7UUV4RkY7VUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7SUYyRkM7TXVJaEtOO1F0SWNFLFdDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUM7UUlzQnZDLHVCRGJxRCxFcUlYcEQsRUFBQTtFdkl5SUc7SXVJM0pOO014SXNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEV3SUZ0QyxFQUFBO0l2SThJRztRRTdGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFcUlsREY7SUFFRyx3QnpJbUVtRCxFeUkxRHBEO0l2STZIQztNdUl4SUg7UUFHaUMsd0J6SWtFcUIsRXlJMURwRCxFQUFBO0l2STZIQztNdUl4SUg7UXRJTEQsV0NlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQztRd0lLakMsaUJBQWdCLEVBS25CLEVBQUE7RXZJNkhDO0l1SXhJSDtNeElHQyx5QkFGcUM7TUFHckMsd0JBSHFDLEV3SVVwQyxFQUFBO0l2STZIQztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtJRjJGQztNdUk3SUg7UXRJTEQsaUJDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUMsRXdJVXBDLEVBQUE7RXZJNkhDO0l1SXhJSDtNeElHQyx5QkFGcUM7TUFHckMsd0JBSHFDLEV3SVVwQyxFQUFBO0l2SWtJQztRRTdGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFcUlyRUw7SUFpQ0ksaUJ6SXVEcUQ7SXlJdERyRCwwQjdJNEJXO0k2STNCWCw4RUFBNkUsRUFTOUU7SXZJK0dHO011STNKTjtRQW9Da0Msa0J6SW9EdUIsRXlJNUN0RCxFQUFBO0lBNUNIO00xSW9GSSx3QkFGK0Q7TUFHL0QsdUJBSCtELEUwSXZDOUQ7TXZJZ0hDO1F1STNKTjtVMUlvRkkseUJBRitEO1VBRy9ELHdCQUgrRCxFMEl2QzlELEVBQUE7TXZJZ0hDO1F1STNKTjtVMUlvRkkseUJBRitEO1VBRy9ELHdCQUgrRCxFMEl2QzlELEVBQUE7TTVJc0dIO1FBRUUsZUFBYztRQUNkLGFBQVksRUFNYjtNQUVEO1FBQ0UsWUFBVyxFQUNaO01LRUc7UXVJaEtOO1VBd0NRLHNCQUFhO1VBQWIscUJBQWE7VUFBYixjQUFhO1VBQ2IsNEJBQW1CO2NBQW5CLHVCQUFtQjtrQkFBbkIsb0JBQW1CLEVBRXRCLEVBQUE7RUEzQ0w7SXRJY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQztJd0kyQnJDLHVCekl5Q3FELEV5STlCdEQ7SXZJaUdHO011STNKTjtReElzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFd0lzQ3RDLEVBQUE7SXJJU0M7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO011STNKTjtRQWdEa0Msd0J6SXdDdUIsRXlJOUJ0RCxFQUFBO0l2SXNHRztNdUloS047UXRJY0UsaUJDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUM7UXdJK0JuQyxpQkFBZ0IsRUFPbkIsRUFBQTtFdklpR0c7SXVJM0pOO014SXNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEV3SXNDdEMsRUFBQTtJdklzR0c7UUU3RkY7VUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7SXFJckVMO01Bc0RNLGVBQWM7TUFDZCxtQnpJaUNtRCxFeUkvQnBEO01BekRMO1FBd0R1QixpQjdJcUJNLEU2SXJCbUM7RUF4RGhFO0l0SWNFLFlDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUMsRXdJNEV0QztJdkkyREc7TXVJM0pOO1F4SXNCSSx5QkFGcUM7UUFHckMsd0JBSHFDLEV3STRFdEMsRUFBQTtJckk3QkM7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGMkZDO011SWhLTjtRdEljRSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFd0k0RXRDLEVBQUE7RXZJMkRHO0l1STNKTjtNeElzQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFd0k0RXRDLEVBQUE7SXZJZ0VHO1FFN0ZGO1VBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0lxSXJFTDtNMUlvRkksd0JBRitEO01BRy9ELHVCQUgrRDtNMEloQjdELGlCQUFnQjtNQUNoQixpQkFBZ0IsRUE0QmpCO012STREQztRdUkzSk47VTFJb0ZJLHlCQUYrRDtVQUcvRCx3QkFIK0QsRTBJYTlELEVBQUE7TXZJNERDO1F1STNKTjtVMUlvRkkseUJBRitEO1VBRy9ELHdCQUgrRCxFMElhOUQsRUFBQTtNNUlrREg7UUFFRSxlQUFjO1FBQ2QsYUFBWSxFQU1iO01BRUQ7UUFDRSxZQUFXLEVBQ1o7TUtFRztRdUloS047VUFxRVEsc0JBQWE7VUFBYixxQkFBYTtVQUFiLGNBQWE7VUFDYiw0QkFBbUI7Y0FBbkIsdUJBQW1CO2tCQUFuQixvQkFBbUIsRUF5QnRCLEVBQUE7TUEvRkw7UXRJY0UsWUNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQztRd0lzRGpDLHdCekljaUQsRXlJUmxEO1F2STJFRDtVdUkzSk47WXhJc0JJLHlCQUZxQztZQUdyQyx3QkFIcUMsRXdJNERsQyxFQUFBO1FySWJIO1VBQ0UsYVRrQ3NELEVTakN2RDtRRnNGQztVdUkzSk47WUEyRXNDLHlCeklhbUIsRXlJUmxELEVBQUE7UXZJZ0ZEO1V1SWhLTjtZdEljRSxpQkNlcUQ7WUErQnJELFlUeUN5RDtZTS9FdkQsd0JBRnFDO1lBR3JDLHVCQUhxQztZd0kwRC9CLGlCQUFnQixFQUVuQixFQUFBO0V2STJFRDtJdUkzSk47TXhJc0JJLHlCQUZxQztNQUdyQyx3QkFIcUMsRXdJNERsQyxFQUFBO1F2SWdGRDtZRTdGRjtjQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtNcUlyRUw7UXRJY0UsWUNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFd0lrRWxDO1F2SXFFRDtVdUkzSk47WXhJc0JJLHlCQUZxQztZQUdyQyx3QkFIcUMsRXdJa0VsQyxFQUFBO1FySW5CSDtVQUNFLGFUa0NzRCxFU2pDdkQ7UUYyRkM7VXVJaEtOO1l0SWNFLGlCQ2VxRDtZQStCckQsWVR5Q3lEO1lNL0V2RCx3QkFGcUM7WUFHckMsdUJBSHFDLEV3SWtFbEMsRUFBQTtFdklxRUQ7SXVJM0pOO014SXNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEV3SWtFbEMsRUFBQTtRdkkwRUQ7WUU3RkY7Y0FDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7TXFJckVMO1E5SDZFRSxzQkFBcUI7UUFDckIsdUJBQXNCO1FBQ3RCLG1CZjZLa0M7UWU1S2xDLDBCWFF1RDtRV052RCx5QkFBd0I7UUFDeEIsOEJBQTZCO1FBQzdCLGlCZkplO1FlS2Ysa0Vmd0x1RTtRZXRMdkUsb0JYQ3VEO1FXQXZELGVBQWM7UUFDZCxtQkFBa0I7UUFDbEIsZ0JBQWU7UUFxQ2YsMEJmM0VnQjtRZTRFaEIsZWZsRWE7UTZJMkJQLFlBQVc7UUFDWCxpQkFBZ0I7UUFDaEIsZ0J6SUhpRDtReUlJakQsaUI3SWZxQjtRNklnQnJCLHlCeklMaUQsRXlJTWxEO1FuSnN5WUM7VU9sdFlKLFdBQVUsRUFDWDtRY2pERDtVQUNFLDBCZjRIdUU7VWUzSHZFLGVmdEVXLEVldUVaO0U4SHJJSDtJQWtHSSxtQkFBa0I7SUFDbEIsK0I3SS9DYyxFNklrRGY7SXZJcURHO011STNKTjtRQW9Ha0MsK0I3SWhEaEIsRTZJa0RmLEVBQUE7SXZJcURHO011STNKTjtRQXFHaUMsK0I3SWpEZixFNklrRGYsRUFBQTs7QUN0R0g7RUFDRSxtQkFBa0I7RUFDbEIsbUJBQWtCO0VBQ2xCLDBCOUkyRGE7RThJMURiLDhFQUE2RTtFQUM3RSxrQjFJbUZ1RCxFMElwRHhEO0V4SXVISztJd0kzSk47TUFNZ0Msa0IxSWtGeUIsRTBJcER4RCxFQUFBO0V4STRISztJd0loS047TUFPaUMsa0IxSWlGd0IsRTBJcER4RCxFQUFBO0VBcENEO0lBU0kseUIxSStFcUQ7STBJOUVyRCxvQjFJOEVxRCxFMEk3RXREO0VBWEg7SUFhSSxlQUFjO0lBQ2QsaUJBQWdCLEVBQ2pCO0VBZkg7SUFpQkksbUJBQWtCO0lBQ2xCLG1CMUlzRXFEO0kwSXJFckQsUUFBTztJQUNQLFNBQVE7SUFDUixrQkFBaUI7SUFDakIsbUJBQWtCLEVBYW5CO0lBbkNIO01Bd0JNLHNCQUFxQjtNQUNyQiw0QjFJK0RtRDtNMEk5RG5ELGU5SW9DUztNOEluQ1QsbUIxSTZEbUQ7TTBJNURuRCxvQjlJd0JZO004SXZCWix5QjFJMkRtRCxFMEl0RHBEO014SXlIQztRd0kzSk47VUErQlEsdUIxSXlEaUQ7VTBJeERqRCx3QjFJ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ckVsRCxFQUFBOztBQW5CUDtFQXVCSSxxQjlJaUVxRDtFOEloRXJELGlCQUFnQixFQUVqQjtFNUlpSUc7STRJM0pOO01BeUJrQyxnQjlJK0R1QixFOEk5RHRELEVBQUE7O0FBMUJIO0VBMkJ1QixpQmxKa0RNLEVrSmxEbUM7O0FBM0JoRTtFQTRCdUIsaUJsSmdERyxFa0poRG1DOztBQzVCN0Q7RWhKb0ZJLHdCQUYrRDtFQUcvRCx1QkFIK0QsRWdKNUNsRTtFN0lxSEs7STZJM0pOO01oSm9GSSx5QkFGK0Q7TUFHL0Qsd0JBSCtELEVnSjVDbEUsRUFBQTtFN0lxSEs7STZJM0pOO01oSm9GSSx5QkFGK0Q7TUFHL0Qsd0JBSCtELEVnSjVDbEUsRUFBQTtFbEoyR0M7SUFFRSxlQUFjO0lBQ2QsYUFBWSxFQU1iO0VBRUQ7SUFDRSxZQUFXLEVBQ1o7RWtKOUpIO0k1SWNFLFdDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUMsRThJYnRDO0k3SW9KRztNNkkzSk47UTlJc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRThJYnRDLEVBQUE7STNJNERDO01BQ0UsYVRrQ3NELEVTakN2RDtJRnNGQztNNkkzSk47UTVJY0UsaUJDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUMsRThJYnRDLEVBQUE7RTdJb0pHO0k2STNKTjtNOUlzQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFOElidEMsRUFBQTtJN0lvSkc7UUV4RkY7VUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7RTJJckVMO0k1SWNFLFdDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUMsRThJUHRDO0k3SThJRztNNkkzSk47UTlJc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRThJUHRDLEVBQUE7STNJc0RDO01BQ0UsYVRrQ3NELEVTakN2RDtJRnNGQztNNkkzSk47UTVJY0UsaUJDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUMsRThJUHRDLEVBQUE7RTdJOElHO0k2STNKTjtNOUlzQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFOElQdEMsRUFBQTtJN0k4SUc7UUV4RkY7VUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7RTJJckVMO0k1SWNFLFlDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUMsRThJRXRDO0k3SXFJRztNNkkzSk47UTlJc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRThJRXRDLEVBQUE7STNJNkNDO01BQ0UsYVRrQ3NELEVTakN2RDtJMklyRUw7TUFnQmMsaUJBQWdCLEVBQUk7STdJMkk1QjtNNkkzSk47UTVJY0UsaUJDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUM7UThJRG5DLHNCL0lxRW1ELEUrSWxFdEQsRUFBQTtFN0lxSUc7STZJM0pOO005SXNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEU4SUV0QyxFQUFBO0k3SXFJRztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQ7UTJJckVMO1VBb0JnQixZQUFXLEVBQUksRUFBQTtFN0l1SXpCO0k2STNKTjs7TUF5QmtDLGlCL0krRHVCLEUrSTlEdEQsRUFBQTtFN0lpSUc7STZJM0pOO01BNEJrQyxpQkFBZ0IsRUFDL0MsRUFBQTtFQTdCSDtJNUljRSxZQ2VxRDtJQStCckQsWVR5Q3lEO0lNL0V2RCx3QkFGcUM7SUFHckMsdUJBSHFDLEU4SWdCcEM7STdJdUhDO002STNKTjtROUlzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFOElnQnBDLEVBQUE7STNJK0JEO01BQ0UsYVRrQ3NELEVTakN2RDtJRnNGQztNNkkzSk47UTVJY0UsaUJDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUMsRThJZ0JwQyxFQUFBO0U3SXVIQztJNkkzSk47TTlJc0JJLHlCQUZxQztNQUdyQyx3QkFIcUMsRThJZ0JwQyxFQUFBO0k3SXVIQztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTs7QTJJOUJMO0VBQ0UsbUJBQWtCLEVBb0NuQjtFQXJDRDtJQUVtQixjQUFhLEVBQUk7RUFGcEM7O0lBS0ksaUIvSTRDcUQ7SStJM0NyRCxhQUFZO0lBQ1oseUIvSTBDcUQ7SStJekNyRCx1Qi9JeUNxRDtJK0l4Q3JELHdCL0l3Q3FEO0krSXZDckQsZ0IvSXVDcUQ7SStJdENyRCxpQm5KMkJ5QjtJbUoxQnpCLDBCQUF5QixFQVUxQjtJN0k4Rkc7TTZJcEhOOztRQWNNLHdCL0ltQ21EO1ErSWxDbkQseUIvSWtDbUQsRStJM0J0RCxFQUFBO0lBdEJIOztNQWtCTSxlQUFjO01BQ2Qsb0IvSThCbUQ7TStJN0JuRCxpQm5Ka0J1QixFbUpqQnhCO0lBckJMOztNQWtCTSxlQUFjO01BQ2Qsb0IvSThCbUQ7TStJN0JuRCxpQm5Ka0J1QixFbUpqQnhCO0lBckJMOztNQWtCTSxlQUFjO01BQ2Qsb0IvSThCbUQ7TStJN0JuRCxpQm5Ka0J1QixFbUpqQnhCO0VBckJMO0lBd0JJLHFCL0l5QnFEO0krSXhCckQsaUJBQWdCLEVBV2pCO0lBcENIO01wSXNDRSxzQkFBcUI7TUFDckIsdUJBQXNCO01BQ3RCLG1CZjZLa0M7TWU1S2xDLDBCWFF1RDtNV052RCx5QkFBd0I7TUFDeEIsOEJBQTZCO01BQzdCLGlCZkplO01lS2Ysa0Vmd0x1RTtNZXRMdkUsb0JYQ3VEO01XQXZELGVBQWM7TUFDZCxtQkFBa0I7TUFDbEIsZ0JBQWU7TUFxQ2YsMEJmM0VnQjtNZTRFaEIsZWZsRWE7TW1KS1QsaUJBQWdCO01BQ2hCLFdBQVU7TUFDVixjL0ltQm1EO00rSWxCbkQsZS9Ja0JtRDtNK0lqQm5ELGdCL0lpQm1EO00rSWhCbkQsYUFBWTtNQUNaLHlCL0llbUQsRStJZHBEO016SnV4WkM7UU8vcVpGLFdBQVUsRUFDWDtNY2pERDtRQUNFLDBCZjRIdUU7UWUzSHZFLGVmdEVXLEVldUVaOztBcUlySUg7RWpKb0ZJLHdCQUYrRDtFQUcvRCx1QkFIK0QsRWlKN0RsRTtFOUlzSUs7SThJM0pOO01qSm9GSSx5QkFGK0Q7TUFHL0Qsd0JBSCtELEVpSjdEbEUsRUFBQTtFOUlzSUs7SThJM0pOO01qSm9GSSx5QkFGK0Q7TUFHL0Qsd0JBSCtELEVpSjdEbEUsRUFBQTtFbko0SEM7SUFFRSxlQUFjO0lBQ2QsYUFBWSxFQU1iO0VBRUQ7SUFDRSxZQUFXLEVBQ1o7RW1KOUpIOzs7O0k3SWNFLFlDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUMsRStJUHRDO0k5SThJRztNOEkzSk47Ozs7US9Jc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRStJUHRDLEVBQUE7STVJc0RDOzs7O01BQ0UsYVRrQ3NELEVTakN2RDtJRnNGQztNOEkzSk47Ozs7UTdJY0UsV0NlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFK0lQdEMsRUFBQTtFOUk4SUc7SThJM0pOOzs7O00vSXNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEUrSVB0QyxFQUFBO0k5SThJRztRRXhGRjs7OztVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtJRnNGQztNOEkzSk47Ozs7UTdJY0UsV0NlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFK0lQdEMsRUFBQTtFOUk4SUc7SThJM0pOOzs7O00vSXNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEUrSVB0QyxFQUFBO0k5SThJRztRRXhGRjs7OztVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFNElyRUw7Ozs7O0k3SWNFLFlDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUMsRStJQXRDO0k5SXVJRztNOEkzSk47Ozs7O1EvSXNCSSx5QkFGcUM7UUFHckMsd0JBSHFDLEUrSUF0QyxFQUFBO0k1SStDQzs7Ozs7TUFDRSxhVGtDc0QsRVNqQ3ZEOztBNklyRUw7RUFHSSx3QmpKcUZxRDtFaUpwRnJELGtCakpvRnFELEVpSm5GdEQ7O0FBTEg7RUFPSSx1QmpKaUZxRDtFaUpoRnJELGVBQWM7RUFDZCxnQmpKK0VxRDtFaUo5RXJELGlCckprRXNCO0VxSmpFdEIsaUJBQWdCLEVBQ2pCOztBQVpIO0VBY0ks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UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUMsRWtKUHRDLEVBQUE7RWpKOElHO0lpSjNKTjs7OztNbEpzQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFa0pQdEMsRUFBQTtJako4SUc7UUV4RkY7Ozs7VUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7SUZzRkM7TWlKM0pOOzs7O1FoSmNFLFdDZXFEO1FBK0JyRCxZVHlDeUQ7UU0vRXZELHdCQUZxQztRQUdyQyx1QkFIcUMsRWtKUHRDLEVBQUE7RWpKOElHO0lpSjNKTjs7OztNbEpzQkkseUJBRnFDO01BR3JDLHdCQUhxQyxFa0pQdEMsRUFBQTtJako4SUc7UUV4RkY7Ozs7VUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7RStJckVMOzs7O0loSmNFLFlDZXFEO0lBK0JyRCxZVHlDeUQ7SU0vRXZELHdCQUZxQztJQUdyQyx1QkFIcUMsRWtKRHRDO0lqSndJRztNaUozSk47Ozs7UWxKc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRWtKRHRDLEVBQUE7SS9JZ0RDOzs7O01BQ0UsYVRrQ3NELEVTakN2RDs7QWdKckVMO0VBQ0UsbUJBQWtCO0VBQ2xCLFlBQVc7RUFDWCxpQkFBZ0I7RUFDaEIsMEJ4SmdEZ0IsRXdKbENqQjtFQWJDO0lBQ0UsbUJBQWtCO0lBQ2xCLHNCcEppRnFEO0lvSmhGckQsU0FBUTtJQUNSLFFBQU87SUFDUCxVQUFTO0lBQ1QsU0FBUTtJQUNSLGV4SmtEVztJd0pqRFgsbUJwSjJFcUQ7SW9KMUVyRCxpQnhKK0R5QjtJd0o5RHpCLGVBQWM7SUFDZCxtQkFBa0IsRUFDbkI7O0FBRUg7RUFHTSxzQnBKa0VtRDtFb0pqRW5ELG1CcEppRW1ELEVvSmhFcEQ7O0FBR0w7RUFHTSx1QnBKMERtRDtFb0p6RG5ELG9CcEp5RG1ELEVvSnhEcEQ7O0FBR0w7RUFHTSxzQnBKa0RtRDtFb0pqRG5ELG1CcEppRG1ELEVvSmhEcEQ7O0FsSm1IQztFa0poSE47SUFHTSxpQnBKMENtRDtJb0p6Q25ELGVBQWMsRUFFakIsRUFBQTs7QWxKK0dHO0VrSjdHTjs7Ozs7O0lBU1EsdUJw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RUFDWDtJY2pERDtNQUNFLDBCZjRIdUU7TWUzSHZFLGVmdEVXLEVldUVaO0U0SXJJSDtJeEppR0Usb0JDVHVEO0lEMUJyRCxtQkFBa0I7SUFDbEIsa0JBQWlCLEV3SjFCbEI7STFKNEdEO01BRUUsZUFBYztNQUNkLGFBQVksRUFNYjtJQUVEO01BQ0UsWUFBVyxFQUNaO0kwSjlKSDtNcEpjRSxZQ2VxRDtNQStCckQsWVR5Q3lEO01NL0V2RCx3QkFGcUM7TUFHckMsdUJBSHFDLEVzSk1wQztNckppSUM7UXFKM0pOO1V0SnNCSSx5QkFGcUM7VUFHckMsd0JBSHFDLEVzSk1wQyxFQUFBO01uSnlDRDtRQUNFLGFUa0NzRCxFU2pDdkQ7TUZzRkM7UXFKM0pOO1VwSmNFLGlCQ2VxRDtVQStCckQsWVR5Q3lEO1VNL0V2RCx3QkFGcUM7VUFHckMsdUJBSHFDLEVzSk1wQyxFQUFBO0VySmlJQztJcUozSk47TXRKc0JJLHlCQUZxQztNQUdyQyx3QkFIcUMsRXNKTXBDLEVBQUE7TXJKaUlDO1VFeEZGO1lBQ0UsYVRrQ3NELEVTakN2RCxFQUFBO0ltSnJFTDtNcEpjRSxZQ2VxRDtNQStCckQsWVR5Q3lEO01NL0V2RCx3QkFGcUM7TUFHckMsdUJBSHFDO01zSlNuQyxjQUFhLEVBT2Q7TXJKdUhDO1FxSjNKTjtVdEpzQkkseUJBRnFDO1VBR3JDLHdCQUhxQyxFc0pnQnBDLEVBQUE7TW5KK0JEO1FBQ0UsYVRrQ3NELEVTakN2RDtNRnNGQztRcUozSk47VXBKY0UsaUJDZXFEO1VBK0JyRCxZVHlDeUQ7VU0vRXZELHdCQUZxQztVQUdyQyx1QkFIcUM7VXNKWWpDLGVBQWM7VUFDZCx5QkFBZ0I7VUFBaEIsaUJBQWdCO1VBQ2hCLGN2SnNEaUQsRXVKcERwRCxFQUFBO0VySnVIQztJcUozSk47TXRKc0JJLHlCQUZxQztNQUdyQyx3QkFIcUMsRXNKZ0JwQyxFQUFBO01ySnVIQztVRXhGRjtZQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFbUpyRUw7SUF3Q00sbUJBQWtCO0lBQ2xCLHlCdkorQ21EO0l1SjlDbkQsaUJBQWdCLEVBTWpC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MUVuRCx1QjFKMEVtRCxFMEo1RHBEO0l4SitIQztNd0ozSk47UUFnQlEscUIxSndFaUQ7UTBKdkVqRCx3QjFKdUVpRCxFMEo1RHBELEVBQUE7SXhKK0hDO013SjNKTjtRQW1CbUMsb0IxSnFFc0IsRTBKNURwRCxFQUFBO0lBNUJMO01BcUJRLGtCMUptRWlELEUwSmpFbEQ7TXhKb0lEO1F3SjNKTjtVQXNCc0Msb0IxSmtFbUIsRTBKakVsRCxFQUFBO0lBdkJQO01BeUJRLG1CMUorRGlELEUwSjdEbEQ7TXhKZ0lEO1F3SjNKTjtVQTBCc0Msb0IxSjhEbUIsRTBKN0RsRCxFQUFBO0VBM0JQO0lBOEJNLGVBQWM7SUFDZCxnQjFKeURtRCxFMEpyQnBEO0lBbkVMO01BaUNRLGU5Sm9CWTtNOEpuQlosaUI5SjRDZ0I7TThKM0NoQixzQkFBcUIsRUFLdEI7TUF4Q1A7UUFxQ1UsYUFBbUM7UUFDbkMsc0JBQXFCLEVBQ3RCO0lBdkNUOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7TUErQ1Esc0IxSnlDaUQ7TTBKeENqRCxlOUphTyxFOEpaUjs7SUFqRFA7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BbURRLG1CMUpxQ2lELEUwSm5DbEQ7TXhKc0dEOztRd0ozSk47Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1VBb0RzQyxvQjFKb0NtQixFMEpuQ2xELEVBQUE7O0lBckRQOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BdURRLG9CMUppQ2lELEUwSi9CbEQ7TXhKa0dEOztRd0ozSk47Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7VUF3RHNDLGtCMUpnQ21CLEUwSi9CbEQsRUFBQTs7SUF6RFA7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BNkRRLGdCMUoyQmlELEUwSnpCbEQ7TXhKNEZEOztRd0ozSk47Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1VBOERzQyxvQjFKMEJtQixFMEp6QmxE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Q2xCLHlCM0p0SHFEO0kySnVIckQsaUJBQWdCLEVBS2pCO0lBcE5IO01BaU5NLFVBQVM7TUFDVCxpQkFBZ0IsRUFDakI7RUFuTkw7SUFzTkksbUJBQWtCO0lBQ2xCLFVBQVM7SUFDVCxTQUFRO0lBQ1IsYUFBWTtJQUNaLGlCM0psSXFEO0kySm1JckQsMEIvSnZLYztJK0p3S2Qsa0MzSnBJcUQ7STJKcUlyRCxzQzNKcklxRCxFMkp3SnREO0l6SmhGRztNeUpoS047UUE4Tm1DLGtCM0p0SXNCLEUySndKdEQsRUFBQTtJQWhQSDtNQWdPTSxlQUFjO01BQ2QseUIzSnpJbUQsRTJKK0lwRDtNQXZPTDtRQW1PUSxlL0pyS087UStKc0tQLGtCM0o1SWlELEUySjhJbEQ7UXpKM0VEO1V5SjNKTjtZQXFPc0Msb0IzSjdJbUIsRTJKOElsRCxFQUFBO0lBdE9QO01BeU9NLGVBQWM7TUFDZCxlL0o1S1M7TStKNktULGdCM0puSm1EO00ySm9KbkQsaUIvSmhLb0I7TStKaUtwQixlQUFjLEVBRWY7TXpKcEZDO1F5SjNKTjtVQThPb0MscUIzSnRKcUIsRTJKdUpwRCxFQUFBO0VBL09MO0lBa1BJLHNCM0oxSnFEO0kySjJKckQseUIzSjNKcUQ7STJKNEpyRCwwQkFBeUIsRUFhMUI7SXpKdEdHO015SjNKTjtRQXNQTSxzQjNKOUptRDtRMkorSm5ELHlCM0ovSm1ELEUySnlLdEQsRUFBQTtJekp0R0c7TXlKM0pOO1FBMFBNLHFCM0psS21EO1EySm1LbkQsd0IzSm5LbUQsRTJKeUt0RCxFQUFBO0lBalFIO001SmlHRSxvQkNUdUQ7TUQxQnJELG1CQUFrQjtNQUNsQixrQkFBaUI7TUlqRG5CLFlDZXFEO01BK0JyRCxZVHlDeUQ7TU0vRXZELHdCQUZxQztNQUdyQyx1QkFIcUM7TTBKMk9uQyxtQjNKdkttRCxFMkp3S3BEO005Si9HSDtRQUVFLGVBQWM7UUFDZCxhQUFZLEVBTWI7TUFFRDtRQUNFLFlBQVcsRUFDWjtNS0hHO1F5SjNKTjtVMUpzQkkseUJBRnFDO1VBR3JDLHdCQUhxQyxFMEo0T3BDLEVBQUE7TXZKN0xEO1FBQ0Us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U2pDdkQsRUFBQTtJd0pyRUw7Ozs7TUFXYSx5QjVKNkU0QyxFNEo3RWY7RUFYMUM7SXpKY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFMkpGdEM7STFKeUlHO00wSjNKTjtRM0pzQkkseUJBRnFDO1FBR3JDLHdCQUhxQyxFMkpGdEMsRUFBQTtJeEppREM7TUFDRSxhVGtDc0QsRVNqQ3ZEO0lGc0ZDO00wSjNKTjtRekpjRSxpQkNlcUQ7UUErQnJELFlUeUN5RDtRTS9FdkQsd0JBRnFDO1FBR3JDLHVCQUhxQyxFMkpGdEMsRUFBQTtFMUp5SUc7STBKM0pOO00zSnNCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEUySkZ0QyxFQUFBO0kxSnlJRztRRXhGRjtVQUNFLGFUa0NzRCxFU2pDdkQsRUFBQTtFd0pyRUw7SXpKY0UsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQyxFMkpEcUI7STFKd0l4RDtNMEozSk47UTNKc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRTJKRHFCLEVBQUE7SXhKZ0QxRDtNQUNFLGFUa0NzRCxFU2pDdkQ7RXdKckVMO0lBc0JJLHVCNUprRXFEO0k0SmpFckQsa0I1SmlFcUQsRTRKL0R0RDtJMUprSUc7TTBKM0pOO1FBd0JrQyxvQjVKZ0V1QixFNEovRHRELEVBQUE7RUF6Qkg7SUEyQkkseUI1SjZEcUQ7STRKNURyRCxlQUFjO0lBQ2QsZ0I1SjJEcUQ7STRKMURyRCxpQmhLaUhzQixFZ0toSHZCO0VBL0JIO0lBaUNjLGlCQUFnQixFQUFJOztBQ2pDbEM7RUFFSSx3QjdKMkZTO0U2SjFGVCxpQkFBZ0IsRUFLakI7RUFSSDtJQUtNLHNCQUFxQjtJQUNyQix1QjdKa0ZtRCxFNkpqRnBEOztBQUVGO0VBQ1EsaUJqS21Fa0IsRWlLbkV1Qjs7QUFLaEQ7RUFDRSxzQkFBcUI7RUFDckIsd0I3SnVFbUQsRTZKdEVwRDs7QUFORjtFQVFHLHNCQUFxQjtFQUNyQixVQUFTO0VBQ1QsaUJBQWdCLEVBZ0JqQjtFQTFCRjtJQVlL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QUFBO0VBdkNMO0lBeUNNLGtCQUFhO0lBQWIsY0FBYTtJQUNiLGNoSzNHbUQsRWdLK0hwRDtJOUo1REM7TThKRk47UUEyQ21DLGFoSzVHc0IsRWdLK0hwRCxFQUFBO0lBOURMO01BNkNRLGtCQUFhO01BQWIsY0FBYTtNQUNiLGNoSy9HaUQ7TWdLZ0hqRCwwQkFBOEI7VUFBOUIsK0JBQThCLEVBRS9CO005Si9DRDtROEpGTjtVQWdEcUMsYWhLakhvQixFZ0trSGxELEVBQUE7RTlKMUNEO0k4SlBOOzs7TUFtRW1DLHNCaEtwSXNCLEVnS3NJbEQsRUFBQTtFOUpuRUQ7SThKRk47OztNQW9FcUMsc0JoS3JJb0IsRWdLc0lsRCxFQUFBOztBOUo5REQ7RThKa0VOO0lBRXVDLGlCQUFnQixFQUlwRCxFQUFBOztBOUp4RUc7RThKa0VOO0lBSXlDLHNCaEs5SWdCLEVnSytJcEQsRUFBQTs7QUFHTDtFQUF5Qiw0Q3BLNUtWLEVvSzRLa0Q7O0FBQ2pFO0VBQStCLDBCcEt2TGIsRW9LdUxpRDs7QUMzT25FO0VBQ0Usc0JqS3VGdUQsRWlLOEh4RDtFL0ozREs7SStKM0pOO01BRWdDLHNCaktzRnlCLEVpSzhIeEQsRUFBQTtFL0ozREs7SStKM0pOO01BRytCLHFCaktxRjBCLEVpSzhIeEQsRUFBQTtFQXRORDtJQU1NLHVCaktrRm1EO0lpS2pGbkQsa0JqS2lGbUQsRWlLNUVwRDtJL0orSUM7TStKM0pOO1FBU1Esd0JqSytFaUQ7UWlLOUVqRCxvQmpLOEVpRCxFaUs1RXBELEVBQUE7RUFaTDtJdEo2RUUsc0JBQXFCO0lBQ3JCLHVCQUFzQjtJQUN0QixtQmY2S2tDO0llNUtsQywwQlhRdUQ7SVdOdkQseUJBQXdCO0lBQ3hCLDhCQUE2QjtJQUM3QixpQmZKZTtJZUtmLGtFZndMdUU7SWV0THZFLG9CWEN1RDtJV0F2RCxlQUFjO0lBQ2QsbUJBQWtCO0lBQ2xCLGdCQUFlO0lBcUNmLDBCZjNFZ0I7SWU0RWhCLGVmbEVhO0lxSzlDWCxpQkFBZ0I7SUFDaEIseUJqS3VFcUQ7SWlLdEVyRCxnQmpLc0VxRDtJaUtyRXJELGlCckswRHlCO0lxS3pEekIseUJqS29FcUQsRWlLbkV0RDtJM0s0eWZDO01PL29mQSxXQUFVLEVBQ1g7SWNqREQ7TUFDRSwwQmY0SHVFO01lM0h2RSxlZnRFVyxFZXVFWjtFc0pySUg7SWxLaUdFLG9CQ1R1RDtJRDFCckQsbUJBQWtCO0lBQ2xCLGtCQUFpQjtJSWpEbkIsWUNlcUQ7SUErQnJELFlUeUN5RDtJTS9FdkQsd0JBRnFDO0lBR3JDLHVCQUhxQztJZ0tJckMsdUJqS2dFcUQsRWlLekR0RDtJcEtrSEQ7TUFFRSxlQUFjO01BQ2QsYUFBWSxFQU1iO0lBRUQ7TUFDRSxZQUFXLEVBQ1o7SUtIRztNK0ozSk47UWhLc0JJLHlCQUZxQztRQUdyQyx3QkFIcUMsRWdLV3RDLEVBQUE7STdKb0NDO01BQ0UsYVRrQ3NELEVTakN2RDtJQWFIO01BRUUsWUFBVyxFQUNaO0lGc0VHO00rSjNKTjtRQXlCa0Msd0JqSytEdUIsRWlLekR0RCxFQUFBO0lBL0JIO01BMkJNLFVBQVM7TUFDVCxpQkFBZ0IsRUFFakI7TUE5Qkw7UUE2QlkseUJqSzJENkMsRWlLM0RmO0VBN0IxQztJbEtpR0Usb0JDVHVEO0lEMUJyRCxtQkFBa0I7SUFDbEIsa0JBQWlCLEVrS1ZsQjtJcEs0RkQ7TUFFRSxlQUFjO01BQ2QsYUFBWSxFQU1iO0lBRUQ7TUFDRSxZQUFXLEVBQ1o7SW9LOUpIO005SmNFLFlDZXFEO01BK0JyRCxZVHlDeUQ7TU0vRXZELHdCQUZxQztNQUdyQyx1QkFIcUM7TWdLZ0JuQyxxQmpLb0RtRCxFaUs5Q3BEO00vSmlIQztRK0ozSk47VWhLc0JJLHlCQUZxQztVQUdyQyx3QkFIcUMsRWdLc0JwQyxFQUFBO003SnlCRDtRQUNFLGFUa0NzRCxFU2pDdkQ7TUZzRkM7UStKM0pOO1VBcUNvQyxxQmpLbURxQixFaUs5Q3BELEVBQUE7TS9KaUhDO1ErSjNKTjtVOUpjRSxpQkNlcUQ7VUErQnJELFlUeUN5RDtVTS9FdkQsd0JBRnFDO1VBR3JDLHVCQUhxQztVZ0tvQmpDLGNBQWEsRUFFaEIsRUFBQTtFL0ppSEM7SStKM0pOO01oS3NCSSx5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a0JBQXJCLHNCQUFxQixFQUNqRCxFQUFBO0lBdExMO01Bd0xNLHdCdktoR21EO011S2lHbkQsMEJ2S2pHbUQ7TXVLa0duRCxlM0s1SFM7TTJLNkhULHFCdktuR21EO011S29HbkQsaUIzSy9HdUI7TTJLZ0h2QiwwQkFBeUI7TUFDekIsZUFBYztNQUNkLDBCQUF5QjtNQUN6Qix5QnZLeEdtRCxFdUt5R3BEO0VBak1MO0l4S2lHRSxvQkNUdUQ7SUQxQnJELG1CQUFrQjtJQUNsQixrQkFBaUI7SXdLc0lqQixxQnZLN0dxRCxFdUs2S3REO0kxS3BIRDtNQUVFLGVBQWM7TUFDZCxhQUFZLEVBTWI7SUFFRDtNQUNFLFlBQVcsRUFDWjtJS0hHO01xSzNKTjtRQXNNa0MscUJ2SzlHdUIsRXVLNkt0RCxFQUFBO0lBclFIO01wS2NFLFlDZXFEO01BK0JyRCxZVHlDeUQ7TU0vRXZELHdCQUZxQztNQUdyQyx1QkFIcUMsRXNLMkxwQztNcktwREM7UXFLM0pOO1V0S3NCSSx5QkFGcUM7VUFHckMsd0JBSHFDLEVzSzJMcEMsRUFBQTtNbks1SUQ7UUFDRSxhVGtDc0QsRVNqQ3ZEO01Gc0ZDO1FxSzNKTjtVcEtjRSxpQkNlcUQ7VUErQnJELFlUeUN5RDtVTS9FdkQsd0JBRnFDO1VBR3JDLHVCQUhxQztVSUxyQyxtQkFBa0I7VUFDbEIsZ0JBSG1EO1VrSytML0MseUJBQWdCO1VBQWhCLGlCQUFnQjtVQUNoQixjdktySGlELEV1S3VIcEQsRUFBQTtFcktwREM7SXFLM0pOO010S3NCSSx5QkFGcUM7TUFHckMsd0JBSHFDLEVzSzJMcEMsRUFBQTtNcktwREM7VUV4RkY7WUFDRSxhVGtDc0QsRVNqQ3ZELEVBQUE7SW1LckVMO01wS2NFLFlDZXFEO01BK0JyRCxZVHlDeUQ7TU0vRXZELHdCQUZxQztNQUdyQyx1QkFIcUM7TXNLOExuQyxxQnZLMUhtRCxFdUtpSXBEO01ySzlEQztRcUszSk47VXRLc0JJLHlCQUZxQztVQUdyQyx3QkFIcUMsRXNLcU1wQyxFQUFBO01uS3RKRDtRQUNFLGFUa0NzRCxFU2pDdkQ7TUZzRkM7UXFLM0pO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O0lqTHNEQztNaUwzSk47UUErRVEsY25MU2lEO1FtTFJqRCxtQm5MUWlELEVtTGFwRCxFQUFBO0lBckdMO01BbUZRLFVBQVM7TUFDVCx3QkFBdUI7TUFDdkIsZUFBYztNQUNkLFlBQVc7TUFDWCxrQm5MQ2lEO01tTEFqRCxjQUFhO01BQ2IsaUJBQWdCO01BQ2hCLGVBQWM7TUFDZCxtQkFBa0I7TUFDbEIsZ0JBQWU7TUFDZiwwQnZMakNXLEV1THVDWjtNQW5HUDtRQWdHVSxjQUFhO1FBQ2IsV0FBVSxFQUNYO0lBbEdUO01Bb0c4QixvQnZMaERaLEV1TGdEMEM7O0FBSTVEO0VBRUksdUJuTGxCcUQ7RW1MbUJyRCx3Qm5MbkJxRCxFbUwwQ3REO0VqTHlCRztJaUxuRE47TUFLTSx3Qm5MckJtRDtNbUxzQm5ELHlCbkx0Qm1ELEVtTDBDdEQsRUFBQTtFQTFCSDtJQVNNLHNCbkx6Qm1EO0ltTDBCbkQsdUJuTDFCbUQsRW1MK0JwRDtJakxvQ0M7TWlMbkROO1FBWVEsdUJuTDVCaUQ7UW1MNkJqRCx3Qm5MN0JpRCxFbUwrQnBELEVBQUE7RUFmTDs7SUFpQmtCLGdCbkxqQ3VDLEVtTGlDZDtFQWpCM0M7SUFtQk0sZW5MbkNtRCxFbUxxQ3BEO0lqTDhCQztNaUxuRE47UUFvQm9DLGdCbkxwQ3FCLEVtTHFDcEQsRUFBQTtFQXJCTDtJQXVCTSxnQm5MdkNtRCxFbUx5Q3BEO0lqTDBCQztNaUxuRE47UUF3Qm9DLGlCbkx4Q3FCLEVtTHlDcEQsRUFBQTs7QUFHTDtFQUVJLHVCbkw5Q3FEO0VtTCtDckQsd0JuTC9DcUQsRW1Ma0Z0RDtFakxmRztJaUx2Qk47TUFLTSx3Qm5MakRtRDtNbUxrRG5ELHlCbkxsRG1ELEVtTGtGdEQsRUFBQTtFQXRDSDtJQVNNLHNCbkxyRG1EO0ltTHNEbkQsdUJuTHREbUQsRW1MMkRwRDtJakxRQztNaUx2Qk47UUFZUSx1Qm5MeERpRDtRbUx5RGpELHdCbkx6RGlELEVtTDJEcEQsRUFBQTtFQWZMOztJQWtCTSxjbkw5RG1EO0ltTCtEbkQsZW5ML0RtRCxFbUxpRXBEO0lqTE9DO01pTDVCTjs7UUFvQmlDLGFuTGhFd0IsRW1MaUVwRCxFQUFBO0VBckJMO0lBdUJNLGVuTG5FbUQsRW1MMkVwRDtJakxIQztNaUw1Qk47UUF5QlEsY0FBYTtRQUNiLGlCbkx0RWlELEVtTDJFcEQsRUFBQTtJakxSQztNaUx2Qk47UUE2QlEsZW5MekVpRCxFbUwyRXBELEVBQUE7RUEvQkw7SUFpQ00sZ0JuTDdFbUQsRW1MaUZwRDtJakxkQztNaUx2Qk47UUFtQ1EsaUJuTC9FaUQsRW1MaUZwRCxFQUFBOztBQUdMO0VBQ0UscUJuTHJGdUQsRW1Mc0h4RDtFQWxDRDtJQUdJLHVCbkx2RnFEO0ltTHdGckQsd0JuTHhGcUQsRW1McUh0RDtJakxsREc7TWlMaUJOO1FBTU0sd0JuTDFGbUQ7UW1MMkZuRCx5Qm5MM0ZtRCxFbUxxSHRELEVBQUE7SUFqQ0g7TUFTa0Isa0JBQWlCLEVBQUk7SUFUdkM7TUFXTSxzQm5ML0ZtRDtNbUxnR25ELHVCbkxoR21ELEVtTHFHcEQ7TWpMbENDO1FpTGlCTjtVQWNRLHVCbkxsR2lEO1VtTG1HakQsd0JuTG5HaUQsRW1McUdwRCxFQUFBO0lBakJMO01BbUJNLGFuTHZHbUQ7TW1Md0duRCxlbkx4R21ELEVtTDRHcEQ7TWpMekNDO1FpTGlCTjtVQXNCUSxnQm5MMUdpRCxFbUw0R3BELEVBQUE7SUF4Qkw7TUEwQk0sYW5MOUdtRDtNbUwrR25ELGVBQWM7TUFDZCxjbkxoSG1ELEVtTG9IcEQ7TWpMakRDO1FpTGlCTjtVQThCUSxnQm5MbEhpRCxFbUxvSHBELEVBQUE7O0FBR0w7RUFFSSx3Qm5MekhxRDtFbUwwSHJELHlCbkwxSHFELEVtTDRJdEQ7RWpMekVHO0lpTG9ETjtNQUtNLHdCbkw1SG1EO01tTDZIbkQseUJuTDdIbUQsRW1MNEl0RCxFQUFBO0VBckJIO0lBUWtCLGtCQUFpQixFQUFJO0VBUnZDO0lBVU0sc0JBQWE7SUFBYixxQkFBYTtJQUFiLGNBQWE7SUFDYiw0QkFBbUI7UUFBbkIsdUJBQW1CO1lBQW5CLG9CQUFtQixFQUNwQjtFQVpMO0lBY00sdUJuTHJJbUQ7SW1Mc0luRCx3Qm5MdEltRCxFbUwySXBEO0lqTHhFQztNaUxvRE47UUFpQlEsdUJuTHhJaUQ7UW1MeUlqRCx3Qm5MeklpRCxFbUwySXBELEVBQUE7O0FBR0w7Ozs7RUFLSSx1Qm5MbkpxRDtFbUxvSnJELHdCbkxwSnFELEVtTDJLdEQ7RWpMeEdHO0lpTDJFTjs7OztNQVFNLHdCbkx0Sm1EO01tTHVKbkQseUJuTHZKbUQsRW1MMkt0RCxFQUFBO0VBN0JIOzs7O0lBWU0scUJBQW9CO0lBQ3BCLHNCQUFxQixFQUN0QjtFQWRMOzs7O0lBZ0JNLGtCQUFpQixFQUVsQjtJakx4RkM7TWlMc0VOOzs7O1FBaUJpQyxpQkFBZ0IsRUFDNUMsRUFBQTtFQWxCTDs7OztJQW1CbUIsc0JBQWE7SUFBYixxQkFBYTtJQUFiLGNBQWEsRUFBSTtFQW5CcEM7Ozs7SUFxQk0sZ0JBQWU7SUFDZixzQm5McEttRDtJbUxxS25ELHVCbkxyS21ELEVtTDBLcEQ7SWpMdkdDO01pTDJFTjs7OztRQXlCUSx1Qm5MdktpRDtRbUx3S2pELHdCbkx4S2lELEVtTDBLcEQsRUFBQTs7QUFHTDtFQUVJLHVCbkwvS3FEO0VtTGdMckQsd0JuTGhMcUQsRW1MZ050RDtFakw3SUc7SWlMMEdOO01BS00sd0JuTGxMbUQ7TW1MbUxuRCx5Qm5MbkxtRCxFbUxnTnRELEVBQUE7RUFuQ0g7SUFTTSxzQm5MdExtRDtJbUx1TG5ELHVCbkx2TG1ELEVtTDRMcEQ7SWpMekhDO01pTDBHTjtRQVlRLHVCbkx6TGlEO1FtTDBMakQsd0JuTDFMaUQsRW1MNExwRCxFQUFBO0VBZkw7SUFpQk0sYUFBWTtJQUNaLGVuTC9MbUQ7SW1MZ01uRCxjbkxoTW1ELEVtTHFNcEQ7SWpMbElDO01pTDBHTjtRQXFCUSxtQm5MbE1pRDtRbUxtTWpELGdCbkxuTWlELEVtTHFNcEQsRUFBQTtFQXhCTDtJQTBCTSxhQUFZO0lBQ1osZUFBYztJQUNkLGNuTHpNbUQ7SW1MME1uRCxjbkwxTW1ELEVtTCtNcEQ7SWpMNUlDO01pTDBHTjtRQStCUSxtQm5MNU1pRDtRbUw2TWpELGdCbkw3TWlELEVtTCtNcEQsRUFBQTs7QWpMNUlDO0VpTCtJTjtJQUVrQyxnQm5McE51QixFbUxxTnRELEVBQUE7O0FqTGxKRztFaUwrSU47SUFLa0MsaUJuTHZOdUIsRW1Md050RCxFQUFBOztBQUVIO0VBRUksd0JuTDVOcUQ7RW1MNk5yRCx5Qm5MN05xRCxFbUx3UHREO0VqTHJMRztJaUx1Sk47TUFLTSx3Qm5ML05tRDtNbUxnT25ELHlCbkxoT21ELEVtTHdQdEQsRUFBQTtFakxyTEc7SWlMdUpOO01BU00sdUJuTG5PbUQ7TW1Mb09uRCwwQm5McE9tRDtNbUxxT25ELHFCQUFvQjtNQUNwQixzQkFBcUIsRUFrQnhCLEVBQUE7RUE5Qkg7SUFlTSx1Qm5Mek9tRDtJbUwwT25ELHdCbkwxT21EO0ltTHFQbkQsZ0JBQWU7SUFDZixhQUFZLEVBQ2I7SWpMcExDO01pTHVKTjtRQWtCUSx1Qm5MNU9pRDtRbUw2T2pELHdCbkw3T2lELEVtTHVQcEQsRUFBQTtJakxwTEM7TWlMdUpOO1FBc0JRLHNCbkxoUGlEO1FtTGlQakQseUJuTGpQaUQ7UW1Ma1BqRCxxQkFBb0I7UUFDcEIsc0JBQXFCLEVBSXhCLEVBQUE7O0FBSUw7RUFFSSx1Qm5MN1BxRCxFbUxnUnREO0VqTDdNRztJaUx3TE47TUFJb0MsdUJuTC9QcUIsRW1MZ1FwRCxFQUFBO0VBTEw7O0lBUU0sYW5MblFtRDtJbUxvUW5ELGlCbkxwUW1EO0ltTHFRbkQsaUJBQWdCLEVBS2pCO0lBZkw7O01BWVEsMEJ2TDNTVTtNdUw0U1YsZXZMbFNPLEV1TG1TUjtFQWRQO0lBaUJNLGNBQWE7SUFDYixpQm5MN1FtRCxFbUw4UXBEO0VBbkJMO0lBb0JrQixTQUFRLEVBQUk7O0FqTHZNeEI7RWlMME1OO0lBRXVDLGtCQUFpQixFQUNyRCxFQUFBOztBQUhIO0VBS0ksWUFBVztFQUNYLHNCQUFxQjtFQUNyQix1QkFBc0IsRUFDdkI7O0FBUkg7RUFVSSx1Qm5MNVJxRDtFbUw2UnJELHdCbkw3UnFELEVtTGtTdEQ7RUFoQkg7SUFhTSxzQm5ML1JtRDtJbUxnU25ELHVCbkxoU21ELEVtTGlTcEQ7O0FBR0w7O0VBSU0sZW5MeFNtRDtFbUx5U25ELGlCbkx6U21ELEVtTDhTcEQ7RWpMdE9DO0lpTDROTjs7TUFPUSxlbkwzU2lEO01tTDRTakQsZ0JuTDVTaUQsRW1MOFNwRCxFQUFBOztBQVZMO0VBWU0sZW5MaFRtRCxFbUxvVHBEO0VqTDVPQztJaUw0Tk47TUFjUSxnQm5MbFRpRCxFbUxvVHBELEVBQUE7O0FBaEJMO0VBa0JNLGVBQWM7RUFDZCxnQm5MdlRtRCxFbUwyVHBEO0VqTG5QQztJaUw0Tk47TUFxQlEsZ0JuTHpUaUQsRW1MMlRwRCxFQUFBOztBQUdMOzs7Ozs7RUFPSSx1Qm5MclVxRDtFbUxzVXJELHdCbkx0VXFELEVtTCtWdEQ7RWpMNVJHO0lpTDJQTjs7Ozs7O01BVU0sd0JuTHhVbUQ7TW1MeVVuRCx5Qm5MelVtRCxFbUwrVnRELEVBQUE7RUFqQ0g7Ozs7OztJQWNNLHNCbkw1VW1EO0ltTDZVbkQsdUJuTDdVbUQsRW1Ma1ZwRDtJakwvUUM7TWlMMlBOOzs7Ozs7UUFpQlEsdUJuTC9VaUQ7UW1MZ1ZqRCx3Qm5MaFZpRCxFbUxrVnBELEVBQUE7RUFwQkw7Ozs7OztJQXNCTSxnQm5McFZtRCxFbUx3VnBEO0lqTHJSQztNaUwyUE47Ozs7OztRQXdCUSxjbkx0VmlELEVtTHdWcEQsRUFBQTtFQTFCTDs7Ozs7O0lBNEJNLGlCbkwxVm1ELEVtTDhWcEQ7SWpMM1JDO01pTDJQTjs7Ozs7O1FBOEJRLGVuTDVWaUQsRW1MOFZwRCxFQUFBOztBQUdMOztFQUlNLGlCQUFnQjtFQUNoQixZQUFXO0VBQ1gsYUFBWTtFQUNaLGlCQUFnQjtFQUNoQiwwQkFBeUIsRUFLMUI7RUFiTDs7SUFVUSxtQm5MM1dpRDtJbUw0V2pELGV2THZZTyxFdUx3WVI7O0FBWlA7RUFlTSxnQm5MaFhtRDtFbUxpWG5ELGNBQWE7RUFDYixlbkxsWG1EO0VtTG1YbkQsa0NuTG5YbUQsRW1MOFhwRDtFQTdCTDtJQW1CaUIsaUJBQWdCLEVBQUk7RUFuQnJDO0lBcUJRLFlBQVc7SUFDWCxtQkFBa0I7SUFDbEIsU0FBUTtJQUNSLE9BQU07SUFDTixlbkwxWGlEO0ltTDJYakQsaUJuTDNYaUQ7SW1MNFhqRCwwQkFBeUIsRUFDMUI7O0FBNUJQO0VBK0JNLGdCbkxoWW1EO0VtTGlZbkQsU0FBUTtFQUNSLG1DbkxsWW1ELEVtTG9ZcEQ7RUFuQ0w7SUFrQ2lCLGlCQUFnQixFQUFJOztBQzNSckM7RUFBNEIsZ0NBQStCLEVBQUk7O0FBRS9EO0VBQ0UsbUVBS0YsRUFBQzs7QXhKMUlDO0V3SjZJQSxleEw3SWE7RXdMOEliLGlCeEwvSDJCO0V3TGdJM0IseUJwTHJIdUQ7RW9Mc0h2RCxPQUFNO0VBQ04sUUFBTyxFQUVSO0VBUEQ7SUFNTSxleExsSlMsRXdMa0pROztBNUx0Sm5CO0U0THlKRyx3QkFBdUIsRUFBSTs7QUFHbEM7RUFDRSxZQUFXO0VBQ1gsaUJBQWdCO0VBQ2hCLGtDQUFpQyxFQVlsQztFQWZEO0lBT0ksdUJBQXNCO0lBQ3RCLGdCQUFlO0lBQ2Ysd0JBQXVCLEVBS3hCO0lBSEM7TUFYSjtRQVlNLGlCQUFnQixFQUVuQixFQUFBIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi4zLjFcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG4vKiEgbm9ybWFsaXplLXNjc3MgfCBNSVQvR1BMdjIgTGljZW5zZSB8IGJpdC5seS9ub3JtYWxpemUtc2NzcyAqL1xuLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gICAgICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICAgICAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAyICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMyAqLyB9XG5cbi8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAgICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAgICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyogTGlua3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgICAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAgICAgKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICAgICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAgICAgKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuLyoqXG4gICAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gICAgICogYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmF1ZGlvLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAgICAgKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBGb3Jtc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICAgKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gICAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gICAgICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICovXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi8gfVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAqL1xuICAvKipcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICAgICAqLyB9XG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDsgfVxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAgICovXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgICAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi8gfVxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiwgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi8gfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAqL1xucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyogSW50ZXJhY3RpdmVcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gICAgICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogU2NyaXB0aW5nXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvdW5kYXRpb24tbXEge1xuICBmb250LWZhbWlseTogXCJzbWFsbD0wZW0mbWVkaXVtPTQwZW0mbGFyZ2U9NjRlbSZ4bGFyZ2U9NzVlbSZ4eGxhcmdlPTkwZW1cIjsgfVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgZm9udC1mYW1pbHk6IFwiTmlzc2FuLVJlZ3VsYXJcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjIyMjIyO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbnNlbGVjdCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogMTsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5yb3cge1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5yb3c6OmJlZm9yZSwgLnJvdzo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAucm93OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW4sIC5yb3cuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAucm93IC5yb3cuY29sbGFwc2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnJvdy5leHBhbmRlZCB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gICAgLnJvdy5leHBhbmRlZCAucm93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5yb3c6bm90KC5leHBhbmRlZCkgLnJvdyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5yb3cuZ3V0dGVyLXNtYWxsID4gLmNvbHVtbiwgLnJvdy5ndXR0ZXItc21hbGwgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1uLCAucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG5cbi5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNvbHVtbi5lbmQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAuZW5kLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uY29sdW1uLnJvdy5yb3csIC5yb3cucm93LmNvbHVtbnMge1xuICBmbG9hdDogbm9uZTsgfVxuXG4ucm93IC5jb2x1bW4ucm93LnJvdywgLnJvdyAucm93LnJvdy5jb2x1bW5zIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5zbWFsbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7IH1cblxuLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC0yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLXB1c2gtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMjUlOyB9XG5cbi5zbWFsbC1wdWxsLTMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0yNSU7IH1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0zMy4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuXG4uc21hbGwtNSB7XG4gIHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC00MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLXB1c2gtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTAlOyB9XG5cbi5zbWFsbC1wdWxsLTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01MCU7IH1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01OC4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuXG4uc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC02Ni42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7IH1cblxuLnNtYWxsLXB1c2gtOSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNzUlOyB9XG5cbi5zbWFsbC1wdWxsLTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC03NSU7IH1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtMTAge1xuICB3aWR0aDogODMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTEwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04My4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTExIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtMTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC05MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTEgPiAuY29sdW1uLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC0yID4gLmNvbHVtbiwgLnNtYWxsLXVwLTIgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNTAlOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbiwgLnNtYWxsLXVwLTMgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTQgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjUlOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC01ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTUgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjAlOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTYgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC03ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTcgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTsgfVxuICAuc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbWFsbC11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFsbC11cC04ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTggPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTIuNSU7IH1cbiAgLnNtYWxsLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnNtYWxsLWNvbGxhcHNlIC5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5leHBhbmRlZC5yb3cgLnNtYWxsLWNvbGxhcHNlLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cblxuLnNtYWxsLWNlbnRlcmVkIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAuc21hbGwtY2VudGVyZWQsIC5zbWFsbC1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uc21hbGwtdW5jZW50ZXJlZCxcbi5zbWFsbC1wdXNoLTAsXG4uc21hbGwtcHVsbC0wIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlOyB9XG4gIC5tZWRpdW0tcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC5tZWRpdW0tcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC5tZWRpdW0tcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uLCAubWVkaXVtLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uLCAubWVkaXVtLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uLCAubWVkaXVtLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uLCAubWVkaXVtLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uLCAubWVkaXVtLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uLCAubWVkaXVtLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAgIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uLCAubWVkaXVtLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyLjUlOyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5leHBhbmRlZC5yb3cgLm1lZGl1bS1jb2xsYXBzZS5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9XG4gIC5tZWRpdW0tY2VudGVyZWQge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC5tZWRpdW0tY2VudGVyZWQsIC5tZWRpdW0tY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5tZWRpdW0tdW5jZW50ZXJlZCxcbiAgLm1lZGl1bS1wdXNoLTAsXG4gIC5tZWRpdW0tcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlOyB9XG4gIC5sYXJnZS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC5sYXJnZS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC5sYXJnZS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlOyB9XG4gICAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbiwgLmxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5sYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW4sIC5sYXJnZS11cC00ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlOyB9XG4gICAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5sYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW4sIC5sYXJnZS11cC03ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTIuNSU7IH1cbiAgICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5sYXJnZS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmV4cGFuZGVkLnJvdyAubGFyZ2UtY29sbGFwc2Uucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH1cbiAgLmxhcmdlLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAubGFyZ2UtY2VudGVyZWQsIC5sYXJnZS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLmxhcmdlLXVuY2VudGVyZWQsXG4gIC5sYXJnZS1wdXNoLTAsXG4gIC5sYXJnZS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuLmNvbHVtbi1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbHVtbi1ibG9jayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgICAgLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG4ub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsXG4ub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLFxuLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSxcbi5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLFxuLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSxcbi52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSxcbi52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLFxuLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsXG4ubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsXG4ubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsXG5oMyxcbi5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3RpdGxlLFxuLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3N1Yi10aXRsZSxcbi5hZGQtb25fX3RpdGxlLFxuLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCBzcGFuLFxuLmNvbGxlY3Rpb24tZGVsaXZlcnlfX3RpdGxlLFxuLm9yZGVyLXBheW1lbnRfX3RpdGxlLFxuLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtdGl0bGUsXG4ucGFydC0tZmVhdHVyZWQgLnBhcnRfX3N1Yi10aXRsZSxcbi5wb3N0LS1mZWF0dXJlZCAucG9zdF9fc3ViLXRpdGxlLFxuLnF1aWNrLXNlYXJjaF9fbGVnZW5kLFxuLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4ubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4ubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4ubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX190aXRsZSBoMSxcbi5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSxcbi5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5mb3JtX190aXRsZSxcbi5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbi5maW5hbmNlLWNoZWNrZXJfX2RldGFpbHMtdGl0bGUsXG4uZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuaDQsXG4udmlkZW8tLXBhZ2UgLnZpZGVvX190aXRsZSxcbi5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCA+IGxpIC5zcGVjaWZpY2F0aW9uLWNhdGVnb3J5X190aXRsZSxcbi5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSxcbi5maW5hbmNlLWZvcm0gLmZpbmFuY2UtZm9ybV9fdGl0bGUsXG4uZmluYW5jZS10YWJsZXMgLmZpbmFuY2Utd2FybmluZyxcbi5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX19jaGVja2VyLXRpdGxlLFxuLmZpbmFuY2UtZXhhbXBsZV9fdGl0bGUsXG5oNSxcbi5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3N1Yi10aXRsZSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS44O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbmgxLFxuaDIsXG4ub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsXG4ub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLFxuLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSxcbi5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLFxuLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSxcbi52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSxcbi52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLFxuLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsXG4ubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsXG4ubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsXG5oMyxcbi5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3RpdGxlLFxuLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3N1Yi10aXRsZSxcbi5hZGQtb25fX3RpdGxlLFxuLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCBzcGFuLFxuLmNvbGxlY3Rpb24tZGVsaXZlcnlfX3RpdGxlLFxuLm9yZGVyLXBheW1lbnRfX3RpdGxlLFxuLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtdGl0bGUsXG4ucGFydC0tZmVhdHVyZWQgLnBhcnRfX3N1Yi10aXRsZSxcbi5wb3N0LS1mZWF0dXJlZCAucG9zdF9fc3ViLXRpdGxlLFxuLnF1aWNrLXNlYXJjaF9fbGVnZW5kLFxuLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4ubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4ubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4ubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX190aXRsZSBoMSxcbi5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSxcbi5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5mb3JtX190aXRsZSxcbi5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbi5maW5hbmNlLWNoZWNrZXJfX2RldGFpbHMtdGl0bGUsXG4uZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuaDQsXG4udmlkZW8tLXBhZ2UgLnZpZGVvX190aXRsZSxcbi5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCA+IGxpIC5zcGVjaWZpY2F0aW9uLWNhdGVnb3J5X190aXRsZSxcbi5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSxcbi5maW5hbmNlLWZvcm0gLmZpbmFuY2UtZm9ybV9fdGl0bGUsXG4uZmluYW5jZS10YWJsZXMgLmZpbmFuY2Utd2FybmluZyxcbi5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX19jaGVja2VyLXRpdGxlLFxuLmZpbmFuY2UtZXhhbXBsZV9fdGl0bGUsXG5oNSxcbi5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3N1Yi10aXRsZSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiTmlzc2FuLUJvbGRcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7IH1cbiAgaDEgc21hbGwsXG4gIGgyIHNtYWxsLFxuICAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUgc21hbGwsXG4gIC5vcmRlci1wcm9ncmVzc19fdGl0bGUgc21hbGwsXG4gIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUgc21hbGwsXG4gIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlIHNtYWxsLFxuICAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlIHNtYWxsLFxuICAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUgc21hbGwsXG4gIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlIHNtYWxsLFxuICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUgc21hbGwsXG4gIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSBzbWFsbCxcbiAgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUgc21hbGwsXG4gIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSBzbWFsbCxcbiAgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSBzbWFsbCxcbiAgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUgc21hbGwsXG4gIGgzIHNtYWxsLFxuICAuYmxvY2stLXNpZGViYXIgLmJsb2NrX190aXRsZSBzbWFsbCxcbiAgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3N1Yi10aXRsZSBzbWFsbCxcbiAgLmFkZC1vbl9fdGl0bGUgc21hbGwsXG4gIC5jYWxlbmRhcl9faGVhZGVyIC5jYWxlbmRhcl9fbW9udGggc3BhbiBzbWFsbCxcbiAgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX3RpdGxlIHNtYWxsLFxuICAub3JkZXItcGF5bWVudF9fdGl0bGUgc21hbGwsXG4gIC5vcmRlci1zdGF0ZS1zdW1tYXJ5X192ZWhpY2xlLXRpdGxlIHNtYWxsLFxuICAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3N1Yi10aXRsZSBzbWFsbCxcbiAgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X19zdWItdGl0bGUgc21hbGwsXG4gIC5xdWljay1zZWFyY2hfX2xlZ2VuZCBzbWFsbCxcbiAgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEgc21hbGwsXG4gIC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEgc21hbGwsXG4gIC5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxIHNtYWxsLFxuICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEgc21hbGwsXG4gIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEgc21hbGwsXG4gIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgaDEgc21hbGwsXG4gIC5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSBzbWFsbCxcbiAgLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLmZvcm1fX3RpdGxlIHNtYWxsLFxuICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fdGl0bGUgc21hbGwsXG4gIC5maW5hbmNlLWNoZWNrZXJfX2RldGFpbHMtdGl0bGUgc21hbGwsXG4gIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fdGl0bGUgc21hbGwsXG4gIGg0IHNtYWxsLFxuICAudmlkZW8tLXBhZ2UgLnZpZGVvX190aXRsZSBzbWFsbCxcbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGkgLnNwZWNpZmljYXRpb24tY2F0ZWdvcnlfX3RpdGxlIHNtYWxsLFxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSBzbWFsbCxcbiAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSBzbWFsbCxcbiAgLmZpbmFuY2UtZm9ybSAuZmluYW5jZS1mb3JtX190aXRsZSBzbWFsbCxcbiAgLmZpbmFuY2UtdGFibGVzIC5maW5hbmNlLXdhcm5pbmcgc21hbGwsXG4gIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX19jaGVja2VyLXRpdGxlIHNtYWxsLFxuICAuZmluYW5jZS1leGFtcGxlX190aXRsZSBzbWFsbCxcbiAgaDUgc21hbGwsXG4gIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3N1Yi10aXRsZSBzbWFsbCxcbiAgaDYgc21hbGwge1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGNvbG9yOiAjZTZlNmU2OyB9XG5cbmgxIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG5cbmgyLFxuLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLFxuLm9yZGVyLXByb2dyZXNzX190aXRsZSxcbi5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsXG4ucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSxcbi5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsXG4udmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsXG4udmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSxcbi5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbi5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbi5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLFxuLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLFxuLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbi5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuXG5oMyxcbi5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3RpdGxlLFxuLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3N1Yi10aXRsZSxcbi5hZGQtb25fX3RpdGxlLFxuLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCBzcGFuLFxuLmNvbGxlY3Rpb24tZGVsaXZlcnlfX3RpdGxlLFxuLm9yZGVyLXBheW1lbnRfX3RpdGxlLFxuLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtdGl0bGUsXG4ucGFydC0tZmVhdHVyZWQgLnBhcnRfX3N1Yi10aXRsZSxcbi5wb3N0LS1mZWF0dXJlZCAucG9zdF9fc3ViLXRpdGxlLFxuLnF1aWNrLXNlYXJjaF9fbGVnZW5kLFxuLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4ubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4ubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4ubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX190aXRsZSBoMSxcbi5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSxcbi5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5mb3JtX190aXRsZSxcbi5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbi5maW5hbmNlLWNoZWNrZXJfX2RldGFpbHMtdGl0bGUsXG4uZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG5cbmg0LFxuLnZpZGVvLS1wYWdlIC52aWRlb19fdGl0bGUsXG4ubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zcGVjaWZpY2F0aW9uID4gdWwgPiBsaSAuc3BlY2lmaWNhdGlvbi1jYXRlZ29yeV9fdGl0bGUsXG4ubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSxcbi52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4uZmluYW5jZS1mb3JtIC5maW5hbmNlLWZvcm1fX3RpdGxlLFxuLmZpbmFuY2UtdGFibGVzIC5maW5hbmNlLXdhcm5pbmcsXG4uZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fY2hlY2tlci10aXRsZSxcbi5maW5hbmNlLWV4YW1wbGVfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuXG5oNSxcbi5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3N1Yi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuaDYge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiAyLjc1cmVtOyB9XG4gIFxuICBoMixcbiAgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLFxuICAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLFxuICAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLFxuICAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSxcbiAgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSxcbiAgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLFxuICAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSxcbiAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsXG4gIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLFxuICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsXG4gIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsXG4gIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTsgfVxuICBcbiAgaDMsXG4gIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3RpdGxlLFxuICAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fc3ViLXRpdGxlLFxuICAuYWRkLW9uX190aXRsZSxcbiAgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCBzcGFuLFxuICAuY29sbGVjdGlvbi1kZWxpdmVyeV9fdGl0bGUsXG4gIC5vcmRlci1wYXltZW50X190aXRsZSxcbiAgLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtdGl0bGUsXG4gIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fc3ViLXRpdGxlLFxuICAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3N1Yi10aXRsZSxcbiAgLnF1aWNrLXNlYXJjaF9fbGVnZW5kLFxuICAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX190aXRsZSBoMSxcbiAgLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLFxuICAuZm9ybS0tcGFydC1leGNoYW5nZSAuZm9ybV9fdGl0bGUsXG4gIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbiAgLmZpbmFuY2UtY2hlY2tlcl9fZGV0YWlscy10aXRsZSxcbiAgLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5maW5hbmNlLXRhYmxlX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfVxuICBcbiAgaDQsXG4gIC52aWRlby0tcGFnZSAudmlkZW9fX3RpdGxlLFxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zcGVjaWZpY2F0aW9uID4gdWwgPiBsaSAuc3BlY2lmaWNhdGlvbi1jYXRlZ29yeV9fdGl0bGUsXG4gIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAuZmluYW5jZS1mb3JtIC5maW5hbmNlLWZvcm1fX3RpdGxlLFxuICAuZmluYW5jZS10YWJsZXMgLmZpbmFuY2Utd2FybmluZyxcbiAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2NoZWNrZXItdGl0bGUsXG4gIC5maW5hbmNlLWV4YW1wbGVfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICBcbiAgaDUsXG4gIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3N1Yi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfVxuICBoNiB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cblxuYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogIzIyMjIyMjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgY29sb3I6ICMxZDFkMWQ7IH1cbiAgYSBpbWcge1xuICAgIGJvcmRlcjogMDsgfVxuXG5ociB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMS4yNXJlbSBhdXRvO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItbGVmdDogMDsgfVxuXG51bCxcbm9sLFxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICBsaW5lLWhlaWdodDogMS44OyB9XG5cbmxpIHtcbiAgZm9udC1zaXplOiBpbmhlcml0OyB9XG5cbnVsIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyB9XG5cbnVsIHVsLCBvbCB1bCwgdWwgb2wsIG9sIG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIGRsIGR0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMjVyZW0gMCAxLjE4NzVyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2U2ZTZlNjsgfVxuICBibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgY29sb3I6ICMyMjIyMjI7IH1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6ICMyMjIyMjI7IH1cbiAgY2l0ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oCUIFwiOyB9XG5cbmFiYnIge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMyMjIyMjI7XG4gIGNvbG9yOiAjMjIyMjIyO1xuICBjdXJzb3I6IGhlbHA7IH1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbmNvZGUge1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjMxMjVyZW0gMC4wNjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMyMjIyMjI7IH1cblxua2JkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjI1cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBjb2xvcjogIzIyMjIyMjsgfVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjMjIyMjIyOyB9XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxMjUlO1xuICBsaW5lLWhlaWdodDogMS42OyB9XG5cbi5zdGF0IHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIHAgKyAuc3RhdCB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW07IH1cblxuLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjsgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgYVtocmVmXj0nIyddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiOyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzIyMjIyMjtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTsgfVxuICBwLFxuICBoMixcbiAgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLFxuICAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLFxuICAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLFxuICAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSxcbiAgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSxcbiAgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLFxuICAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSxcbiAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsXG4gIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLFxuICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsXG4gIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsXG4gIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlLFxuICBoMyxcbiAgLmJsb2NrLS1zaWRlYmFyIC5ibG9ja19fdGl0bGUsXG4gIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19zdWItdGl0bGUsXG4gIC5hZGQtb25fX3RpdGxlLFxuICAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX21vbnRoIHNwYW4sXG4gIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X190aXRsZSxcbiAgLm9yZGVyLXBheW1lbnRfX3RpdGxlLFxuICAub3JkZXItc3RhdGUtc3VtbWFyeV9fdmVoaWNsZS10aXRsZSxcbiAgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19zdWItdGl0bGUsXG4gIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fc3ViLXRpdGxlLFxuICAucXVpY2stc2VhcmNoX19sZWdlbmQsXG4gIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIGgxLFxuICAuYnJhbmNoLS1jb250YWN0IC5icmFuY2hfX29wZW5pbmctaG91cnMtdGl0bGUsXG4gIC5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5mb3JtX190aXRsZSxcbiAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAuZmluYW5jZS1jaGVja2VyX19kZXRhaWxzLXRpdGxlLFxuICAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3RpdGxlIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMzsgfVxuICBcbiAgaDIsXG4gIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSxcbiAgLm9yZGVyLXByb2dyZXNzX190aXRsZSxcbiAgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSxcbiAgLnBhcnQtLWZ1bGwgLnBhcnRfX2Zvcm0tdGl0bGUsXG4gIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsXG4gIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSxcbiAgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGl0bGUsXG4gIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbiAgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSxcbiAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLFxuICAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSxcbiAgaDMsXG4gIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3RpdGxlLFxuICAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fc3ViLXRpdGxlLFxuICAuYWRkLW9uX190aXRsZSxcbiAgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCBzcGFuLFxuICAuY29sbGVjdGlvbi1kZWxpdmVyeV9fdGl0bGUsXG4gIC5vcmRlci1wYXltZW50X190aXRsZSxcbiAgLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtdGl0bGUsXG4gIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fc3ViLXRpdGxlLFxuICAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3N1Yi10aXRsZSxcbiAgLnF1aWNrLXNlYXJjaF9fbGVnZW5kLFxuICAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX190aXRsZSBoMSxcbiAgLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLFxuICAuZm9ybS0tcGFydC1leGNoYW5nZSAuZm9ybV9fdGl0bGUsXG4gIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbiAgLmZpbmFuY2UtY2hlY2tlcl9fZGV0YWlscy10aXRsZSxcbiAgLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5maW5hbmNlLXRhYmxlX190aXRsZSB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH0gfVxuXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMC44NzVyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbi50aW55IHtcbiAgICBmb250LXNpemU6IDAuNnJlbTsgfVxuICAuYnV0dG9uLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLmJ1dHRvbi5sYXJnZSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIC5idXR0b24uZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuYnV0dG9uLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWMwMDI2O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbi5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMyMjIyMjI7IH1cbiAgICAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICAgICAgY29sb3I6ICMyMjIyMjI7IH1cbiAgLmJ1dHRvbi53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMjIyMjIyOyB9XG4gICAgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgICAgIGNvbG9yOiAjMjIyMjIyOyB9XG4gIC5idXR0b24uYWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNTNiMmE7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLmhvbGxvdyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2MzMDAyZjtcbiAgICBjb2xvcjogI2MzMDAyZjsgfVxuICAgIC5idXR0b24uaG9sbG93LCAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNjIwMDE4O1xuICAgICAgY29sb3I6ICM2MjAwMTg7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMzAwMmY7XG4gICAgICBjb2xvcjogI2MzMDAyZjsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzYyMDAxODtcbiAgICAgICAgY29sb3I6ICM2MjAwMTg7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogYmxhY2s7XG4gICAgICAgIGNvbG9yOiBibGFjazsgfVxuICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3Mge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICAgICAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmcge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjODA1NzAwO1xuICAgICAgICBjb2xvcjogIzgwNTcwMDsgfVxuICAgIC5idXR0b24uaG9sbG93LmFsZXJ0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICAgICAgICBjb2xvcjogIzY3MjUxYTsgfVxuICAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSB7XG4gICAgb3BhY2l0eTogMC4yNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnkge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnkge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcyB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgICAgIGNvbG9yOiAjMjIyMjIyOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICAgICAgY29sb3I6ICMyMjIyMjI7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjRlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZmZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAwLjg3NXJlbTsgfVxuICAuYnV0dG9uLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICB0b3A6IC0wLjFlbTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuXG5bdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyLjM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWVlZWVlO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgzNCwgMzQsIDM0LCAwLjEpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjMjIyMjIyO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuICBbdHlwZT0ndGV4dCddOmZvY3VzLCBbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cywgW3R5cGU9J2RhdGUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmZvY3VzLCBbdHlwZT0nbW9udGgnXTpmb2N1cywgW3R5cGU9J3dlZWsnXTpmb2N1cywgW3R5cGU9J2VtYWlsJ106Zm9jdXMsIFt0eXBlPSdudW1iZXInXTpmb2N1cywgW3R5cGU9J3NlYXJjaCddOmZvY3VzLCBbdHlwZT0ndGVsJ106Zm9jdXMsIFt0eXBlPSd0aW1lJ106Zm9jdXMsIFt0eXBlPSd1cmwnXTpmb2N1cywgW3R5cGU9J2NvbG9yJ106Zm9jdXMsXG4gIHRleHRhcmVhOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMyMjIyMjI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICNlNmU2ZTY7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cblxudGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgdGV4dGFyZWFbcm93c10ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuXG5pbnB1dDo6cGxhY2Vob2xkZXIsXG50ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzIyMjIyMjsgfVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cblt0eXBlPSdzdWJtaXQnXSxcblt0eXBlPSdidXR0b24nXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuaW5wdXRbdHlwZT0nc2VhcmNoJ10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5sYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxubGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMjIyMjIyOyB9XG4gIGxhYmVsLm1pZGRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwLjU2MjVyZW0gMDsgfVxuXG4uaGVscC10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMyMjIyMjI7IH1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1idXR0b24sIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWVlZWVlO1xuICBiYWNrZ3JvdW5kOiAjZWVlZWVlO1xuICBjb2xvcjogIzIyMjIyMjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogMSU7XG4gIGhlaWdodDogMTAwJTsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgaGVpZ2h0OiAyLjQzNzVyZW07IH1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMSU7XG4gIGhlaWdodDogMTAwJTsgfVxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuXG4uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDsgfVxuXG5sZWdlbmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG4uZmllbGRzZXQge1xuICBtYXJnaW46IDEuMTI1cmVtIDA7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZWVlZWU7IH1cbiAgLmZpZWxkc2V0IGxlZ2VuZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4xODc1cmVtO1xuICAgIHBhZGRpbmc6IDAgMC4xODc1cmVtO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7IH1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWVlZWVlO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMjIyMjIyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgdmVyc2lvbj0nMS4xJyB3aWR0aD0nMzInIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAzMiAyNCc+PHBvbHlnb24gcG9pbnRzPScwLDAgMzIsMCAxNiwyNCcgc3R5bGU9J2ZpbGw6IHJnYiUyODM0LCAzNCwgMzQlMjknPjwvcG9seWdvbj48L3N2Zz5cIik7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTFyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09XCIpOyB9IH1cbiAgc2VsZWN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMyMjIyMjI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICNlNmU2ZTY7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgc2VsZWN0OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2M0YjM3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFlZGViOyB9XG4gIC5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNjYzRiMzc7IH1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2NjNGIzNzsgfVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICNjYzRiMzc7IH1cbiAgLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cblxuLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uYWNjb3JkaW9uLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogI2MzMDAyZjsgfVxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgIGNvbnRlbnQ6ICcrJzsgfVxuICAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDEzJzsgfVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIGNvbG9yOiAjMjIyMjIyOyB9XG4gIDpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmJyZWFkY3J1bWJzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmJyZWFkY3J1bWJzIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgICBjb2xvcjogIzIyMjIyMjtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5icmVhZGNydW1icyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDFweDtcbiAgICAgIG1hcmdpbjogMCAwLjc1cmVtO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgY29sb3I6ICNlNmU2ZTY7IH1cbiAgLmJyZWFkY3J1bWJzIGEge1xuICAgIGNvbG9yOiAjYzMwMDJmOyB9XG4gICAgLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmJyZWFkY3J1bWJzIC5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICNlNmU2ZTY7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uY2FsbG91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LCAzNCwgMzQsIDAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY29sb3I6ICMyMjIyMjI7IH1cbiAgLmNhbGxvdXQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmNhbGxvdXQgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuY2FsbG91dC5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZkMGRiO1xuICAgIGNvbG9yOiAjMjIyMjIyOyB9XG4gIC5jYWxsb3V0LnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZDlkOTtcbiAgICBjb2xvcjogIzIyMjIyMjsgfVxuICAuY2FsbG91dC5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTFmYWVhO1xuICAgIGNvbG9yOiAjMjIyMjIyOyB9XG4gIC5jYWxsb3V0Lndhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYzZDk7XG4gICAgY29sb3I6ICMyMjIyMjI7IH1cbiAgLmNhbGxvdXQuYWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2U0ZTE7XG4gICAgY29sb3I6ICMyMjIyMjI7IH1cbiAgLmNhbGxvdXQuc21hbGwge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH1cbiAgLmNhbGxvdXQubGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtOyB9XG5cbi5jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VlZWVlZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICMyMjIyMjI7IH1cbiAgLmNhcmQgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FyZC1kaXZpZGVyIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZDogI2VlZWVlZTsgfVxuICAuY2FyZC1kaXZpZGVyID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQtc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLmNhcmQtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjMjIyMjIyO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5jbG9zZS1idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gICAgY29sb3I6ICMyMjIyMjI7IH1cbiAgLmNsb3NlLWJ1dHRvbi5zbWFsbCB7XG4gICAgcmlnaHQ6IDAuNjZyZW07XG4gICAgdG9wOiAwLjMzZW07XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAuY2xvc2UtYnV0dG9uLCAuY2xvc2UtYnV0dG9uLm1lZGl1bSB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLm1lbnUge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAubWVudSA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm1lbnUgPiBsaSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gIC5tZW51ID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAubWVudSBpbnB1dCxcbiAgLm1lbnUgc2VsZWN0LFxuICAubWVudSBhLFxuICAubWVudSBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm1lbnUgPiBsaSA+IGEgaW1nLFxuICAubWVudSA+IGxpID4gYSBpLFxuICAubWVudSA+IGxpID4gYSBzdmcge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAubWVudSA+IGxpID4gYSBpbWcgKyBzcGFuLFxuICAgIC5tZW51ID4gbGkgPiBhIGkgKyBzcGFuLFxuICAgIC5tZW51ID4gbGkgPiBhIHN2ZyArIHNwYW4ge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAubWVudSA+IGxpID4gYSBpbWcsXG4gIC5tZW51ID4gbGkgPiBhIGksXG4gIC5tZW51ID4gbGkgPiBhIHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAubWVudSA+IGxpLCAubWVudS5ob3Jpem9udGFsID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH1cbiAgLm1lbnUuZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7IH1cbiAgICAubWVudS5leHBhbmRlZCA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lbnUudmVydGljYWwgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH1cbiAgICAubWVudS5tZWRpdW0tZXhwYW5kZWQge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRhYmxlLWxheW91dDogZml4ZWQ7IH1cbiAgICAgIC5tZW51Lm1lZGl1bS1leHBhbmRlZCA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuICAgIC5tZW51LmxhcmdlLWV4cGFuZGVkIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyB9XG4gICAgICAubWVudS5sYXJnZS1leHBhbmRlZCA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAubWVudS5zaW1wbGUgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5tZW51LnNpbXBsZSBhIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5tZW51LnNpbXBsZSBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gIC5tZW51LnNpbXBsZS5hbGlnbi1yaWdodCBsaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0OjpiZWZvcmUsIC5tZW51LmFsaWduLXJpZ2h0OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQgPiBsaSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5tZW51Lmljb24tdG9wID4gbGkgPiBhIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAubWVudS5pY29uLXRvcCA+IGxpID4gYSBpbWcsXG4gICAgLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEgaSxcbiAgICAubWVudS5pY29uLXRvcCA+IGxpID4gYSBzdmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDAgYXV0byAwLjI1cmVtOyB9XG4gIC5tZW51Lmljb24tdG9wLnZlcnRpY2FsIGEgPiBzcGFuIHtcbiAgICBtYXJnaW46IGF1dG87IH1cbiAgLm1lbnUubmVzdGVkIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAubWVudSAuYWN0aXZlID4gYSB7XG4gICAgYmFja2dyb3VuZDogI2MzMDAyZjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubWVudS5tZW51LWJvcmRlcmVkIGxpIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlZWVlOyB9XG4gICAgLm1lbnUubWVudS1ib3JkZXJlZCBsaTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItdG9wOiAwOyB9XG4gIC5tZW51Lm1lbnUtaG92ZXIgbGk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cblxuLm1lbnUtdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7IH1cblxuLm1lbnUtY2VudGVyZWQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbnUtY2VudGVyZWQgPiAubWVudSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5tZW51LWljb246OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICNmZmZmZmYsIDAgMTRweCAwICNmZmZmZmY7XG4gICAgY29udGVudDogJyc7IH1cbiAgLm1lbnUtaWNvbjpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjZTZlNmU2LCAwIDE0cHggMCAjZTZlNmU2OyB9XG5cbi5tZW51LWljb24uZGFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm1lbnUtaWNvbi5kYXJrOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6ICMyMjIyMjI7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjMjIyMjIyLCAwIDE0cHggMCAjMjIyMjIyO1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICMyMjIyMjI7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjMjIyMjIyLCAwIDE0cHggMCAjMjIyMjIyOyB9XG5cbi5pcy1kcmlsbGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmlzLWRyaWxsZG93biBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmlzLWRyaWxsZG93bi5hbmltYXRlLWhlaWdodCB7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7IH1cblxuLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjsgfVxuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtYWN0aXZlIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cbiAgLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWNsb3Npbmcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuXG4uZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXMge1xuICBtaW4taGVpZ2h0OiAxMDAlOyB9XG5cbi5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjYzMwMDJmO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgIHJpZ2h0OiAxcmVtOyB9XG5cbi5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICNjMzAwMmYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IH1cblxuLmRyb3Bkb3duLXBhbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDI3MHB4O1xuICBwYWRkaW5nOiAxcmVtO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5kcm9wZG93bi1wYW5lLmlzLW9wZW4ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDsgfVxuXG4uZHJvcGRvd24tcGFuZS5zbWFsbCB7XG4gIHdpZHRoOiAyMDBweDsgfVxuXG4uZHJvcGRvd24tcGFuZS5sYXJnZSB7XG4gIHdpZHRoOiA0MDBweDsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMyMjIyMjIgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiA1cHg7XG4gIG1hcmdpbi10b3A6IC0zcHg7IH1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5kcm9wZG93bi5tZW51IGEge1xuICBvdXRsaW5lOiAwOyB9XG5cbi5uby1qcyAuZHJvcGRvd24ubWVudSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxNHB4OyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzIyMjIyMiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMjIyMjIyOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjIyMjIyIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMjIyMjIyIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzIyMjIyMjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICMyMjIyMjIgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMjIyMjIyIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMjIyMjIyOyB9IH1cblxuLmRyb3Bkb3duLm1lbnUuYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bzsgfVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gIHdpZHRoOiAxMDBweDsgfVxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbC5hbGlnbi1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC02cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAyMjBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYmFja2dyb3VuZDogI2MzMDAyZjsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMjIyMjIyIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMyMjIyMjI7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIG1hcmdpbi10b3A6IC0xcHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgPiBsaSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucmVzcG9uc2l2ZS1lbWJlZCxcbi5mbGV4LXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnJlc3BvbnNpdmUtZW1iZWQgaWZyYW1lLFxuICAucmVzcG9uc2l2ZS1lbWJlZCBvYmplY3QsXG4gIC5yZXNwb25zaXZlLWVtYmVkIGVtYmVkLFxuICAucmVzcG9uc2l2ZS1lbWJlZCB2aWRlbyxcbiAgLmZsZXgtdmlkZW8gaWZyYW1lLFxuICAuZmxleC12aWRlbyBvYmplY3QsXG4gIC5mbGV4LXZpZGVvIGVtYmVkLFxuICAuZmxleC12aWRlbyB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAucmVzcG9uc2l2ZS1lbWJlZC53aWRlc2NyZWVuLFxuICAuZmxleC12aWRlby53aWRlc2NyZWVuIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyB9XG5cbi5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kOiAjYzMwMDJmO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubGFiZWwucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogI2MzMDAyZjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubGFiZWwuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5sYWJlbC5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMjIyMjIyOyB9XG4gIC5sYWJlbC53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMjIyMjIyOyB9XG4gIC5sYWJlbC5hbGVydCB7XG4gICAgYmFja2dyb3VuZDogI2NjNGIzNztcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4ubWVkaWEtb2JqZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLm1lZGlhLW9iamVjdCBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbi5taWRkbGUge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uLmJvdHRvbSB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuXG4ucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5wYWdpbmF0aW9uOjpiZWZvcmUsIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnBhZ2luYXRpb24gbGkge1xuICAgIG1hcmdpbi1yaWdodDogMC4wNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBhZ2luYXRpb24gbGk6bGFzdC1jaGlsZCwgLnBhZ2luYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLnBhZ2luYXRpb24gYSxcbiAgLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogIzIyMjIyMjsgfVxuICAgIC5wYWdpbmF0aW9uIGE6aG92ZXIsXG4gICAgLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlZWVlZWU7IH1cbiAgLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjYzMwMDJmO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb2xvcjogI2U2ZTZlNjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5wYWdpbmF0aW9uIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb250ZW50OiAnXFwyMDI2JztcbiAgICBjb2xvcjogIzIyMjIyMjsgfVxuXG4ucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4ucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgY29udGVudDogJ1xcMDBhYic7IH1cblxuLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbi5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBjb250ZW50OiAnXFwwMGJiJzsgfVxuXG5ib2R5LmlzLXJldmVhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5odG1sLmlzLXJldmVhbC1vcGVuLFxuaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDM0LCAzNCwgMC40NSk7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuXG4ucmV2ZWFsIHtcbiAgei1pbmRleDogMTAwNjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnJldmVhbCB7XG4gICAgb3V0bGluZTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgbWluLWhlaWdodDogMDsgfSB9XG4gIC5yZXZlYWwgLmNvbHVtbiwgLnJldmVhbCAuY29sdW1ucyxcbiAgLnJldmVhbCAuY29sdW1ucyB7XG4gICAgbWluLXdpZHRoOiAwOyB9XG4gIC5yZXZlYWwgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgd2lkdGg6IDYwMHB4O1xuICAgICAgbWF4LXdpZHRoOiA4MS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCAucmV2ZWFsIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgLnJldmVhbC5jb2xsYXBzZSB7XG4gICAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwudGlueSB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgbWF4LXdpZHRoOiA4MS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC5zbWFsbCB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWF4LXdpZHRoOiA4MS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC5sYXJnZSB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWF4LXdpZHRoOiA4MS4yNXJlbTsgfSB9XG4gIC5yZXZlYWwuZnVsbCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9IH1cbiAgLnJldmVhbC53aXRob3V0LW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMmYyZjI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcbiAgICBjb2xvcjogIzIyMjIyMjsgfVxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogI2YyZjJmMjtcbiAgICBjb2xvcjogIzIyMjIyMjsgfVxuICB0aGVhZCB0cixcbiAgdGZvb3QgdHIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIHRoZWFkIHRoLFxuICB0aGVhZCB0ZCxcbiAgdGZvb3QgdGgsXG4gIHRmb290IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIHRib2R5IHRoLFxuICB0Ym9keSB0ZCB7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtOyB9XG4gIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyOyB9XG4gIHRhYmxlLnVuc3RyaXBlZCB0Ym9keSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIHRhYmxlLnVuc3RyaXBlZCB0Ym9keSB0ciB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMmYyZjI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICB0YWJsZS5zdGFjayB0aGVhZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICB0YWJsZS5zdGFjayB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICB0YWJsZS5zdGFjayB0cixcbiAgdGFibGUuc3RhY2sgdGgsXG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDsgfSB9XG5cbnRhYmxlLnNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxuXG50YWJsZS5ob3ZlciB0aGVhZCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7IH1cblxudGFibGUuaG92ZXIgdGZvb3QgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkOyB9XG5cbnRhYmxlLmhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTsgfVxuXG50YWJsZS5ob3Zlcjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkOyB9XG5cbi50YWJsZS1zY3JvbGwge1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG4gIC50YWJsZS1zY3JvbGwgdGFibGUge1xuICAgIHdpZHRoOiBhdXRvOyB9XG5cbi50YWJzIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCBub25lO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgLnRhYnM6OmJlZm9yZSwgLnRhYnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLnRhYnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4udGFicy52ZXJ0aWNhbCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bzsgfVxuXG4udGFicy5zaW1wbGUgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwOyB9XG4gIC50YWJzLnNpbXBsZSA+IGxpID4gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnRhYnMucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICNjMzAwMmY7IH1cbiAgLnRhYnMucHJpbWFyeSA+IGxpID4gYSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLCAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICNkMzAwMzM7IH1cblxuLnRhYnMtdGl0bGUge1xuICBmbG9hdDogbGVmdDsgfVxuICAudGFicy10aXRsZSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICNjMzAwMmY7IH1cbiAgICAudGFicy10aXRsZSA+IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIGNvbG9yOiAjYTgwMDI4OyB9XG4gICAgLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICNjMzAwMmY7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4udGFicy1jb250ZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgbm9uZTtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgY29sb3I6ICMyMjIyMjI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cblxuLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIG5vbmU7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTsgfVxuICAudGFicy1wYW5lbFthcmlhLWhpZGRlbj1cImZhbHNlXCJdIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTsgfVxuXG4uc2hvdy1vbi1mb2N1czphY3RpdmUsIC5zaG93LW9uLWZvY3VzOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bzsgfVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuLmZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi5mbG9hdC1jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4uY2xlYXJmaXg6OmJlZm9yZSwgLmNsZWFyZml4OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7IH1cblxuLmNsZWFyZml4OjphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cblxuLnNsaWRlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cblxuLmZhZGUtaW4ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLmZhZGUtaW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5mYWRlLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsgfVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNsb3cge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50OyB9XG5cbi5mYXN0IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDsgfVxuXG4ubGluZWFyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50OyB9XG5cbi5lYXNlIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLnNob3J0LWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDsgfVxuXG4ubG9uZy1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7IH1cblxuLnNoYWtlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlLTc7IH1cblxuQGtleWZyYW1lcyBzaGFrZS03IHtcbiAgMCUsIDEwJSwgMjAlLCAzMCUsIDQwJSwgNTAlLCA2MCUsIDcwJSwgODAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg3JSk7IH1cbiAgNSUsIDE1JSwgMjUlLCAzNSUsIDQ1JSwgNTUlLCA2NSUsIDc1JSwgODUlLCA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNyUpOyB9IH1cblxuLnNwaW4tY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjsgfVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfSB9XG5cbi5zcGluLWNjdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuOyB9XG5cbkBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxdHVybik7IH0gfVxuXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHdpZ2dsZS03ZGVnOyB9XG5cbkBrZXlmcmFtZXMgd2lnZ2xlLTdkZWcge1xuICA0MCUsIDUwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3ZGVnKTsgfVxuICAzNSUsIDQ1JSwgNTUlLCA2NSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKTsgfVxuICAwJSwgMzAlLCA3MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9IH1cblxuLnNoYWtlLFxuLnNwaW4tY3csXG4uc3Bpbi1jY3csXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtczsgfVxuXG4uaW5maW5pdGUge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsgfVxuXG4uc2xvdyB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDsgfVxuXG4uZmFzdCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDsgfVxuXG4ubGluZWFyIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5zaG9ydC1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDsgfVxuXG4ubG9uZy1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDsgfVxuXG5hIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbmlmcmFtZSB7XG4gIGJvcmRlcjogMDsgfVxuXG4uY2FsbG91dCB7XG4gIG1hcmdpbjogMC4zMTI1cmVtIDA7XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gIGJvcmRlcjogbm9uZTsgfVxuXG4uaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtYWN0aXZlIHtcbiAgei1pbmRleDogMiAhaW1wb3J0YW50OyB9XG5cbi5kYXRlcGlja2VyIHRhYmxlIHRoZWFkIHtcbiAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7IH1cblxuLmRhdGVwaWNrZXIgdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxuXG4udGVtcG9yYXJ5LXNsb2dhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gIHotaW5kZXg6IDk5OTsgfVxuICAudGVtcG9yYXJ5LXNsb2dhbl9faW5uZXIge1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnRlbXBvcmFyeS1zbG9nYW5fX2lubmVyIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50ZW1wb3Jhcnktc2xvZ2FuX19pbm5lciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAudGVtcG9yYXJ5LXNsb2dhbl9faW5uZXIge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAgIC50ZW1wb3Jhcnktc2xvZ2FuX19pbm5lciBhIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5ibG9jay0tc2lkZWJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAuYmxvY2stLXNpZGViYXIgLmJsb2NrX19wcmltYXJ5LWltYWdlcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX2ljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBwYWRkaW5nOiAwLjM3NXJlbSAwLjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX2ljb24gaSB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX2RldGFpbHMge1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX2RldGFpbHMge1xuICAgICAgICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLmJsb2NrLS1zaWRlYmFyIC5ibG9ja19fc3ViLXRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAwLjE4NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuYmxvY2stLXNpZGViYXIgLmJsb2NrX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMC4zNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4uZGVwYXJ0bWVudC0tdmVoaWNsZSAuZGVwYXJ0bWVudF9fdGVsZXBob25lIC5kZXBhcnRtZW50X19sYWJlbDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbnRlbnQ6ICc6JztcbiAgbWFyZ2luLXJpZ2h0OiAwLjE4NzVyZW07IH1cblxuLmRlcGFydG1lbnQtLXZlaGljbGUgLmRlcGFydG1lbnRfX3RlbGVwaG9uZSAuZGVwYXJ0bWVudF9fdmFsdWUge1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbi5kZXBhcnRtZW50LS12ZWhpY2xlIC5kZXBhcnRtZW50X19vcGVuaW5nLWhvdXJzIC5kZXBhcnRtZW50X192YWx1ZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbi5mb3JtLS1kZWxpdmVyeS1jYWxlbmRhciB7XG4gIG1hcmdpbi10b3A6IDAuOTM3NXJlbTsgfVxuICAuZm9ybS0tZGVsaXZlcnktY2FsZW5kYXIgLmZvcm1fX2xpbmsge1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZvcm0tLWRlbGl2ZXJ5LWNhbGVuZGFyIC5mb3JtX19saW5rIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH0gfVxuICAgIC5mb3JtLS1kZWxpdmVyeS1jYWxlbmRhciAuZm9ybV9fbGluayAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiBbdHlwZT0ndGV4dCddLFxuLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiBbdHlwZT0ncGFzc3dvcmQnXSxcbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gW3R5cGU9J2RhdGUnXSxcbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gW3R5cGU9J2RhdGV0aW1lJ10sXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLFxuLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiBbdHlwZT0nbW9udGgnXSxcbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gW3R5cGU9J3dlZWsnXSxcbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gW3R5cGU9J2VtYWlsJ10sXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIFt0eXBlPSdudW1iZXInXSxcbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gW3R5cGU9J3NlYXJjaCddLFxuLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiBbdHlwZT0ndGVsJ10sXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIFt0eXBlPSd0aW1lJ10sXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIFt0eXBlPSd1cmwnXSxcbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gW3R5cGU9J2NvbG9yJ10sXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIHNlbGVjdCxcbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gdGV4dGFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cblxuLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiBsYWJlbC5lcnJvciB7XG4gIGhlaWdodDogMS4xODc1cmVtO1xuICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gIGNvbG9yOiAjY2M0YjM3O1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTg3NXJlbTsgfVxuXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19iYWNrIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07IH1cbiAgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fYmFjayBhIGkge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19iYWNrIGEgc3BhbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19zdGVwMCAuZmllbGQtcmVnaXN0cmF0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3N0ZXAwIC5maWVsZC1yZWdpc3RyYXRpb24gLmZvcm0tZ3JvdXBfX2lucHV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzLjc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMy43NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fc3RlcDAgLmZpZWxkLXJlZ2lzdHJhdGlvbiAuZm9ybS1ncm91cF9faW5wdXQ6OmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogXCI2N2RlZ3JlZXNcIjtcbiAgICAgIGNvbnRlbnQ6IFwiXFw0N1wiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGhlaWdodDogMy43NXJlbTtcbiAgICAgIHdpZHRoOiAzLjEyNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMi4xO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4zNzVyZW07XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjM3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgd29yZC13cmFwOiBub3JtYWw7XG4gICAgICBkaXJlY3Rpb246IGx0cjtcbiAgICAgIC13ZWJraXQtZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAuZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19zdGVwMCAuZmllbGQtcmVnaXN0cmF0aW9uIC5mb3JtLWdyb3VwX19pbnB1dCBpbnB1dCB7XG4gICAgICBoZWlnaHQ6IDMuNjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fc3RlcDAgLmZpZWxkLXJlZ2lzdHJhdGlvbiAuY29udHJvbC1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19zdGVwMSB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fc3RlcDEge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3N0ZXAxIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fc3RlcDE6OmJlZm9yZSwgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fc3RlcDE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fc3RlcDE6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19zdGVwMSBmaWVsZHNldCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19zdGVwMSBmaWVsZHNldCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3N0ZXAxIGZpZWxkc2V0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3N0ZXAxIGZpZWxkc2V0IHtcbiAgICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fc3RlcDEgZmllbGRzZXQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3N0ZXAxIGZpZWxkc2V0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3N0ZXAxIC5zdW1tYXJ5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3N0ZXAxIC5zdW1tYXJ5IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fc3RlcDEgLnN1bW1hcnk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fc3RlcDEgLnN1bW1hcnkge1xuICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19zdGVwMSAuc3VtbWFyeSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fc3RlcDEgLnN1bW1hcnk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAuZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19zdGVwMSAuc3VtbWFyeV9faW5uZXIge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgICAgcGFkZGluZzogMS4yNXJlbTsgfVxuICAgIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3N0ZXAxIC5zdW1tYXJ5X190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fc3RlcDEgLnN1bW1hcnlfX2xpc3Qge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3N0ZXAxIC5zdW1tYXJ5X19saXN0LWl0ZW0gc3BhbiB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG5cbi52YWx1YXRpb25fX3ByaWNlIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmZvcm0tLXNlcnZpY2UtYm9va2luZyB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmc6OmJlZm9yZSwgLmZvcm0tLXNlcnZpY2UtYm9va2luZzo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuZm9ybS0tc2VydmljZS1ib29raW5nOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyBbdHlwZT0ndGV4dCddLFxuICAuZm9ybS0tc2VydmljZS1ib29raW5nIFt0eXBlPSdwYXNzd29yZCddLFxuICAuZm9ybS0tc2VydmljZS1ib29raW5nIFt0eXBlPSdkYXRlJ10sXG4gIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgW3R5cGU9J2RhdGV0aW1lJ10sXG4gIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4gIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgW3R5cGU9J21vbnRoJ10sXG4gIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgW3R5cGU9J3dlZWsnXSxcbiAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyBbdHlwZT0nZW1haWwnXSxcbiAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyBbdHlwZT0nbnVtYmVyJ10sXG4gIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgW3R5cGU9J3NlYXJjaCddLFxuICAuZm9ybS0tc2VydmljZS1ib29raW5nIFt0eXBlPSd0ZWwnXSxcbiAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyBbdHlwZT0ndGltZSddLFxuICAuZm9ybS0tc2VydmljZS1ib29raW5nIFt0eXBlPSd1cmwnXSxcbiAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyBbdHlwZT0nY29sb3InXSxcbiAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyBzZWxlY3QsXG4gIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgdGV4dGFyZWEge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuICAuZm9ybS0tc2VydmljZS1ib29raW5nIGxhYmVsLmVycm9yIHtcbiAgICBoZWlnaHQ6IDEuMTg3NXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbiAgICBjb2xvcjogI2NjNGIzNztcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xODc1cmVtOyB9XG4gIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZvcm1fX3N0ZXBzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZvcm1fX3N0ZXBzIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZm9ybV9fc3RlcHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZm9ybV9fc3RlcHMge1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5mb3JtX19zdGVwcyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZm9ybV9fc3RlcHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZm9ybV9fc3VtbWFyeSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5mb3JtX19zdW1tYXJ5IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZm9ybV9fc3VtbWFyeTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5mb3JtX19zdW1tYXJ5IHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZm9ybV9fc3VtbWFyeSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZm9ybV9fc3VtbWFyeTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5mb3JtLWRpc2NsYWltZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZm9ybS1kaXNjbGFpbWVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZm9ybS1kaXNjbGFpbWVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1yZWdpc3RyYXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1yZWdpc3RyYXRpb24gLmZvcm0tZ3JvdXBfX2lucHV0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzLjc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAzLjc1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tcmVnaXN0cmF0aW9uIC5mb3JtLWdyb3VwX19pbnB1dDo6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiNjdkZWdyZWVzXCI7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFw0N1wiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiAzLjc1cmVtO1xuICAgICAgICB3aWR0aDogMy4xMjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjE7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMzc1cmVtO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjM3NXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICAgIC13ZWJraXQtZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tcmVnaXN0cmF0aW9uIC5mb3JtLWdyb3VwX19pbnB1dCBpbnB1dCB7XG4gICAgICAgIGhlaWdodDogMy42MjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1yZWdpc3RyYXRpb24gLmNvbnRyb2wtbGFiZWwge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tc2VydmljZV90eXBlIC5jb250cm9sLWxhYmVsLFxuICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tYWRkaXRpb25hbC1zZXJ2aWNlX3R5cGUgLmNvbnRyb2wtbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1zZXJ2aWNlX3R5cGUgcCxcbiAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLWFkZGl0aW9uYWwtc2VydmljZV90eXBlIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tc2VydmljZV90eXBlIC5vcHRpb25zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1zZXJ2aWNlX3R5cGUgLm9wdGlvbnMge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLXNlcnZpY2VfdHlwZSAub3B0aW9ucyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1zZXJ2aWNlX3R5cGUgLm9wdGlvbnM6OmJlZm9yZSwgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLXNlcnZpY2VfdHlwZSAub3B0aW9uczo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tc2VydmljZV90eXBlIC5vcHRpb25zOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1zZXJ2aWNlX3R5cGUgLm9wdGlvbnMgPiBsYWJlbCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tc2VydmljZV90eXBlIC5vcHRpb25zID4gbGFiZWwge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tc2VydmljZV90eXBlIC5vcHRpb25zID4gbGFiZWw6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1zZXJ2aWNlX3R5cGUgLm9wdGlvbnMgPiBsYWJlbDpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tc2VydmljZV90eXBlIC5vcHRpb25zID4gbGFiZWw6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1zZXJ2aWNlX3R5cGUgLm9wdGlvbnMgPiBsYWJlbCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1zZXJ2aWNlX3R5cGUgLm9wdGlvbnMgPiBsYWJlbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLXNlcnZpY2VfdHlwZSAub3B0aW9ucyA+IGxhYmVsOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLXNlcnZpY2VfdHlwZSAub3B0aW9ucyA+IGxhYmVsOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tc2VydmljZV90eXBlIC5vcHRpb25zID4gbGFiZWw6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1zZXJ2aWNlX3R5cGUgLm9wdGlvbnNfX2xhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tc2VydmljZV90eXBlIC5vcHRpb25zX19sYWJlbCBpbnB1dCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1zZXJ2aWNlX3R5cGUgLm9wdGlvbnNfX2xhYmVsIC5vcHRpb25zX19kZXRhaWxzIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDYuMjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tc2VydmljZV90eXBlIC5vcHRpb25zX19sYWJlbCBpbnB1dDpjaGVja2VkICsgLm9wdGlvbnNfX2RldGFpbHMge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjsgfVxuICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLXNlcnZpY2VfdHlwZSAub3B0aW9uc19fbGFiZWwgLm9wdGlvbnNfX25hbWUge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLXNlcnZpY2VfdHlwZSAub3B0aW9uc19fbGFiZWwgLm9wdGlvbnNfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDJyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLXNlcnZpY2VfdHlwZSAub3B0aW9uc19fbGFiZWwgLm9wdGlvbnNfX3ByaWNlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1zZXJ2aWNlX3R5cGUgLm9wdGlvbnNfX2xhYmVsIGxhYmVsLmVycm9yIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDAuMTg3NXJlbTtcbiAgICAgICAgbGVmdDogNi4yNXJlbTtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1hZGRpdGlvbmFsLXNlcnZpY2VfdHlwZSAub3B0aW9ucyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tYWRkaXRpb25hbC1zZXJ2aWNlX3R5cGUgLm9wdGlvbnMge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLWFkZGl0aW9uYWwtc2VydmljZV90eXBlIC5vcHRpb25zIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLWFkZGl0aW9uYWwtc2VydmljZV90eXBlIC5vcHRpb25zOjpiZWZvcmUsIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1hZGRpdGlvbmFsLXNlcnZpY2VfdHlwZSAub3B0aW9uczo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tYWRkaXRpb25hbC1zZXJ2aWNlX3R5cGUgLm9wdGlvbnM6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLWFkZGl0aW9uYWwtc2VydmljZV90eXBlIC5vcHRpb25zID4gbGFiZWwge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLWFkZGl0aW9uYWwtc2VydmljZV90eXBlIC5vcHRpb25zID4gbGFiZWwge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tYWRkaXRpb25hbC1zZXJ2aWNlX3R5cGUgLm9wdGlvbnMgPiBsYWJlbDpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLWFkZGl0aW9uYWwtc2VydmljZV90eXBlIC5vcHRpb25zID4gbGFiZWw6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLWFkZGl0aW9uYWwtc2VydmljZV90eXBlIC5vcHRpb25zID4gbGFiZWw6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLWFkZGl0aW9uYWwtc2VydmljZV90eXBlIC5vcHRpb25zX19sYWJlbCBpbnB1dCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLWFkZGl0aW9uYWwtc2VydmljZV90eXBlIC5vcHRpb25zX19sYWJlbCAub3B0aW9uc19fZGV0YWlscyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tYWRkaXRpb25hbC1zZXJ2aWNlX3R5cGUgLm9wdGlvbnNfX2xhYmVsIGlucHV0OmNoZWNrZWQgKyAub3B0aW9uc19fZGV0YWlscyB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7IH1cbiAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tYWRkaXRpb25hbC1zZXJ2aWNlX3R5cGUgLm9wdGlvbnNfX2xhYmVsIC5vcHRpb25zX19uYW1lIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1hZGRpdGlvbmFsLXNlcnZpY2VfdHlwZSAub3B0aW9uc19fbGFiZWwgLm9wdGlvbnNfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICBtYXJnaW4tdG9wOiAwLjMxMjVyZW07XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLWFkZGl0aW9uYWwtc2VydmljZV90eXBlIC5vcHRpb25zX19sYWJlbCAub3B0aW9uc19fcHJpY2Uge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuZmllbGQtc2VydmljZWJvb2tpbmdmb3JtLWFkZGl0aW9uYWwtc2VydmljZV90eXBlIC5vcHRpb25zX19sYWJlbCBsYWJlbC5lcnJvciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDAuMTg3NXJlbTtcbiAgICAgIGxlZnQ6IDYuMjVyZW07XG4gICAgICBtYXJnaW46IDA7IH1cbiAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuY29uZmlybWF0aW9uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmNvbmZpcm1hdGlvbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5jb25maXJtYXRpb24ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5jb25maXJtYXRpb246OmJlZm9yZSwgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuY29uZmlybWF0aW9uOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmNvbmZpcm1hdGlvbjo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5jb25maXJtYXRpb24gPiBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5jb25maXJtYXRpb24gPiBsaSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmNvbmZpcm1hdGlvbiA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5jb25maXJtYXRpb24gPiBsaTpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5jb25maXJtYXRpb24gPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuY29uZmlybWF0aW9uID4gbGkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5jb25maXJtYXRpb24gPiBsaSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuY29uZmlybWF0aW9uID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5jb25maXJtYXRpb24gPiBsaTpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuY29uZmlybWF0aW9uID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmNvbmZpcm1hdGlvbiA+IGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuY29uZmlybWF0aW9uX19zdGVwIHtcbiAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5jb25maXJtYXRpb25fX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuODEyNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmNvbmZpcm1hdGlvbl9fY2hhbmdlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmNvbmZpcm1hdGlvbl9fcm93IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtOyB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuY29uZmlybWF0aW9uX19sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmNvbmZpcm1hdGlvbl9fdmFsdWUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS41OyB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuY29uZmlybWF0aW9uX19yb3ctLWFkZGl0aW9uYWwtc2VydmljZSAuY29uZmlybWF0aW9uX19sYWJlbCxcbiAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5jb25maXJtYXRpb25fX3Jvdy0tYWRkaXRpb25hbC1zZXJ2aWNlIC5jb25maXJtYXRpb25fX3ZhbHVlLCAuZm9ybS0tc2VydmljZS1ib29raW5nIC5jb25maXJtYXRpb25fX3Jvdy0tc2VydmljZS10eXBlIC5jb25maXJtYXRpb25fX2xhYmVsLFxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLmNvbmZpcm1hdGlvbl9fcm93LS1zZXJ2aWNlLXR5cGUgLmNvbmZpcm1hdGlvbl9fdmFsdWUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuc3VtbWFyeSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgICBwYWRkaW5nOiAxLjI1cmVtOyB9XG4gICAgLmZvcm0tLXNlcnZpY2UtYm9va2luZyAuc3VtbWFyeV9fdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLnN1bW1hcnlfX2xhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLnN1bW1hcnlfX3ZhbHVlIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5mb3JtLS1zZXJ2aWNlLWJvb2tpbmcgLnN1bW1hcnlfX3Jvdy0tc2VydmljZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjE4NzVyZW07IH1cbiAgICAuZm9ybS0tc2VydmljZS1ib29raW5nIC5zdW1tYXJ5X19yb3ctLXRvdGFsIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZjYwMDNiO1xuICAgICAgbWFyZ2luLXRvcDogMC44MTI1cmVtO1xuICAgICAgcGFkZGluZy10b3A6IDAuNjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLmZvcm0tLXZlaGljbGUtcGF5bWVudCAuZm9ybS1tYXJrZXRpbmdfX2ZpZWxkcyBpbnB1dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmZvcm0tLXZlaGljbGUtcGF5bWVudCAuZmllbGQtc3VibWl0IHtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb3JtLS12ZWhpY2xlLXBheW1lbnQgLmZpZWxkLXN1Ym1pdCB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfSB9XG4gIC5mb3JtLS12ZWhpY2xlLXBheW1lbnQgLmZpZWxkLXN1Ym1pdCAuYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5mb3JtLS12ZWhpY2xlLXNvcnQgc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjg3NXJlbTsgfVxuXG4uZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX2JhY2sgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwLjM3NXJlbTsgfVxuICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX2JhY2sgYSBpIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19iYWNrIGEgc3BhbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4uZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuXG4uZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3JvdyB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19yb3cge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fcm93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19yb3c6OmJlZm9yZSwgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19yb3c6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19yb3c6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3JlZ2lzdHJhdGlvbixcbi5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fbWlsZWFnZSxcbi5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fZmlyc3QtbmFtZSxcbi5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fbGFzdC1uYW1lLFxuLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX190b3duLFxuLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19icmFuY2gsXG4uZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3Bob25lLFxuLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19lbWFpbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3JlZ2lzdHJhdGlvbixcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX21pbGVhZ2UsXG4gICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19maXJzdC1uYW1lLFxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fbGFzdC1uYW1lLFxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdG93bixcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX2JyYW5jaCxcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3Bob25lLFxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fZW1haWwge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3JlZ2lzdHJhdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX21pbGVhZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19maXJzdC1uYW1lOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fbGFzdC1uYW1lOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdG93bjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX2JyYW5jaDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3Bob25lOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fZW1haWw6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19yZWdpc3RyYXRpb24sXG4gICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19taWxlYWdlLFxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fZmlyc3QtbmFtZSxcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX2xhc3QtbmFtZSxcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3Rvd24sXG4gICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19icmFuY2gsXG4gICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19waG9uZSxcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX2VtYWlsIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fcmVnaXN0cmF0aW9uLFxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fbWlsZWFnZSxcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX2ZpcnN0LW5hbWUsXG4gICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19sYXN0LW5hbWUsXG4gICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX190b3duLFxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fYnJhbmNoLFxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fcGhvbmUsXG4gICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19lbWFpbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3JlZ2lzdHJhdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX19taWxlYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX2ZpcnN0LW5hbWU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fbGFzdC1uYW1lOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3Rvd246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fYnJhbmNoOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3Bob25lOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX2VtYWlsOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4uZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3BhcnQtZXhjaGFuZ2UtdmVoaWNsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3BhcnQtZXhjaGFuZ2UtdmVoaWNsZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fcGFydC1leGNoYW5nZS12ZWhpY2xlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLnN1bW1hcnkge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5zdW1tYXJ5X190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5zdW1tYXJ5X19saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuc3VtbWFyeV9fbGlzdCBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAgICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5zdW1tYXJ5X19saXN0IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmVoaWNsZS1zcGVjaWZpY3Mge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192ZWhpY2xlLXNwZWNpZmljcyBsaSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmVoaWNsZS1zcGVjaWZpY3MgbGkgLmNoZWNrYm94IHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmVoaWNsZS1zcGVjaWZpY3MgbGkgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmVoaWNsZS1zcGVjaWZpY3MgbGkgbGFiZWwge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmVoaWNsZS1zcGVjaWZpY3MgbGkgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuMTg3NXJlbTtcbiAgICAgIGNvbG9yOiAjYzMwMDJmOyB9XG4gIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmVoaWNsZS1zcGVjaWZpY3MgLmZvcm1fX2ZpZWxkLWhhcy1vdXRzdGFuZGluZy1maW5hbmNlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cblxuLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192ZWhpY2xlLWNvbmRpdGlvbiB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICBtYXJnaW46IDAgMCAwLjkzNzVyZW07XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZlaGljbGUtY29uZGl0aW9uIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZlaGljbGUtY29uZGl0aW9uIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192ZWhpY2xlLWNvbmRpdGlvbjo6YmVmb3JlLCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZlaGljbGUtY29uZGl0aW9uOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmVoaWNsZS1jb25kaXRpb246OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZlaGljbGUtY29uZGl0aW9uID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192ZWhpY2xlLWNvbmRpdGlvbiA+IGxpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192ZWhpY2xlLWNvbmRpdGlvbiA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmVoaWNsZS1jb25kaXRpb24gPiBsaTpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmVoaWNsZS1jb25kaXRpb24gPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZlaGljbGUtY29uZGl0aW9uID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjAlO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZlaGljbGUtY29uZGl0aW9uID4gbGkge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZlaGljbGUtY29uZGl0aW9uID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmVoaWNsZS1jb25kaXRpb24gPiBsaTpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZlaGljbGUtY29uZGl0aW9uID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192ZWhpY2xlLWNvbmRpdGlvbiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmVoaWNsZS1jb25kaXRpb24gbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmVoaWNsZS1jb25kaXRpb24gbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5maWVsZC1wYXJ0ZXhjaGFuZ2Vmb3JtLWxpZ2h0Y29uZGl0aW9uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiBoMywgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192YWx1YXRpb24gLmJsb2NrLS1zaWRlYmFyIC5ibG9ja19fdGl0bGUsIC5ibG9jay0tc2lkZWJhciAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAuYmxvY2tfX3RpdGxlLCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fc3ViLXRpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uIC5vZmZlcl9fc3ViLXRpdGxlLCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAuYWRkLW9uX190aXRsZSwgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192YWx1YXRpb24gLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCBzcGFuLCAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX21vbnRoIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uIHNwYW4sIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X190aXRsZSwgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192YWx1YXRpb24gLm9yZGVyLXBheW1lbnRfX3RpdGxlLCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAub3JkZXItc3RhdGUtc3VtbWFyeV9fdmVoaWNsZS10aXRsZSwgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192YWx1YXRpb24gLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19zdWItdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAucGFydF9fc3ViLXRpdGxlLCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3N1Yi10aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uIC5wb3N0X19zdWItdGl0bGUsIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uIC5xdWljay1zZWFyY2hfX2xlZ2VuZCwgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192YWx1YXRpb24gLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uIGgxLCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uIGgxLCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192YWx1YXRpb24gaDEsIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uIGgxLCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uIGgxLCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIGgxLCAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uIGgxLCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAuYnJhbmNoLS1jb250YWN0IC5icmFuY2hfX29wZW5pbmctaG91cnMtdGl0bGUsIC5icmFuY2gtLWNvbnRhY3QgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192YWx1YXRpb24gLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSwgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192YWx1YXRpb24gLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLmZvcm1fX3RpdGxlLCAuZm9ybS0tcGFydC1leGNoYW5nZSAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAuZm9ybV9fdGl0bGUsIC5mb3JtLS12ZWhpY2xlLXZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190aXRsZSwgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192YWx1YXRpb24gLmZpbmFuY2UtdGFibGVfX3RpdGxlLCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAuZmluYW5jZS1jaGVja2VyX19kZXRhaWxzLXRpdGxlLCAuZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3RpdGxlLCAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIC5mb3JtX192YWx1YXRpb24gLmZpbmFuY2UtdGFibGVfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZm9ybS0tdmVoaWNsZS12YWx1YXRpb24gLmZvcm1fX3ZhbHVhdGlvbiAuZm9ybV9fdmFsdWF0aW9uLWRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMC45Mzc1cmVtOyB9XG5cbi5yZXZlYWwtLXZlaGljbGUtdmFsdWF0aW9uIHtcbiAgcGFkZGluZy10b3A6IDMuMTI1cmVtOyB9XG4gIC5yZXZlYWwtLXZlaGljbGUtdmFsdWF0aW9uIHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5mb3JtIFt0eXBlPSd0ZXh0J10sXG5mb3JtIFt0eXBlPSdwYXNzd29yZCddLFxuZm9ybSBbdHlwZT0nZGF0ZSddLFxuZm9ybSBbdHlwZT0nZGF0ZXRpbWUnXSxcbmZvcm0gW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG5mb3JtIFt0eXBlPSdtb250aCddLFxuZm9ybSBbdHlwZT0nd2VlayddLFxuZm9ybSBbdHlwZT0nZW1haWwnXSxcbmZvcm0gW3R5cGU9J251bWJlciddLFxuZm9ybSBbdHlwZT0nc2VhcmNoJ10sXG5mb3JtIFt0eXBlPSd0ZWwnXSxcbmZvcm0gW3R5cGU9J3RpbWUnXSxcbmZvcm0gW3R5cGU9J3VybCddLFxuZm9ybSBbdHlwZT0nY29sb3InXSB7XG4gIGhlaWdodDogMi43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBmb3JtIFt0eXBlPSd0ZXh0J106ZGlzYWJsZWQsXG4gIGZvcm0gW3R5cGU9J3Bhc3N3b3JkJ106ZGlzYWJsZWQsXG4gIGZvcm0gW3R5cGU9J2RhdGUnXTpkaXNhYmxlZCxcbiAgZm9ybSBbdHlwZT0nZGF0ZXRpbWUnXTpkaXNhYmxlZCxcbiAgZm9ybSBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpkaXNhYmxlZCxcbiAgZm9ybSBbdHlwZT0nbW9udGgnXTpkaXNhYmxlZCxcbiAgZm9ybSBbdHlwZT0nd2VlayddOmRpc2FibGVkLFxuICBmb3JtIFt0eXBlPSdlbWFpbCddOmRpc2FibGVkLFxuICBmb3JtIFt0eXBlPSdudW1iZXInXTpkaXNhYmxlZCxcbiAgZm9ybSBbdHlwZT0nc2VhcmNoJ106ZGlzYWJsZWQsXG4gIGZvcm0gW3R5cGU9J3RlbCddOmRpc2FibGVkLFxuICBmb3JtIFt0eXBlPSd0aW1lJ106ZGlzYWJsZWQsXG4gIGZvcm0gW3R5cGU9J3VybCddOmRpc2FibGVkLFxuICBmb3JtIFt0eXBlPSdjb2xvciddOmRpc2FibGVkIHtcbiAgICBjb2xvcjogIzIyMjIyMjsgfVxuXG5mb3JtIHNlbGVjdCB7XG4gIGhlaWdodDogMi43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB3aWR0aD0nMTInIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDEyIDgnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHBhdGggZD0nTTEwLjU5LjU5TDYgNS4xNyAxLjQxLjU5IDAgMmw2IDYgNi02JyBmaWxsPSclMjMyZDM3MzcnIGZpbGwtcnVsZT0nZXZlbm9kZCcvPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiAwLjY4NzVyZW0gMC40Mzc1cmVtOyB9XG4gIGZvcm0gc2VsZWN0OmRpc2FibGVkIHtcbiAgICBjb2xvcjogIzIyMjIyMjsgfVxuXG5mb3JtIHRleHRhcmVhIHtcbiAgaGVpZ2h0OiA2LjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmZvcm0gLmhlbHAtYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gIGNvbG9yOiAjY2M0YjM3O1xuICBmb250LXNpemU6IDAuODEyNXJlbTsgfVxuXG5mb3JtIFt0eXBlPSdoaWRkZW4nXSArIC5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5mb3JtIC5yZXF1aXJlZCBsYWJlbC5jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcgKic7XG4gIGNvbG9yOiAjY2M0YjM3OyB9XG5cbmZvcm0gLmZvcm0tbWFya2V0aW5nX19tZXNzYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICBjb2xvcjogIzIyMjIyMjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuODsgfVxuXG5mb3JtIC5mb3JtLW1hcmtldGluZ19fbGFiZWwgbGFiZWw6OmFmdGVyIHtcbiAgY29udGVudDogJyAqJztcbiAgY29sb3I6ICNjYzRiMzc7IH1cblxuZm9ybSAuZm9ybS1tYXJrZXRpbmdfX2ZpZWxkcyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07IH1cblxuZm9ybSAuZm9ybS1tYXJrZXRpbmdfX2ZpZWxkcyAuZm9ybS1ncm91cCAuanMtbWFya2V0aW5nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMC4wNjI1cmVtO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuZm9ybSAuZm9ybS1tYXJrZXRpbmdfX2ZpZWxkcyAuZm9ybS1ncm91cCAuaGVscC1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuZm9ybSAuZm9ybS1tYXJrZXRpbmdfX2NoYW5uZWxzIHtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIGZvcm0gLmZvcm0tbWFya2V0aW5nX19jaGFubmVscyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9XG4gIGZvcm0gLmZvcm0tbWFya2V0aW5nX19jaGFubmVscyBbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZm9ybS1kaXNjbGFpbWVyIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgb3BhY2l0eTogMC42OyB9XG5cbi52aWRlb19fdXJsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnZpZGVvX191cmwgaWZyYW1lLFxuICAudmlkZW9fX3VybCBvYmplY3QsXG4gIC52aWRlb19fdXJsIGVtYmVkLFxuICAudmlkZW9fX3VybCB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuXG4udmlkZW8tLXBhZ2UgLnZpZGVvX190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtOyB9XG5cbi5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RvcCB7XG4gIHBhZGRpbmctdG9wOiAxLjg3NXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdG9wIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdG9wLWlubmVyIHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RvcC1pbm5lcjo6YmVmb3JlLCAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190b3AtaW5uZXI6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdG9wLWlubmVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190b3AgLm5ldy12ZWhpY2xlX19wcm9tby10ZXh0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICB0b3A6IGluaGVyaXQ7XG4gICAgbGVmdDogaW5oZXJpdDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG4ubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19iYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2JhY2sge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19iYWNrOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19iYWNrIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjM3NXJlbTsgfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2JhY2sgYSBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2JhY2sgYSBzcGFuIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4ubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19tZWRpYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX21lZGlhIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fbWVkaWE6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19tZWRpYSB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX21lZGlhIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fbWVkaWE6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fbWVkaWEge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fbWVkaWEge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fbWVkaWE6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3ByaW1hcnktaW1hZ2VzIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3ByaW1hcnktaW1hZ2VzLXRodW1ibmFpbHMge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAwLjEyNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3ByaW1hcnktaW1hZ2VzLXRodW1ibmFpbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19wcmltYXJ5LWltYWdlcy10aHVtYm5haWxzIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19kZXRhaWxzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2RldGFpbHMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fZGV0YWlscyB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2RldGFpbHMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2RldGFpbHMge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fZGV0YWlscyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19kZXRhaWxzIC5uZXctdmVoaWNsZV9fZGV0YWlscy1pbm5lciB7XG4gICAgcGFkZGluZzogMC42MjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19kZXRhaWxzIC5uZXctdmVoaWNsZV9fZGV0YWlscy1pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbTsgfSB9XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fZGV0YWlscyAubmV3LXZlaGljbGVfX2RldGFpbHMtaW5uZXIgLm5ldy12ZWhpY2xlX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fZGV0YWlscyAubmV3LXZlaGljbGVfX2RldGFpbHMtaW5uZXIgLm5ldy12ZWhpY2xlX190aXRsZSAubmV3LXZlaGljbGVfX21vZGVsLXZhcmlhbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19kZXRhaWxzIC5uZXctdmVoaWNsZV9fZGV0YWlscy1pbm5lciAubmV3LXZlaGljbGVfX3ByaWNlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2RldGFpbHMgLm5ldy12ZWhpY2xlX19kZXRhaWxzLWlubmVyIC5uZXctdmVoaWNsZV9fdGVsZXBob25lIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07IH1cbiAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2RldGFpbHMgLm5ldy12ZWhpY2xlX19kZXRhaWxzLWlubmVyIC5uZXctdmVoaWNsZV9fdGVsZXBob25lIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2RldGFpbHMgLm5ldy12ZWhpY2xlX19kZXRhaWxzLWlubmVyIC5uZXctdmVoaWNsZV9fY3RhIHtcbiAgICAgIHBhZGRpbmc6IDAuNjI1cmVtIDEuMjVyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyOyB9XG5cbi5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3BhcnQtZXhjaGFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fcGFydC1leGNoYW5nZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3BhcnQtZXhjaGFuZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fcGFydC1leGNoYW5nZSB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19wYXJ0LWV4Y2hhbmdlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3BhcnQtZXhjaGFuZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQge1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTsgfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkOjpiZWZvcmUsIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsID4gLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsID4gLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQsIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjEyNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzLjEyNXJlbTsgfSB9XG4gIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsID4gLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsID4gLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsOjpiZWZvcmUsIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bDo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgICAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWw6OmFmdGVyIHtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaTpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWw6OmJlZm9yZSwgLm5ldy12ZWhpY2xlLS1mdWxsID4gLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgY29udGVudDogJyAnOyB9XG4gICAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bDo6YWZ0ZXIge1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCA+IGxpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogNTAlOyB9XG4gICAgICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsID4gLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsID4gLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGk6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsID4gLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDsgfVxuICAgICAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaSB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgICAgICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCA+IGxpIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsID4gLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGkgPiBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgICAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgaW5wdXQsXG4gICAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCBzZWxlY3QsXG4gICAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCBhLFxuICAgICAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCA+IC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nOiAwIDAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAubmV3LXZlaGljbGUtLWZ1bGwgPiAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaSB7XG4gICAgICAgICAgcGFkZGluZzogMCAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsID4gLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGkge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH0gfVxuXG4ubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5IHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtOyB9XG4gIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnk6OmJlZm9yZSwgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSwgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeTpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkge1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsOjpiZWZvcmUsIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWw6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bCA+IGxpOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNTAlOyB9XG4gICAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsID4gbGk6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsID4gbGkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bCA+IGxpOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsID4gbGkge1xuICAgICAgcGFkZGluZzogMCAwLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsID4gbGkge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMC45Mzc1cmVtIDAuMjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsID4gbGk6bnRoLWNoaWxkKDNuKSB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOyB9IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSAuc2hvdyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSAuc2hvdyBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtO1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZzogMC42MjVyZW0gMC43NXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5IC5zaG93IGEge1xuICAgICAgICBvdXRsaW5lOiAwOyB9XG4gICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5IC5zaG93IGE6aG92ZXIsIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgLnNob3cgYTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2Rlc2NyaXB0aW9uIHtcbiAgbGluZS1oZWlnaHQ6IDEuODsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19kZXNjcmlwdGlvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19kZXNjcmlwdGlvbiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19kZXNjcmlwdGlvbiAuZXhwYW5kIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA2LjI1cmVtO1xuICAgIHBhZGRpbmctdG9wOiA0LjY4NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB3aGl0ZSAwJSwgd2hpdGUgMjUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpOyB9XG4gIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2Rlc2NyaXB0aW9uLW91dGVyIHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2Rlc2NyaXB0aW9uLW91dGVyOjpiZWZvcmUsIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2Rlc2NyaXB0aW9uLW91dGVyOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2Rlc2NyaXB0aW9uLW91dGVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19kZXNjcmlwdGlvbi1vdXRlciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2Rlc2NyaXB0aW9uLW91dGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fZGVzY3JpcHRpb24tb3V0ZXIsIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2Rlc2NyaXB0aW9uLW91dGVyOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fZGVzY3JpcHRpb24tb3V0ZXIge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMy4xMjVyZW07IH0gfVxuXG4ubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjEyNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzLjEyNXJlbTsgfSB9XG4gIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NlY29uZGFyeS1pbWFnZXMtaW5uZXIge1xuICAgIG1heC13aWR0aDogODEuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzLWlubmVyOjpiZWZvcmUsIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NlY29uZGFyeS1pbWFnZXMtaW5uZXI6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc2Vjb25kYXJ5LWltYWdlcy1pbm5lcjo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc2Vjb25kYXJ5LWltYWdlcy1pbm5lciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NlY29uZGFyeS1pbWFnZXMtaW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzLWlubmVyLCAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzLWlubmVyOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc2Vjb25kYXJ5LWltYWdlcyB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fY29udGVudCB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fY29udGVudDo6YmVmb3JlLCAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19jb250ZW50OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2NvbnRlbnQ6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19jb250ZW50LCAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19jb250ZW50Omxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lOyB9XG4gIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2NvbnRlbnQtb3V0ZXIge1xuICAgIHBhZGRpbmctdG9wOiAxLjg3NXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWJlYjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19jb250ZW50LW91dGVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMuMTI1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMy4xMjVyZW07IH0gfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19jb250ZW50LWlubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2NvbnRlbnQtaW5uZXIge1xuICAgICAgICBwYWRkaW5nOiAxLjI1cmVtOyB9IH1cblxuLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zcGVjaWZpY2F0aW9uID4gdWwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bDo6YmVmb3JlLCAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zcGVjaWZpY2F0aW9uID4gdWw6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGk6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zcGVjaWZpY2F0aW9uID4gdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zcGVjaWZpY2F0aW9uID4gdWwgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGk6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGkge1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCA+IGxpIHtcbiAgICAgICAgcGFkZGluZzogMC42MjVyZW0gMC45Mzc1cmVtOyB9IH1cbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zcGVjaWZpY2F0aW9uID4gdWwgPiBsaSAuc3BlY2lmaWNhdGlvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCA+IGxpIC5zcGVjaWZpY2F0aW9uX192YWx1ZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCA+IGxpIHVsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgY29sb3I6ICMyMjIyMjI7XG4gICAgICBsaXN0LXN0eWxlOiBzcXVhcmU7XG4gICAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7IH1cblxuLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbi1idXR0b24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbi1idXR0b24gLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bDo6YmVmb3JlLCAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWw6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaTpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGk6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSB7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIHtcbiAgICAgICAgcGFkZGluZzogMC42MjVyZW0gMC45Mzc1cmVtOyB9IH1cbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnRlY2huaWNhbC1kYXRhX19sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAudGVjaG5pY2FsLWRhdGFfX2xhYmVsOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICc6JzsgfVxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAudGVjaG5pY2FsLWRhdGFfX3ZhbHVlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgdWwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2RvY3VtZW50cyB1bCxcbi5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX2F1ZGlvIHVsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fZG9jdW1lbnRzIHVsIGxpLFxuICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19hdWRpbyB1bCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuXG4ubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zaW1pbGFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjsgfVxuXG4ubmV3LXZlaGljbGUtLXRlYXNlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5uZXctdmVoaWNsZS0tdGVhc2VyIHtcbiAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbTsgfSB9XG4gIC5uZXctdmVoaWNsZS0tdGVhc2VyIC5uZXctdmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubmV3LXZlaGljbGUtLXRlYXNlciAubmV3LXZlaGljbGVfX2RldGFpbHMge1xuICAgIHBhZGRpbmctdG9wOiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm5ldy12ZWhpY2xlLS10ZWFzZXIgLm5ldy12ZWhpY2xlX19kZXRhaWxzIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuICAubmV3LXZlaGljbGUtLXRlYXNlciAubmV3LXZlaGljbGVfX2hlYWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubmV3LXZlaGljbGUtLXRlYXNlciAubmV3LXZlaGljbGVfX2hlYWRlciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG4gIC5uZXctdmVoaWNsZS0tdGVhc2VyIC5uZXctdmVoaWNsZV9fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgLm5ldy12ZWhpY2xlLS10ZWFzZXIgLm5ldy12ZWhpY2xlX190aXRsZSAubmV3LXZlaGljbGVfX21ha2UsXG4gICAgLm5ldy12ZWhpY2xlLS10ZWFzZXIgLm5ldy12ZWhpY2xlX190aXRsZSAubmV3LXZlaGljbGVfX21vZGVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAubmV3LXZlaGljbGUtLXRlYXNlciAubmV3LXZlaGljbGVfX3RpdGxlIC5uZXctdmVoaWNsZV9fbW9kZWwtdmFyaWFudCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLm5ldy12ZWhpY2xlLS10ZWFzZXIgLm5ldy12ZWhpY2xlX19mb290ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubmV3LXZlaGljbGUtLXRlYXNlciAubmV3LXZlaGljbGVfX2Zvb3RlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLm5ldy12ZWhpY2xlLS10ZWFzZXIgLmRyb3Bkb3duLXBhbmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5uZXctdmVoaWNsZV9fbWVkaWEtY291bnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDsgfVxuICAubmV3LXZlaGljbGVfX21lZGlhLWNvdW50ID4gdWwge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjM3NXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5uZXctdmVoaWNsZV9fbWVkaWEtY291bnQgPiB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwLjM3NXJlbSAwLjEyNXJlbTsgfVxuICAgICAgLm5ldy12ZWhpY2xlX19tZWRpYS1jb3VudCA+IHVsIGxpIGkge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi5uZXctdmVoaWNsZV9fcHJvbW8tdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjVyZW07XG4gIGxlZnQ6IDAuNXJlbTsgfVxuICAubmV3LXZlaGljbGVfX3Byb21vLXRleHQgc3BhbiB7XG4gICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjE4NzVyZW07IH1cblxuLm9mZmVyLS1mZWF0dXJlZCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm9mZmVyLS1mZWF0dXJlZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm9mZmVyLS1mZWF0dXJlZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5vZmZlci0tZmVhdHVyZWQ6OmJlZm9yZSwgLm9mZmVyLS1mZWF0dXJlZDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAub2ZmZXItLWZlYXR1cmVkOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19wcmltYXJ5LWltYWdlcyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19wcmltYXJ5LWltYWdlczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19wcmltYXJ5LWltYWdlczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19jb250ZW50LS13aXRob3V0LWltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19jb250ZW50LS13aXRob3V0LWltYWdlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX2NvbnRlbnQtLXdpdGhvdXQtaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fc3ViLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS42OyB9XG4gIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19saW5rIC5idXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmFkZC1vbiB7XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFkZC1vbiB7XG4gICAgICBwYWRkaW5nOiAwLjkzNzVyZW07IH0gfVxuICAuYWRkLW9uIHNwYW4uaGFzLWVycm9yIHtcbiAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAuYWRkLW9uX19pbm5lciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYWRkLW9uX19pbm5lciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYWRkLW9uX19pbm5lciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIC5hZGQtb25fX2lubmVyOjpiZWZvcmUsIC5hZGQtb25fX2lubmVyOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC5hZGQtb25fX2lubmVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAuYWRkLW9uX19pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmFkZC1vbl9faW1hZ2Uge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuYWRkLW9uX19pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYWRkLW9uX19pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hZGQtb25fX2ltYWdlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuYWRkLW9uX19pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5hZGQtb25fX2ltYWdlIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuYWRkLW9uX19kZXRhaWxzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hZGQtb25fX2RldGFpbHMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuYWRkLW9uX19kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5hZGQtb25fX2xpbmsge1xuICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5hZGQtb25fX2xpbmsge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gICAgLmFkZC1vbl9fbGluayAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmFkZC1vbl9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtOyB9XG4gIC5hZGQtb25fX3ZpZGVvIHtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTsgfVxuICAgIC5hZGQtb25fX3ZpZGVvIGE6aG92ZXIsXG4gICAgLmFkZC1vbl9fdmlkZW8gYTpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuYWRkLW9uX192aWRlbyBzcGFuIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLmFkZC1vbl9fdmlkZW8tYXBwcm92YWwge1xuICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtOyB9XG4gIC5hZGQtb24tLXNlbGVjdGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFkZC1vbi0taW1hZ2UgLmFkZC1vbl9fZGV0YWlscyB7XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYWRkLW9uLS1pbWFnZSAuYWRkLW9uX19kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5hZGQtb24tLWltYWdlIC5hZGQtb25fX2RldGFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5saXN0aW5nLS1hZGQtb24gLmxpc3RpbmdfX2xpc3Qge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWFkZC1vbiAubGlzdGluZ19fbGlzdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpc3RpbmctLWFkZC1vbiAubGlzdGluZ19fbGlzdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS1hZGQtb24gLmxpc3RpbmdfX2xpc3Q6OmJlZm9yZSwgLmxpc3RpbmctLWFkZC1vbiAubGlzdGluZ19fbGlzdDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAubGlzdGluZy0tYWRkLW9uIC5saXN0aW5nX19saXN0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmxpc3RpbmctLWFkZC1vbiAubGlzdGluZ19fbGlzdCA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1hZGQtb24gLmxpc3RpbmdfX2xpc3QgPiBsaSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5saXN0aW5nLS1hZGQtb24gLmxpc3RpbmdfX2xpc3QgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGlzdGluZy0tYWRkLW9uIC5saXN0aW5nX19saXN0ID4gbGk6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGlzdGluZy0tYWRkLW9uIC5saXN0aW5nX19saXN0ID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGlzdGluZy0tYWRkLW9uIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1hZGQtb24gLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfSB9XG4gICAgLmxpc3RpbmctLWFkZC1vbiAubGlzdGluZ19fbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FsZW5kYXIge1xuICBtYXJnaW4tdG9wOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jYWxlbmRhciB7XG4gICAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07IH0gfVxuICAuY2FsZW5kYXJfX2hlYWRlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNhbGVuZGFyX19oZWFkZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNhbGVuZGFyX19oZWFkZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAuY2FsZW5kYXJfX2hlYWRlcjo6YmVmb3JlLCAuY2FsZW5kYXJfX2hlYWRlcjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAuY2FsZW5kYXJfX2hlYWRlcjo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX3N3aXRjaCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19zd2l0Y2gge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX3N3aXRjaDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX3N3aXRjaCBhIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5jYWxlbmRhcl9faGVhZGVyIC5jYWxlbmRhcl9fc3dpdGNoIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX3N3aXRjaCBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAgICAgICAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX3N3aXRjaCBhIGkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMC4zNzVyZW07IH1cbiAgICAgIC5jYWxlbmRhcl9faGVhZGVyIC5jYWxlbmRhcl9fc3dpdGNoLS1uZXh0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAgICAgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19zd2l0Y2gtLW5leHQgYSBpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMC4zNzVyZW07IH1cbiAgICAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX21vbnRoIHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX21vbnRoIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5jYWxlbmRhcl9fdGFibGUge1xuICAgIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgICAuY2FsZW5kYXJfX3RhYmxlIHRhYmxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5jYWxlbmRhcl9fdGFibGUgdGFibGUgdGgge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAgIC5jYWxlbmRhcl9fdGFibGUgdGFibGUgdGQuc2xvdCB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjsgfVxuICAgICAgLmNhbGVuZGFyX190YWJsZSB0YWJsZSB0ZDpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5MDAwMjM7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgLmNhbGVuZGFyX190YWJsZSB0YWJsZSB0ZC5kaXNhYmxlZCB7XG4gICAgICAgIGN1cnNvcjogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxuICAgICAgICAuY2FsZW5kYXJfX3RhYmxlIHRhYmxlIHRkLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgICAgICBjdXJzb3I6IGF1dG87IH1cbiAgICAgIC5jYWxlbmRhcl9fdGFibGUgdGFibGUgdGQuY2xvc2VkIHtcbiAgICAgICAgY3Vyc29yOiBhdXRvO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XG4gICAgICAgIC5jYWxlbmRhcl9fdGFibGUgdGFibGUgdGQuY2xvc2VkOmhvdmVyIHtcbiAgICAgICAgICBjdXJzb3I6IGF1dG87IH1cbiAgICAgIC5jYWxlbmRhcl9fdGFibGUgdGFibGUgdGQuc2VsZWN0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2OyB9XG5cbi5yZXZlYWwucmV2ZWFsLS1jb2xsZWN0aW9uLW1hcCB7XG4gIHBhZGRpbmctdG9wOiAzLjEyNXJlbTsgfVxuXG4jY29sbGVjdGlvbi1tYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMTAwJTsgfVxuXG4uY29sbGVjdGlvbi1kZWxpdmVyeSB7XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbGxlY3Rpb24tZGVsaXZlcnkge1xuICAgICAgcGFkZGluZzogMC45Mzc1cmVtOyB9IH1cbiAgLmNvbGxlY3Rpb24tZGVsaXZlcnktLXNlbGVjdGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjOyB9XG4gIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X19pbm5lciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY29sbGVjdGlvbi1kZWxpdmVyeV9faW5uZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX2lubmVyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX2lubmVyOjpiZWZvcmUsIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X19pbm5lcjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAuY29sbGVjdGlvbi1kZWxpdmVyeV9faW5uZXI6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X19pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX2ltYWdlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX2ltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X19pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X19pbWFnZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX2ltYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX2ltYWdlIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuY29sbGVjdGlvbi1kZWxpdmVyeV9fZGV0YWlscyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY29sbGVjdGlvbi1kZWxpdmVyeV9fZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X19kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07IH1cbiAgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX2FkZHJlc3Mge1xuICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtOyB9XG4gIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X19tYXAge1xuICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtOyB9XG4gICAgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX21hcCBzcGFuIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX2xpbmsge1xuICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X19saW5rIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuICAgIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X19saW5rIC5idXR0b24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5LS1pbWFnZSAuY29sbGVjdGlvbi1kZWxpdmVyeV9fZGV0YWlscyB7XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29sbGVjdGlvbi1kZWxpdmVyeS0taW1hZ2UgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX2RldGFpbHMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbGxlY3Rpb24tZGVsaXZlcnktLWltYWdlIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X19kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4ubGlzdGluZy0tY29sbGVjdGlvbi1kZWxpdmVyeSAubGlzdGluZ19fbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tY29sbGVjdGlvbi1kZWxpdmVyeSAubGlzdGluZ19fbGlzdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpc3RpbmctLWNvbGxlY3Rpb24tZGVsaXZlcnkgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAubGlzdGluZy0tY29sbGVjdGlvbi1kZWxpdmVyeSAubGlzdGluZ19fbGlzdDo6YmVmb3JlLCAubGlzdGluZy0tY29sbGVjdGlvbi1kZWxpdmVyeSAubGlzdGluZ19fbGlzdDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAubGlzdGluZy0tY29sbGVjdGlvbi1kZWxpdmVyeSAubGlzdGluZ19fbGlzdDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5saXN0aW5nLS1jb2xsZWN0aW9uLWRlbGl2ZXJ5IC5saXN0aW5nX19saXN0ID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLWNvbGxlY3Rpb24tZGVsaXZlcnkgLmxpc3RpbmdfX2xpc3QgPiBsaSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5saXN0aW5nLS1jb2xsZWN0aW9uLWRlbGl2ZXJ5IC5saXN0aW5nX19saXN0ID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxpc3RpbmctLWNvbGxlY3Rpb24tZGVsaXZlcnkgLmxpc3RpbmdfX2xpc3QgPiBsaTpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5saXN0aW5nLS1jb2xsZWN0aW9uLWRlbGl2ZXJ5IC5saXN0aW5nX19saXN0ID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGlzdGluZy0tY29sbGVjdGlvbi1kZWxpdmVyeSAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tY29sbGVjdGlvbi1kZWxpdmVyeSAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tY29sbGVjdGlvbi1kZWxpdmVyeSAubGlzdGluZ19fbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ub3JkZXItaW50cm9kdWN0aW9uX19jb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gIC5vcmRlci1pbnRyb2R1Y3Rpb25fX2NvbnRlbnQgcDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5vcmRlci1pbnRyb2R1Y3Rpb25fX2NvbnRlbnQgcCBhOm5vdCguYnV0dG9uKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAub3JkZXItaW50cm9kdWN0aW9uX19jb250ZW50IHAgYTpub3QoLmJ1dHRvbik6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5vcmRlci1pbnRyb2R1Y3Rpb25fX2xpbmsgLmJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm9yZGVyLXBheW1lbnQge1xuICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vcmRlci1wYXltZW50IHtcbiAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbTsgfSB9XG4gIC5vcmRlci1wYXltZW50X19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7IH1cbiAgLm9yZGVyLXBheW1lbnRfX2xpbmsgLmJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ub3JkZXItcHJvZ3Jlc3NfX2xpc3Qge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5vcmRlci1wcm9ncmVzc19fbGlzdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm9yZGVyLXByb2dyZXNzX19saXN0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLm9yZGVyLXByb2dyZXNzX19saXN0OjpiZWZvcmUsIC5vcmRlci1wcm9ncmVzc19fbGlzdDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAub3JkZXItcHJvZ3Jlc3NfX2xpc3Q6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAub3JkZXItcHJvZ3Jlc3NfX2xpc3QgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAub3JkZXItcHJvZ3Jlc3NfX2xpc3QgPiBsaSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5vcmRlci1wcm9ncmVzc19fbGlzdCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5vcmRlci1wcm9ncmVzc19fbGlzdCA+IGxpOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm9yZGVyLXByb2dyZXNzX19saXN0ID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAub3JkZXItcHJvZ3Jlc3NfX2xpc3QgbGkuYWN0aXZlIC5vcmRlci1wcm9ncmVzc19fYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmOyB9XG4gIC5vcmRlci1wcm9ncmVzc19fbGlzdC0tMiA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9yZGVyLXByb2dyZXNzX19saXN0LS0yID4gbGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAub3JkZXItcHJvZ3Jlc3NfX2xpc3QtLTIgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAub3JkZXItcHJvZ3Jlc3NfX2xpc3QtLTIgPiBsaTpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5vcmRlci1wcm9ncmVzc19fbGlzdC0tMiA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm9yZGVyLXByb2dyZXNzX19saXN0LS0zID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAub3JkZXItcHJvZ3Jlc3NfX2xpc3QtLTMgPiBsaSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5vcmRlci1wcm9ncmVzc19fbGlzdC0tMyA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5vcmRlci1wcm9ncmVzc19fbGlzdC0tMyA+IGxpOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm9yZGVyLXByb2dyZXNzX19saXN0LS0zID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAub3JkZXItcHJvZ3Jlc3NfX2xpc3QtLTQgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vcmRlci1wcm9ncmVzc19fbGlzdC0tNCA+IGxpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLm9yZGVyLXByb2dyZXNzX19saXN0LS00ID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLm9yZGVyLXByb2dyZXNzX19saXN0LS00ID4gbGk6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAub3JkZXItcHJvZ3Jlc3NfX2xpc3QtLTQgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5vcmRlci1wcm9ncmVzc19fbGlzdC0tNSA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9yZGVyLXByb2dyZXNzX19saXN0LS01ID4gbGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAub3JkZXItcHJvZ3Jlc3NfX2xpc3QtLTUgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAub3JkZXItcHJvZ3Jlc3NfX2xpc3QtLTUgPiBsaTpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5vcmRlci1wcm9ncmVzc19fbGlzdC0tNSA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm9yZGVyLXByb2dyZXNzX19saXN0LS02ID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAub3JkZXItcHJvZ3Jlc3NfX2xpc3QtLTYgPiBsaSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5vcmRlci1wcm9ncmVzc19fbGlzdC0tNiA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5vcmRlci1wcm9ncmVzc19fbGlzdC0tNiA+IGxpOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm9yZGVyLXByb2dyZXNzX19saXN0LS02ID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuXG4ub3JkZXItcHJvZ3Jlc3NfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ub3JkZXItcHJvZ3Jlc3NfX3N1Yi10aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAub3JkZXItcHJvZ3Jlc3NfX3N1Yi10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAub3JkZXItcHJvZ3Jlc3NfX3N1Yi10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLm9yZGVyLXByb2dyZXNzX19zdWItdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfSB9XG5cbi5vcmRlci1wcm9ncmVzc19fYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC42MjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAub3JkZXItcHJvZ3Jlc3NfX2JhciB7XG4gICAgICBoZWlnaHQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5vcmRlci1zdGF0ZS1zdW1tYXJ5IHtcbiAgcGFkZGluZzogMC42MjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAub3JkZXItc3RhdGUtc3VtbWFyeSB7XG4gICAgICBwYWRkaW5nOiAwLjkzNzVyZW07IH0gfVxuICAub3JkZXItc3RhdGUtc3VtbWFyeV9fdmVoaWNsZS1pbWFnZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtaW1hZ2UgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5vcmRlci1zdGF0ZS1zdW1tYXJ5X192ZWhpY2xlLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07IH1cbiAgLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAub3JkZXItc3RhdGUtc3VtbWFyeV9fdmVoaWNsZS1hZG1pbi1mZWUge1xuICAgIGZvbnQtc2l6ZTogNzUlOyB9XG4gIC5vcmRlci1zdGF0ZS1zdW1tYXJ5IC5vcmRlci1zdGF0ZS1zdW1tYXJ5LXRhYmxlIHtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9yZGVyLXN0YXRlLXN1bW1hcnkgLm9yZGVyLXN0YXRlLXN1bW1hcnktdGFibGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07IH0gfVxuICAgIC5vcmRlci1zdGF0ZS1zdW1tYXJ5IC5vcmRlci1zdGF0ZS1zdW1tYXJ5LXRhYmxlIHRib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2OyB9XG4gICAgLm9yZGVyLXN0YXRlLXN1bW1hcnkgLm9yZGVyLXN0YXRlLXN1bW1hcnktdGFibGUgdHIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAub3JkZXItc3RhdGUtc3VtbWFyeSAub3JkZXItc3RhdGUtc3VtbWFyeS10YWJsZSB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAgICAgLm9yZGVyLXN0YXRlLXN1bW1hcnkgLm9yZGVyLXN0YXRlLXN1bW1hcnktdGFibGUgdHIub3JkZXItc3RhdGUtc3VtbWFyeS10YWJsZV9fdG90YWwge1xuICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAub3JkZXItc3RhdGUtc3VtbWFyeSAub3JkZXItc3RhdGUtc3VtbWFyeS10YWJsZSB0ciB0ZCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgICAub3JkZXItc3RhdGUtc3VtbWFyeSAub3JkZXItc3RhdGUtc3VtbWFyeS10YWJsZSB0ciB0ZC5vcmRlci1zdGF0ZS1zdW1tYXJ5LXRhYmxlX192YWx1ZSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2U2ZTZlNjsgfVxuXG4ub3JkZXItc3VtbWFyeSB1bCB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAub3JkZXItc3VtbWFyeSB1bCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9yZGVyLXN1bW1hcnkgdWwgbGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLm9yZGVyLXN1bW1hcnkgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLm9yZGVyLXN1bW1hcnkgLmJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm9yZGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAub3JkZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5vcmRlciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5vcmRlcjo6YmVmb3JlLCAub3JkZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLm9yZGVyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLm9yZGVyX19wcm9ncmVzcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vcmRlcl9fcHJvZ3Jlc3Mge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAub3JkZXJfX3Byb2dyZXNzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vcmRlcl9fcHJvZ3Jlc3Mge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gIC5vcmRlcl9fY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAub3JkZXJfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAub3JkZXJfX2NvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm9yZGVyX19jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm9yZGVyX19jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAub3JkZXJfX2NvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLm9yZGVyX19zdW1tYXJ5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9yZGVyX19zdW1tYXJ5IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLm9yZGVyX19zdW1tYXJ5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vcmRlcl9fc3VtbWFyeSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm9yZGVyX19zdW1tYXJ5IHtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm9yZGVyX19zdW1tYXJ5IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAub3JkZXJfX3N1bW1hcnk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLm9yZGVyX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7IH1cbiAgLm9yZGVyX19mb290ZXIge1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9yZGVyX19mb290ZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfSB9XG4gICAgLm9yZGVyX19mb290ZXIgLmJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5wYXJ0LWV4Y2hhbmdlX19mb290ZXIge1xuICBtYXJnaW4tdG9wOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYXJ0LWV4Y2hhbmdlX19mb290ZXIge1xuICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfSB9XG4gIC5wYXJ0LWV4Y2hhbmdlX19mb290ZXIgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07IH1cblxuLnBhcnQtLWZlYXR1cmVkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFydC0tZmVhdHVyZWQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYXJ0LS1mZWF0dXJlZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5wYXJ0LS1mZWF0dXJlZDo6YmVmb3JlLCAucGFydC0tZmVhdHVyZWQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLnBhcnQtLWZlYXR1cmVkOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19wcmltYXJ5LWltYWdlcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19wcmltYXJ5LWltYWdlczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19wcmltYXJ5LWltYWdlcyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19wcmltYXJ5LWltYWdlczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAucGFydC0tZmVhdHVyZWQgLnBhcnRfX2NvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fY29udGVudCB7XG4gICAgICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fY29udGVudC0td2l0aG91dC1pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFydC0tZmVhdHVyZWQgLnBhcnRfX2NvbnRlbnQtLXdpdGhvdXQtaW1hZ2Uge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAucGFydC0tZmVhdHVyZWQgLnBhcnRfX2NvbnRlbnQtLXdpdGhvdXQtaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19zdWItdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS42OyB9XG4gIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fbGluayAuYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5wYXJ0LS1mdWxsIC5wYXJ0X19wcmltYXJ5LWltYWdlcyB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgLnBhcnQtLWZ1bGwgLnBhcnRfX3ByaW1hcnktaW1hZ2VzIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ucGFydC0tZnVsbCAucGFydF9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFydC0tZnVsbCAucGFydF9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB3aWR0aDogMjByZW07XG4gICAgICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfSB9XG4gIC5wYXJ0LS1mdWxsIC5wYXJ0X19zZWNvbmRhcnktaW1hZ2VzIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGFydC0tZnVsbCAucGFydF9fdmlkZW9zIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgY2xlYXI6IHJpZ2h0O1xuICAgIHdpZHRoOiAyMHJlbTtcbiAgICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfSB9XG5cbi5wYXJ0LS1mdWxsIC5wYXJ0X192aWRlb3MgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFydC0tZnVsbCAucGFydF9fdmlkZW9zIHVsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFydC0tZnVsbCAucGFydF9fdmlkZW9zIHVsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLnBhcnQtLWZ1bGwgLnBhcnRfX3ZpZGVvcyB1bDo6YmVmb3JlLCAucGFydC0tZnVsbCAucGFydF9fdmlkZW9zIHVsOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5wYXJ0LS1mdWxsIC5wYXJ0X192aWRlb3MgdWw6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucGFydC0tZnVsbCAucGFydF9fdmlkZW9zIHVsID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhcnQtLWZ1bGwgLnBhcnRfX3ZpZGVvcyB1bCA+IGxpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnBhcnQtLWZ1bGwgLnBhcnRfX3ZpZGVvcyB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5wYXJ0LS1mdWxsIC5wYXJ0X192aWRlb3MgdWwgPiBsaTpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5wYXJ0LS1mdWxsIC5wYXJ0X192aWRlb3MgdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5wYXJ0LS1mdWxsIC5wYXJ0X192aWRlb3MgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuLnBhcnQtLWZ1bGwgLnBhcnRfX2Rlc2NyaXB0aW9uIHtcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBhcnQtLWZ1bGwgLnBhcnRfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtOyB9IH1cbiAgLnBhcnQtLWZ1bGwgLnBhcnRfX2Rlc2NyaXB0aW9uIHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucGFydC0tZnVsbCAucGFydF9fZGVzY3JpcHRpb24gcCBhOm5vdCguYnV0dG9uKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAucGFydC0tZnVsbCAucGFydF9fZGVzY3JpcHRpb24gcCBhOm5vdCguYnV0dG9uKTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnBhcnQtLWZ1bGwgLnBhcnRfX2ZpbGVzIHVsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLnBhcnQtLWZ1bGwgLnBhcnRfX2ZpbGVzIHVsIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtOyB9XG5cbi5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtIHtcbiAgY2xlYXI6IHJpZ2h0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtOyB9IH1cblxuLnBhcnQtLXRlYXNlciB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBhcnQtLXRlYXNlciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhcnQtLXRlYXNlciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5wYXJ0LS10ZWFzZXI6OmJlZm9yZSwgLnBhcnQtLXRlYXNlcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAucGFydC0tdGVhc2VyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnBhcnQtLXRlYXNlciAucGFydF9fcHJpbWFyeS1pbWFnZXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhcnQtLXRlYXNlciAucGFydF9fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAucGFydC0tdGVhc2VyIC5wYXJ0X19wcmltYXJ5LWltYWdlczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFydC0tdGVhc2VyIC5wYXJ0X19wcmltYXJ5LWltYWdlcyB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYXJ0LS10ZWFzZXIgLnBhcnRfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucGFydC0tdGVhc2VyIC5wYXJ0X19wcmltYXJ5LWltYWdlczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAucGFydC0tdGVhc2VyIC5wYXJ0X19jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYXJ0LS10ZWFzZXIgLnBhcnRfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAucGFydC0tdGVhc2VyIC5wYXJ0X19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYXJ0LS10ZWFzZXIgLnBhcnRfX2NvbnRlbnQge1xuICAgICAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFydC0tdGVhc2VyIC5wYXJ0X19jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucGFydC0tdGVhc2VyIC5wYXJ0X19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5wYXJ0LS10ZWFzZXIgLnBhcnRfX2NvbnRlbnQtLXdpdGhvdXQtaW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhcnQtLXRlYXNlciAucGFydF9fY29udGVudC0td2l0aG91dC1pbWFnZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5wYXJ0LS10ZWFzZXIgLnBhcnRfX2NvbnRlbnQtLXdpdGhvdXQtaW1hZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnBhcnQtLXRlYXNlciAucGFydF9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS42OyB9XG4gIC5wYXJ0LS10ZWFzZXIgLnBhcnRfX2xpbmsgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucG9zdC0tZmVhdHVyZWQge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wb3N0LS1mZWF0dXJlZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBvc3QtLWZlYXR1cmVkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLnBvc3QtLWZlYXR1cmVkOjpiZWZvcmUsIC5wb3N0LS1mZWF0dXJlZDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAucG9zdC0tZmVhdHVyZWQ6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3ByaW1hcnktaW1hZ2VzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3ByaW1hcnktaW1hZ2VzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX2NvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X19jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X19jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX2NvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X19jb250ZW50LS13aXRob3V0LWltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fY29udGVudC0td2l0aG91dC1pbWFnZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fY29udGVudC0td2l0aG91dC1pbWFnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3N1Yi10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7IH1cbiAgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X19saW5rIC5idXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnF1aWNrLXNlYXJjaCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucXVpY2stc2VhcmNoIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucXVpY2stc2VhcmNoIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLnF1aWNrLXNlYXJjaDo6YmVmb3JlLCAucXVpY2stc2VhcmNoOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5xdWljay1zZWFyY2g6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucXVpY2stc2VhcmNoX19sZWdlbmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnF1aWNrLXNlYXJjaF9fbGVnZW5kIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnF1aWNrLXNlYXJjaF9fbGVnZW5kOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5xdWljay1zZWFyY2ggLmZpZWxkLXNlYXJjaC1zdHJpbmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnF1aWNrLXNlYXJjaCAuZmllbGQtc2VhcmNoLXN0cmluZyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5xdWljay1zZWFyY2ggLmZpZWxkLXNlYXJjaC1zdHJpbmc6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnF1aWNrLXNlYXJjaCAuZmllbGQtc2VhcmNoLXN0cmluZyB7XG4gICAgICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5xdWljay1zZWFyY2ggLmZpZWxkLXNlYXJjaC1zdHJpbmcge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5xdWljay1zZWFyY2ggLmZpZWxkLXNlYXJjaC1zdHJpbmc6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLnF1aWNrLXNlYXJjaCAuZmllbGQtc3VibWl0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5xdWljay1zZWFyY2ggLmZpZWxkLXN1Ym1pdCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5xdWljay1zZWFyY2ggLmZpZWxkLXN1Ym1pdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucXVpY2stc2VhcmNoIC5maWVsZC1zdWJtaXQge1xuICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucXVpY2stc2VhcmNoIC5maWVsZC1zdWJtaXQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5xdWljay1zZWFyY2ggLmZpZWxkLXN1Ym1pdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5xdWljay1zZWFyY2ggLmZpZWxkLXN1Ym1pdCAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5xdWljay1zZWFyY2ggLmZpZWxkLXN1Ym1pdCAuYnV0dG9uIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5zZWFyY2gtc2VsZWN0aW9uX19jb3VudCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uc2VhcmNoLXNlbGVjdGlvbl9fdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnNlYXJjaC1zZWxlY3Rpb25fX3RpdGxlOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb250ZW50OiAnLSc7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjE4NzVyZW07IH1cbiAgLnNlYXJjaC1zZWxlY3Rpb25fX3RpdGxlIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLnNlYXJjaC1zZWxlY3Rpb25fX3RpdGxlIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5zZWFyY2gtc2VsZWN0aW9uX19wYXJhbWV0ZXJzIHtcbiAgbWFyZ2luLXRvcDogMC4zMTI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5zZWFyY2gtc2VsZWN0aW9uX19wYXJhbWV0ZXJzIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgICAgLnNlYXJjaC1zZWxlY3Rpb25fX3BhcmFtZXRlcnM6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5zZWFyY2gtc2VsZWN0aW9uX19saXN0IHtcbiAgbWFyZ2luOiAwIDAgMC4zMTI1cmVtO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5zZWFyY2gtc2VsZWN0aW9uX19saXN0LWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMC4zMTI1cmVtIDAuMzEyNXJlbSAwLjMxMjVyZW0gMDsgfVxuXG4uc2VhcmNoLXNlbGVjdGlvbl9fcGFyYW1ldGVyIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBwYWRkaW5nOiAwLjMxMjVyZW0gMC4zNzVyZW0gMC4zMTI1cmVtIDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItcmFkaXVzOiAwLjkzNzVyZW07IH1cbiAgLnNlYXJjaC1zZWxlY3Rpb25fX3BhcmFtZXRlcjpob3ZlciBzcGFuIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3OyB9XG4gIC5zZWFyY2gtc2VsZWN0aW9uX19wYXJhbWV0ZXIgc3BhbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMzc1cmVtO1xuICAgIHBhZGRpbmc6IDAgMC4zNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG4uc2hvd3Jvb20tLWZlYXR1cmVkIC5zaG93cm9vbV9fcHJpbWFyeS1pbWFnZXMge1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG4udmVoaWNsZS0tZ2VuZXJhbCB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLnZlaGljbGUtLWdlbmVyYWw6OmJlZm9yZSwgLnZlaGljbGUtLWdlbmVyYWw6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLnZlaGljbGUtLWdlbmVyYWw6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDsgfVxuICAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fZGV0YWlscyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMC42MjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX19kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX19kZXRhaWxzIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuOTM3NXJlbTsgfSB9XG4gIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX19oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUgLnZlaGljbGVfX21ha2UsXG4gICAgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlIC52ZWhpY2xlX19tb2RlbCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlIC52ZWhpY2xlX19tb2RlbC12YXJpYW50IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTsgfVxuICAgIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YV9fbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJzonO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMTg3NXJlbTsgfVxuICAgICAgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaSAudGVjaG5pY2FsLWRhdGFfX3ZhbHVlOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcsJztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjE4NzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAgIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGk6bGFzdC1jaGlsZCAudGVjaG5pY2FsLWRhdGFfX3ZhbHVlOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLnZlaGljbGUtLWxhdGVzdCB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLnZlaGljbGUtLWxhdGVzdDo6YmVmb3JlLCAudmVoaWNsZS0tbGF0ZXN0OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC52ZWhpY2xlLS1sYXRlc3Q6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDsgfVxuICAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX19kZXRhaWxzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctdG9wOiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX2RldGFpbHMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX19kZXRhaWxzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX2RldGFpbHMge1xuICAgICAgICBwYWRkaW5nLXRvcDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cbiAgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9faGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSAudmVoaWNsZV9fbWFrZSxcbiAgICAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSAudmVoaWNsZV9fbW9kZWwge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlIC52ZWhpY2xlX19tb2RlbC12YXJpYW50IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtOyB9XG4gICAgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YV9fbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJzonO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMTg3NXJlbTsgfVxuICAgICAgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YV9fdmFsdWU6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJywnO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMTg3NXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgICAgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCA+IGxpOmxhc3QtY2hpbGQgLnRlY2huaWNhbC1kYXRhX192YWx1ZTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi52ZWhpY2xlLS1yZWNlbnRseS12aWV3ZWQge1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC52ZWhpY2xlLS1yZWNlbnRseS12aWV3ZWQ6OmJlZm9yZSwgLnZlaGljbGUtLXJlY2VudGx5LXZpZXdlZDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAudmVoaWNsZS0tcmVjZW50bHktdmlld2VkOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnZlaGljbGUtLXJlY2VudGx5LXZpZXdlZCAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnZlaGljbGUtLXJlY2VudGx5LXZpZXdlZCAudmVoaWNsZV9fZGV0YWlscyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nOiAwLjkzNzVyZW0gMC4zNzVyZW0gMDsgfVxuICAudmVoaWNsZS0tcmVjZW50bHktdmlld2VkIC52ZWhpY2xlX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuXG4ubC1hbGVydCB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgLmwtYWxlcnQ6OmJlZm9yZSwgLmwtYWxlcnQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmwtYWxlcnQ6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5sLWFsZXJ0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmwtYWxlcnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5sLWFsZXJ0LCAubC1hbGVydDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuXG4uY3JlZGl0LWNhbGN1bGF0b3ItLWZ1bGwgLmNyZWRpdC1jYWxjdWxhdG9yX19yZXN1bHRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cblxuLmZhbmN5Ym94LXNsaWRlID4gLmZhbmN5Ym94LWxvYWRpbmcge1xuICAtd2Via2l0LWFuaW1hdGlvbjogYiAuOHMgaW5maW5pdGUgbGluZWFyOyB9XG5cbi5mYW5jeWJveC1zbGlkZS0taW1hZ2Uge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5yZXZpZXctc3VtbWFyeV9fdGl0bGUge1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG4ucmV2aWV3LXN1bW1hcnlfX2F2ZXJhZ2Uge1xuICBmb250LXNpemU6IDMuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5yZXZpZXctc3VtbWFyeV9fYXZlcmFnZSBzcGFuIHtcbiAgICBmb250LXNpemU6IDUwJTtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG5cbi5yZXZpZXctc3VtbWFyeV9fdG90YWwtcmVzcG9uc2VzIHtcbiAgbWFyZ2luLXRvcDogMC4zMTI1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG5cbi5yZXZpZXctc3VtbWFyeV9fbGluayBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMC44NzVyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAucmV2aWV3LXN1bW1hcnlfX2xpbmsgYSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAucmV2aWV3LXN1bW1hcnlfX2xpbmsgYTpob3ZlciwgLnJldmlldy1zdW1tYXJ5X19saW5rIGE6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnJldmlldy1saXN0aW5nX19oZWFkZXIge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmlldy1saXN0aW5nX19oZWFkZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5yZXZpZXctbGlzdGluZ19faGVhZGVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLnJldmlldy1saXN0aW5nX19oZWFkZXI6OmJlZm9yZSwgLnJldmlldy1saXN0aW5nX19oZWFkZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLnJldmlldy1saXN0aW5nX19oZWFkZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucmV2aWV3LWxpc3RpbmdfX2hlYWRlci1maXJzdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucmV2aWV3LWxpc3RpbmdfX2hlYWRlci1maXJzdCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5yZXZpZXctbGlzdGluZ19faGVhZGVyLWZpcnN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yZXZpZXctbGlzdGluZ19faGVhZGVyLWZpcnN0IHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmlldy1saXN0aW5nX19oZWFkZXItZmlyc3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5yZXZpZXctbGlzdGluZ19faGVhZGVyLWZpcnN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5yZXZpZXctbGlzdGluZ19faGVhZGVyLXNlY29uZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucmV2aWV3LWxpc3RpbmdfX2hlYWRlci1zZWNvbmQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAucmV2aWV3LWxpc3RpbmdfX2hlYWRlci1zZWNvbmQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnJldmlldy1saXN0aW5nX19oZWFkZXItc2Vjb25kIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmlldy1saXN0aW5nX19oZWFkZXItc2Vjb25kIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucmV2aWV3LWxpc3RpbmdfX2hlYWRlci1zZWNvbmQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLnJldmlldy1saXN0aW5nX19sb2dvIHtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmlldy1saXN0aW5nX19zdW1tYXJ5IHtcbiAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4ucmV2aWV3LWxpc3RpbmdfX2xpc3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLnJldmlldy1saXN0aW5nX19saXN0LWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cblxuLnJldmlldy1saXN0aW5nX19saW5rIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC43NXJlbSAwLjg3NXJlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZpZXctbGlzdGluZ19fbGluayBhIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5yZXZpZXctbGlzdGluZ19fbGluayBhOmhvdmVyLCAucmV2aWV3LWxpc3RpbmdfX2xpbmsgYTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E2MDAyODtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4ucmV2aWV3IHtcbiAgcGFkZGluZzogMC42MjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2aWV3IHtcbiAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbTsgfSB9XG4gIC5yZXZpZXdfX2hlYWRlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnJldmlld19faGVhZGVyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZXZpZXdfX2hlYWRlciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIC5yZXZpZXdfX2hlYWRlcjo6YmVmb3JlLCAucmV2aWV3X19oZWFkZXI6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLnJldmlld19faGVhZGVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5yZXZpZXdfX2hlYWRlci1maXJzdCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucmV2aWV3X19oZWFkZXItZmlyc3Qge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAucmV2aWV3X19oZWFkZXItZmlyc3Q6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnJldmlld19faGVhZGVyLWZpcnN0IHtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2aWV3X19oZWFkZXItZmlyc3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAucmV2aWV3X19oZWFkZXItZmlyc3Q6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5yZXZpZXdfX2hlYWRlci1zZWNvbmQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnJldmlld19faGVhZGVyLXNlY29uZCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIC5yZXZpZXdfX2hlYWRlci1zZWNvbmQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnJldmlld19faGVhZGVyLXNlY29uZCB7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmlld19faGVhZGVyLXNlY29uZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5yZXZpZXdfX2hlYWRlci1zZWNvbmQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAucmV2aWV3X19kYXRlIHNwYW4ge1xuICAgIG1hcmdpbi1yaWdodDogMC4xODc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgLnJldmlld19fcmF0aW5nLWxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5yZXZpZXdfX2xpbmsge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnJldmlld19fbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAucmV2aWV3X19saW5rIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgIC5yZXZpZXdfX2xpbmsgYTpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ucmV2aWV3LXJhdGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwLjA2MjVyZW07XG4gIGhlaWdodDogMS42ODc1cmVtO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvY29yZS9pbWcvZmVlZm8vc3RhcnMucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtc2l6ZTogMnJlbSAzLjQzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY4NzVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnJldmlldy1yYXRpbmdfX2lubmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAxLjY4NzVyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2NvcmUvaW1nL2ZlZWZvL3N0YXJzLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yN3B4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDJyZW0gMy4zNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjg3NXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLndpemFyZCA+IC5zdGVwcyA+IHVsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi53aXphcmQgPiAuc3RlcHMgPiB1bCBsaTpsYXN0LWNoaWxkIGEge1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLndpemFyZCA+IC5zdGVwcyBhLFxuLndpemFyZCA+IC5zdGVwcyBhOmhvdmVyLFxuLndpemFyZCA+IC5zdGVwcyBhOmFjdGl2ZSB7XG4gIG1hcmdpbjogMCAwIDAuNXJlbTtcbiAgcGFkZGluZzogMC41cmVtIDAuOTM3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC53aXphcmQgPiAuc3RlcHMgYSxcbiAgICAud2l6YXJkID4gLnN0ZXBzIGE6aG92ZXIsXG4gICAgLndpemFyZCA+IC5zdGVwcyBhOmFjdGl2ZSB7XG4gICAgICBtYXJnaW46IDAgMC41cmVtIDAuNXJlbSAwOyB9IH1cblxuLndpemFyZCA+IC5zdGVwcyAuY3VycmVudCBhLFxuLndpemFyZCA+IC5zdGVwcyAuY3VycmVudCBhOmhvdmVyLFxuLndpemFyZCA+IC5zdGVwcyAuY3VycmVudCBhOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi53aXphcmQgPiAuc3RlcHMgLmRvbmUgYSxcbi53aXphcmQgPiAuc3RlcHMgLmRvbmUgYTpob3Zlcixcbi53aXphcmQgPiAuc3RlcHMgLmRvbmUgYTphY3RpdmUge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMmE1ZDsgfVxuXG4ud2l6YXJkID4gLnN0ZXBzIC5kaXNhYmxlZCBhLFxuLndpemFyZCA+IC5zdGVwcyAuZGlzYWJsZWQgYTpob3Zlcixcbi53aXphcmQgPiAuc3RlcHMgLmRpc2FibGVkIGE6YWN0aXZlIHtcbiAgY29sb3I6ICMyMjIyMjI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cblxuLndpemFyZCA+IC5zdGVwcyAuZXJyb3IgYSxcbi53aXphcmQgPiAuc3RlcHMgLmVycm9yIGE6aG92ZXIsXG4ud2l6YXJkID4gLnN0ZXBzIC5lcnJvciBhOmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3OyB9XG5cbi53aXphcmQgPiAuY29udGVudCA+IC5ib2R5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMC41cmVtIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87IH1cblxuLndpemFyZCA+IC5hY3Rpb25zIGEsXG4ud2l6YXJkID4gLmFjdGlvbnMgYTpob3Zlcixcbi53aXphcmQgPiAuYWN0aW9ucyBhOmFjdGl2ZSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjkzNzVyZW07XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICBmb250LXdlaWdodDogNjAwO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi53aXphcmQgPiAuYWN0aW9ucyAuZGlzYWJsZWQgYSxcbi53aXphcmQgPiAuYWN0aW9ucyAuZGlzYWJsZWQgYTpob3Zlcixcbi53aXphcmQgPiAuYWN0aW9ucyAuZGlzYWJsZWQgYTphY3RpdmUge1xuICBjb2xvcjogIzIyMjIyMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxuXG4ud2l6YXJkID4gLmFjdGlvbnMgPiB1bCA+IGxpIHtcbiAgbWFyZ2luOiAwIDAgMCAwLjVyZW07IH1cblxuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmFjY29yZGlvbiA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYWNjb3JkaW9uID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgaDIsIC5hY2NvcmRpb24gPiBsaSBhLmFjY29yZGlvbi10aXRsZSAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsIC5vZmZlci0tZmVhdHVyZWQgLmFjY29yZGlvbiA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlIC5vZmZlcl9fdGl0bGUsIC5hY2NvcmRpb24gPiBsaSBhLmFjY29yZGlvbi10aXRsZSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAuYWNjb3JkaW9uID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSwgLnBhcnQtLWZlYXR1cmVkIC5hY2NvcmRpb24gPiBsaSBhLmFjY29yZGlvbi10aXRsZSAucGFydF9fdGl0bGUsIC5hY2NvcmRpb24gPiBsaSBhLmFjY29yZGlvbi10aXRsZSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLmFjY29yZGlvbiA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlIC5wYXJ0X19mb3JtLXRpdGxlLCAuYWNjb3JkaW9uID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5hY2NvcmRpb24gPiBsaSBhLmFjY29yZGlvbi10aXRsZSAucG9zdF9fdGl0bGUsIC5hY2NvcmRpb24gPiBsaSBhLmFjY29yZGlvbi10aXRsZSAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1nZW5lcmFsIC5hY2NvcmRpb24gPiBsaSBhLmFjY29yZGlvbi10aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5hY2NvcmRpb24gPiBsaSBhLmFjY29yZGlvbi10aXRsZSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAuYWNjb3JkaW9uID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAuYWNjb3JkaW9uID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAuYWNjb3JkaW9uID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuYWNjb3JkaW9uID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAuYWNjb3JkaW9uID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuYWNjb3JkaW9uID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmFjY29yZGlvbiA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlIC5saXN0aW5nX190aXRsZSwgLmFjY29yZGlvbiA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmFjY29yZGlvbiA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlIC5saXN0aW5nX190aXRsZSwgLmFjY29yZGlvbiA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAuYWNjb3JkaW9uID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuYWNjb3JkaW9uID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLmFjY29yZGlvbiA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlIC5wYWdlX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cbiAgLmFjY29yZGlvbiA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlOmZvY3VzLFxuICAuYWNjb3JkaW9uID4gbGkgYS5hY2NvcmRpb24tdGl0bGU6aG92ZXIsXG4gIC5hY2NvcmRpb24gPiBsaSBhLmFjY29yZGlvbi10aXRsZVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgIGNvbG9yOiAjYzMwMDJmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7IH1cbiAgLmFjY29yZGlvbiA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hY2NvcmRpb24gPiBsaSBhLmFjY29yZGlvbi10aXRsZVthcmlhLXNlbGVjdGVkPSd0cnVlJ106OmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDEuODc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuNXJlbTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMC45OTk5KTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3A6IDhweCBzb2xpZCAjYzMwMDJmO1xuICAgICAgICB6LWluZGV4OiA0MDA7IH0gfVxuICAuYWNjb3JkaW9uID4gbGkgLmFjY29yZGlvbi1jb250ZW50LS1uby1wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5hY2NvcmRpb24tLWJhc2ljID4gbGkgYS5hY2NvcmRpb24tdGl0bGUge1xuICAgIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07XG4gICAgY29sb3I6ICMyMjIyMjI7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XG4gICAgLmFjY29yZGlvbi0tYmFzaWMgPiBsaSBhLmFjY29yZGlvbi10aXRsZTpob3ZlciB7XG4gICAgICBjb2xvcjogIzIyMjIyMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cbiAgICAuYWNjb3JkaW9uLS1iYXNpYyA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IGluaGVyaXQ7XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgLmFjY29yZGlvbi0tYmFzaWMgPiBsaSBhLmFjY29yZGlvbi10aXRsZSBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5hY2NvcmRpb24tLWJhc2ljID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgc3BhbiB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmFjY29yZGlvbi0tYmFzaWMgPiBsaSBhLmFjY29yZGlvbi10aXRsZTpmb2N1cyxcbiAgLmFjY29yZGlvbi0tYmFzaWMgPiBsaSBhLmFjY29yZGlvbi10aXRsZTpob3ZlcixcbiAgLmFjY29yZGlvbi0tYmFzaWMgPiBsaSBhLmFjY29yZGlvbi10aXRsZVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cbiAgLmFjY29yZGlvbi0tYmFzaWMgPiBsaSBhLmFjY29yZGlvbi10aXRsZVthcmlhLXNlbGVjdGVkPSd0cnVlJ106OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5hY2NvcmRpb24tLWJhc2ljID4gbGkgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTsgfVxuICAuYWNjb3JkaW9uLS1jdXN0b20gbGkuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZWVlZWU7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgLmFjY29yZGlvbi0tY3VzdG9tIGxpLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmFjY29yZGlvbi0tY3VzdG9tIGxpLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5hY2NvcmRpb24tLWN1c3RvbSBsaS5hY2NvcmRpb24taXRlbSBhLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgICAgLmFjY29yZGlvbi0tY3VzdG9tIGxpLmFjY29yZGlvbi1pdGVtIGEuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgICAgICByaWdodDogMS4yNXJlbTsgfVxuICAgICAgLmFjY29yZGlvbi0tY3VzdG9tIGxpLmFjY29yZGlvbi1pdGVtIGEuYWNjb3JkaW9uLXRpdGxlOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmFjY29yZGlvbi0tY3VzdG9tIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgcGFkZGluZzogMCAxLjI1cmVtIDEuMjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5hY2NvcmRpb24tLWN1c3RvbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmZvcm0tZ3JvdXA6bGFzdC1jaGlsZCAuaGVscC1ibG9jayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5hY2NvcmRpb24tLXdhcnJhbnR5ID4gbGkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjIyMjIyO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYWNjb3JkaW9uLS13YXJyYW50eSA+IGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cbiAgICAuYWNjb3JkaW9uLS13YXJyYW50eSA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgIC5hY2NvcmRpb24tLXdhcnJhbnR5ID4gbGkgYS5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgcGFkZGluZy10b3A6IDAuNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xuICAgICAgY29sb3I6ICMyMjIyMjI7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5hY2NvcmRpb24tLXdhcnJhbnR5ID4gbGkgYS5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAgICAgLmFjY29yZGlvbi0td2FycmFudHkgPiBsaSBhLmFjY29yZGlvbi10aXRsZTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XG4gICAgICAuYWNjb3JkaW9uLS13YXJyYW50eSA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgICAgICByaWdodDogMDsgfVxuICAgICAgLmFjY29yZGlvbi0td2FycmFudHkgPiBsaSBhLmFjY29yZGlvbi10aXRsZSBzcGFuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC5hY2NvcmRpb24tLXdhcnJhbnR5ID4gbGkgYS5hY2NvcmRpb24tdGl0bGUgc3BhbiB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5hY2NvcmRpb24tLXdhcnJhbnR5ID4gbGkgYS5hY2NvcmRpb24tdGl0bGU6Zm9jdXMsXG4gICAgLmFjY29yZGlvbi0td2FycmFudHkgPiBsaSBhLmFjY29yZGlvbi10aXRsZTpob3ZlcixcbiAgICAuYWNjb3JkaW9uLS13YXJyYW50eSA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBjb2xvcjogIzIyMjIyMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cbiAgICAuYWNjb3JkaW9uLS13YXJyYW50eSA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXTo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5hY2NvcmRpb24tLXdhcnJhbnR5ID4gbGkgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY29sb3I6ICM2NjY2NjY7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5hY2NvcmRpb24tLXdhcnJhbnR5ID4gbGkgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgICAgIC5hY2NvcmRpb24tLXdhcnJhbnR5ID4gbGkgLmFjY29yZGlvbi1jb250ZW50IHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5hY2NvcmRpb24tLWZhcSA+IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYWNjb3JkaW9uLS1mYXEgPiBsaTpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUsXG4gICAgLmFjY29yZGlvbi0tZmFxID4gbGkuYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDsgfVxuICAgIC5hY2NvcmRpb24tLWZhcSA+IGxpLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgLmFjY29yZGlvbi0tZmFxID4gbGkgYS5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgcGFkZGluZzogMS4yNXJlbSA1cmVtIDEuMjVyZW0gMS4yNXJlbTtcbiAgICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuYWNjb3JkaW9uLS1mYXEgPiBsaSBhLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgICAgcGFkZGluZzogMS42ODc1cmVtIDVyZW0gMS42ODc1cmVtIDEuODc1cmVtO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG4gICAgICAuYWNjb3JkaW9uLS1mYXEgPiBsaSBhLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHJpZ2h0OiAxLjI1cmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMS4yNXJlbTtcbiAgICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAgIC5hY2NvcmRpb24tLWZhcSA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlOmZvY3VzLFxuICAgIC5hY2NvcmRpb24tLWZhcSA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlOmhvdmVyLFxuICAgIC5hY2NvcmRpb24tLWZhcSA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBjb2xvcjogIzIyMjIyMjtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgICAgIC5hY2NvcmRpb24tLWZhcSA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlOmZvY3VzOjphZnRlcixcbiAgICAgIC5hY2NvcmRpb24tLWZhcSA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlOmhvdmVyOjphZnRlcixcbiAgICAgIC5hY2NvcmRpb24tLWZhcSA+IGxpIGEuYWNjb3JkaW9uLXRpdGxlW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXTo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmFjY29yZGlvbi0tZmFxID4gbGkgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgICBjb2xvcjogIzY2NjY2NjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VlZWVlZTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5hY2NvcmRpb24tLWZhcSA+IGxpIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMS44NzVyZW07IH0gfVxuICAgICAgLmFjY29yZGlvbi0tZmFxID4gbGkgLmFjY29yZGlvbi1jb250ZW50IHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5hY2NvcmRpb24tLWZhcSA+IGxpIC5hY2NvcmRpb24tY29udGVudCBhIHtcbiAgICAgICAgY29sb3I6ICNjMzAwMmY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5iYW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmFubmVyIHtcbiAgICAgIHBhZGRpbmc6IDEuODc1cmVtOyB9IH1cbiAgLmJhbm5lcl9fYm90dG9tIHtcbiAgICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5iYW5uZXJfX2JvdHRvbSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuYmFubmVyX19ib3R0b20ge1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvOyB9IH1cbiAgICAuYmFubmVyX19ib3R0b20gaW1nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHJpZ2h0OiAtNi4yNXJlbTsgfVxuICAuYmFubmVyX190aXRsZSB7XG4gICAgY29sb3I6ICMyMjIyMjI7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAuYmFubmVyX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xuICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7IH1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuYnJlYWRjcnVtYnM6OmJlZm9yZSwgLmJyZWFkY3J1bWJzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5icmVhZGNydW1iczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJyZWFkY3J1bWJzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmJyZWFkY3J1bWJzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuYnJlYWRjcnVtYnMsIC5icmVhZGNydW1iczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuICAuYnJlYWRjcnVtYnMgbGkge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC5icmVhZGNydW1icyBsaSBhIHtcbiAgICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgLmJyZWFkY3J1bWJzIGxpIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuYnJlYWRjcnVtYnMgbGkgc3BhbiB7XG4gICAgICBjb2xvcjogI2MzMDAyZjtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAuYnJlYWRjcnVtYnMgbGk6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcZTVjYyc7XG4gICAgICBtYXJnaW46IDAgMC4zNzVyZW07XG4gICAgICBjb2xvcjogIzIyMjIyMjtcbiAgICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbmJ1dHRvbiB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9XG5cbi5idXR0b24ge1xuICBwYWRkaW5nOiAwLjg3NXJlbTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIC5idXR0b24tLWFsZXJ0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgcGFkZGluZzogMC43NXJlbSAwLjg3NXJlbTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9uLS1hbGVydCB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgLmJ1dHRvbi0tYWxlcnQ6aG92ZXIsIC5idXR0b24tLWFsZXJ0OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNTNiMmE7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLS1maWx0ZXIge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9XG4gIC5idXR0b24tLWZ1bGwtd2lkdGgge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJ1dHRvbi0tbGFyZ2Uge1xuICAgICAgcGFkZGluZzogMS4xMjVyZW0gMS43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJ1dHRvbi0teGxhcmdlIHtcbiAgICAgIHBhZGRpbmc6IDEuNTYyNXJlbSAyLjVyZW07XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgLmJ1dHRvbi0tcmVzZXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMC41NjI1cmVtIDAuODc1cmVtIDAuNDM3NXJlbTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJ1dHRvbi0tcmVzZXQge1xuICAgICAgb3V0bGluZTogMDsgfVxuICAgIC5idXR0b24tLXJlc2V0OmhvdmVyLCAuYnV0dG9uLS1yZXNldDpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYwMDI4O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbi0tcmVzZXJ2ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMC44NzVyZW07XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkMjcxMDA7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgcGFkZGluZzogMC44NzVyZW07XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJ1dHRvbi0tcmVzZXJ2ZSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgLmJ1dHRvbi0tcmVzZXJ2ZTpob3ZlciwgLmJ1dHRvbi0tcmVzZXJ2ZTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTg1YTAwO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbi0tc2Vjb25kYXJ5LWNvbG9yIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgcGFkZGluZzogMC43NXJlbSAwLjg3NXJlbTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJ1dHRvbi0tc2Vjb25kYXJ5LWNvbG9yIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAuYnV0dG9uLS1zZWNvbmRhcnktY29sb3I6aG92ZXIsIC5idXR0b24tLXNlY29uZGFyeS1jb2xvcjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24tLXBpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTEwZGEwO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9uLS1waW5rIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAuYnV0dG9uLS1waW5rOmhvdmVyLCAuYnV0dG9uLS1waW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0MTBhODA7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLS1sYXJnZSB7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC43NXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLmJ1dHRvbi0tc21hbGwge1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDAuNzVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5idXR0b24tLXhzbWFsbCB7XG4gICAgcGFkZGluZzogMC4zNzVyZW0gMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgLmJ1dHRvbi0tbm8tbWFyZ2luIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5ub3QtZnJvbnQgLmJ1dHRvbi0tc2VhcmNoIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC42MjVyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuNjI1cmVtOyB9XG5cbi5jbG9zZS1idXR0b24ge1xuICB0b3A6IDAuNzVyZW07XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07IH1cbiAgLmNsb3NlLWJ1dHRvbi0tdG9nZ2xlciB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwLjg3NXJlbTtcbiAgICBjb2xvcjogIzIyMjIyMjtcbiAgICBsaW5lLWhlaWdodDogMy4xMjVyZW07XG4gICAgei1pbmRleDogMzsgfVxuICAgIC5jbG9zZS1idXR0b24tLXRvZ2dsZXI6Zm9jdXMsIC5jbG9zZS1idXR0b24tLXRvZ2dsZXI6aG92ZXIge1xuICAgICAgY29sb3I6ICMyMjIyMjI7IH1cblxuLmNyZWRpdHMge1xuICBjb2xvcjogIzcxNzU4MDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMS44OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNyZWRpdHMge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNyZWRpdHMge1xuICAgICAgb3JkZXI6IC0xOyB9IH1cbiAgLmNyZWRpdHMgYSB7XG4gICAgY29sb3I6ICM3MTc1ODA7IH1cbiAgLmNyZWRpdHMgPiBkaXYge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuY3JlZGl0c19fY29tcGFueSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTsgfVxuXG4uaWNvbjo6YmVmb3JlIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIC13ZWJraXQtZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5pY29uLS1hdWRpbzo6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGNvbnRlbnQ6ICdcXGUwNTAnOyB9XG5cbi5pY29uLS1hcnJvdy1iYWNrOjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZTVjNCc7IH1cblxuLmljb24tLWFycm93LWZvcndhcmQ6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlNWM4JzsgfVxuXG4uaWNvbi0tYmlrZTo6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGNvbnRlbnQ6ICdcXGU1MmYnOyB9XG5cbi5pY29uLS1jYXI6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlNTMxJzsgfVxuXG4uaWNvbi0tY2hldnJvbi1sZWZ0OjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZTVjYic7IH1cblxuLmljb24tLWNoZXZyb24tcmlnaHQ6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlNWNjJzsgfVxuXG4uaWNvbi0tY2xvY2s6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlODU1JzsgfVxuXG4uaWNvbi0tZmluYW5jZTo6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGNvbnRlbnQ6ICdcXGU4NzcnOyB9XG5cbi5pY29uLS1mdWxsc2NyZWVuOjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZTVkMCc7IH1cblxuLmljb24tLWVubGFyZ2U6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlNTZiJzsgfVxuXG4uaWNvbi0tZXhwYW5kLWxlc3M6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlNWNlJzsgfVxuXG4uaWNvbi0tZXhwYW5kLW1vcmU6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlNWNmJzsgfVxuXG4uaWNvbi0tZG9jdW1lbnQ6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlODczJzsgfVxuXG4uaWNvbi0tZmFjZWJvb2s6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICBjb250ZW50OiBcIlxcZjA5YVwiOyB9XG5cbi5pY29uLS1maWx0ZXI6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlMTUyJzsgfVxuXG4uaWNvbi0tZ29vZ2xlLXBsdXM6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICBjb250ZW50OiBcIlxcZjBkNVwiOyB9XG5cbi5pY29uLS1pbWFnZS1saWJyYXJ5OjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZTQxMyc7IH1cblxuLmljb24tLWluZm86OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlODhmJzsgfVxuXG4uaWNvbi0tbGlua2VkaW46OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICBjb250ZW50OiBcIlxcZjBlMVwiOyB9XG5cbi5pY29uLS1tYWlsOjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZTE1OCc7IH1cblxuLmljb24tLW1lbnU6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlNWQyJzsgfVxuXG4uaWNvbi0tbW9iaWxlOjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZTMyNCc7IH1cblxuLmljb24tLXBsYXk6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlMDM5JzsgfVxuXG4uaWNvbi0tcGhvbmU6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlMGIwJzsgfVxuXG4uaWNvbi0tcG91bmQ6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlYWYxJzsgfVxuXG4uaWNvbi0tcmVjZW50OjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZTg4OSc7IH1cblxuLmljb24tLXNoYXJlOjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZTgwZCc7IH1cblxuLmljb24tLXNhdmVkOjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZTg3ZCc7IH1cblxuLmljb24tLXNlYXJjaDo6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGNvbnRlbnQ6ICdcXGU4YjYnOyB9XG5cbi5pY29uLS1zdGFyOjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZjA2Zic7IH1cblxuLmljb24tLXNtczo6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGNvbnRlbnQ6ICdcXGU2MjUnOyB9XG5cbi5pY29uLS10cmFuc2l0OjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZTUzNSc7IH1cblxuLmljb24tLXRpY2s6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlODc3JzsgfVxuXG4uaWNvbi0tdHdpdHRlcjo6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gIGNvbnRlbnQ6IFwiXFxmMDk5XCI7IH1cblxuLmljb24tLXByaW50OjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZThhZCc7IH1cblxuLmljb24tLXZpZGVvLWxpYnJhcnk6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICBjb250ZW50OiAnXFxlMDM4JzsgfVxuXG4uaWNvbi0tdmlzaWJpbGl0eTo6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGNvbnRlbnQ6ICdcXGU4ZjQnOyB9XG5cbi5pY29uLS13YWxrOjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgY29udGVudDogJ1xcZTUzNic7IH1cblxuLmljb24tLXdoYXRzYXBwOjpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgY29udGVudDogXCJcXGYyMzJcIjsgfVxuXG4ubGlzdGluZ19fbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ubGlzdGluZy0tYmxvY2sgLmxpc3RpbmdfX2xpc3Qge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ2FwOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS1ibG9jayAubGlzdGluZ19fbGlzdCB7XG4gICAgICBnYXA6IDEuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXN0aW5nLS1ibG9jayAubGlzdGluZ19fbGlzdCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgZ2FwOiAxLjg3NXJlbTsgfSB9XG5cbi5saXN0aW5nLS1ibG9jay11c3Age1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDY4Ljc1cmVtO1xuICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAubGlzdGluZy0tYmxvY2stdXNwOjpiZWZvcmUsIC5saXN0aW5nLS1ibG9jay11c3A6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLWJsb2NrLXVzcDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWJsb2NrLXVzcCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS1ibG9jay11c3A6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5saXN0aW5nLS1ibG9jay11c3AsIC5saXN0aW5nLS1ibG9jay11c3A6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tYmxvY2stdXNwIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGlzdGluZy0tYmxvY2stdXNwIHtcbiAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07IH0gfVxuICAubGlzdGluZy0tYmxvY2stdXNwIC5saXN0aW5nX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tYmxvY2stdXNwIC5saXN0aW5nX190aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtO1xuICAgICAgICBmb250LXNpemU6IDIuNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tYmxvY2stdXNwIC5saXN0aW5nX190aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5saXN0aW5nLS1ibG9jay11c3AgLmxpc3RpbmdfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tYmxvY2stdXNwIC5saXN0aW5nX19saXN0IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG4gICAgICAgIGdhcDogMDsgfSB9XG4gICAgLmxpc3RpbmctLWJsb2NrLXVzcCAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLWJsb2NrLXVzcCAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRTNFM0UzOyB9IH1cbiAgICAgIC5saXN0aW5nLS1ibG9jay11c3AgLmxpc3RpbmdfX2xpc3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOyB9XG4gIC5saXN0aW5nLS1ibG9jay11c3AgLmxpc3RpbmdfX2Zvb3RlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogMC42MjVyZW07XG4gICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxpc3RpbmctLWJsb2NrLXVzcCAubGlzdGluZ19fZm9vdGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfSB9XG4gICAgLmxpc3RpbmctLWJsb2NrLXVzcCAubGlzdGluZ19fZm9vdGVyIGk6OmJlZm9yZSB7XG4gICAgICBjb2xvcjogI2MzMDAyZjtcbiAgICAgIGZvbnQtc2l6ZTogMS42MjVyZW07IH1cbiAgICAubGlzdGluZy0tYmxvY2stdXNwIC5saXN0aW5nX19mb290ZXIgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgLmxpc3RpbmctLWJsb2NrLXVzcCAubGlzdGluZ19fZm9vdGVyIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMC44NzVyZW07XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nOiAwLjkzNzVyZW0gMS44NzVyZW07XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmxpc3RpbmctLWJsb2NrLXVzcCAubGlzdGluZ19fZm9vdGVyIGEge1xuICAgICAgICBvdXRsaW5lOiAwOyB9XG4gICAgICAubGlzdGluZy0tYmxvY2stdXNwIC5saXN0aW5nX19mb290ZXIgYTpob3ZlciwgLmxpc3RpbmctLWJsb2NrLXVzcCAubGlzdGluZ19fZm9vdGVyIGE6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYwMDI4O1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4ubGlzdGluZy0tYmxvY2stYXdhcmQge1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIC5saXN0aW5nLS1ibG9jay1hd2FyZDo6YmVmb3JlLCAubGlzdGluZy0tYmxvY2stYXdhcmQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLWJsb2NrLWF3YXJkOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tYmxvY2stYXdhcmQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAubGlzdGluZy0tYmxvY2stYXdhcmQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5saXN0aW5nLS1ibG9jay1hd2FyZCwgLmxpc3RpbmctLWJsb2NrLWF3YXJkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lOyB9XG4gIC5saXN0aW5nLS1ibG9jay1hd2FyZCAubGlzdGluZ19faGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLWJsb2NrLWF3YXJkIC5saXN0aW5nX19oZWFkaW5nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07IH0gfVxuXG4ubGlzdGluZy0tYmxvY2stZm9vdGVyIC5saXN0aW5nX19saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMC42MjVyZW07XG4gIG1hcmdpbjogMCAwIDEuODc1cmVtO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWJsb2NrLWZvb3RlciAubGlzdGluZ19fbGlzdCB7XG4gICAgICBnYXA6IDEuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXN0aW5nLS1ibG9jay1mb290ZXIgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgZ2FwOiAxLjg3NXJlbTsgfSB9XG5cbi5saXN0aW5nLS1ibG9jay1oZXJvIC5saXN0aW5nX19saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMS44NzVyZW07XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmxpc3RpbmctLWJsb2NrLXBhcnRuZXIgLmxpc3RpbmdfX2xpc3Qge1xuICAgIHdpZHRoOiAxOC43NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5saXN0aW5nLS1ibG9jay1zZWFyY2gge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbi5saXN0aW5nLS1ibG9jay1zZWFyY2ggLmxpc3RpbmdfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGhlaWdodDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXN0aW5nLS1ibG9jay1zZWFyY2ggLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG4gIC5saXN0aW5nLS1ibG9jay1zZWFyY2ggLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAxO1xuICAgIGZsZXgtZ3JvdzogMTsgfVxuXG4ubGlzdGluZy0tYmxvY2stc2lkZWJhciAubGlzdGluZ19fbGlzdCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWJsb2NrLXNpZGViYXIgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXN0aW5nLS1ibG9jay1zaWRlYmFyIC5saXN0aW5nX19saXN0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLWJsb2NrLXNpZGViYXIgLmxpc3RpbmdfX2xpc3Q6OmJlZm9yZSwgLmxpc3RpbmctLWJsb2NrLXNpZGViYXIgLmxpc3RpbmdfX2xpc3Q6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLWJsb2NrLXNpZGViYXIgLmxpc3RpbmdfX2xpc3Q6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubGlzdGluZy0tYmxvY2stc2lkZWJhciAubGlzdGluZ19fbGlzdCA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1ibG9jay1zaWRlYmFyIC5saXN0aW5nX19saXN0ID4gbGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tYmxvY2stc2lkZWJhciAubGlzdGluZ19fbGlzdCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5saXN0aW5nLS1ibG9jay1zaWRlYmFyIC5saXN0aW5nX19saXN0ID4gbGk6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGlzdGluZy0tYmxvY2stc2lkZWJhciAubGlzdGluZ19fbGlzdCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxpc3RpbmctLWJsb2NrLXNpZGViYXIgLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICAubGlzdGluZy0tYmxvY2stc2lkZWJhciAubGlzdGluZ19fbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubGlzdGluZy0tYmxvY2stZmluYW5jZSAubGlzdGluZ19fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cblxuLmxpc3RpbmctLWJsb2NrLXNlcnZpY2Uge1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAubGlzdGluZy0tYmxvY2stc2VydmljZTo6YmVmb3JlLCAubGlzdGluZy0tYmxvY2stc2VydmljZTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAubGlzdGluZy0tYmxvY2stc2VydmljZTo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWJsb2NrLXNlcnZpY2Uge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAubGlzdGluZy0tYmxvY2stc2VydmljZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmxpc3RpbmctLWJsb2NrLXNlcnZpY2UsIC5saXN0aW5nLS1ibG9jay1zZXJ2aWNlOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWJsb2NrLXNlcnZpY2Uge1xuICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXN0aW5nLS1ibG9jay1zZXJ2aWNlIHtcbiAgICAgIG1hcmdpbi10b3A6IDVyZW07IH0gfVxuICAubGlzdGluZy0tYmxvY2stc2VydmljZSAubGlzdGluZ19fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDEuMjVyZW07XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tYmxvY2stc2VydmljZSAubGlzdGluZ19fbGlzdCB7XG4gICAgICAgIGdhcDogMS44NzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5saXN0aW5nLS1ibG9jay1zZXJ2aWNlIC5saXN0aW5nX19saXN0IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG4gICAgLmxpc3RpbmctLWJsb2NrLXNlcnZpY2UgLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgICBmbGV4OiAxOyB9XG5cbi5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGVzIHtcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyB7XG4gICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRTNFM0UzOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyB7XG4gICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cbiAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZXMgLmxpc3RpbmdfX2lubmVyIHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogOTcuNXJlbTsgfVxuICAgIC5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGVzIC5saXN0aW5nX19pbm5lcjo6YmVmb3JlLCAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAubGlzdGluZ19faW5uZXI6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZXMgLmxpc3RpbmdfX2lubmVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAubGlzdGluZ19faW5uZXIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAubGlzdGluZ19faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAubGlzdGluZ19faW5uZXIsIC5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGVzIC5saXN0aW5nX19pbm5lcjpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gIC5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGVzIC5saXN0aW5nX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZXMgLmxpc3RpbmdfX2NvbnRlbnQge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAubGlzdGluZ19fbGlzdC1vdXRlciB7XG4gICAgbWluLXdpZHRoOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGVzIC5saXN0aW5nX19saXN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRTNFM0UzOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgZmxleDogMCAwIDUwJTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAubGlzdGluZ19fbGlzdC1pdGVtLS1vZGQge1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTsgfSB9XG4gIC5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGVzIC5saXN0aW5nX190aXRsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZXMgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZXMgLmxpc3RpbmdfX3RpdGxlIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMC44NzVyZW07XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuICAgICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGVzIC5saXN0aW5nX190aXRsZSBhIHtcbiAgICAgICAgb3V0bGluZTogMDsgfVxuICAgICAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZXMgLmxpc3RpbmdfX3RpdGxlIGE6aG92ZXIsIC5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGVzIC5saXN0aW5nX190aXRsZSBhOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E2MDAyODtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGVzIC5saXN0aW5nX190aXRsZSBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG4ubGlzdGluZy0tYmxvY2stYXdhcmRzIHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgLmxpc3RpbmctLWJsb2NrLWF3YXJkczo6YmVmb3JlLCAubGlzdGluZy0tYmxvY2stYXdhcmRzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5saXN0aW5nLS1ibG9jay1hd2FyZHM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS1ibG9jay1hd2FyZHMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAubGlzdGluZy0tYmxvY2stYXdhcmRzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubGlzdGluZy0tYmxvY2stYXdhcmRzLCAubGlzdGluZy0tYmxvY2stYXdhcmRzOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWJsb2NrLWF3YXJkcyB7XG4gICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpc3RpbmctLWJsb2NrLWF3YXJkcyB7XG4gICAgICBtYXJnaW4tdG9wOiA1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5saXN0aW5nLS1ibG9jay1hd2FyZHMge1xuICAgICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDBlbSkge1xuICAgIC5saXN0aW5nLS1ibG9jay1hd2FyZHMge1xuICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuICAubGlzdGluZy0tYmxvY2stYXdhcmRzIC5saXN0aW5nX19pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzQsIDM0LCAwLjUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAubGlzdGluZy0tYmxvY2stYXdhcmRzIC5saXN0aW5nX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgZ3JpZC1nYXA6IDEuMjVyZW07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tYmxvY2stYXdhcmRzIC5saXN0aW5nX19jb250ZW50IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbSAxLjg3NXJlbTtcbiAgICAgICAgZ3JpZC1nYXA6IDEuODc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLWJsb2NrLWF3YXJkcyAubGlzdGluZ19fZGVzY3JpcHRpb24ge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tYmxvY2stYXdhcmRzIC5saXN0aW5nX19kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5saXN0aW5nLS1ibG9jay1hd2FyZHMgLmxpc3RpbmdfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cbiAgLmxpc3RpbmctLWJsb2NrLWF3YXJkcyAubGlzdGluZ19fbGlzdCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgIGdyaWQtZ2FwOiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tYmxvY2stYXdhcmRzIC5saXN0aW5nX19saXN0IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmxpc3RpbmctLWJsb2NrLWF3YXJkcyAubGlzdGluZ19fbGlzdCB7XG4gICAgICAgIGdyaWQtZ2FwOiAxLjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxpc3RpbmctLWJsb2NrLWF3YXJkcyAubGlzdGluZ19fbGlzdCB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAyOyB9IH1cbiAgLmxpc3RpbmctLWJsb2NrLWF3YXJkcyAubGlzdGluZ19fdGl0bGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4zMTI1cmVtO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5saXN0aW5nLS1ibG9jay1hd2FyZHMgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfSB9XG5cbi5saXN0aW5nLS1ibG9jay1wYXJ0bmVyLXJldmlld3MgLmxpc3RpbmdfX2xpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZ2FwOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWJsb2NrLXBhcnRuZXItcmV2aWV3cyAubGlzdGluZ19fbGlzdCB7XG4gICAgICBnYXA6IDEuODc1cmVtOyB9IH1cblxuLmxpc3RpbmctLWJyYW5jaC1mb290ZXIgLmxpc3RpbmdfX2RpcmVjdGlvbnMge1xuICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAubGlzdGluZy0tYnJhbmNoLWZvb3RlciAubGlzdGluZ19fZGlyZWN0aW9ucy10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4ubGlzdGluZy0tYnJhbmNoLWZvb3RlciAubGlzdGluZ19fbGlzdCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWJyYW5jaC1mb290ZXIgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXN0aW5nLS1icmFuY2gtZm9vdGVyIC5saXN0aW5nX19saXN0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLWJyYW5jaC1mb290ZXIgLmxpc3RpbmdfX2xpc3Q6OmJlZm9yZSwgLmxpc3RpbmctLWJyYW5jaC1mb290ZXIgLmxpc3RpbmdfX2xpc3Q6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLWJyYW5jaC1mb290ZXIgLmxpc3RpbmdfX2xpc3Q6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubGlzdGluZy0tYnJhbmNoLWZvb3RlciAubGlzdGluZ19fbGlzdCA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1icmFuY2gtZm9vdGVyIC5saXN0aW5nX19saXN0ID4gbGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tYnJhbmNoLWZvb3RlciAubGlzdGluZ19fbGlzdCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5saXN0aW5nLS1icmFuY2gtZm9vdGVyIC5saXN0aW5nX19saXN0ID4gbGk6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGlzdGluZy0tYnJhbmNoLWZvb3RlciAubGlzdGluZ19fbGlzdCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxpc3RpbmctLWJyYW5jaC1mb290ZXIgLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gICAgLmxpc3RpbmctLWJyYW5jaC1mb290ZXIgLmxpc3RpbmdfX2xpc3QtaXRlbSAuYnJhbmNoIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjkzNzVyZW07XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzIyMjIyMjsgfVxuICAgIC5saXN0aW5nLS1icmFuY2gtZm9vdGVyIC5saXN0aW5nX19saXN0LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAubGlzdGluZy0tYnJhbmNoLWZvb3RlciAubGlzdGluZ19fbGlzdC1pdGVtOmxhc3QtY2hpbGQgLmJyYW5jaCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi5saXN0aW5nLS1icmFuY2gtdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWJyYW5jaC10ZWFzZXIgLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS1icmFuY2gtdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubGlzdGluZy0tYnJhbmNoLXdpZGdldCB7XG4gIHBhZGRpbmctdG9wOiAxLjg3NXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWJyYW5jaC13aWRnZXQge1xuICAgICAgcGFkZGluZy10b3A6IDMuMTI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGlzdGluZy0tYnJhbmNoLXdpZGdldCB7XG4gICAgICBwYWRkaW5nLXRvcDogNi4yNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2LjI1cmVtOyB9IH1cbiAgLmxpc3RpbmctLWJyYW5jaC13aWRnZXQgLmxpc3RpbmdfX2lubmVyIHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgLmxpc3RpbmctLWJyYW5jaC13aWRnZXQgLmxpc3RpbmdfX2lubmVyOjpiZWZvcmUsIC5saXN0aW5nLS1icmFuY2gtd2lkZ2V0IC5saXN0aW5nX19pbm5lcjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAubGlzdGluZy0tYnJhbmNoLXdpZGdldCAubGlzdGluZ19faW5uZXI6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1icmFuY2gtd2lkZ2V0IC5saXN0aW5nX19pbm5lciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5saXN0aW5nLS1icmFuY2gtd2lkZ2V0IC5saXN0aW5nX19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5saXN0aW5nLS1icmFuY2gtd2lkZ2V0IC5saXN0aW5nX19pbm5lciwgLmxpc3RpbmctLWJyYW5jaC13aWRnZXQgLmxpc3RpbmdfX2lubmVyOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgLmxpc3RpbmctLWJyYW5jaC13aWRnZXQgLmxpc3RpbmdfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDEuMjVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLWJyYW5jaC13aWRnZXQgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBnYXA6IDEuODc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tYnJhbmNoLXdpZGdldCAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgIGZsZXg6IDE7IH1cblxuLmxpc3RpbmctLXBhZ2UtdGVhc2VyIC5saXN0aW5nX19saXN0IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tcGFnZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXN0aW5nLS1wYWdlLXRlYXNlciAubGlzdGluZ19fbGlzdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS1wYWdlLXRlYXNlciAubGlzdGluZ19fbGlzdDo6YmVmb3JlLCAubGlzdGluZy0tcGFnZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3Q6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLXBhZ2UtdGVhc2VyIC5saXN0aW5nX19saXN0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmxpc3RpbmctLXBhZ2UtdGVhc2VyIC5saXN0aW5nX19saXN0ID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXBhZ2UtdGVhc2VyIC5saXN0aW5nX19saXN0ID4gbGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tcGFnZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3QgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGlzdGluZy0tcGFnZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3QgPiBsaTpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5saXN0aW5nLS1wYWdlLXRlYXNlciAubGlzdGluZ19fbGlzdCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxpc3RpbmctLXBhZ2UtdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1wYWdlLXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07IH0gfVxuICAgIC5saXN0aW5nLS1wYWdlLXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubGlzdGluZy0tY2FyZWVycyAubGlzdGluZ19fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuXG4ubGlzdGluZy0tY2FyZWVycyAubGlzdGluZ19fbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMS4yNXJlbTtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWNhcmVlcnMgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgZ2FwOiAxLjg3NXJlbTsgfSB9XG5cbi5saXN0aW5nLS1jYXJlZXJzIC5saXN0aW5nX19mb290ZXIge1xuICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS1jYXJlZXJzIC5saXN0aW5nX19mb290ZXIge1xuICAgICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH0gfVxuXG4ubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDMuNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTsgfSB9XG4gIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogI2MzMDAyZjtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cbiAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX2xpbmsge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogNi44NzVyZW07XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX19saW5rIHtcbiAgICAgICAgbGVmdDogOC4xMjVyZW07XG4gICAgICAgIGhlaWdodDogMy4xMjVyZW07IH0gfVxuICAgIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX19saW5rIGEge1xuICAgICAgY29sb3I6ICMyMjIyMjI7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fbGluayBhIHNwYW4ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2hlYWRlciB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19faGVhZGVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19oZWFkZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19oZWFkZXI6OmJlZm9yZSwgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19faGVhZGVyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2hlYWRlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGUge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2Rlc2NyaXB0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fZGVzY3JpcHRpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXIge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIC52ZWhpY2xlLW9yZGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIC52ZWhpY2xlLW9yZGVyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIC52ZWhpY2xlLW9yZGVyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXIgLnZlaGljbGUtb3JkZXI6OmJlZm9yZSwgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXIgLnZlaGljbGUtb3JkZXI6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXIgLnZlaGljbGUtb3JkZXI6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIC5maWVsZC12ZWhpY2xlX3NlYXJjaF9vcmRlciB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIC5maWVsZC12ZWhpY2xlX3NlYXJjaF9vcmRlciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIC5maWVsZC12ZWhpY2xlX3NlYXJjaF9vcmRlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlciAuZmllbGQtdmVoaWNsZV9zZWFyY2hfcGVyX3BhZ2Uge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlciAuZmllbGQtdmVoaWNsZV9zZWFyY2hfcGVyX3BhZ2Uge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlciAuZmllbGQtdmVoaWNsZV9zZWFyY2hfcGVyX3BhZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cblxuLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19faXRlbS1jb3VudCB7XG4gIG1hcmdpbi1ib3R0b206IDAuMTg3NXJlbTsgfVxuICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19pdGVtLWNvdW50IHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fbGlzdCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fbGlzdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fbGlzdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3Q6OmJlZm9yZSwgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fbGlzdDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19saXN0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fbGlzdCA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3QgPiBsaSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3QgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19saXN0ID4gbGk6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19saXN0ID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3QgPiBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19saXN0ID4gbGkge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fbGlzdCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19saXN0ID4gbGk6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fbGlzdCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fbGlzdCA+IGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3QgPiBsaSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19saXN0ID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5saXN0aW5nLS1uZXctdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3QgPiBsaTpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19saXN0ID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgLmxpc3RpbmctLW5ldy12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH0gfVxuXG4ubGlzdGluZy0tbmV3LXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19mb290ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmxpc3RpbmctLXBhZ2UtZnVsbC13aWR0aC10ZWFzZXIgLmxpc3RpbmdfX2xpc3Qge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS1wYWdlLWZ1bGwtd2lkdGgtdGVhc2VyIC5saXN0aW5nX19saXN0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGlzdGluZy0tcGFnZS1mdWxsLXdpZHRoLXRlYXNlciAubGlzdGluZ19fbGlzdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS1wYWdlLWZ1bGwtd2lkdGgtdGVhc2VyIC5saXN0aW5nX19saXN0OjpiZWZvcmUsIC5saXN0aW5nLS1wYWdlLWZ1bGwtd2lkdGgtdGVhc2VyIC5saXN0aW5nX19saXN0OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5saXN0aW5nLS1wYWdlLWZ1bGwtd2lkdGgtdGVhc2VyIC5saXN0aW5nX19saXN0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmxpc3RpbmctLXBhZ2UtZnVsbC13aWR0aC10ZWFzZXIgLmxpc3RpbmdfX2xpc3QgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tcGFnZS1mdWxsLXdpZHRoLXRlYXNlciAubGlzdGluZ19fbGlzdCA+IGxpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmxpc3RpbmctLXBhZ2UtZnVsbC13aWR0aC10ZWFzZXIgLmxpc3RpbmdfX2xpc3QgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGlzdGluZy0tcGFnZS1mdWxsLXdpZHRoLXRlYXNlciAubGlzdGluZ19fbGlzdCA+IGxpOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxpc3RpbmctLXBhZ2UtZnVsbC13aWR0aC10ZWFzZXIgLmxpc3RpbmdfX2xpc3QgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5saXN0aW5nLS1wYWdlLWZ1bGwtd2lkdGgtdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1wYWdlLWZ1bGwtd2lkdGgtdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5saXN0aW5nLS1wYWdlLWZ1bGwtd2lkdGgtdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tcGFnZS1mdWxsLXdpZHRoLXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubGlzdGluZy0tcG9zdC1mZWF0dXJlZCAubGlzdGluZ19fbGlzdCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLXBvc3QtZmVhdHVyZWQgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXN0aW5nLS1wb3N0LWZlYXR1cmVkIC5saXN0aW5nX19saXN0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLXBvc3QtZmVhdHVyZWQgLmxpc3RpbmdfX2xpc3Q6OmJlZm9yZSwgLmxpc3RpbmctLXBvc3QtZmVhdHVyZWQgLmxpc3RpbmdfX2xpc3Q6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLXBvc3QtZmVhdHVyZWQgLmxpc3RpbmdfX2xpc3Q6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubGlzdGluZy0tcG9zdC1mZWF0dXJlZCAubGlzdGluZ19fbGlzdCA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1wb3N0LWZlYXR1cmVkIC5saXN0aW5nX19saXN0ID4gbGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tcG9zdC1mZWF0dXJlZCAubGlzdGluZ19fbGlzdCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5saXN0aW5nLS1wb3N0LWZlYXR1cmVkIC5saXN0aW5nX19saXN0ID4gbGk6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGlzdGluZy0tcG9zdC1mZWF0dXJlZCAubGlzdGluZ19fbGlzdCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tcG9zdC1mZWF0dXJlZCAubGlzdGluZ19fbGlzdCA+IGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS1wb3N0LWZlYXR1cmVkIC5saXN0aW5nX19saXN0ID4gbGkge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXBvc3QtZmVhdHVyZWQgLmxpc3RpbmdfX2xpc3QgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLmxpc3RpbmctLXBvc3QtZmVhdHVyZWQgLmxpc3RpbmdfX2xpc3QgPiBsaTpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAubGlzdGluZy0tcG9zdC1mZWF0dXJlZCAubGlzdGluZ19fbGlzdCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpc3RpbmctLXBvc3QtZmVhdHVyZWQgLmxpc3RpbmdfX2xpc3QgPiBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLXBvc3QtZmVhdHVyZWQgLmxpc3RpbmdfX2xpc3QgPiBsaSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tcG9zdC1mZWF0dXJlZCAubGlzdGluZ19fbGlzdCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAubGlzdGluZy0tcG9zdC1mZWF0dXJlZCAubGlzdGluZ19fbGlzdCA+IGxpOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5saXN0aW5nLS1wb3N0LWZlYXR1cmVkIC5saXN0aW5nX19saXN0ID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgLmxpc3RpbmctLXBvc3QtZmVhdHVyZWQgLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmxpc3RpbmctLXBvc3QtZmVhdHVyZWQgLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLmxpc3RpbmctLXBvc3QtZmVhdHVyZWQgLmxpc3RpbmdfX2xpc3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5saXN0aW5nLS1wb3N0LWZlYXR1cmVkIC5saXN0aW5nX19saXN0LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4ubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19oZWFkZXIge1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLmxpc3RpbmdfX2hlYWRlcjo6YmVmb3JlLCAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19oZWFkZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAubGlzdGluZ19faGVhZGVyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAubGlzdGluZ19fdGl0bGUge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX190aXRsZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLmxpc3RpbmdfX3RpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX190aXRsZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX190aXRsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAubGlzdGluZ19fdGl0bGUgaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAubGlzdGluZ19fcmVtb3ZlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLmxpc3RpbmdfX3JlbW92ZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLmxpc3RpbmdfX3JlbW92ZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19yZW1vdmUge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19yZW1vdmUge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAubGlzdGluZ19fcmVtb3ZlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19yZW1vdmUgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19tYWluIHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19tYWluOjpiZWZvcmUsIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLmxpc3RpbmdfX21haW46OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAubGlzdGluZ19fbWFpbjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLmxpc3RpbmdfX2tleSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19rZXkge1xuICAgICAgd2lkdGg6IDI1JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19rZXkge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAubGlzdGluZ19fa2V5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLmxpc3RpbmdfX2tleSB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19rZXkge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAubGlzdGluZ19fa2V5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19rZXkgdWwge1xuICAgIG1hcmdpbjogMTYuMTI1cmVtIDAgMCAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19rZXkgdWwgbGkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDMuNzVyZW07XG4gICAgICBwYWRkaW5nOiAwIDAuOTM3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLmxpc3RpbmdfX2tleSB1bCBsaTpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cblxuLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAubGlzdGluZ19fY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAubGlzdGluZ19fY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiA3NSU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLmxpc3RpbmdfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAubGlzdGluZ19fY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5saXN0aW5nX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLmxpc3RpbmdfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAubGlzdGluZ19fY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmxpc3RpbmctLXZlaGljbGUtcmVjZW50bHktdmlld2VkIC5saXN0aW5nX190aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmxpc3RpbmctLXZlaGljbGUtcmVjZW50bHktdmlld2VkIC5saXN0aW5nX19saXN0IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1yZWNlbnRseS12aWV3ZWQgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLXJlY2VudGx5LXZpZXdlZCAubGlzdGluZ19fbGlzdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLXJlY2VudGx5LXZpZXdlZCAubGlzdGluZ19fbGlzdDo6YmVmb3JlLCAubGlzdGluZy0tdmVoaWNsZS1yZWNlbnRseS12aWV3ZWQgLmxpc3RpbmdfX2xpc3Q6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtcmVjZW50bHktdmlld2VkIC5saXN0aW5nX19saXN0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtcmVjZW50bHktdmlld2VkIC5saXN0aW5nX19saXN0ID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtcmVjZW50bHktdmlld2VkIC5saXN0aW5nX19saXN0ID4gbGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tdmVoaWNsZS1yZWNlbnRseS12aWV3ZWQgLmxpc3RpbmdfX2xpc3QgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGlzdGluZy0tdmVoaWNsZS1yZWNlbnRseS12aWV3ZWQgLmxpc3RpbmdfX2xpc3QgPiBsaTpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5saXN0aW5nLS12ZWhpY2xlLXJlY2VudGx5LXZpZXdlZCAubGlzdGluZ19fbGlzdCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtcmVjZW50bHktdmlld2VkIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07IH1cbiAgICAubGlzdGluZy0tdmVoaWNsZS1yZWNlbnRseS12aWV3ZWQgLmxpc3RpbmdfX2xpc3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmxpc3RpbmctLXZlaGljbGUtcmVjZW50bHktdmlld2VkIC5saXN0aW5nX19uby1pdGVtcyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ubGlzdGluZy0tdmVoaWNsZS1sYXRlc3QsIC5saXN0aW5nLS1ibG9jay10aWxlLCAubGlzdGluZy0tc2hvd3Jvb20tZmVhdHVyZWQge1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLWxhdGVzdDo6YmVmb3JlLCAubGlzdGluZy0tdmVoaWNsZS1sYXRlc3Q6OmFmdGVyLCAubGlzdGluZy0tYmxvY2stdGlsZTo6YmVmb3JlLCAubGlzdGluZy0tYmxvY2stdGlsZTo6YWZ0ZXIsIC5saXN0aW5nLS1zaG93cm9vbS1mZWF0dXJlZDo6YmVmb3JlLCAubGlzdGluZy0tc2hvd3Jvb20tZmVhdHVyZWQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtbGF0ZXN0OjphZnRlciwgLmxpc3RpbmctLWJsb2NrLXRpbGU6OmFmdGVyLCAubGlzdGluZy0tc2hvd3Jvb20tZmVhdHVyZWQ6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLWxhdGVzdCwgLmxpc3RpbmctLWJsb2NrLXRpbGUsIC5saXN0aW5nLS1zaG93cm9vbS1mZWF0dXJlZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLWxhdGVzdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubGlzdGluZy0tYmxvY2stdGlsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubGlzdGluZy0tc2hvd3Jvb20tZmVhdHVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLWxhdGVzdCwgLmxpc3RpbmctLXZlaGljbGUtbGF0ZXN0Omxhc3QtY2hpbGQsIC5saXN0aW5nLS1ibG9jay10aWxlLCAubGlzdGluZy0tYmxvY2stdGlsZTpsYXN0LWNoaWxkLCAubGlzdGluZy0tc2hvd3Jvb20tZmVhdHVyZWQsIC5saXN0aW5nLS1zaG93cm9vbS1mZWF0dXJlZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuICAubGlzdGluZy0tdmVoaWNsZS1sYXRlc3QgLmxpc3RpbmdfX2hlYWRpbmcsIC5saXN0aW5nLS1ibG9jay10aWxlIC5saXN0aW5nX19oZWFkaW5nLCAubGlzdGluZy0tc2hvd3Jvb20tZmVhdHVyZWQgLmxpc3RpbmdfX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLWxhdGVzdCAubGlzdGluZ19faGVhZGluZywgLmxpc3RpbmctLWJsb2NrLXRpbGUgLmxpc3RpbmdfX2hlYWRpbmcsIC5saXN0aW5nLS1zaG93cm9vbS1mZWF0dXJlZCAubGlzdGluZ19faGVhZGluZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtOyB9IH1cblxuLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19faGVhZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cblxuLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxLjg3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDIuNzVyZW07IH0gfVxuXG4ubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fbGluayB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fbGluayB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX19saW5rIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuOTM3NXJlbTsgfVxuICAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fbGluayBzcGFuIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fbGluayBpOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMi41cmVtO1xuICAgIGhlaWdodDogMi41cmVtO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG5cbi5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX19saXN0IHtcbiAgd2lkdGg6IDg1JTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgd2lkdGg6IGF1dG87IH0gfVxuXG4ubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIHtcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gIHBhZGRpbmctdG9wOiAxLjg3NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIge1xuICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07XG4gICAgICBwYWRkaW5nLXRvcDogMy4xMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIge1xuICAgICAgcGFkZGluZy10b3A6IDYuMjVyZW07IH0gfVxuICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX19pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXgtd2lkdGg6IDk3LjVyZW07IH1cbiAgICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX19pbm5lcjo6YmVmb3JlLCAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX19pbm5lcjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX19pbm5lcjo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19faW5uZXIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX2lubmVyLCAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX19pbm5lcjpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX2hlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19faGVhZGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX2xpc3Qge1xuICAgIHdpZHRoOiA4NSU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX19saXN0IHtcbiAgICAgICAgd2lkdGg6IGF1dG87IH0gfVxuXG4ubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jaywgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIHtcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jaywgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jaywgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIHtcbiAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07IH0gfVxuICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19faW5uZXIsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19faW5uZXIge1xuICAgIG1heC13aWR0aDogODEuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWF4LXdpZHRoOiA5Ny41cmVtOyB9XG4gICAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX2lubmVyOjpiZWZvcmUsIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX19pbm5lcjo6YWZ0ZXIsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19faW5uZXI6OmJlZm9yZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX19pbm5lcjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19faW5uZXI6OmFmdGVyLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX2lubmVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19faW5uZXIsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19faW5uZXIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX19pbm5lciwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX2lubmVyOmxhc3QtY2hpbGQsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19faW5uZXIsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19faW5uZXI6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19faGVhZGVyLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX2hlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX2hlYWRlciwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX19oZWFkZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fbGlzdCwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX19saXN0IHtcbiAgICB3aWR0aDogODUlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX2xpc3QsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fbGlzdCB7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cblxuLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQtc2lkZWJhciwgLmxpc3RpbmctLXZlaGljbGUtbGF0ZXN0LXNpZGViYXIge1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZC1zaWRlYmFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtbGF0ZXN0LXNpZGViYXIgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIge1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDk3LjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTsgfVxuICAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyOjpiZWZvcmUsIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIsIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXI6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX190aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfVxuICAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX19saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAzMy4zMyU7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgICAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDI1JTsgfSB9XG5cbi5saXN0aW5nLS1wb3N0LXRlYXNlciB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIG1heC13aWR0aDogOTcuNXJlbTtcbiAgcGFkZGluZy10b3A6IDEuODc1cmVtOyB9XG4gIC5saXN0aW5nLS1wb3N0LXRlYXNlcjo6YmVmb3JlLCAubGlzdGluZy0tcG9zdC10ZWFzZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLXBvc3QtdGVhc2VyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tcG9zdC10ZWFzZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAubGlzdGluZy0tcG9zdC10ZWFzZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5saXN0aW5nLS1wb3N0LXRlYXNlciwgLmxpc3RpbmctLXBvc3QtdGVhc2VyOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2LjI1cmVtOyB9IH1cbiAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9XG4gIC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgICAgICAgZmxleC1iYXNpczogMzMuMzMlOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDI1JTsgfSB9XG5cbi5saXN0aW5nLS1vZmZlci10ZWFzZXIge1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDk3LjVyZW07XG4gIHBhZGRpbmctdG9wOiAxLjg3NXJlbTsgfVxuICAubGlzdGluZy0tb2ZmZXItdGVhc2VyOjpiZWZvcmUsIC5saXN0aW5nLS1vZmZlci10ZWFzZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmxpc3RpbmctLW9mZmVyLXRlYXNlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLW9mZmVyLXRlYXNlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS1vZmZlci10ZWFzZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5saXN0aW5nLS1vZmZlci10ZWFzZXIsIC5saXN0aW5nLS1vZmZlci10ZWFzZXI6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tb2ZmZXItdGVhc2VyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpc3RpbmctLW9mZmVyLXRlYXNlciB7XG4gICAgICBwYWRkaW5nLXRvcDogNi4yNXJlbTsgfSB9XG4gIC5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfVxuICAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX19saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAzMy4zMyU7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgICAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDI1JTsgfSB9XG5cbi5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWF4LXdpZHRoOiA5Ny41cmVtO1xuICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTsgfVxuICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlcjo6YmVmb3JlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIsIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIge1xuICAgICAgcGFkZGluZy10b3A6IDMuMTI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTsgfSB9XG4gICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9XG4gIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIC5saXN0aW5nX19ibG9jayxcbiAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX2p1ZGdlLXNlcnZpY2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIC5saXN0aW5nX19ibG9jayxcbiAgICAgIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIC5saXN0aW5nX19qdWRnZS1zZXJ2aWNlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07IH0gfVxuICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciA+IC5saXN0aW5nX19saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyID4gLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciA+IC5saXN0aW5nX19saXN0ID4gLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyID4gLmxpc3RpbmdfX2xpc3QgPiAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyID4gLmxpc3RpbmdfX2xpc3QgPiAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA1MCU7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgPiAubGlzdGluZ19fbGlzdCA+IC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciA+IC5saXN0aW5nX19saXN0ID4gLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgICAgICAgZmxleC1iYXNpczogMzMuMzMlOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgPiAubGlzdGluZ19fbGlzdCA+IC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDI1JTsgfSB9XG5cbi5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIG1heC13aWR0aDogOTcuNXJlbTsgfVxuICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXI6OmJlZm9yZSwgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIsIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlcjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2hlYWRlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2hlYWRlciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2hlYWRlciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19faGVhZGVyOjpiZWZvcmUsIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19faGVhZGVyOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19faGVhZGVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2hlYWRlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSB7XG4gICAgICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSB7XG4gICAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXIge1xuICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXIgLnZlaGljbGUtb3JkZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIC52ZWhpY2xlLW9yZGVyIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlciAudmVoaWNsZS1vcmRlciB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXIgLnZlaGljbGUtb3JkZXI6OmJlZm9yZSwgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlciAudmVoaWNsZS1vcmRlcjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnOyB9XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIC52ZWhpY2xlLW9yZGVyOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlciAuZmllbGQtdmVoaWNsZV9zZWFyY2hfb3JkZXIge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIC5maWVsZC12ZWhpY2xlX3NlYXJjaF9vcmRlciB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXIgLmZpZWxkLXZlaGljbGVfc2VhcmNoX29yZGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIC5maWVsZC12ZWhpY2xlX3NlYXJjaF9wZXJfcGFnZSB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXIgLmZpZWxkLXZlaGljbGVfc2VhcmNoX3Blcl9wYWdlIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlciAuZmllbGQtdmVoaWNsZV9zZWFyY2hfcGVyX3BhZ2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fb3JkZXIgbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlciBzZWxlY3Qge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19vcmRlciBzZWxlY3Qge1xuICAgICAgICAgIGhlaWdodDogMy4xMjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX29yZGVyIC5oZWxwLWJsb2NrIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fZmlsdGVyLXJlc3VsdHMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19maWx0ZXItcmVzdWx0cyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fZmlsdGVyLXJlc3VsdHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19maWx0ZXItcmVzdWx0cyB7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fZmlsdGVyLXJlc3VsdHMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fZmlsdGVyLXJlc3VsdHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2ZpbHRlci1yZXN1bHRzIHtcbiAgICAgICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2ZpbHRlci1yZXN1bHRzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fZmlsdGVyLXJlc3VsdHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2ZpbHRlci1yZXN1bHRzIC5idXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fZmlsdGVyLXJlc3VsdHMtLXJlZHVjZWQge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fZmlsdGVyLXJlc3VsdHMtLXJlZHVjZWQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fZmlsdGVyLXJlc3VsdHMtLXJlZHVjZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fYWRqdXN0LWZpbmFuY2Uge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2FkanVzdC1maW5hbmNlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19hZGp1c3QtZmluYW5jZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2FkanVzdC1maW5hbmNlIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19hZGp1c3QtZmluYW5jZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19hZGp1c3QtZmluYW5jZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fYWRqdXN0LWZpbmFuY2Uge1xuICAgICAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fYWRqdXN0LWZpbmFuY2Uge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19hZGp1c3QtZmluYW5jZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fYWRqdXN0LWZpbmFuY2UgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19maW5hbmNlLWZvcm0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAxLjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fZmluYW5jZS1mb3JtIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19maW5hbmNlLWZvcm06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19maW5hbmNlLWZvcm0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19faXRlbS1jb3VudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19pdGVtLWNvdW50IHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19saXN0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTsgfSB9XG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2xpc3QtaXRlbSB7XG4gICAgICAgICAgZmxleC1iYXNpczogNTAlOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19saXN0LWl0ZW0ge1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDMzLjMzJTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAyNSU7IH0gfVxuICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2ZpbmFuY2UtZGlzY2xhaW1lcixcbiAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX2ZpbmFuY2UtZGlzY2xhaW1lcixcbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfSB9XG5cbi5jb250cm9sbGVyLXZlaGljbGUuYWN0aW9uLWRldGFpbCAubGlzdGluZy5saXN0aW5nLS1ibG9jay11c3AgLmxpc3RpbmdfX3RpdGxlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubG9nby0tcHJpbWFyeSB7XG4gIG1heC13aWR0aDogMTIuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5sb2dvLS1wcmltYXJ5IHtcbiAgICAgIG1heC13aWR0aDogMTguNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmxvZ28tLXByaW1hcnkge1xuICAgICAgbWF4LXdpZHRoOiAyMS44NzVyZW07IH0gfVxuXG4ubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgaDIsIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsIC5vZmZlci0tZmVhdHVyZWQgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5vZmZlcl9fdGl0bGUsIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSwgLnBhcnQtLWZlYXR1cmVkIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAucGFydF9fdGl0bGUsIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5wYXJ0X19mb3JtLXRpdGxlLCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAucG9zdF9fdGl0bGUsIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1nZW5lcmFsIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5saXN0aW5nX190aXRsZSwgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5saXN0aW5nX190aXRsZSwgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5wYWdlX190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgaDIsIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsIC5vZmZlci0tZmVhdHVyZWQgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5vZmZlcl9fdGl0bGUsIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSwgLnBhcnQtLWZlYXR1cmVkIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAucGFydF9fdGl0bGUsIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5wYXJ0X19mb3JtLXRpdGxlLCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAucG9zdF9fdGl0bGUsIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1nZW5lcmFsIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5tZWV0LXRoZS10ZWFtX19jYXRlZ29yeS10aXRsZSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5saXN0aW5nX190aXRsZSwgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5saXN0aW5nX190aXRsZSwgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fY2F0ZWdvcnktdGl0bGUgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLm1lZXQtdGhlLXRlYW1fX2NhdGVnb3J5LXRpdGxlIC5wYWdlX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9IH1cblxuLm1lZXQtdGhlLXRlYW1fX2NhcmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gIGJveC1zaGFkb3c6IDAgMzBweCA2MHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tZWV0LXRoZS10ZWFtX19wcmltYXJ5LWltYWdlcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubWVldC10aGUtdGVhbV9fcHJpbWFyeS1pbWFnZXMgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgIC5tZWV0LXRoZS10ZWFtX19wcmltYXJ5LWltYWdlcyBpbWc6aG92ZXIge1xuICAgICAgb3BhY2l0eTogLjg7IH1cblxuLm1lZXQtdGhlLXRlYW1fX2NvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDEuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVldC10aGUtdGVhbV9fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAxLjg3NXJlbTsgfSB9XG5cbi5tZWV0LXRoZS10ZWFtX190aXRsZSBoMywgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3RpdGxlLCAuYmxvY2stLXNpZGViYXIgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5ibG9ja19fdGl0bGUsIC5tZWV0LXRoZS10ZWFtX190aXRsZSAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fc3ViLXRpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC5tZWV0LXRoZS10ZWFtX190aXRsZSAub2ZmZXJfX3N1Yi10aXRsZSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5hZGQtb25fX3RpdGxlLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCBzcGFuLCAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX21vbnRoIC5tZWV0LXRoZS10ZWFtX190aXRsZSBzcGFuLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLm9yZGVyLXBheW1lbnRfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtdGl0bGUsIC5tZWV0LXRoZS10ZWFtX190aXRsZSAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3N1Yi10aXRsZSwgLnBhcnQtLWZlYXR1cmVkIC5tZWV0LXRoZS10ZWFtX190aXRsZSAucGFydF9fc3ViLXRpdGxlLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X19zdWItdGl0bGUsIC5wb3N0LS1mZWF0dXJlZCAubWVldC10aGUtdGVhbV9fdGl0bGUgLnBvc3RfX3N1Yi10aXRsZSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5xdWljay1zZWFyY2hfX2xlZ2VuZCwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX190aXRsZSAubWVldC10aGUtdGVhbV9fdGl0bGUgaDEsIC5tZWV0LXRoZS10ZWFtX190aXRsZSAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5tZWV0LXRoZS10ZWFtX190aXRsZSBoMSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSAubWVldC10aGUtdGVhbV9fdGl0bGUgaDEsIC5tZWV0LXRoZS10ZWFtX190aXRsZSAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIC5saXN0aW5nX190aXRsZSAubWVldC10aGUtdGVhbV9fdGl0bGUgaDEsIC5tZWV0LXRoZS10ZWFtX190aXRsZSAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5tZWV0LXRoZS10ZWFtX190aXRsZSBoMSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgaDEsIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIGgxLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLCAuYnJhbmNoLS1jb250YWN0IC5tZWV0LXRoZS10ZWFtX190aXRsZSAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLmZvcm1fX3RpdGxlLCAuZm9ybS0tcGFydC1leGNoYW5nZSAubWVldC10aGUtdGVhbV9fdGl0bGUgLmZvcm1fX3RpdGxlLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX3RpdGxlLCAuZmluYW5jZS10YWJsZS0tZnVsbCAubWVldC10aGUtdGVhbV9fdGl0bGUgLmZpbmFuY2UtdGFibGVfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLmZpbmFuY2UtY2hlY2tlcl9fZGV0YWlscy10aXRsZSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fdGl0bGUsIC5maW5hbmNlLXRhYmxlLS1vcmRlciAubWVldC10aGUtdGVhbV9fdGl0bGUgLmZpbmFuY2UtdGFibGVfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICMyMjIyMjI7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVldC10aGUtdGVhbV9fdGl0bGUgaDMsIC5tZWV0LXRoZS10ZWFtX190aXRsZSAuYmxvY2stLXNpZGViYXIgLmJsb2NrX190aXRsZSwgLmJsb2NrLS1zaWRlYmFyIC5tZWV0LXRoZS10ZWFtX190aXRsZSAuYmxvY2tfX3RpdGxlLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3N1Yi10aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAubWVldC10aGUtdGVhbV9fdGl0bGUgLm9mZmVyX19zdWItdGl0bGUsIC5tZWV0LXRoZS10ZWFtX190aXRsZSAuYWRkLW9uX190aXRsZSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5jYWxlbmRhcl9faGVhZGVyIC5jYWxlbmRhcl9fbW9udGggc3BhbiwgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCAubWVldC10aGUtdGVhbV9fdGl0bGUgc3BhbiwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X190aXRsZSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5vcmRlci1wYXltZW50X190aXRsZSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5vcmRlci1zdGF0ZS1zdW1tYXJ5X192ZWhpY2xlLXRpdGxlLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19zdWItdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAubWVldC10aGUtdGVhbV9fdGl0bGUgLnBhcnRfX3N1Yi10aXRsZSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fc3ViLXRpdGxlLCAucG9zdC0tZmVhdHVyZWQgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5wb3N0X19zdWItdGl0bGUsIC5tZWV0LXRoZS10ZWFtX190aXRsZSAucXVpY2stc2VhcmNoX19sZWdlbmQsIC5tZWV0LXRoZS10ZWFtX190aXRsZSAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIGgxLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSAubWVldC10aGUtdGVhbV9fdGl0bGUgaDEsIC5tZWV0LXRoZS10ZWFtX190aXRsZSAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIGgxLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIGgxLCAubWVldC10aGUtdGVhbV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSAubWVldC10aGUtdGVhbV9fdGl0bGUgaDEsIC5tZWV0LXRoZS10ZWFtX190aXRsZSAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIGgxLCAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIC5tZWV0LXRoZS10ZWFtX190aXRsZSBoMSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSwgLmJyYW5jaC0tY29udGFjdCAubWVldC10aGUtdGVhbV9fdGl0bGUgLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5mb3JtX190aXRsZSwgLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5mb3JtX190aXRsZSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190aXRsZSwgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5maW5hbmNlLXRhYmxlX190aXRsZSwgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5maW5hbmNlLWNoZWNrZXJfX2RldGFpbHMtdGl0bGUsIC5tZWV0LXRoZS10ZWFtX190aXRsZSAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3RpdGxlLCAuZmluYW5jZS10YWJsZS0tb3JkZXIgLm1lZXQtdGhlLXRlYW1fX3RpdGxlIC5maW5hbmNlLXRhYmxlX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9IH1cblxuLm1lZXQtdGhlLXRlYW1fX2Rlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogMC4zMTI1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVldC10aGUtdGVhbV9fZGVzY3JpcHRpb24ge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgLm1lZXQtdGhlLXRlYW1fX2Rlc2NyaXB0aW9uIHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubWVldC10aGUtdGVhbV9fbGlzdCB1bCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lZXQtdGhlLXRlYW1fX2xpc3QgdWwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZWV0LXRoZS10ZWFtX19saXN0IHVsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLm1lZXQtdGhlLXRlYW1fX2xpc3QgdWw6OmJlZm9yZSwgLm1lZXQtdGhlLXRlYW1fX2xpc3QgdWw6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLm1lZXQtdGhlLXRlYW1fX2xpc3QgdWw6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubWVldC10aGUtdGVhbV9fbGlzdCB1bCA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5tZWV0LXRoZS10ZWFtX19saXN0IHVsID4gbGkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAubWVldC10aGUtdGVhbV9fbGlzdCB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWV0LXRoZS10ZWFtX19saXN0IHVsID4gbGk6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubWVldC10aGUtdGVhbV9fbGlzdCB1bCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVldC10aGUtdGVhbV9fbGlzdCB1bCA+IGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tZWV0LXRoZS10ZWFtX19saXN0IHVsID4gbGkge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm1lZXQtdGhlLXRlYW1fX2xpc3QgdWwgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgLm1lZXQtdGhlLXRlYW1fX2xpc3QgdWwgPiBsaTpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAubWVldC10aGUtdGVhbV9fbGlzdCB1bCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubWVldC10aGUtdGVhbV9fbGlzdCB1bCA+IGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lZXQtdGhlLXRlYW1fX2xpc3QgdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5tZWV0LXRoZS10ZWFtX19saXN0IHVsID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5tZWV0LXRoZS10ZWFtX19saXN0IHVsID4gbGk6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLm1lZXQtdGhlLXRlYW1fX2xpc3QgdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZWV0LXRoZS10ZWFtX19saXN0IHVsID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjUlO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lZXQtdGhlLXRlYW1fX2xpc3QgdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWVldC10aGUtdGVhbV9fbGlzdCB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAubWVldC10aGUtdGVhbV9fbGlzdCB1bCA+IGxpOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5tZWV0LXRoZS10ZWFtX19saXN0IHVsID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgLm1lZXQtdGhlLXRlYW1fX2xpc3QgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm1lZXQtdGhlLXRlYW1fX2xpc3QgdWwgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG5cbi5tZW51LXRvZ2dsZSBhIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIGNvbG9yOiAjMjIyMjIyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiA0LjgxMjVyZW07IH1cbiAgLm1lbnUtdG9nZ2xlIGEgaSxcbiAgLm1lbnUtdG9nZ2xlIGEgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm1lbnUtdG9nZ2xlIGEgaTo6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9XG5cbi5tZW51LS1tYWluIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbnUtLW1haW4ge1xuICAgICAgZ2FwOiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbnUtLW1haW4ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGdhcDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwZW0pIHtcbiAgICAubWVudS0tbWFpbiB7XG4gICAgICBjb2x1bW4tZ2FwOiAxLjI1cmVtOyB9IH1cbiAgLm1lbnUtLW1haW4ubGFyZ2UtaG9yaXpvbnRhbCA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAubWVudS0tbWFpbiBsaSBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5tZW51LS1tYWluIGxpIGEge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgLm1lbnUtLW1haW4gbGkgdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAubWVudS0tbWFpbiBsaSB1bC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1hY3RpdmUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBnYXA6IDEuMjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5tZW51LS1tYWluIGxpIHVsLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZSB7XG4gICAgICAgICAgZ2FwOiAxLjg3NXJlbTsgfSB9XG4gICAgLm1lbnUtLW1haW4gbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgICB6LWluZGV4OiA5OTk5OTsgfVxuICAgICAgLm1lbnUtLW1haW4gbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICAgICAgLm1lbnUtLW1haW4gbGkgdWwuaXMtZHJvcGRvd24tc3VibWVudSBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC5tZW51LS1tYWluIGxpIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUgbGkgYSB7XG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAubWVudS0tbWFpbiAuYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICNjMzAwMmY7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4ubWVudS0tbWFpbi1mb290ZXIge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgLm1lbnUtLW1haW4tZm9vdGVyLmhvcml6b250YWwgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5tZW51LS1tYWluLWZvb3RlciBsaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubWVudS0tbWFpbi1mb290ZXIgbGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tZW51LS1tYWluLWZvb3RlciBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICAubWVudS0tbWFpbi1mb290ZXIgbGkgYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgY29sb3I6ICMyMjIyMjI7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5tZW51LS1tYWluLWZvb3RlciAuYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICMyMjIyMjI7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAubWVudS0tbWFpbi1mb290ZXIgPiBsaSA+IHVsIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5tZW51LS1tYWluLWZvb3RlciAuc3VibWVudSB7XG4gICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMC4zMTI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjMxMjVyZW07IH1cbiAgICAubWVudS0tbWFpbi1mb290ZXIgLnN1Ym1lbnUgbGkgYSB7XG4gICAgICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLm1lbnUtLWZpeGVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjkzNzVyZW07XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLm1lbnUtLWZpeGVkIHtcbiAgICAgIGdhcDogMS4yNXJlbTsgfSB9XG4gIC5tZW51LS1maXhlZCAubWVudS1pdGVtIGEge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAubWVudS0tZml4ZWQgLm1lbnUtaXRlbSBhIGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAubWVudS0tZml4ZWQgLm1lbnUtaXRlbSBhIGk6OmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAjYzMwMDJmO1xuICAgICAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9XG4gIC5tZW51LS1maXhlZCAubWVudS1pdGVtLS1waG9uZSBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVudS0tZml4ZWQgLm1lbnUtaXRlbS0tcGhvbmUgaSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLm1lbnUtLWZpeGVkIC5tZW51LWl0ZW0tLXBob25lIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm1lbnUtLWZpeGVkIC5tZW51LWl0ZW0tLXBob25lIHNwYW4ge1xuICAgICAgb3V0bGluZTogMDsgfVxuICAgIC5tZW51LS1maXhlZCAubWVudS1pdGVtLS1waG9uZSBzcGFuOmhvdmVyLCAubWVudS0tZml4ZWQgLm1lbnUtaXRlbS0tcGhvbmUgc3Bhbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYwMDI4O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm1lbnUtLWZpeGVkIC5tZW51LWl0ZW0tLXBob25lIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLm1lbnUtLWZpeGVkIC5tZW51LWl0ZW0tLXBob25lIHNwYW4ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbnUtLWZpeGVkIC5tZW51LWl0ZW0tLW1lbnUtdG9nZ2xlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAubWVudS0tZml4ZWQgLm1lbnUtaXRlbS0tc29jaWFsIGEgaTo6YmVmb3JlIHtcbiAgICBjb2xvcjogIzIyMjIyMjsgfVxuXG4ubWVudS0tZm9vdGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAubWVudS0tZm9vdGVyIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7IH1cbiAgICAubWVudS0tZm9vdGVyIGxpIGEge1xuICAgICAgcGFkZGluZzogMCAwLjI1cmVtO1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAubWVudS0tZm9vdGVyIGxpIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLm1lbnUtLWZvb3RlciBsaSBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAuNXJlbSAwIDA7IH0gfVxuICAgIC5tZW51LS1mb290ZXIgbGkuYWN0aXZlID4gYSB7XG4gICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgLm1lbnUtLWZvb3RlciA+IGxpID4gdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLm1lbnUtLXNoYXJlIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDsgfVxuICAubWVudS0tc2hhcmUgPiBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5tZW51LS1zaGFyZSA+IGxpIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgLm1lbnUtLXNoYXJlID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAubWVudS0tc2hhcmUgaW5wdXQsXG4gIC5tZW51LS1zaGFyZSBzZWxlY3QsXG4gIC5tZW51LS1zaGFyZSBhLFxuICAubWVudS0tc2hhcmUgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tZW51LS1zaGFyZSA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZW51LS1zaGFyZSAubWVudS1pdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAubWVudS0tc2hhcmUgLm1lbnUtaXRlbSBhIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5tZW51LS1zaGFyZSAubWVudS1pdGVtIGEgLmljb24ge1xuICAgICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7IH1cbiAgICAgICAgLm1lbnUtLXNoYXJlIC5tZW51LWl0ZW0gYSAuaWNvbi0tZmFjZWJvb2sge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwYjU5OTg7IH1cbiAgICAgICAgLm1lbnUtLXNoYXJlIC5tZW51LWl0ZW0gYSAuaWNvbi0tZ29vZ2xlLXBsdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNEQTQ4MzU7IH1cbiAgICAgICAgLm1lbnUtLXNoYXJlIC5tZW51LWl0ZW0gYSAuaWNvbi0tbGlua2VkaW4ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDc3QjU7IH1cbiAgICAgICAgLm1lbnUtLXNoYXJlIC5tZW51LWl0ZW0gYSAuaWNvbi0tdHdpdHRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQwOTlmZjsgfVxuICAgICAgICAubWVudS0tc2hhcmUgLm1lbnUtaXRlbSBhIC5pY29uLS13aGF0c2FwcCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAxRTY3NTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubWVudS0tc2hhcmUgLm1lbnUtaXRlbS0tc21zLCAubWVudS0tc2hhcmUgLm1lbnUtaXRlbS0td2hhdHNhcHAge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm1lbnUtLXNoYXJlLWJsb2cgLm1lbnUtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDAuMDYyNXJlbSAwLjA2MjVyZW0gMCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbnUtLXNoYXJlLWJsb2cgLm1lbnUtaXRlbSB7XG4gICAgICBtYXJnaW46IDAuMzEyNXJlbSAwLjMxMjVyZW0gMCAwOyB9IH1cbiAgLm1lbnUtLXNoYXJlLWJsb2cgLm1lbnUtaXRlbSBhIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLm1lbnUtLXNoYXJlLWJsb2cgLm1lbnUtaXRlbSBhIC5pY29uIHtcbiAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjsgfVxuICAgICAgLm1lbnUtLXNoYXJlLWJsb2cgLm1lbnUtaXRlbSBhIC5pY29uLS1mYWNlYm9vayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwYjU5OTg7IH1cbiAgICAgIC5tZW51LS1zaGFyZS1ibG9nIC5tZW51LWl0ZW0gYSAuaWNvbi0tZ29vZ2xlLXBsdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREE0ODM1OyB9XG4gICAgICAubWVudS0tc2hhcmUtYmxvZyAubWVudS1pdGVtIGEgLmljb24tLWxpbmtlZGluIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNzdCNTsgfVxuICAgICAgLm1lbnUtLXNoYXJlLWJsb2cgLm1lbnUtaXRlbSBhIC5pY29uLS10d2l0dGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQwOTlmZjsgfVxuICAgICAgLm1lbnUtLXNoYXJlLWJsb2cgLm1lbnUtaXRlbSBhIC5pY29uLS13aGF0c2FwcCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMUU2NzU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVudS0tc2hhcmUtYmxvZyAubWVudS1pdGVtLS1zbXMsIC5tZW51LS1zaGFyZS1ibG9nIC5tZW51LWl0ZW0tLXdoYXRzYXBwIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubWVudS0tc29jaWFsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7IH1cbiAgLm1lbnUtLXNvY2lhbCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0OyB9XG4gICAgLm1lbnUtLXNvY2lhbCBsaSBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGNvbG9yOiAjMjIyMjIyOyB9XG4gICAgLm1lbnUtLXNvY2lhbCBsaS5hY3RpdmUgPiBhIHtcbiAgICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgIC5tZW51LS1zb2NpYWwgbGk6bGFzdC1jaGlsZCBhIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAubWVudS0tc29jaWFsID4gbGkgPiB1bCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWVudS0tdmVoaWNsZS1mZWF0dXJlZCAubWVudS1pdGVtIGEsIC5tZW51LS12ZWhpY2xlLWxhdGVzdCAubWVudS1pdGVtIGEge1xuICBwYWRkaW5nOiAwOyB9XG4gIC5tZW51LS12ZWhpY2xlLWZlYXR1cmVkIC5tZW51LWl0ZW0gYSBpLCAubWVudS0tdmVoaWNsZS1sYXRlc3QgLm1lbnUtaXRlbSBhIGkge1xuICAgIGNvbG9yOiAjYzMwMDJmO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAubWVudS0tdmVoaWNsZS1mZWF0dXJlZCAubWVudS1pdGVtIGEgc3BhbiwgLm1lbnUtLXZlaGljbGUtbGF0ZXN0IC5tZW51LWl0ZW0gYSBzcGFuIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5tZW51LS12ZWhpY2xlLWZlYXR1cmVkIC5tZW51LWl0ZW0gYSBpOjpiZWZvcmUsIC5tZW51LS12ZWhpY2xlLWxhdGVzdCAubWVudS1pdGVtIGEgaTo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlODdlJzsgfVxuICAubWVudS0tdmVoaWNsZS1mZWF0dXJlZCAubWVudS1pdGVtIGEuanMtc2F2ZS12ZWhpY2xlLS1zYXZlZCBpOjpiZWZvcmUsIC5tZW51LS12ZWhpY2xlLWxhdGVzdCAubWVudS1pdGVtIGEuanMtc2F2ZS12ZWhpY2xlLS1zYXZlZCBpOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU4N2QnOyB9XG5cbi5tZW51LS12ZWhpY2xlLXRlYXNlciAubWVudS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lbnUtLXZlaGljbGUtdGVhc2VyIC5tZW51LWl0ZW0gYSB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAubWVudS0tdmVoaWNsZS10ZWFzZXIgLm1lbnUtaXRlbSBhIHtcbiAgICAgICAgcGFkZGluZzogMC4xMjVyZW0gMC4zMTI1cmVtOyB9IH1cbiAgICAubWVudS0tdmVoaWNsZS10ZWFzZXIgLm1lbnUtaXRlbSBhIGkge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICAgLm1lbnUtLXZlaGljbGUtdGVhc2VyIC5tZW51LWl0ZW0gYSBpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5tZW51LS12ZWhpY2xlLXRlYXNlciAubWVudS1pdGVtLS1maW5hbmNlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lbnUtLXZlaGljbGUtdGVhc2VyIC5tZW51LWl0ZW0tLWZpbmFuY2UgYSB7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMXJlbSAwLjU2MjVyZW0gMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAubWVudS0tdmVoaWNsZS10ZWFzZXIgLm1lbnUtaXRlbS0tc2hhcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVudS0tdmVoaWNsZS10ZWFzZXIgLm1lbnUtaXRlbS0tc2hhcmUgYSB7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMXJlbSAwLjU2MjVyZW0gMDsgfSB9XG5cbi5tZW51LS12ZWhpY2xlLXRlYXNlciAubWVudS1pdGVtLS1zYXZlIGEge1xuICB0ZXh0LXNoYWRvdzogMCAxcHggcmdiYSgzNCwgMzQsIDM0LCAwLjMpOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbnUtLXZlaGljbGUtdGVhc2VyIC5tZW51LWl0ZW0tLXNhdmUgYSB7XG4gICAgICBwYWRkaW5nOiAwLjYyNXJlbSAxcmVtIDAuNTYyNXJlbSAwO1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAubWVudS0tdmVoaWNsZS10ZWFzZXIgLm1lbnUtaXRlbS0tc2F2ZSBhIHNwYW4ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5tZW51LS12ZWhpY2xlLXRlYXNlciAubWVudS1pdGVtLS1zYXZlIGEgaTo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlODdlJzsgfVxuICAubWVudS0tdmVoaWNsZS10ZWFzZXIgLm1lbnUtaXRlbS0tc2F2ZSBhLmpzLXNhdmUtdmVoaWNsZS0tc2F2ZWQgaTo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlODdkJzsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLm1lbnUtLXZlaGljbGUtdGVhc2VyIC5tZW51LWl0ZW0tLXZpZXctZGV0YWlscyB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5tZW51LS12ZWhpY2xlLWZ1bGwgLm1lbnUtaXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgfVxuICAubWVudS0tdmVoaWNsZS1mdWxsIC5tZW51LWl0ZW0gYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMC44NzVyZW07XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gICAgcGFkZGluZy10b3A6IDEuMTI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjEyNXJlbTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAubWVudS0tdmVoaWNsZS1mdWxsIC5tZW51LWl0ZW0gYSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgLm1lbnUtLXZlaGljbGUtZnVsbCAubWVudS1pdGVtIGE6aG92ZXIsIC5tZW51LS12ZWhpY2xlLWZ1bGwgLm1lbnUtaXRlbSBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4ubWVudS0tdmVoaWNsZS1mdWxsLXNlY29uZGFyeSB7XG4gIG9yZGVyOiAxOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubWVudS0tdmVoaWNsZS1mdWxsLXNlY29uZGFyeSB7XG4gICAgICBvcmRlcjogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5tZW51LS12ZWhpY2xlLWZ1bGwtc2Vjb25kYXJ5IC5tZW51LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9XG4gICAgLm1lbnUtLXZlaGljbGUtZnVsbC1zZWNvbmRhcnkgLm1lbnUtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5tZW51LS12ZWhpY2xlLWZ1bGwtc2Vjb25kYXJ5IC5tZW51LWl0ZW0gYSB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAubWVudS0tdmVoaWNsZS1mdWxsLXNlY29uZGFyeSAubWVudS1pdGVtIGEgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4xODc1cmVtO1xuICAgICAgICBjb2xvcjogI2MzMDAyZjtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gICAgICAubWVudS0tdmVoaWNsZS1mdWxsLXNlY29uZGFyeSAubWVudS1pdGVtIGEgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAubWVudS0tdmVoaWNsZS1mdWxsLXNlY29uZGFyeSAubWVudS1pdGVtLS1zYXZlIGEgaTo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlODdlJzsgfVxuICAubWVudS0tdmVoaWNsZS1mdWxsLXNlY29uZGFyeSAubWVudS1pdGVtLS1zYXZlIGEuanMtc2F2ZS12ZWhpY2xlLS1zYXZlZCBpOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU4N2QnOyB9XG5cbi5tZW51LS1zaG93cm9vbS1mdWxsIC5tZW51LWl0ZW0sIC5tZW51LS1vZmZlci1mdWxsIC5tZW51LWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lbnUtLXNob3dyb29tLWZ1bGwgLm1lbnUtaXRlbSBhLCAubWVudS0tb2ZmZXItZnVsbCAubWVudS1pdGVtIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctdG9wOiAxLjEyNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS4xMjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5tZW51LS1zaG93cm9vbS1mdWxsIC5tZW51LWl0ZW0gYSwgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5tZW51LS1vZmZlci1mdWxsIC5tZW51LWl0ZW0gYSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgLm1lbnUtLXNob3dyb29tLWZ1bGwgLm1lbnUtaXRlbSBhOmhvdmVyLCAubWVudS0tc2hvd3Jvb20tZnVsbCAubWVudS1pdGVtIGE6Zm9jdXMsIC5tZW51LS1vZmZlci1mdWxsIC5tZW51LWl0ZW0gYTpob3ZlciwgLm1lbnUtLW9mZmVyLWZ1bGwgLm1lbnUtaXRlbSBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgei1pbmRleDogMjsgfVxuXG4uZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhLFxuLmRyb3Bkb3duLm1lbnUuaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuMTI1cmVtOyB9XG5cbi5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyLFxuLmRyb3Bkb3duLm1lbnUuaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHdpZHRoPScxMicgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgMTIgOCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNMTAuNTkuNTlMNiA1LjE3IDEuNDEuNTkgMCAybDYgNiA2LTYnIGZpbGw9JyUyMzk5OTk5OScgZmlsbC1ydWxlPSdldmVub2RkJy8+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDAuNjg3NXJlbSAwLjQzNzVyZW07XG4gIHdpZHRoOiAwLjY4NzVyZW07XG4gIGhlaWdodDogMC40Mzc1cmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIHJpZ2h0OiAwOyB9XG5cbi5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgd2lkdGg9JzEyJyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCAxMiA4JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMC41OS41OUw2IDUuMTcgMS40MS41OSAwIDJsNiA2IDYtNicgZmlsbD0nJTIzOTk5OTk5JyBmaWxsLXJ1bGU9J2V2ZW5vZGQnLz48L3N2Zz5cIik7XG4gIGJhY2tncm91bmQtc2l6ZTogMC42ODc1cmVtIDAuNDM3NXJlbTtcbiAgd2lkdGg6IDAuNjg3NXJlbTtcbiAgaGVpZ2h0OiAwLjQzNzVyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTAuMTg3NXJlbTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTsgfVxuXG4uanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHdpZHRoPScxMicgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgMTIgOCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNMTAuNTkuNTlMNiA1LjE3IDEuNDEuNTkgMCAybDYgNiA2LTYnIGZpbGw9JyUyMzk5OTk5OScgZmlsbC1ydWxlPSdldmVub2RkJy8+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDAuNjg3NXJlbSAwLjQzNzVyZW07XG4gIHdpZHRoOiAwLjY4NzVyZW07XG4gIGhlaWdodDogMC40Mzc1cmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfVxuXG4uanMtZHJpbGxkb3duLWJhY2sgPiBhIHNwYW4ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5wYWdpbmF0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wYWdpbmF0aW9uIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwOyB9XG4gICAgLnBhZ2luYXRpb24gbGkgYSB7XG4gICAgICBwYWRkaW5nOiAwLjMxMjVyZW0gMC43NXJlbSAwLjVyZW07XG4gICAgICBjb2xvcjogIzIyMjIyMjtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgLnBhZ2luYXRpb24gbGkgYSBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgLnBhZ2luYXRpb24gbGkgYTpmb2N1cywgLnBhZ2luYXRpb24gbGkgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmOyB9XG4gICAgLnBhZ2luYXRpb24gbGkuYWN0aXZlLCAucGFnaW5hdGlvbiBsaS5jdXJyZW50IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gICAgICAucGFnaW5hdGlvbiBsaS5hY3RpdmUgYSwgLnBhZ2luYXRpb24gbGkuY3VycmVudCBhIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7IH1cbiAgICAucGFnaW5hdGlvbiBsaS5maXJzdCBhIHNwYW46OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbiBsaS5wcmV2aW91cyBhIHNwYW46OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbiBsaS5uZXh0IGEgc3Bhbjo6YWZ0ZXIsXG4gICAgLnBhZ2luYXRpb24gbGkubGFzdCBhIHNwYW46OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnBhZ2luYXRpb24gbGkuZmlyc3QgYSBzcGFuOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZTVkYyc7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuMTI1cmVtOyB9XG4gICAgLnBhZ2luYXRpb24gbGkucHJldmlvdXMgYSBzcGFuOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZTVjYic7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuMTI1cmVtOyB9XG4gICAgLnBhZ2luYXRpb24gbGkubmV4dCBhIHNwYW46OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU1Y2MnO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuMTI1cmVtOyB9XG4gICAgLnBhZ2luYXRpb24gbGkubGFzdCBhIHNwYW46OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU1ZGQnO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuMTI1cmVtOyB9XG4gICAgLnBhZ2luYXRpb24gbGkgYTpob3ZlciBzcGFuOjpiZWZvcmUsXG4gICAgLnBhZ2luYXRpb24gbGkgYTpob3ZlciBzcGFuOjphZnRlciB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYWdpbmF0aW9uLS1tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5wYWdpbmF0aW9uLS1tb2JpbGUgbGkuZmlyc3QgYSBzcGFuLCAucGFnaW5hdGlvbi0tbW9iaWxlIGxpLnByZXZpb3VzIGEgc3BhbiwgLnBhZ2luYXRpb24tLW1vYmlsZSBsaS5uZXh0IGEgc3BhbiwgLnBhZ2luYXRpb24tLW1vYmlsZSBsaS5sYXN0IGEgc3BhbiB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwcHg7IH1cbiAgICAucGFnaW5hdGlvbi0tbW9iaWxlIGxpLmZpcnN0IGEgc3Bhbjo6YmVmb3JlLCAucGFnaW5hdGlvbi0tbW9iaWxlIGxpLmZpcnN0IGEgc3Bhbjo6YWZ0ZXIsIC5wYWdpbmF0aW9uLS1tb2JpbGUgbGkucHJldmlvdXMgYSBzcGFuOjpiZWZvcmUsIC5wYWdpbmF0aW9uLS1tb2JpbGUgbGkucHJldmlvdXMgYSBzcGFuOjphZnRlciwgLnBhZ2luYXRpb24tLW1vYmlsZSBsaS5uZXh0IGEgc3Bhbjo6YmVmb3JlLCAucGFnaW5hdGlvbi0tbW9iaWxlIGxpLm5leHQgYSBzcGFuOjphZnRlciwgLnBhZ2luYXRpb24tLW1vYmlsZSBsaS5sYXN0IGEgc3Bhbjo6YmVmb3JlLCAucGFnaW5hdGlvbi0tbW9iaWxlIGxpLmxhc3QgYSBzcGFuOjphZnRlciB7XG4gICAgICBjb2xvcjogIzIyMjIyMjtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5wYWdpbmF0aW9uLS1tb2JpbGUgbGkuZmlyc3QgYTpmb2N1cyBzcGFuOjpiZWZvcmUsIC5wYWdpbmF0aW9uLS1tb2JpbGUgbGkuZmlyc3QgYTpmb2N1cyBzcGFuOjphZnRlcixcbiAgLnBhZ2luYXRpb24tLW1vYmlsZSBsaS5maXJzdCBhOmhvdmVyIHNwYW46OmJlZm9yZSxcbiAgLnBhZ2luYXRpb24tLW1vYmlsZSBsaS5maXJzdCBhOmhvdmVyIHNwYW46OmFmdGVyLCAucGFnaW5hdGlvbi0tbW9iaWxlIGxpLnByZXZpb3VzIGE6Zm9jdXMgc3Bhbjo6YmVmb3JlLCAucGFnaW5hdGlvbi0tbW9iaWxlIGxpLnByZXZpb3VzIGE6Zm9jdXMgc3Bhbjo6YWZ0ZXIsXG4gIC5wYWdpbmF0aW9uLS1tb2JpbGUgbGkucHJldmlvdXMgYTpob3ZlciBzcGFuOjpiZWZvcmUsXG4gIC5wYWdpbmF0aW9uLS1tb2JpbGUgbGkucHJldmlvdXMgYTpob3ZlciBzcGFuOjphZnRlciwgLnBhZ2luYXRpb24tLW1vYmlsZSBsaS5uZXh0IGE6Zm9jdXMgc3Bhbjo6YmVmb3JlLCAucGFnaW5hdGlvbi0tbW9iaWxlIGxpLm5leHQgYTpmb2N1cyBzcGFuOjphZnRlcixcbiAgLnBhZ2luYXRpb24tLW1vYmlsZSBsaS5uZXh0IGE6aG92ZXIgc3Bhbjo6YmVmb3JlLFxuICAucGFnaW5hdGlvbi0tbW9iaWxlIGxpLm5leHQgYTpob3ZlciBzcGFuOjphZnRlciwgLnBhZ2luYXRpb24tLW1vYmlsZSBsaS5sYXN0IGE6Zm9jdXMgc3Bhbjo6YmVmb3JlLCAucGFnaW5hdGlvbi0tbW9iaWxlIGxpLmxhc3QgYTpmb2N1cyBzcGFuOjphZnRlcixcbiAgLnBhZ2luYXRpb24tLW1vYmlsZSBsaS5sYXN0IGE6aG92ZXIgc3Bhbjo6YmVmb3JlLFxuICAucGFnaW5hdGlvbi0tbW9iaWxlIGxpLmxhc3QgYTpob3ZlciBzcGFuOjphZnRlciB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLnBhZ2luYXRpb24tLWRlc2t0b3Age1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2luYXRpb24tLWRlc2t0b3Age1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5wbGF5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IGF1dG87XG4gIGJhY2tncm91bmQ6ICNjMzAwMmY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAvIDEwJTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICAvKiBjaGFuZ2UgdGhpcyB0byBjaGFuZ2Ugc2l6ZSAqL1xuICBoZWlnaHQ6IDNlbTtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWluZGVudDogMC4xZW07XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLW91dDtcbiAgd2lkdGg6IDRlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wbGF5IHtcbiAgICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgICAgLyogY2hhbmdlIHRoaXMgdG8gY2hhbmdlIHNpemUgKi8gfSB9XG4gIC5wbGF5OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmYwMDAwOyB9XG4gIC5wbGF5OjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgYm9yZGVyLXJhZGl1czogNSUgLyA1MCU7XG4gICAgYm90dG9tOiA5JTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGxlZnQ6IC01JTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IC01JTtcbiAgICB0b3A6IDklOyB9XG4gIC5wbGF5OjphZnRlciB7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFlbSAwIDFlbSAxLjczMmVtO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgd2hpdGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZvbnQtc2l6ZTogMC43NWVtO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46IC0xZW0gMCAwIC0wLjc1ZW07XG4gICAgdG9wOiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAwOyB9XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIHotaW5kZXg6IDk5OTk5OTk5OTk5OyB9XG5cbi5yZXZlYWwge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgLnJldmVhbF9faGVhZGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yZXZlYWxfX2hlYWRlciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucmV2ZWFsX19oZWFkZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAucmV2ZWFsX19oZWFkZXI6OmJlZm9yZSwgLnJldmVhbF9faGVhZGVyOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC5yZXZlYWxfX2hlYWRlcjo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLnJldmVhbF9faW1hZ2Uge1xuICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTsgfVxuICAucmV2ZWFsX190aXRsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucmV2ZWFsX190aXRsZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5yZXZlYWxfX3RpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yZXZlYWxfX3RpdGxlIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbF9fdGl0bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5yZXZlYWxfX3RpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5yZXZlYWxfX3ZlaGljbGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMi4zOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yZXZlYWxfX3ZlaGljbGUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAucmV2ZWFsX192ZWhpY2xlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yZXZlYWxfX3ZlaGljbGUge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbF9fdmVoaWNsZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnJldmVhbF9fdmVoaWNsZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAucmV2ZWFsX192ZWhpY2xlLW1ha2UtbW9kZWwge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gIC5yZXZlYWxfX3ZlaGljbGUtaW1hZ2Uge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnJldmVhbF9fdmVoaWNsZS1pbWFnZSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAucmV2ZWFsX19kZXNjcmlwdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yZXZlYWxfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnJldmVhbF9fZGVzY3JpcHRpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLS1jdXN0b20tZW50cnkge1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICAgIG1heC13aWR0aDogMTAwcmVtOyB9IH1cbiAgLnJldmVhbC0tdmVoaWNsZS1lbnF1aXJ5LCAucmV2ZWFsLS1lbWFpbC12ZWhpY2xlIHtcbiAgICBwYWRkaW5nOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucmV2ZWFsLS12ZWhpY2xlLWVucXVpcnksIC5yZXZlYWwtLWVtYWlsLXZlaGljbGUge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgICAgICAgcGFkZGluZzogMy4xMjVyZW0gMS44NzVyZW0gMS44NzVyZW07IH0gfVxuICAucmV2ZWFsLS1wYWdlLWRlc2NyaXB0aW9uIHtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yZXZlYWwtLXBhZ2UtZGVzY3JpcHRpb24ge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfSB9XG4gICAgLnJldmVhbC0tcGFnZS1kZXNjcmlwdGlvbiAucmV2ZWFsX19sb2dvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuICAgIC5yZXZlYWwtLXBhZ2UtZGVzY3JpcHRpb24gLnJldmVhbF9fZGVzY3JpcHRpb24gcDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnJldmVhbC0tdWxleiAucmV2ZWFsX19oZWFkZXIge1xuICAgIG1hcmdpbjogMCAwIDAuOTM3NXJlbSAwOyB9XG4gIC5yZXZlYWwtLXVsZXogLnJldmVhbF9fZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMDNiOTI7IH1cbiAgLnJldmVhbC0tdmVoaWNsZS1kZXNjcmlwdGlvbiwgLnJldmVhbC0tdmVoaWNsZS10ZWNobmljYWwtZGF0YSwgLnJldmVhbC0tdmVoaWNsZS1zcGVjaWZpY2F0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogMi41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yZXZlYWwtLXZlaGljbGUtZGVzY3JpcHRpb24sIC5yZXZlYWwtLXZlaGljbGUtdGVjaG5pY2FsLWRhdGEsIC5yZXZlYWwtLXZlaGljbGUtc3BlY2lmaWNhdGlvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnJldmVhbC0tdmVoaWNsZS1kZXNjcmlwdGlvbiwgLnJldmVhbC0tdmVoaWNsZS10ZWNobmljYWwtZGF0YSwgLnJldmVhbC0tdmVoaWNsZS1zcGVjaWZpY2F0aW9uIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDByZW07IH0gfVxuICAucmV2ZWFsLS1hZG1pbi1mZWUgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgLnJldmVhbC0tYWRtaW4tZmVlIG9sIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5yZXZpZXdzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJldmlld3NfX2ltYWdlIHtcbiAgICAgIHdpZHRoOiA5MCU7IH0gfVxuICAucmV2aWV3c19faW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAucmV2aWV3c19fY29udGVudCB7XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZXZpZXdzX19jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgaGVpZ2h0OiA5MCU7XG4gICAgICAgIHBhZGRpbmc6IDEuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAucmV2aWV3c19fY29udGVudCB7XG4gICAgICAgIHRvcDogMTAlO1xuICAgICAgICBoZWlnaHQ6IDgwJTtcbiAgICAgICAgd2lkdGg6IDQwJTsgfSB9XG4gICAgLnJldmlld3NfX2NvbnRlbnQtb3V0ZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLXRvcDogLTMuMTI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucmV2aWV3c19fY29udGVudC1vdXRlciB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTYuMjVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5yZXZpZXdzX19jb250ZW50LW91dGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuICAgIC5yZXZpZXdzX19jb250ZW50LWlubmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5zYXZlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogOTk7IH1cbiAgLnNhdmVkIC5idXR0b24uZGlzYWJsZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNhdmVkIGEge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7IH1cblxuLnRhYnMge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyB9XG4gIC50YWJzID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAudGFicyA+IGxpIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgLnRhYnMgPiBsaSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC50YWJzIGlucHV0LFxuICAudGFicyBzZWxlY3QsXG4gIC50YWJzIGEsXG4gIC50YWJzIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAudGFicyA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC50YWJzOjpiZWZvcmUsIC50YWJzOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAudGFicyA+IGxpIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuICAgIC50YWJzID4gbGkudGFicy10aXRsZSA+IGEge1xuICAgICAgaGVpZ2h0OiA0LjM3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0LjM3NXJlbTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjI7IH1cbiAgICAgIC50YWJzID4gbGkudGFicy10aXRsZSA+IGEgaDIsIC50YWJzID4gbGkudGFicy10aXRsZSA+IGEgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC50YWJzID4gbGkudGFicy10aXRsZSA+IGEgLm9mZmVyX190aXRsZSwgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAudGFicyA+IGxpLnRhYnMtdGl0bGUgPiBhIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAudGFicyA+IGxpLnRhYnMtdGl0bGUgPiBhIC5wYXJ0X190aXRsZSwgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYSAucGFydF9fZm9ybS10aXRsZSwgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYSAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlLCAucG9zdC0tZmVhdHVyZWQgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYSAucG9zdF9fdGl0bGUsIC50YWJzID4gbGkudGFicy10aXRsZSA+IGEgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tZ2VuZXJhbCAudGFicyA+IGxpLnRhYnMtdGl0bGUgPiBhIC52ZWhpY2xlX190aXRsZSwgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAudGFicyA+IGxpLnRhYnMtdGl0bGUgPiBhIC52ZWhpY2xlX190aXRsZSwgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYSAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC50YWJzID4gbGkudGFicy10aXRsZSA+IGEgLmxpc3RpbmdfX3RpdGxlLCAudGFicyA+IGxpLnRhYnMtdGl0bGUgPiBhIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYSAubGlzdGluZ19fdGl0bGUsIC50YWJzID4gbGkudGFicy10aXRsZSA+IGEgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYSAubGlzdGluZ19fdGl0bGUsIC50YWJzID4gbGkudGFicy10aXRsZSA+IGEgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAudGFicyA+IGxpLnRhYnMtdGl0bGUgPiBhIC5saXN0aW5nX190aXRsZSwgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYSAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYSAubGlzdGluZ19fdGl0bGUsIC50YWJzID4gbGkudGFicy10aXRsZSA+IGEgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYSAucGFnZV9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG4gICAgLnRhYnMgPiBsaS50YWJzLXRpdGxlID4gYTpmb2N1cyxcbiAgICAudGFicyA+IGxpLnRhYnMtdGl0bGUgPiBhOmhvdmVyLFxuICAgIC50YWJzID4gbGkudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjsgfVxuICAgIC50YWJzID4gbGk6bGFzdC1jaGlsZC50YWJzLXRpdGxlID4gYSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLnZlaGljbGVfX3RvcCAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIHtcbiAgcGFkZGluZzogMDsgfVxuXG4udmVoaWNsZV9fbWlkZGxlIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwge1xuICBwYWRkaW5nOiAxLjI1cmVtIDAgMDsgfVxuXG4udmVoaWNsZV9fZGF0YSAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIHtcbiAgcGFkZGluZzogMS44NzVyZW0gMCAwOyB9XG5cbi50b2dnbGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAyMy4xMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJvZHktYmFja2dyb3VuZCk7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICB6LWluZGV4OiA5OTk7IH1cbiAgLnRvZ2dsZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi50b2dnbGVyLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogOTk4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM0LCAzNCwgMzQsIDAuNDUpOyB9XG5cbi50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bDo6YmVmb3JlLCAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWw6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLnRvcC1tYWtlcy1hbmQtbW9kZWxzIHVsOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnRvcC1tYWtlcy1hbmQtbW9kZWxzIHVsID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnRvcC1tYWtlcy1hbmQtbW9kZWxzIHVsID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaTpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnRvcC1tYWtlcy1hbmQtbW9kZWxzIHVsID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjUlO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaTpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaTpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnRvcC1tYWtlcy1hbmQtbW9kZWxzIHVsID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjUlO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaTpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnRvcC1tYWtlcy1hbmQtbW9kZWxzIHVsID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjAlO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaTpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDBlbSkge1xuICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwZW0pIHtcbiAgICAgIC50b3AtbWFrZXMtYW5kLW1vZGVscyB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaTpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICAudG9wLW1ha2VzLWFuZC1tb2RlbHMgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnRvcC1tYWtlcy1hbmQtbW9kZWxzIHVsIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cblxuLmJsb2NrLS1hYm91dC11cyB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gIC5ibG9jay0tYWJvdXQtdXM6OmJlZm9yZSwgLmJsb2NrLS1hYm91dC11czo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuYmxvY2stLWFib3V0LXVzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmxvY2stLWFib3V0LXVzIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmxvY2stLWFib3V0LXVzIHtcbiAgICAgIG1hcmdpbi10b3A6IDVyZW07IH0gfVxuICAuYmxvY2stLWFib3V0LXVzIC5ibG9ja19fZmlyc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJsb2NrLS1hYm91dC11cyAuYmxvY2tfX2ZpcnN0IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmJsb2NrLS1hYm91dC11cyAuYmxvY2tfX2ZpcnN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5ibG9jay0tYWJvdXQtdXMgLmJsb2NrX19zZWNvbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ibG9jay0tYWJvdXQtdXMgLmJsb2NrX19zZWNvbmQge1xuICAgICAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmxvY2stLWFib3V0LXVzIC5ibG9ja19fc2Vjb25kIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuYmxvY2stLWFib3V0LXVzIC5ibG9ja19fc2Vjb25kOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJsb2NrLS1hYm91dC11cyAuYmxvY2tfX3NlY29uZCB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJsb2NrLS1hYm91dC11cyAuYmxvY2tfX3NlY29uZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuYmxvY2stLWFib3V0LXVzIC5ibG9ja19fc2Vjb25kOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmJsb2NrLS1hYm91dC11cyAuYmxvY2tfX3NlY29uZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ibG9jay0tYWJvdXQtdXMtaW1hZ2UgLmJsb2NrX19maXJzdCB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmxvY2stLWFib3V0LXVzLWltYWdlIC5ibG9ja19fZmlyc3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJsb2NrLS1hYm91dC11cy1pbWFnZSAuYmxvY2tfX2ZpcnN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmJsb2NrLS1hYm91dC11cy1pbWFnZSAuYmxvY2tfX2ZpcnN0IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJsb2NrLS1hYm91dC11cy1pbWFnZSAuYmxvY2tfX2ZpcnN0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJsb2NrLS1hYm91dC11cy1pbWFnZSAuYmxvY2tfX2ZpcnN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuYmxvY2stLWFib3V0LXVzIC5ibG9ja19fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJsb2NrLS1hYm91dC11cyAuYmxvY2tfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICAuYmxvY2stLWFib3V0LXVzIC5ibG9ja19fZGVzY3JpcHRpb24gdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgLmJsb2NrLS1hYm91dC11cyAuYmxvY2tfX2Rlc2NyaXB0aW9uIHVsIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbiAgICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmJsb2NrLS1hYm91dC11cyAuYmxvY2tfX2Rlc2NyaXB0aW9uIHVsIGxpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmJsb2NrLS1hYm91dC11cyAuYmxvY2tfX2Rlc2NyaXB0aW9uIHVsIGxpIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgICAgIC5ibG9jay0tYWJvdXQtdXMgLmJsb2NrX19kZXNjcmlwdGlvbiB1bCBsaTo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ+Kckyc7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICAgIGNvbG9yOiAjYzMwMDJmOyB9XG4gIC5ibG9jay0tYWJvdXQtdXMgLmJsb2NrX19wcmltYXJ5LWltYWdlcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaGFkb3c6IC0xMHB4IDEwcHggI2MzMDAyZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYmxvY2stLWFib3V0LXVzIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgICBib3gtc2hhZG93OiAtMTVweCAxNXB4ICNjMzAwMmY7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYmxvY2stLWFib3V0LXVzIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgICBib3gtc2hhZG93OiAtMzBweCAzMHB4ICNjMzAwMmY7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5ibG9jay0tYWJvdXQtdXMgLmJsb2NrX19wcmltYXJ5LWltYWdlcyB7XG4gICAgICAgIGJveC1zaGFkb3c6IC00MHB4IDQwcHggI2MzMDAyZjsgfSB9XG5cbi5ibG9jay0tYmFubmVyIHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgLmJsb2NrLS1iYW5uZXI6OmJlZm9yZSwgLmJsb2NrLS1iYW5uZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmJsb2NrLS1iYW5uZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ibG9jay0tYmFubmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmJsb2NrLS1iYW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5ibG9jay0tYmFubmVyLCAuYmxvY2stLWJhbm5lcjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ibG9jay0tYmFubmVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmxvY2stLWJhbm5lciB7XG4gICAgICBtYXJnaW4tdG9wOiA1cmVtOyB9IH1cbiAgLmJsb2NrLS1iYW5uZXIgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgLmJsb2NrLS1iYW5uZXIgdWwgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuXG4uYmxvY2stLWRlZmF1bHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAuYmxvY2stLWRlZmF1bHQgLmJsb2NrX19wcmltYXJ5LWltYWdlcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmJsb2NrLS1kZWZhdWx0IC5ibG9ja19fcHJpbWFyeS1pbWFnZXMgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgLmJsb2NrLS1kZWZhdWx0IC5ibG9ja19fcHJpbWFyeS1pbWFnZXMtb3ZlcmxheSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDApIDAlLCByZ2JhKDAsIDAsIDAsIDApIDUwJSwgcmdiYSgwLCAwLCAwLCAwLjc1KSA3NSUsIHJnYmEoMCwgMCwgMCwgMC43NSkgMTAwJSk7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIC5ibG9jay0tZGVmYXVsdCAuYmxvY2tfX2RldGFpbHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAyOyB9XG4gICAgLmJsb2NrLS1kZWZhdWx0IC5ibG9ja19fZGV0YWlscy1pbm5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5ibG9jay0tZGVmYXVsdCAuYmxvY2tfX2RldGFpbHMtaW5uZXIge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMS44NzVyZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgLmJsb2NrLS1kZWZhdWx0IC5ibG9ja19fdGl0bGUge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gIC5ibG9jay0tZGVmYXVsdCAuYmxvY2tfX2ljb24gaTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDIuNXJlbTtcbiAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG4uYmxvY2stLWRpc2NsYWltZXIge1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgY29sb3I6ICM3MTc1ODA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJsb2NrLS1kaXNjbGFpbWVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtO1xuICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07IH0gfVxuXG4uYmxvY2stLWRvY3VtZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgLmJsb2NrLS1kb2N1bWVudCAuYmxvY2tfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYmxvY2stLWRvY3VtZW50IC5ibG9ja19fcHJpbWFyeS1pbWFnZXMgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgLmJsb2NrLS1kb2N1bWVudCAuYmxvY2tfX3ByaW1hcnktaW1hZ2VzLW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzQsIDM0LCAwLjI1KTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuICAgICAgLmJsb2NrLS1kb2N1bWVudCAuYmxvY2tfX3ByaW1hcnktaW1hZ2VzLW92ZXJsYXk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM0LCAzNCwgMzQsIDApOyB9XG4gIC5ibG9jay0tZG9jdW1lbnQgLmJsb2NrX19kZXRhaWxzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMjsgfVxuICAgIC5ibG9jay0tZG9jdW1lbnQgLmJsb2NrX19kZXRhaWxzLWlubmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjU2MjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMS41NjI1cmVtO1xuICAgICAgcGFkZGluZzogMS4xMjVyZW0gMS4yNXJlbTtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgLmJsb2NrLS1kb2N1bWVudCAuYmxvY2tfX3RpdGxlLFxuICAuYmxvY2stLWRvY3VtZW50IC5ibG9ja19faWNvbiB7XG4gICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gIC5ibG9jay0tZG9jdW1lbnQgLmJsb2NrX19pY29uIGk6OmJlZm9yZSB7XG4gICAgY29sb3I6ICM2NjY2NjY7IH1cblxuLmJsb2NrLS1mb290ZXIgaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG5cbi5ibG9jay0taGVybyBpbWcge1xuICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cblxuLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX19wcmltYXJ5LWltYWdlcyB7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX19wcmltYXJ5LWltYWdlcyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTsgfSB9XG4gIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWF4LXdpZHRoOiA5Ny41cmVtO1xuICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlOjpiZWZvcmUsIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGU6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX190aXRsZTo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX190aXRsZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUsIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGU6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfVxuXG4uYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX2Rlc2NyaXB0aW9uIHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWF4LXdpZHRoOiA5Ny41cmVtO1xuICBjb2xvcjogIzcxNzU4MDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS44OyB9XG4gIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fZGVzY3JpcHRpb246OmJlZm9yZSwgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX19kZXNjcmlwdGlvbjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX2Rlc2NyaXB0aW9uOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX19kZXNjcmlwdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX19kZXNjcmlwdGlvbiwgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX19kZXNjcmlwdGlvbjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuXG4uYmxvY2stLW9mZmVycyB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gIC5ibG9jay0tb2ZmZXJzOjpiZWZvcmUsIC5ibG9jay0tb2ZmZXJzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5ibG9jay0tb2ZmZXJzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmxvY2stLW9mZmVycyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5ibG9jay0tb2ZmZXJzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuYmxvY2stLW9mZmVycywgLmJsb2NrLS1vZmZlcnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmxvY2stLW9mZmVycyB7XG4gICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJsb2NrLS1vZmZlcnMge1xuICAgICAgbWFyZ2luLXRvcDogNi4yNXJlbTsgfSB9XG4gIC5ibG9jay0tb2ZmZXJzIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uYmxvY2stLXBhcnRuZXItcmV2aWV3cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ibG9jay0tcGFydG5lci1yZXZpZXdzIHtcbiAgICAgIGdhcDogMC45Mzc1cmVtOyB9IH1cbiAgLmJsb2NrLS1wYXJ0bmVyLXJldmlld3MgLmJsb2NrX19wcmltYXJ5LWltYWdlcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiA5LjM3NXJlbTtcbiAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5ibG9jay0tcGFydG5lci1yZXZpZXdzIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgICB3aWR0aDogMTEuODc1cmVtO1xuICAgICAgICBoZWlnaHQ6IDMuMTI1cmVtOyB9IH1cbiAgLmJsb2NrLS1wYXJ0bmVyLXJldmlld3MgLmJsb2NrX19yYXRpbmcgaTo6YmVmb3JlIHtcbiAgICBjb2xvcjogI0ZEOEIxRDtcbiAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICAuYmxvY2stLXBhcnRuZXItcmV2aWV3cyAuYmxvY2tfX3JhdGluZy0tMSBpOm50aC1jaGlsZCgxKTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlODM4JzsgfVxuICAuYmxvY2stLXBhcnRuZXItcmV2aWV3cyAuYmxvY2tfX3JhdGluZy0tMiBpOm50aC1jaGlsZCgxKTo6YmVmb3JlLFxuICAuYmxvY2stLXBhcnRuZXItcmV2aWV3cyAuYmxvY2tfX3JhdGluZy0tMiBpOm50aC1jaGlsZCgyKTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlODM4JzsgfVxuICAuYmxvY2stLXBhcnRuZXItcmV2aWV3cyAuYmxvY2tfX3JhdGluZy0tMyBpOm50aC1jaGlsZCgxKTo6YmVmb3JlLFxuICAuYmxvY2stLXBhcnRuZXItcmV2aWV3cyAuYmxvY2tfX3JhdGluZy0tMyBpOm50aC1jaGlsZCgyKTo6YmVmb3JlLFxuICAuYmxvY2stLXBhcnRuZXItcmV2aWV3cyAuYmxvY2tfX3JhdGluZy0tMyBpOm50aC1jaGlsZCgzKTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlODM4JzsgfVxuICAuYmxvY2stLXBhcnRuZXItcmV2aWV3cyAuYmxvY2tfX3JhdGluZy0tNCBpOm50aC1jaGlsZCgxKTo6YmVmb3JlLFxuICAuYmxvY2stLXBhcnRuZXItcmV2aWV3cyAuYmxvY2tfX3JhdGluZy0tNCBpOm50aC1jaGlsZCgyKTo6YmVmb3JlLFxuICAuYmxvY2stLXBhcnRuZXItcmV2aWV3cyAuYmxvY2tfX3JhdGluZy0tNCBpOm50aC1jaGlsZCgzKTo6YmVmb3JlLFxuICAuYmxvY2stLXBhcnRuZXItcmV2aWV3cyAuYmxvY2tfX3JhdGluZy0tNCBpOm50aC1jaGlsZCg0KTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlODM4JzsgfVxuICAuYmxvY2stLXBhcnRuZXItcmV2aWV3cyAuYmxvY2tfX3JhdGluZy0tNSBpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU4MzgnOyB9XG4gIC5ibG9jay0tcGFydG5lci1yZXZpZXdzIC5ibG9ja19fcmF0aW5nLXZhbHVlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmJsb2NrLS1wYXJ0bmVyLXJldmlld3MgLmJsb2NrX19yYXRpbmctdmFsdWUge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5ibG9jay0tcGFydG5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ibG9jay0tcGFydG5lciB7XG4gICAgICBnYXA6IDAuOTM3NXJlbTsgfSB9XG4gIC5ibG9jay0tcGFydG5lciAuYmxvY2tfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDkuMzc1cmVtO1xuICAgIGhlaWdodDogMi41cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNDIzMjE7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJsb2NrLS1wYXJ0bmVyIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgICB3aWR0aDogMTEuODc1cmVtO1xuICAgICAgICBoZWlnaHQ6IDMuMTI1cmVtOyB9IH1cbiAgICAuYmxvY2stLXBhcnRuZXIgLmJsb2NrX19wcmltYXJ5LWltYWdlcyBpbWcge1xuICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgxKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzOyB9XG4gICAgICAuYmxvY2stLXBhcnRuZXIgLmJsb2NrX19wcmltYXJ5LWltYWdlcyBpbWc6aG92ZXIge1xuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMSkgaW52ZXJ0KDApOyB9XG4gIC5ibG9jay0tcGFydG5lciAuYmxvY2tfX3JhdGluZyBpOjpiZWZvcmUge1xuICAgIGNvbG9yOiAjRkQ4QjFEO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gIC5ibG9jay0tcGFydG5lciAuYmxvY2tfX3JhdGluZy0tMSBpOm50aC1jaGlsZCgxKTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlODM4JzsgfVxuICAuYmxvY2stLXBhcnRuZXIgLmJsb2NrX19yYXRpbmctLTIgaTpudGgtY2hpbGQoMSk6OmJlZm9yZSxcbiAgLmJsb2NrLS1wYXJ0bmVyIC5ibG9ja19fcmF0aW5nLS0yIGk6bnRoLWNoaWxkKDIpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU4MzgnOyB9XG4gIC5ibG9jay0tcGFydG5lciAuYmxvY2tfX3JhdGluZy0tMyBpOm50aC1jaGlsZCgxKTo6YmVmb3JlLFxuICAuYmxvY2stLXBhcnRuZXIgLmJsb2NrX19yYXRpbmctLTMgaTpudGgtY2hpbGQoMik6OmJlZm9yZSxcbiAgLmJsb2NrLS1wYXJ0bmVyIC5ibG9ja19fcmF0aW5nLS0zIGk6bnRoLWNoaWxkKDMpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU4MzgnOyB9XG4gIC5ibG9jay0tcGFydG5lciAuYmxvY2tfX3JhdGluZy0tNCBpOm50aC1jaGlsZCgxKTo6YmVmb3JlLFxuICAuYmxvY2stLXBhcnRuZXIgLmJsb2NrX19yYXRpbmctLTQgaTpudGgtY2hpbGQoMik6OmJlZm9yZSxcbiAgLmJsb2NrLS1wYXJ0bmVyIC5ibG9ja19fcmF0aW5nLS00IGk6bnRoLWNoaWxkKDMpOjpiZWZvcmUsXG4gIC5ibG9jay0tcGFydG5lciAuYmxvY2tfX3JhdGluZy0tNCBpOm50aC1jaGlsZCg0KTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlODM4JzsgfVxuICAuYmxvY2stLXBhcnRuZXIgLmJsb2NrX19yYXRpbmctLTUgaTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxlODM4JzsgfVxuICAuYmxvY2stLXBhcnRuZXIgLmJsb2NrX19yYXRpbmctdmFsdWUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuYmxvY2stLXBhcnRuZXIgLmJsb2NrX19yYXRpbmctdmFsdWUge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi5wb3AtdXAge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogOTk5OTtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICAucG9wLXVwX19pbm5lciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNjI1cmVtO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogOTUlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3AtdXBfX2lubmVyIHtcbiAgICAgICAgdG9wOiAwLjkzNzVyZW07XG4gICAgICAgIG1heC13aWR0aDogYXV0bzsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wb3AtdXBfX2lubmVyIHtcbiAgICAgICAgdG9wOiAxLjg3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnBvcC11cF9faW5uZXIge1xuICAgICAgICB0b3A6IDMuMTI1cmVtOyB9IH1cbiAgLnBvcC11cF9fb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM0LCAzNCwgMzQsIDAuOCk7XG4gICAgei1pbmRleDogOTk5OTsgfVxuICAucG9wLXVwX19wcmltYXJ5LWltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAgIC5wb3AtdXBfX3ByaW1hcnktaW1hZ2UgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuNDM3NXJlbTsgfVxuICAucG9wLXVwX19jbG9zZS1pY29uIHtcbiAgICByaWdodDogMS4yNXJlbTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5wb3AtdXBfX2Nsb3NlLWljb246aG92ZXIge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cblxuYm9keS5wb3AtdXAtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmJsb2NrLS1yZXN1bHRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBnYXA6IDEuMjVyZW07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmxvY2stLXJlc3VsdHMge1xuICAgICAgcGFkZGluZzogMS44NzVyZW07XG4gICAgICBnYXA6IDEuODc1cmVtOyB9IH1cbiAgLmJsb2NrLS1yZXN1bHRzIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmJsb2NrLS1yZXN1bHRzIC5ibG9ja19fZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmJsb2NrLS1yZXN1bHRzIC5ibG9ja19fZGVzY3JpcHRpb24gdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogaW5zaWRlOyB9XG5cbi5ibG9jay0tc2VhcmNoIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgI2YwZjlmZiAwJSwgI2Q2ZDZkNiAxMDAlKTsgfVxuICAuYmxvY2stLXNlYXJjaCAuYmxvY2tfX2RldGFpbHMge1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ibG9jay0tc2VhcmNoIC5ibG9ja19fZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbTsgfSB9XG4gIC5ibG9jay0tc2VhcmNoIC5ibG9ja19faWNvbiB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJsb2NrLS1zZWFyY2ggLmJsb2NrX19pY29uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4zMTI1cmVtOyB9IH1cbiAgLmJsb2NrLS1zZWFyY2ggLmJsb2NrX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLmJsb2NrLS1zZWFyY2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCAjNWE1YTVhIDAlLCBibGFjayAxMDAlKTsgfVxuXG4uYmxvY2stLXNlcnZpY2Uge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJsb2NrLS1zZXJ2aWNlIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjsgfSB9XG4gIC5ibG9jay0tc2VydmljZSAuYmxvY2tfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYmxvY2stLXNlcnZpY2UgLmJsb2NrX19wcmltYXJ5LWltYWdlcyBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuYmxvY2stLXNlcnZpY2UgLmJsb2NrX19wcmltYXJ5LWltYWdlcy1mYWRlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMCwgMCwgMCkgMCUsIHJnYmEoMCwgMCwgMCwgMCkgNTAlLCByZ2JhKDAsIDAsIDAsIDAuNzUpIDc1JSwgcmdiYSgwLCAwLCAwLCAwLjc1KSAxMDAlKTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgLmJsb2NrLS1zZXJ2aWNlIC5ibG9ja19fb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgICAuYmxvY2stLXNlcnZpY2UgLmJsb2NrX19vdmVybGF5LWlubmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmJsb2NrLS1zZXJ2aWNlIC5ibG9ja19fb3ZlcmxheS1pbm5lciB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMS44NzVyZW07IH0gfVxuICAuYmxvY2stLXNlcnZpY2UgLmJsb2NrX190aXRsZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgLmJsb2NrLS1zZXJ2aWNlIC5ibG9ja19faWNvbiBpOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMi41cmVtO1xuICAgIGhlaWdodDogMi41cmVtO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5ibG9jay0tc2VydmljZSAuYmxvY2tfX2RldGFpbHMge1xuICAgIHBhZGRpbmc6IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJsb2NrLS1zZXJ2aWNlIC5ibG9ja19fZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmc6IDEuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJsb2NrLS1zZXJ2aWNlIC5ibG9ja19fZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmc6IDMuMTI1cmVtOyB9IH1cbiAgLmJsb2NrLS1zZXJ2aWNlIC5ibG9ja19fc3ViLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYmxvY2stLXNlcnZpY2UgLmJsb2NrX19zdWItdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG4gIC5ibG9jay0tc2VydmljZSAuYmxvY2tfX2Rlc2NyaXB0aW9uIHtcbiAgICBjb2xvcjogIzcxNzU4MDtcbiAgICBsaW5lLWhlaWdodDogMS44OyB9XG5cbi5ibG9jay0tdGlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSksIDAgNnB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBwYWRkaW5nOiAxLjg3NXJlbSAzLjEyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ibG9jay0tdGlsZSB7XG4gICAgICBwYWRkaW5nOiAyLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmJsb2NrLS10aWxlIHtcbiAgICAgIHBhZGRpbmc6IDMuMTI1cmVtOyB9IH1cbiAgLmJsb2NrLS10aWxlIC5ibG9ja19faWNvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJsb2NrLS10aWxlIC5ibG9ja19faWNvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfSB9XG4gICAgLmJsb2NrLS10aWxlIC5ibG9ja19faWNvbiBpIHtcbiAgICAgIGNvbG9yOiAjYzMwMDJmO1xuICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5ibG9jay0tdGlsZSAuYmxvY2tfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgLmJsb2NrLS10aWxlIC5ibG9ja19fZGVzY3JpcHRpb24ge1xuICAgIGNvbG9yOiAjNkY2RjZGO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40OyB9XG5cbi5ibG9jay0tdXNwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMC42MjVyZW07XG4gIGhlaWdodDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ibG9jay0tdXNwIHtcbiAgICAgIGdhcDogMS4yNXJlbTsgfSB9XG4gIC5ibG9jay0tdXNwIC5ibG9ja19fdGl0bGUge1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJsb2NrLS11c3AgLmJsb2NrX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuXG4uYmxvY2stLXZlaGljbGUtdHlwZXMge1xuICBwYWRkaW5nOiAxLjI1cmVtOyB9XG4gIC5ibG9jay0tdmVoaWNsZS10eXBlcyAuYmxvY2tfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICBvcGFjaXR5OiAxOyB9XG4gICAgLmJsb2NrLS12ZWhpY2xlLXR5cGVzIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5ibG9jay0tdmVoaWNsZS10eXBlcyAuYmxvY2tfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuYmxvY2stLXZlaGljbGUtdHlwZXM6aG92ZXIgLmJsb2NrX19wcmltYXJ5LWltYWdlcyB7XG4gICAgb3BhY2l0eTogMC43NTsgfVxuXG4uYnJhbmNoLS1jb250YWN0IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYnJhbmNoLS1jb250YWN0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnJhbmNoLS1jb250YWN0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmJyYW5jaC0tY29udGFjdDo6YmVmb3JlLCAuYnJhbmNoLS1jb250YWN0OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5icmFuY2gtLWNvbnRhY3Q6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnJhbmNoLS1jb250YWN0IC5icmFuY2hfX3RlbGVwaG9uZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYnJhbmNoLS1jb250YWN0IC5icmFuY2hfX3RlbGVwaG9uZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fdGVsZXBob25lOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX190ZWxlcGhvbmUgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fdGVsZXBob25lIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMi42MjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYnJhbmNoLS1jb250YWN0IC5icmFuY2hfX3RlbGVwaG9uZSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fdGVsZXBob25lIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuYnJhbmNoLS1jb250YWN0IC5icmFuY2hfX3RlbGVwaG9uZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuYnJhbmNoLS1jb250YWN0IC5icmFuY2hfX29wZW5pbmctaG91cnMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fb3BlbmluZy1ob3VycyB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fb3BlbmluZy1ob3VycyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzIHNlbGVjdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cblxuLmJyYW5jaC0tZm9vdGVyIHtcbiAgY29sb3I6ICMyNDIzMjE7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5icmFuY2gtLWZvb3RlciB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAuYnJhbmNoLS1mb290ZXIgYSB7XG4gICAgY29sb3I6ICMyNDIzMjE7IH1cbiAgLmJyYW5jaC0tZm9vdGVyIC5icmFuY2hfX3NvY2lhbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gIC5icmFuY2gtLWZvb3RlciAuYnJhbmNoX19uYW1lIHtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIC5icmFuY2gtLWZvb3RlciAuYnJhbmNoX19hZGRyZXNzIHtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgLmJyYW5jaC0tZm9vdGVyIC5icmFuY2hfX2FkZHJlc3Mgc3Bhbjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJywnOyB9XG4gICAgLmJyYW5jaC0tZm9vdGVyIC5icmFuY2hfX2FkZHJlc3Mgc3BhbjpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5icmFuY2gtLWZ1bGwge1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTsgfVxuICAuYnJhbmNoLS1mdWxsOjpiZWZvcmUsIC5icmFuY2gtLWZ1bGw6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmJyYW5jaC0tZnVsbDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJyYW5jaC0tZnVsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5icmFuY2gtLWZ1bGw6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5icmFuY2gtLWZ1bGwsIC5icmFuY2gtLWZ1bGw6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYnJhbmNoLS1mdWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjEyNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJyYW5jaC0tZnVsbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNi4yNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2LjI1cmVtOyB9IH1cbiAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gICAgY29sb3I6ICM3MTc1ODA7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIGE6bm90KC5idXR0b24pIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBhOm5vdCguYnV0dG9uKTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBoMSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIGgyLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLFxuICAgIC5vZmZlci0tZmVhdHVyZWQgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAub2ZmZXJfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLm9yZGVyLXByb2dyZXNzX190aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsXG4gICAgLnBhcnQtLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBhcnRfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBhcnQtLWZ1bGwgLnBhcnRfX2Zvcm0tdGl0bGUsXG4gICAgLnBhcnQtLWZ1bGwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucGFydF9fZm9ybS10aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsXG4gICAgLnBvc3QtLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBvc3RfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLFxuICAgIC52ZWhpY2xlLS1nZW5lcmFsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnZlaGljbGVfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGl0bGUsXG4gICAgLnZlaGljbGUtLWxhdGVzdCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlX190aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbiAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbiAgICAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAubGlzdGluZ19fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsXG4gICAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAubGlzdGluZ19fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlLFxuICAgIC5wYWdlLS10ZWFzZXIgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucGFnZV9fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBoMyxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3RpdGxlLFxuICAgIC5ibG9jay0tc2lkZWJhciAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5ibG9ja19fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fc3ViLXRpdGxlLFxuICAgIC5vZmZlci0tZmVhdHVyZWQgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAub2ZmZXJfX3N1Yi10aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5hZGQtb25fX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCBzcGFuLFxuICAgIC5jYWxlbmRhcl9faGVhZGVyIC5jYWxlbmRhcl9fbW9udGggLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBzcGFuLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmNvbGxlY3Rpb24tZGVsaXZlcnlfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLm9yZGVyLXBheW1lbnRfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3N1Yi10aXRsZSxcbiAgICAucGFydC0tZmVhdHVyZWQgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucGFydF9fc3ViLXRpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBvc3QtLWZlYXR1cmVkIC5wb3N0X19zdWItdGl0bGUsXG4gICAgLnBvc3QtLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBvc3RfX3N1Yi10aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5xdWljay1zZWFyY2hfX2xlZ2VuZCxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gaDEsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgIC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fdGl0bGUgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBoMSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgIC5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gaDEsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gaDEsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBoMSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgaDEsXG4gICAgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX190aXRsZSAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIGgxLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLFxuICAgIC5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLmZvcm1fX3RpdGxlLFxuICAgIC5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZvcm1fX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtY2hlY2tlcl9fZGV0YWlscy10aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fdGl0bGUsXG4gICAgLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gaDQsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudmlkZW8tLXBhZ2UgLnZpZGVvX190aXRsZSxcbiAgICAudmlkZW8tLXBhZ2UgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudmlkZW9fX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGkgLnNwZWNpZmljYXRpb24tY2F0ZWdvcnlfX3RpdGxlLFxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCA+IGxpIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnNwZWNpZmljYXRpb24tY2F0ZWdvcnlfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4gICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtZm9ybSAuZmluYW5jZS1mb3JtX190aXRsZSxcbiAgICAuZmluYW5jZS1mb3JtIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtZm9ybV9fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZXMgLmZpbmFuY2Utd2FybmluZyxcbiAgICAuZmluYW5jZS10YWJsZXMgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS13YXJuaW5nLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2NoZWNrZXItdGl0bGUsXG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fY2hlY2tlci10aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLWV4YW1wbGVfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gaDUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuYmxvY2stLXNpZGViYXIgLmJsb2NrX19zdWItdGl0bGUsXG4gICAgLmJsb2NrLS1zaWRlYmFyIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmJsb2NrX19zdWItdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBoNiB7XG4gICAgICBwYWRkaW5nLXRvcDogMC42MjVyZW07XG4gICAgICBjb2xvcjogIzIyMjIyMjsgfVxuICAgIFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gaDIsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsXG4gICAgLm9mZmVyLS1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5vZmZlcl9fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSxcbiAgICAucGFydC0tZmVhdHVyZWQgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucGFydF9fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSxcbiAgICAucGFydC0tZnVsbCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5wYXJ0X19mb3JtLXRpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSxcbiAgICAucG9zdC0tZmVhdHVyZWQgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucG9zdF9fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsXG4gICAgLnZlaGljbGUtLWdlbmVyYWwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudmVoaWNsZV9fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSxcbiAgICAudmVoaWNsZS0tbGF0ZXN0IC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnZlaGljbGVfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsXG4gICAgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSxcbiAgICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsXG4gICAgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsXG4gICAgLnBhZ2UtLXRlYXNlciAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5wYWdlX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIGgyLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSxcbiAgICAgICAgLm9mZmVyLS1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5vZmZlcl9fdGl0bGUsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLm9yZGVyLXByb2dyZXNzX190aXRsZSxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLFxuICAgICAgICAucGFydC0tZmVhdHVyZWQgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucGFydF9fdGl0bGUsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBhcnQtLWZ1bGwgLnBhcnRfX2Zvcm0tdGl0bGUsXG4gICAgICAgIC5wYXJ0LS1mdWxsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBhcnRfX2Zvcm0tdGl0bGUsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSxcbiAgICAgICAgLnBvc3QtLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBvc3RfX3RpdGxlLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSxcbiAgICAgICAgLnZlaGljbGUtLWdlbmVyYWwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudmVoaWNsZV9fdGl0bGUsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGl0bGUsXG4gICAgICAgIC52ZWhpY2xlLS1sYXRlc3QgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudmVoaWNsZV9fdGl0bGUsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsXG4gICAgICAgIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSxcbiAgICAgICAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAubGlzdGluZ19fdGl0bGUsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbiAgICAgICAgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlLFxuICAgICAgICAucGFnZS0tdGVhc2VyIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBhZ2VfX3RpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9IH1cbiAgICBcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIGgzLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmJsb2NrLS1zaWRlYmFyIC5ibG9ja19fdGl0bGUsXG4gICAgLmJsb2NrLS1zaWRlYmFyIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmJsb2NrX190aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19zdWItdGl0bGUsXG4gICAgLm9mZmVyLS1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5vZmZlcl9fc3ViLXRpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmFkZC1vbl9fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX21vbnRoIHNwYW4sXG4gICAgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIHNwYW4sXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuY29sbGVjdGlvbi1kZWxpdmVyeV9fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAub3JkZXItcGF5bWVudF9fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAub3JkZXItc3RhdGUtc3VtbWFyeV9fdmVoaWNsZS10aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fc3ViLXRpdGxlLFxuICAgIC5wYXJ0LS1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5wYXJ0X19zdWItdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3N1Yi10aXRsZSxcbiAgICAucG9zdC0tZmVhdHVyZWQgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucG9zdF9fc3ViLXRpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnF1aWNrLXNlYXJjaF9fbGVnZW5kLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBoMSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIGgxLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBoMSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBoMSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIGgxLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX190aXRsZSBoMSxcbiAgICAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gaDEsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuYnJhbmNoLS1jb250YWN0IC5icmFuY2hfX29wZW5pbmctaG91cnMtdGl0bGUsXG4gICAgLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5icmFuY2hfX29wZW5pbmctaG91cnMtdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZm9ybS0tcGFydC1leGNoYW5nZSAuZm9ybV9fdGl0bGUsXG4gICAgLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZm9ybV9fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fdGl0bGUsXG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS1jaGVja2VyX19kZXRhaWxzLXRpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbiAgICAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gaDMsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmJsb2NrLS1zaWRlYmFyIC5ibG9ja19fdGl0bGUsXG4gICAgICAgIC5ibG9jay0tc2lkZWJhciAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5ibG9ja19fdGl0bGUsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3N1Yi10aXRsZSxcbiAgICAgICAgLm9mZmVyLS1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5vZmZlcl9fc3ViLXRpdGxlLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5hZGQtb25fX3RpdGxlLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5jYWxlbmRhcl9faGVhZGVyIC5jYWxlbmRhcl9fbW9udGggc3BhbixcbiAgICAgICAgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIHNwYW4sXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmNvbGxlY3Rpb24tZGVsaXZlcnlfX3RpdGxlLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5vcmRlci1wYXltZW50X190aXRsZSxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAub3JkZXItc3RhdGUtc3VtbWFyeV9fdmVoaWNsZS10aXRsZSxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3N1Yi10aXRsZSxcbiAgICAgICAgLnBhcnQtLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBhcnRfX3N1Yi10aXRsZSxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3N1Yi10aXRsZSxcbiAgICAgICAgLnBvc3QtLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnBvc3RfX3N1Yi10aXRsZSxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAucXVpY2stc2VhcmNoX19sZWdlbmQsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgICAgIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgICAgICAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIGgxLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgICAgICAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIGgxLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgICAgICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIGgxLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgaDEsXG4gICAgICAgIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBoMSxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuYnJhbmNoLS1jb250YWN0IC5icmFuY2hfX29wZW5pbmctaG91cnMtdGl0bGUsXG4gICAgICAgIC5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5mb3JtX190aXRsZSxcbiAgICAgICAgLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZm9ybV9fdGl0bGUsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAgICAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS1jaGVja2VyX19kZXRhaWxzLXRpdGxlLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fdGl0bGUsXG4gICAgICAgIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlX190aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07IH0gfVxuICAgIFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gaDQsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudmlkZW8tLXBhZ2UgLnZpZGVvX190aXRsZSxcbiAgICAudmlkZW8tLXBhZ2UgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudmlkZW9fX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGkgLnNwZWNpZmljYXRpb24tY2F0ZWdvcnlfX3RpdGxlLFxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCA+IGxpIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnNwZWNpZmljYXRpb24tY2F0ZWdvcnlfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4gICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtZm9ybSAuZmluYW5jZS1mb3JtX190aXRsZSxcbiAgICAuZmluYW5jZS1mb3JtIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtZm9ybV9fdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZXMgLmZpbmFuY2Utd2FybmluZyxcbiAgICAuZmluYW5jZS10YWJsZXMgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS13YXJuaW5nLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2NoZWNrZXItdGl0bGUsXG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fY2hlY2tlci10aXRsZSxcbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLWV4YW1wbGVfX3RpdGxlLFxuICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gaDUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuYmxvY2stLXNpZGViYXIgLmJsb2NrX19zdWItdGl0bGUsXG4gICAgLmJsb2NrLS1zaWRlYmFyIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmJsb2NrX19zdWItdGl0bGUsXG4gICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBoNiB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIGg0LFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC52aWRlby0tcGFnZSAudmlkZW9fX3RpdGxlLFxuICAgICAgICAudmlkZW8tLXBhZ2UgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudmlkZW9fX3RpdGxlLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCA+IGxpIC5zcGVjaWZpY2F0aW9uLWNhdGVnb3J5X190aXRsZSxcbiAgICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGkgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuc3BlY2lmaWNhdGlvbi1jYXRlZ29yeV9fdGl0bGUsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4gICAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSxcbiAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLWZvcm0gLmZpbmFuY2UtZm9ybV9fdGl0bGUsXG4gICAgICAgIC5maW5hbmNlLWZvcm0gLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS1mb3JtX190aXRsZSxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZXMgLmZpbmFuY2Utd2FybmluZyxcbiAgICAgICAgLmZpbmFuY2UtdGFibGVzIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZGVzY3JpcHRpb24gLmZpbmFuY2Utd2FybmluZyxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fY2hlY2tlci10aXRsZSxcbiAgICAgICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fY2hlY2tlci10aXRsZSxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuZmluYW5jZS1leGFtcGxlX190aXRsZSxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiBoNSxcbiAgICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19kZXNjcmlwdGlvbiAuYmxvY2stLXNpZGViYXIgLmJsb2NrX19zdWItdGl0bGUsXG4gICAgICAgIC5ibG9jay0tc2lkZWJhciAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIC5ibG9ja19fc3ViLXRpdGxlLFxuICAgICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIGg2IHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9IH1cbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Rlc2NyaXB0aW9uIHA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybSB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0ge1xuICAgICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cbiAgICAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgaDIsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsIC5vZmZlci0tZmVhdHVyZWQgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC5vZmZlcl9fdGl0bGUsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSwgLnBhcnQtLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAucGFydF9fdGl0bGUsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC5wYXJ0X19mb3JtLXRpdGxlLCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAucG9zdF9fdGl0bGUsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1nZW5lcmFsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC5saXN0aW5nX190aXRsZSwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC5saXN0aW5nX190aXRsZSwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC5wYWdlX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSBoMiwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLm9mZmVyX190aXRsZSwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC5wYXJ0X190aXRsZSwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFydC0tZnVsbCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLnBhcnRfX2Zvcm0tdGl0bGUsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlLCAucG9zdC0tZmVhdHVyZWQgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC5wb3N0X190aXRsZSwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC52ZWhpY2xlX190aXRsZSwgLmJyYW5jaC0tZnVsbCAuYnJhbmNoX19mb3JtLXRpdGxlIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tbGF0ZXN0IC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5icmFuY2gtLWZ1bGwgLmJyYW5jaF9fZm9ybS10aXRsZSAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSwgLnBhZ2UtLXRlYXNlciAuYnJhbmNoLS1mdWxsIC5icmFuY2hfX2Zvcm0tdGl0bGUgLnBhZ2VfX3RpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgICAgICBmb250LXNpemU6IDEuODc1cmVtOyB9IH1cblxuLmJyYW5jaC0tdGVhc2VyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnJhbmNoLS10ZWFzZXIge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG4gIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX19tYXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX19tYXAge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICAgIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX19tYXAgI21hcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuYnJhbmNoLS10ZWFzZXIgLmJyYW5jaF9fbWFwICNtYXAge1xuICAgICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgICAgICBsZWZ0OiBpbmhlcml0O1xuICAgICAgICAgIGJvdHRvbTogaW5oZXJpdDtcbiAgICAgICAgICByaWdodDogaW5oZXJpdDtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICAuYnJhbmNoLS10ZWFzZXIgLmJyYW5jaF9fZGV0YWlscyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX19kZXRhaWxzIHtcbiAgICAgICAgZmxleDogMTsgfSB9XG4gICAgLmJyYW5jaC0tdGVhc2VyIC5icmFuY2hfX2RldGFpbHMtaW5uZXIge1xuICAgICAgcGFkZGluZzogMS4yNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmJyYW5jaC0tdGVhc2VyIC5icmFuY2hfX2RldGFpbHMtaW5uZXIge1xuICAgICAgICAgIHBhZGRpbmc6IDEuODc1cmVtOyB9IH1cbiAgLmJyYW5jaC0tdGVhc2VyIC5icmFuY2hfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAuYnJhbmNoLS10ZWFzZXIgLmJyYW5jaF9fbmFtZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJyYW5jaC0tdGVhc2VyIC5icmFuY2hfX25hbWUge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAuYnJhbmNoLS10ZWFzZXIgaDEuYnJhbmNoX19uYW1lIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJyYW5jaC0tdGVhc2VyIGgxLmJyYW5jaF9fbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICAuYnJhbmNoLS10ZWFzZXIgLmJyYW5jaF9fYWRkcmVzcyB7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS42OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX19hZGRyZXNzIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgICAuYnJhbmNoLS10ZWFzZXIgLmJyYW5jaF9fYWRkcmVzcyBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX190ZWxlcGhvbmUge1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gICAgLmJyYW5jaC0tdGVhc2VyIC5icmFuY2hfX3RlbGVwaG9uZSA+IHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiAwLjYyNXJlbTtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgLmJyYW5jaC0tdGVhc2VyIC5icmFuY2hfX3RlbGVwaG9uZS1vcHRpb25zIHtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTsgfVxuICAgIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX190ZWxlcGhvbmUtb3B0aW9ucyBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAuYnJhbmNoLS10ZWFzZXIgLmJyYW5jaF9fb3BlbmluZy1ob3VycyB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICAuYnJhbmNoLS10ZWFzZXIgLmJyYW5jaF9fb3BlbmluZy1ob3VycyBzZWxlY3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgICAgaGVpZ2h0OiAzLjA2MjVyZW07XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmJyYW5jaC0tdGVhc2VyIC5icmFuY2hfX29wZW5pbmctaG91cnMgc2VsZWN0IHtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAgIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX19vcGVuaW5nLWhvdXJzIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiAwLjMxMjVyZW07XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX19zdG9jayB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICAuYnJhbmNoLS10ZWFzZXIgLmJyYW5jaF9fc3RvY2sgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAwLjg3NXJlbTtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnJhbmNoLS10ZWFzZXIgLmJyYW5jaF9fc3RvY2sgYSB7XG4gICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX19zdG9jayBhOmhvdmVyLCAuYnJhbmNoLS10ZWFzZXIgLmJyYW5jaF9fc3RvY2sgYTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX19saW5rIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBib3R0b206IDAuOTM3NXJlbTsgfVxuICAgIC5icmFuY2gtLXRlYXNlciAuYnJhbmNoX19saW5rIGEgaTo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgLmJyYW5jaC0tdGVhc2VyIC5icmFuY2hfX2RpcmVjdGlvbnMge1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYnJhbmNoLS10ZWFzZXIuYnJhbmNoLS10ZWFzZXItdmVoaWNsZSAuYnJhbmNoX19tYXAge1xuICAgICAgZmxleDogbm9uZTtcbiAgICAgIGZsZXgtYmFzaXM6IDcwJTsgfSB9XG4gIC5icmFuY2gtLXRlYXNlci5icmFuY2gtLXRlYXNlci1mdWxsIC5icmFuY2hfX2RldGFpbHMge1xuICAgIG9yZGVyOiAtMTsgfVxuXG4uYnJhbmNoLS12ZWhpY2xlIHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAuYnJhbmNoLS12ZWhpY2xlOjpiZWZvcmUsIC5icmFuY2gtLXZlaGljbGU6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmJyYW5jaC0tdmVoaWNsZTo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fZmlyc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19maXJzdCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fZmlyc3Q6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19zZWNvbmQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fc2Vjb25kIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19zZWNvbmQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19zZWNvbmQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19zZWNvbmQge1xuICAgICAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19zZWNvbmQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fc2Vjb25kOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19zZWNvbmQge1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fc2Vjb25kIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fc2Vjb25kOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5icmFuY2gtLXZlaGljbGUtaW1hZ2UgLmJyYW5jaF9fZmlyc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5icmFuY2gtLXZlaGljbGUtaW1hZ2UgLmJyYW5jaF9fZmlyc3Qge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5icmFuY2gtLXZlaGljbGUtaW1hZ2UgLmJyYW5jaF9fZmlyc3Qge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYnJhbmNoLS12ZWhpY2xlLWltYWdlIC5icmFuY2hfX2ZpcnN0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuYnJhbmNoLS12ZWhpY2xlLWltYWdlIC5icmFuY2hfX2ZpcnN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJyYW5jaC0tdmVoaWNsZS1pbWFnZSAuYnJhbmNoX19maXJzdCB7XG4gICAgICAgIHdpZHRoOiA1OC4zMzMzMyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJyYW5jaC0tdmVoaWNsZS1pbWFnZSAuYnJhbmNoX19maXJzdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuYnJhbmNoLS12ZWhpY2xlLWltYWdlIC5icmFuY2hfX2ZpcnN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fZGV0YWlscyB7XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC4wMyksIDAgNnB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMDMpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmc6IDEuODc1cmVtOyB9IH1cbiAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2RldGFpbHMtaW5uZXIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2RldGFpbHMtaW5uZXIge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2RldGFpbHMtaW5uZXIge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2RldGFpbHMtaW5uZXI6OmJlZm9yZSwgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19kZXRhaWxzLWlubmVyOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7IH1cbiAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fZGV0YWlscy1pbm5lcjo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2RldGFpbHMtaW5uZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fYWRkcmVzcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fYWRkcmVzcyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fYWRkcmVzczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2FkZHJlc3Mge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19hZGRyZXNzIHtcbiAgICAgICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2FkZHJlc3Mge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19hZGRyZXNzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19hZGRyZXNzIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fYWRkcmVzcyBzcGFuLmJyYW5jaF9fbmFtZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2N0YTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fY3RhIHtcbiAgICAgICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2N0YSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2N0YTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fY3RhIHVsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2N0YSB1bCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fY3RhIHVsIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEgdWw6OmJlZm9yZSwgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEgdWw6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEgdWw6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEgdWwge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2N0YSB1bCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2N0YSB1bCBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2N0YSB1bCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2N0YSB1bCBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fY3RhIHVsIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fY3RhIHVsIGxpOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2N0YSB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fY3RhIHVsIGxpOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX2N0YSB1bCBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMC44NzVyZW07XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICAgICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fY3RhIHVsIGEge1xuICAgICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgICAgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEgdWwgYTpob3ZlciwgLmJyYW5jaC0tdmVoaWNsZSAuYnJhbmNoX19jdGEgdWwgYTpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E2MDAyODtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm94LXNoYWRvdzogLTEwcHggMTBweCAjYzMwMDJmOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5icmFuY2gtLXZlaGljbGUgLmJyYW5jaF9fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgICBib3gtc2hhZG93OiAtMTVweCAxNXB4ICNjMzAwMmY7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYnJhbmNoLS12ZWhpY2xlIC5icmFuY2hfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogLTMwcHggMzBweCAjYzMwMDJmOyB9IH1cblxuLmJyYW5jaC0td2lkZ2V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSksIDAgNnB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBwYWRkaW5nOiAxLjg3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5icmFuY2gtLXdpZGdldCB7XG4gICAgICBwYWRkaW5nOiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuYnJhbmNoLS13aWRnZXQge1xuICAgICAgcGFkZGluZzogNC4zNzVyZW07IH0gfVxuICAuYnJhbmNoLS13aWRnZXQgLmJyYW5jaF9fbmFtZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07IH1cbiAgLmJyYW5jaC0td2lkZ2V0IC5icmFuY2hfX2FkZHJlc3Mge1xuICAgIGNvbG9yOiAjNkY2RjZGO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgLmJyYW5jaC0td2lkZ2V0IC5icmFuY2hfX2xpbmsge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0xLjQzNzVyZW07XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAuYnJhbmNoLS13aWRnZXQgLmJyYW5jaF9fbGluayBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDAuMzEyNXJlbSAxLjg3NXJlbTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgYmFja2dyb3VuZDogI2MzMDAyZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmJyYW5jaC0td2lkZ2V0IC5icmFuY2hfX2xpbmsgYSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzLjEyNXJlbTsgfSB9XG5cbi5jdXN0b20tZW50cnktLWZhcSB7XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmN1c3RvbS1lbnRyeS0tZmFxIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY3VzdG9tLWVudHJ5LS1mYXEge1xuICAgICAgbWFyZ2luLXRvcDogNi4yNXJlbTsgfSB9XG4gIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X19pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X19pbm5lcjo6YmVmb3JlLCAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9faW5uZXI6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX2lubmVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9faW5uZXIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9faW5uZXIsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X19pbm5lcjpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSBoMiwgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLm9mZmVyX190aXRsZSwgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC5wYXJ0X190aXRsZSwgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFydC0tZnVsbCAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLnBhcnRfX2Zvcm0tdGl0bGUsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlLCAucG9zdC0tZmVhdHVyZWQgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC5wb3N0X190aXRsZSwgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC52ZWhpY2xlX190aXRsZSwgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tbGF0ZXN0IC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSwgLnBhZ2UtLXRlYXNlciAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLnBhZ2VfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSBoMiwgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLm9mZmVyX190aXRsZSwgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC5wYXJ0X190aXRsZSwgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFydC0tZnVsbCAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLnBhcnRfX2Zvcm0tdGl0bGUsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlLCAucG9zdC0tZmVhdHVyZWQgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC5wb3N0X190aXRsZSwgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC52ZWhpY2xlX190aXRsZSwgLmN1c3RvbS1lbnRyeS0tZmFxIC5jdXN0b20tZW50cnlfX3RpdGxlIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tbGF0ZXN0IC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5jdXN0b20tZW50cnktLWZhcSAuY3VzdG9tLWVudHJ5X190aXRsZSAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSwgLnBhZ2UtLXRlYXNlciAuY3VzdG9tLWVudHJ5LS1mYXEgLmN1c3RvbS1lbnRyeV9fdGl0bGUgLnBhZ2VfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuXG4uY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tZmVhdHVyZWQge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLWZlYXR1cmVkIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIC5jdXN0b20tZW50cnktLXJldmlld3MuY3VzdG9tLWVudHJ5LS1mZWF0dXJlZCAuY3VzdG9tLWVudHJ5X19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLWZlYXR1cmVkIC5jdXN0b20tZW50cnlfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tZmVhdHVyZWQgLmN1c3RvbS1lbnRyeV9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDMuMTI1cmVtOyB9IH1cbiAgLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLWZlYXR1cmVkIC5jdXN0b20tZW50cnlfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICBjb2xvcjogIzcxNzU4MDtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLWZlYXR1cmVkIC5jdXN0b20tZW50cnlfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07IH0gfVxuICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tZmVhdHVyZWQgLmN1c3RvbS1lbnRyeV9fZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tZmVhdHVyZWQgLmN1c3RvbS1lbnRyeV9fZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICAgICAgZ2FwOiAxLjg3NXJlbTsgfSB9XG4gIC5jdXN0b20tZW50cnktLXJldmlld3MuY3VzdG9tLWVudHJ5LS1mZWF0dXJlZCAuY3VzdG9tLWVudHJ5X19wcmltYXJ5LWltYWdlcyBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tZmVhdHVyZWQgLmN1c3RvbS1lbnRyeV9fZGV0YWlscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC41cmVtOyB9XG4gIC5jdXN0b20tZW50cnktLXJldmlld3MuY3VzdG9tLWVudHJ5LS1mZWF0dXJlZCAuY3VzdG9tLWVudHJ5X19uYW1lIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tZmVhdHVyZWQgLmN1c3RvbS1lbnRyeV9fbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07IH0gfVxuICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tZmVhdHVyZWQgLmN1c3RvbS1lbnRyeV9fcmF0aW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjE4NzVyZW07IH1cbiAgICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tZmVhdHVyZWQgLmN1c3RvbS1lbnRyeV9fcmF0aW5nIHNwYW4ge1xuICAgICAgY29sb3I6ICNGRDhCMUQ7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH1cblxuLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLXRlYXNlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jdXN0b20tZW50cnktLXJldmlld3MuY3VzdG9tLWVudHJ5LS10ZWFzZXIge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogMS44NzVyZW07IH0gfVxuICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tdGVhc2VyIC5jdXN0b20tZW50cnlfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tdGVhc2VyIC5jdXN0b20tZW50cnlfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tdGVhc2VyIC5jdXN0b20tZW50cnlfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICBjb2xvcjogIzcxNzU4MDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS44OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jdXN0b20tZW50cnktLXJldmlld3MuY3VzdG9tLWVudHJ5LS10ZWFzZXIgLmN1c3RvbS1lbnRyeV9fZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9IH1cbiAgLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLXRlYXNlciAuY3VzdG9tLWVudHJ5X19mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi10b3A6IGF1dG87IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLXRlYXNlciAuY3VzdG9tLWVudHJ5X19mb290ZXIge1xuICAgICAgICBnYXA6IDEuODc1cmVtOyB9IH1cbiAgLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLXRlYXNlciAuY3VzdG9tLWVudHJ5X19wcmltYXJ5LWltYWdlcyBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tdGVhc2VyIC5jdXN0b20tZW50cnlfX2RldGFpbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDAuNXJlbTsgfVxuICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tdGVhc2VyIC5jdXN0b20tZW50cnlfX25hbWUge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gIC5jdXN0b20tZW50cnktLXJldmlld3MuY3VzdG9tLWVudHJ5LS10ZWFzZXIgLmN1c3RvbS1lbnRyeV9fcmF0aW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjE4NzVyZW07IH1cbiAgICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tdGVhc2VyIC5jdXN0b20tZW50cnlfX3JhdGluZyBzcGFuIHtcbiAgICAgIGNvbG9yOiAjRkQ4QjFEO1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG5cbi5jdXN0b20tZW50cnktLXJldmlld3MuY3VzdG9tLWVudHJ5LS1mdWxsIC5jdXN0b20tZW50cnlfX3ByaW1hcnktaW1hZ2VzIHtcbiAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLWZ1bGwgLmN1c3RvbS1lbnRyeV9fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgcGFkZGluZy1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLWZ1bGwgLmN1c3RvbS1lbnRyeV9fcHJpbWFyeS1pbWFnZXMgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLWZ1bGwgLmN1c3RvbS1lbnRyeV9fcHJpbWFyeS1pbWFnZXMgdWwgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG5cbi5jdXN0b20tZW50cnktLXJldmlld3MuY3VzdG9tLWVudHJ5LS1mdWxsIC5jdXN0b20tZW50cnlfX2N1c3RvbS1maWVsZHMge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLWZ1bGwgLmN1c3RvbS1lbnRyeV9fY3VzdG9tLWZpZWxkcyB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAuY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tZnVsbCAuY3VzdG9tLWVudHJ5X19jdXN0b20tZmllbGRzIHVsIGxpIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4uY3VzdG9tLWVudHJ5LS1yZXZpZXdzLmN1c3RvbS1lbnRyeS0tZnVsbCAuY3VzdG9tLWVudHJ5X19kZXNjcmlwdGlvbiBwIGE6bm90KC5idXR0b24pIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmN1c3RvbS1lbnRyeS0tcmV2aWV3cy5jdXN0b20tZW50cnktLWZ1bGwgLmN1c3RvbS1lbnRyeV9fZGVzY3JpcHRpb24gcCBhOm5vdCguYnV0dG9uKTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5kZXBhcnRtZW50LS1mb290ZXIge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5kZXBhcnRtZW50LS1mb290ZXIge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgLmRlcGFydG1lbnQtLWZvb3RlciBhIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuZGVwYXJ0bWVudC0tZm9vdGVyIC5kZXBhcnRtZW50X19uYW1lIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLmRlcGFydG1lbnQtLWZvb3RlciAuZGVwYXJ0bWVudF9fb3BlbmluZy1ob3VycyB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIC5kZXBhcnRtZW50LS1mb290ZXIgLmRlcGFydG1lbnRfX29wZW5pbmctaG91cnMgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLmRlcGFydG1lbnQtLWZvb3RlciAuZGVwYXJ0bWVudF9fb3BlbmluZy1ob3VycyB1bCBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtOyB9XG4gICAgICAgIC5kZXBhcnRtZW50LS1mb290ZXIgLmRlcGFydG1lbnRfX29wZW5pbmctaG91cnMgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5kZXBhcnRtZW50LS1mb290ZXIgLmRlcGFydG1lbnRfX29wZW5pbmctaG91cnMgLmRlcGFydG1lbnRfX2xpc3QtaXRlbSB7XG4gICAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gIC5kZXBhcnRtZW50LS1mb290ZXIgLmRlcGFydG1lbnRfX3RlbGVwaG9uZSB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAwLjYyNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZGVwYXJ0bWVudC0tZm9vdGVyIC5kZXBhcnRtZW50X190ZWxlcGhvbmUgdWwge1xuICAgICAgICBnYXA6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmRlcGFydG1lbnQtLWZvb3RlciAuZGVwYXJ0bWVudF9fdGVsZXBob25lIHVsIGxpIGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjMxMjVyZW07XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmRlcGFydG1lbnQtLWZvb3RlciAuZGVwYXJ0bWVudF9fdGVsZXBob25lIHVsIGxpIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9IH1cbiAgICAuZGVwYXJ0bWVudC0tZm9vdGVyIC5kZXBhcnRtZW50X190ZWxlcGhvbmUgdWwgbGkgc3BhbiB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmRlcGFydG1lbnQtLXRlYXNlciAuZGVwYXJ0bWVudF9fbmFtZSB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5kZXBhcnRtZW50LS10ZWFzZXIgLmRlcGFydG1lbnRfX25hbWUge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfSB9XG5cbi5kZXBhcnRtZW50LS10ZWFzZXIgLmRlcGFydG1lbnRfX3RlbGVwaG9uZSB1bCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMC4zMTI1cmVtO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmRlcGFydG1lbnQtLXRlYXNlciAuZGVwYXJ0bWVudF9fdGVsZXBob25lIHVsIGxpIHtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS42OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5kZXBhcnRtZW50LS10ZWFzZXIgLmRlcGFydG1lbnRfX3RlbGVwaG9uZSB1bCBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG5cbi5kZXBhcnRtZW50LS10ZWFzZXIgLmRlcGFydG1lbnRfX29wZW5pbmctaG91cnMge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5kZXBhcnRtZW50LS10ZWFzZXIgLmRlcGFydG1lbnRfX29wZW5pbmctaG91cnMge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cblxuLmRlcGFydG1lbnQtLXRlYXNlciAuZGVwYXJ0bWVudF9fbGFiZWwge1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbi5kZXBhcnRtZW50LS10ZWFzZXIgLmRlcGFydG1lbnRfX3ZhbHVlIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4uZm9ybS0tZGlyZWN0aW9ucyB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLWRpcmVjdGlvbnMge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb3JtLS1kaXJlY3Rpb25zIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmZvcm0tLWRpcmVjdGlvbnM6OmJlZm9yZSwgLmZvcm0tLWRpcmVjdGlvbnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmZvcm0tLWRpcmVjdGlvbnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuZm9ybS0tZGlyZWN0aW9ucyAuZmllbGQtc3RhcnRpbmctcG9pbnQge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9ybS0tZGlyZWN0aW9ucyAuZmllbGQtc3RhcnRpbmctcG9pbnQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuZm9ybS0tZGlyZWN0aW9ucyAuZmllbGQtc3RhcnRpbmctcG9pbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZvcm0tLWRpcmVjdGlvbnMgLmZpZWxkLXN0YXJ0aW5nLXBvaW50IHtcbiAgICAgICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLWRpcmVjdGlvbnMgLmZpZWxkLXN0YXJ0aW5nLXBvaW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuZm9ybS0tZGlyZWN0aW9ucyAuZmllbGQtc3RhcnRpbmctcG9pbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmZvcm0tLWRpcmVjdGlvbnMgLmZpZWxkLWRlc3RpbmF0aW9uIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZvcm0tLWRpcmVjdGlvbnMgLmZpZWxkLWRlc3RpbmF0aW9uIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZvcm0tLWRpcmVjdGlvbnMgLmZpZWxkLWRlc3RpbmF0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb3JtLS1kaXJlY3Rpb25zIC5maWVsZC1kZXN0aW5hdGlvbiB7XG4gICAgICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb3JtLS1kaXJlY3Rpb25zIC5maWVsZC1kZXN0aW5hdGlvbiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmZvcm0tLWRpcmVjdGlvbnMgLmZpZWxkLWRlc3RpbmF0aW9uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5mb3JtLS1kaXJlY3Rpb25zIC5maWVsZC1zdWJtaXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZvcm0tLWRpcmVjdGlvbnMgLmZpZWxkLXN1Ym1pdCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5mb3JtLS1kaXJlY3Rpb25zIC5maWVsZC1zdWJtaXQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAuZm9ybS0tZGlyZWN0aW9ucyAuZmllbGQtc3VibWl0IC5idXR0b24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9ybS0tZGlyZWN0aW9ucyAuZmllbGQtc3VibWl0IHtcbiAgICAgICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjU2MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9ybS0tZGlyZWN0aW9ucyAuZmllbGQtc3VibWl0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuZm9ybS0tZGlyZWN0aW9ucyAuZmllbGQtc3VibWl0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgICAuZm9ybS0tZGlyZWN0aW9ucyAuZmllbGQtc3VibWl0IC5idXR0b24ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9ybS0tZGlyZWN0aW9ucyBpbnB1dCxcbiAgICAuZm9ybS0tZGlyZWN0aW9ucyBzZWxlY3Qge1xuICAgICAgaGVpZ2h0OiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLWRpcmVjdGlvbnMgLmhlbHAtYmxvY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5mb3JtLS1kaXJlY3Rpb25zLmZvcm0tLXNpbmdsZS1icmFuY2ggLmZpZWxkLXN0YXJ0aW5nLXBvaW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb3JtLS1kaXJlY3Rpb25zLmZvcm0tLXNpbmdsZS1icmFuY2ggLmZpZWxkLXN0YXJ0aW5nLXBvaW50IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZvcm0tLWRpcmVjdGlvbnMuZm9ybS0tc2luZ2xlLWJyYW5jaCAuZmllbGQtc3RhcnRpbmctcG9pbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZvcm0tLWRpcmVjdGlvbnMuZm9ybS0tc2luZ2xlLWJyYW5jaCAuZmllbGQtc3RhcnRpbmctcG9pbnQge1xuICAgICAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZm9ybS0tZGlyZWN0aW9ucy5mb3JtLS1zaW5nbGUtYnJhbmNoIC5maWVsZC1zdGFydGluZy1wb2ludCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmZvcm0tLWRpcmVjdGlvbnMuZm9ybS0tc2luZ2xlLWJyYW5jaCAuZmllbGQtc3RhcnRpbmctcG9pbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmZvcm0tLXZlaGljbGUtZGlyZWN0aW9ucyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZm9ybS0tdmVoaWNsZS1kaXJlY3Rpb25zIC5jb250cm9sLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5mb3JtLS12ZWhpY2xlLWRpcmVjdGlvbnMgaW5wdXQsXG4gIC5mb3JtLS12ZWhpY2xlLWRpcmVjdGlvbnMgW3R5cGU9J3RleHQnXSB7XG4gICAgaGVpZ2h0OiAzLjEyNXJlbTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9ybS0tdmVoaWNsZS1kaXJlY3Rpb25zIGlucHV0LFxuICAgICAgLmZvcm0tLXZlaGljbGUtZGlyZWN0aW9ucyBbdHlwZT0ndGV4dCddIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZvcm0tLXZlaGljbGUtZGlyZWN0aW9ucyBpbnB1dDo6cGxhY2Vob2xkZXIsXG4gICAgLmZvcm0tLXZlaGljbGUtZGlyZWN0aW9ucyBbdHlwZT0ndGV4dCddOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogIzk5OTk5OTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIC5mb3JtLS12ZWhpY2xlLWRpcmVjdGlvbnMgLmZpZWxkLXN1Ym1pdCB7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5mb3JtLS12ZWhpY2xlLWRpcmVjdGlvbnMgLmZpZWxkLXN1Ym1pdCAuYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtO1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5mb3JtLS12ZWhpY2xlLWRpcmVjdGlvbnMgLmZpZWxkLXN1Ym1pdCAuYnV0dG9uIHtcbiAgICAgICAgb3V0bGluZTogMDsgfVxuICAgICAgLmZvcm0tLXZlaGljbGUtZGlyZWN0aW9ucyAuZmllbGQtc3VibWl0IC5idXR0b246aG92ZXIsIC5mb3JtLS12ZWhpY2xlLWRpcmVjdGlvbnMgLmZpZWxkLXN1Ym1pdCAuYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E2MDAyODtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmZvcm0tLWVucXVpcnkge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb3JtLS1lbnF1aXJ5IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9ybS0tZW5xdWlyeSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5mb3JtLS1lbnF1aXJ5OjpiZWZvcmUsIC5mb3JtLS1lbnF1aXJ5OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5mb3JtLS1lbnF1aXJ5OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLWZpcnN0X25hbWUsXG4gIC5mb3JtLS1lbnF1aXJ5IC5maWVsZC1lbnF1aXJ5Zm9ybS1sYXN0X25hbWUsXG4gIC5mb3JtLS1lbnF1aXJ5IC5maWVsZC1lbnF1aXJ5Zm9ybS1lbWFpbCxcbiAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLXRlbGVwaG9uZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tZmlyc3RfbmFtZSxcbiAgICAgIC5mb3JtLS1lbnF1aXJ5IC5maWVsZC1lbnF1aXJ5Zm9ybS1sYXN0X25hbWUsXG4gICAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tZW1haWwsXG4gICAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tdGVsZXBob25lIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLWZpcnN0X25hbWU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tbGFzdF9uYW1lOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLWVtYWlsOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLXRlbGVwaG9uZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tZmlyc3RfbmFtZSxcbiAgICAgIC5mb3JtLS1lbnF1aXJ5IC5maWVsZC1lbnF1aXJ5Zm9ybS1sYXN0X25hbWUsXG4gICAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tZW1haWwsXG4gICAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tdGVsZXBob25lIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLWZpcnN0X25hbWUsXG4gICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLWxhc3RfbmFtZSxcbiAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tZW1haWwsXG4gICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLXRlbGVwaG9uZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLWZpcnN0X25hbWU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLWxhc3RfbmFtZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tZW1haWw6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLXRlbGVwaG9uZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tZmlyc3RfbmFtZSxcbiAgICAgIC5mb3JtLS1lbnF1aXJ5IC5maWVsZC1lbnF1aXJ5Zm9ybS1sYXN0X25hbWUsXG4gICAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tZW1haWwsXG4gICAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tdGVsZXBob25lIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLWZpcnN0X25hbWUsXG4gICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLWxhc3RfbmFtZSxcbiAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tZW1haWwsXG4gICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLXRlbGVwaG9uZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLWZpcnN0X25hbWU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLWxhc3RfbmFtZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tZW1haWw6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLXRlbGVwaG9uZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tYnJhbmNoLFxuICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tbWVzc2FnZSxcbiAgLmZvcm0tLWVucXVpcnkgLmZvcm0tbWFya2V0aW5nLFxuICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtc3VibWl0LFxuICAuZm9ybS0tZW5xdWlyeSAuZm9ybS1kaXNjbGFpbWVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb3JtLS1lbnF1aXJ5IC5maWVsZC1lbnF1aXJ5Zm9ybS1icmFuY2gsXG4gICAgICAuZm9ybS0tZW5xdWlyeSAuZmllbGQtZW5xdWlyeWZvcm0tbWVzc2FnZSxcbiAgICAgIC5mb3JtLS1lbnF1aXJ5IC5mb3JtLW1hcmtldGluZyxcbiAgICAgIC5mb3JtLS1lbnF1aXJ5IC5maWVsZC1zdWJtaXQsXG4gICAgICAuZm9ybS0tZW5xdWlyeSAuZm9ybS1kaXNjbGFpbWVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLWVucXVpcnlmb3JtLWJyYW5jaDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5mb3JtLS1lbnF1aXJ5IC5maWVsZC1lbnF1aXJ5Zm9ybS1tZXNzYWdlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmZvcm0tLWVucXVpcnkgLmZvcm0tbWFya2V0aW5nOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmZvcm0tLWVucXVpcnkgLmZpZWxkLXN1Ym1pdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5mb3JtLS1lbnF1aXJ5IC5mb3JtLWRpc2NsYWltZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cblxuLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLmZvcm1fX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtOyB9XG5cbi5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5mb3JtX19kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIGNvbG9yOiAjNzE3NTgwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cblxuLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLmZpZWxkLXZlaGljbGUtcmVnaXN0cmF0aW9uIHtcbiAgZmxleDogMTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuZm9ybS0tcGFydC1leGNoYW5nZSAuZmllbGQtdmVoaWNsZS1yZWdpc3RyYXRpb24gaW5wdXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMy4zNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjMxMjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC4zMTI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNjI1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAuZm9ybS0tcGFydC1leGNoYW5nZSAuZmllbGQtdmVoaWNsZS1yZWdpc3RyYXRpb24gaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjODY4Njg2OyB9XG4gIC5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5maWVsZC12ZWhpY2xlLXJlZ2lzdHJhdGlvbiAuY29udHJvbC1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm9ybS0tcGFydC1leGNoYW5nZSAuZmllbGQtc3VibWl0IHtcbiAgZmxleDogMTtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLmZpZWxkLXN1Ym1pdCAuYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxLjEyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5mb3JtLS1wYXJ0LWV4Y2hhbmdlLmZvcm0tLXBhcnQtZXhjaGFuZ2Utbm8tdmVoaWNsZSAuZmllbGQtdmVoaWNsZS1yZWdpc3RyYXRpb24gaW5wdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2OyB9XG5cbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZSBbdHlwZT0ndGV4dCddLFxuLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlIFt0eXBlPSdwYXNzd29yZCddLFxuLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlIFt0eXBlPSdkYXRlJ10sXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUgW3R5cGU9J2RhdGV0aW1lJ10sXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUgW3R5cGU9J21vbnRoJ10sXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUgW3R5cGU9J3dlZWsnXSxcbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZSBbdHlwZT0nZW1haWwnXSxcbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZSBbdHlwZT0nbnVtYmVyJ10sXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUgW3R5cGU9J3NlYXJjaCddLFxuLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlIFt0eXBlPSd0ZWwnXSxcbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZSBbdHlwZT0ndGltZSddLFxuLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlIFt0eXBlPSd1cmwnXSxcbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZSBbdHlwZT0nY29sb3InXSxcbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZSBzZWxlY3QsXG4uZm9ybS0tc2VsbC15b3VyLXZlaGljbGUgdGV4dGFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cblxuLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlIGxhYmVsLmVycm9yIHtcbiAgaGVpZ2h0OiAxLjE4NzVyZW07XG4gIG1hcmdpbi10b3A6IC0wLjkzNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbiAgY29sb3I6ICNjYzRiMzc7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4xODc1cmVtOyB9XG5cbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZSAuZm9ybV9fYmFjayBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDAuMzc1cmVtOyB9XG4gIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZSAuZm9ybV9fYmFjayBhIGkge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuZm9ybS0tc2VsbC15b3VyLXZlaGljbGUgLmZvcm1fX2JhY2sgYSBzcGFuIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZSAuZm9ybV9fc3RlcDAgLmZpZWxkLXZlaGljbGUtcmVnaXN0cmF0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZSAuZm9ybV9fc3RlcDAgLmZpZWxkLXZlaGljbGUtcmVnaXN0cmF0aW9uIC5mb3JtLWdyb3VwX19pbnB1dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMy43NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMuNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuICAgIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZSAuZm9ybV9fc3RlcDAgLmZpZWxkLXZlaGljbGUtcmVnaXN0cmF0aW9uIC5mb3JtLWdyb3VwX19pbnB1dDo6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIjY3ZGVncmVlc1wiO1xuICAgICAgY29udGVudDogXCJcXDQ3XCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAzLjc1cmVtO1xuICAgICAgd2lkdGg6IDMuMTI1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyLjE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjM3NXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMzc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICAgIGRpcmVjdGlvbjogbHRyO1xuICAgICAgLXdlYmtpdC1mb250LWZlYXR1cmUtc2V0dGluZ3M6ICdsaWdhJztcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5mb3JtLS1zZWxsLXlvdXItdmVoaWNsZSAuZm9ybV9fc3RlcDAgLmZpZWxkLXZlaGljbGUtcmVnaXN0cmF0aW9uIC5mb3JtLWdyb3VwX19pbnB1dCBpbnB1dCB7XG4gICAgICBoZWlnaHQ6IDMuNjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLmZvcm0tLXNlbGwteW91ci12ZWhpY2xlIC5mb3JtX19zdGVwMCAuZmllbGQtdmVoaWNsZS1yZWdpc3RyYXRpb24gLmNvbnRyb2wtbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvcm0tLXZlaGljbGUtZW5xdWlyeSB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5mb3JtLS12ZWhpY2xlLWVucXVpcnk6OmJlZm9yZSwgLmZvcm0tLXZlaGljbGUtZW5xdWlyeTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLWZpcnN0X25hbWUsXG4gIC5mb3JtLS12ZWhpY2xlLWVucXVpcnkgLmZpZWxkLXZlaGljbGVlbnF1aXJ5Zm9ybS1sYXN0X25hbWUsXG4gIC5mb3JtLS12ZWhpY2xlLWVucXVpcnkgLmZpZWxkLXZlaGljbGVlbnF1aXJ5Zm9ybS1lbWFpbCxcbiAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLXRlbGVwaG9uZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tZmlyc3RfbmFtZSxcbiAgICAgIC5mb3JtLS12ZWhpY2xlLWVucXVpcnkgLmZpZWxkLXZlaGljbGVlbnF1aXJ5Zm9ybS1sYXN0X25hbWUsXG4gICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tZW1haWwsXG4gICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tdGVsZXBob25lIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLWZpcnN0X25hbWU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tbGFzdF9uYW1lOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLWVtYWlsOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLXRlbGVwaG9uZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tZmlyc3RfbmFtZSxcbiAgICAgIC5mb3JtLS12ZWhpY2xlLWVucXVpcnkgLmZpZWxkLXZlaGljbGVlbnF1aXJ5Zm9ybS1sYXN0X25hbWUsXG4gICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tZW1haWwsXG4gICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tdGVsZXBob25lIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLWZpcnN0X25hbWUsXG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLWxhc3RfbmFtZSxcbiAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tZW1haWwsXG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLXRlbGVwaG9uZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLWZpcnN0X25hbWU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLWxhc3RfbmFtZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tZW1haWw6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLXRlbGVwaG9uZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tZmlyc3RfbmFtZSxcbiAgICAgIC5mb3JtLS12ZWhpY2xlLWVucXVpcnkgLmZpZWxkLXZlaGljbGVlbnF1aXJ5Zm9ybS1sYXN0X25hbWUsXG4gICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tZW1haWwsXG4gICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tdGVsZXBob25lIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLWZpcnN0X25hbWUsXG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLWxhc3RfbmFtZSxcbiAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tZW1haWwsXG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLXRlbGVwaG9uZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLWZpcnN0X25hbWU6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLWxhc3RfbmFtZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tZW1haWw6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAgICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtdmVoaWNsZWVucXVpcnlmb3JtLXRlbGVwaG9uZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tbWVzc2FnZSxcbiAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZm9ybS1tYXJrZXRpbmcsXG4gIC5mb3JtLS12ZWhpY2xlLWVucXVpcnkgLmZpZWxkLXN1Ym1pdCxcbiAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZm9ybS1kaXNjbGFpbWVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mb3JtLS12ZWhpY2xlLWVucXVpcnkgLmZpZWxkLXZlaGljbGVlbnF1aXJ5Zm9ybS1tZXNzYWdlLFxuICAgICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZm9ybS1tYXJrZXRpbmcsXG4gICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC1zdWJtaXQsXG4gICAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5mb3JtLWRpc2NsYWltZXIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuZm9ybS0tdmVoaWNsZS1lbnF1aXJ5IC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tbWVzc2FnZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICAgIC5mb3JtLS12ZWhpY2xlLWVucXVpcnkgLmZvcm0tbWFya2V0aW5nOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZmllbGQtc3VibWl0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgLmZvcm0tLXZlaGljbGUtZW5xdWlyeSAuZm9ybS1kaXNjbGFpbWVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5uby1pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiA3NSU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7IH1cbiAgLm5vLWltYWdlX190ZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udmVoaWNsZS0tcmVjZW50bHktdmlld2VkIC5uby1pbWFnZSAubm8taW1hZ2VfX3RleHQge1xuICBtYXJnaW4tdG9wOiAtMC4zNzVyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuXG4udmVoaWNsZS0tZnVsbCAubm8taW1hZ2UgLm5vLWltYWdlX190ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuODEyNXJlbTtcbiAgZm9udC1zaXplOiAxLjYyNXJlbTsgfVxuXG4udmVoaWNsZS0tc2ltaWxhciAubm8taW1hZ2UgLm5vLWltYWdlX190ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnZlaGljbGUtLWNvbXBhcmUgLm5vLWltYWdlIHtcbiAgICBoZWlnaHQ6IDExLjI1cmVtO1xuICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC52ZWhpY2xlLS10ZWFzZXIgLm5vLWltYWdlIC5uby1pbWFnZV9fdGV4dCxcbiAgLnZlaGljbGUtLWZlYXR1cmVkIC5uby1pbWFnZSAubm8taW1hZ2VfX3RleHQsXG4gIC52ZWhpY2xlLS1mZWF0dXJlZC1zaWRlYmFyIC5uby1pbWFnZSAubm8taW1hZ2VfX3RleHQsXG4gIC52ZWhpY2xlLS1sYXRlc3QgLm5vLWltYWdlIC5uby1pbWFnZV9fdGV4dCxcbiAgLnZlaGljbGUtLWxhdGVzdC1zaWRlYmFyIC5uby1pbWFnZSAubm8taW1hZ2VfX3RleHQsXG4gIC52ZWhpY2xlLS1zaW1pbGFyIC5uby1pbWFnZSAubm8taW1hZ2VfX3RleHQge1xuICAgIG1hcmdpbi10b3A6IC0wLjgxMjVyZW07XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfSB9XG5cbi5wcmltYXJ5LWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wcmltYXJ5LWltYWdlX190aXRsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLnByaW1hcnktaW1hZ2VfX2Rlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucHJpbWFyeS1pbWFnZV9fZGVzY3JpcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5wcmltYXJ5LWltYWdlX19lbmxhcmdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHRvcDogMC42MjVyZW07XG4gICAgei1pbmRleDogOTk5O1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB6LWluZGV4OiA5OTk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnByaW1hcnktaW1hZ2VfX2VubGFyZ2Uge1xuICAgICAgICByaWdodDogMC45Mzc1cmVtO1xuICAgICAgICB0b3A6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnByaW1hcnktaW1hZ2VfX2VubGFyZ2Ugc3BhbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4xODc1cmVtO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAucHJpbWFyeS1pbWFnZS0tdmVoaWNsZSAucHJpbWFyeS1pbWFnZV9faW1hZ2UgaW1nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnNlY29uZGFyeS1pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2Vjb25kYXJ5LWltYWdlX19pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnNlY29uZGFyeS1pbWFnZV9faW1hZ2UgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgLnNlY29uZGFyeS1pbWFnZV9faW1hZ2Utb3ZlcmxheSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDApIDAlLCByZ2JhKDAsIDAsIDAsIDApIDUwJSwgcmdiYSgwLCAwLCAwLCAwLjc1KSA3NSUsIHJnYmEoMCwgMCwgMCwgMC43NSkgMTAwJSk7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIC5zZWNvbmRhcnktaW1hZ2VfX2RldGFpbHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAyOyB9XG4gICAgLnNlY29uZGFyeS1pbWFnZV9fZGV0YWlscy1pbm5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cbiAgLnNlY29uZGFyeS1pbWFnZV9fdGl0bGUge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gIC5zZWNvbmRhcnktaW1hZ2VfX2ljb24ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgLnNlY29uZGFyeS1pbWFnZV9faWNvbiBpOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG4ub2ZmZXItLWZ1bGwge1xuICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAub2ZmZXItLWZ1bGwge1xuICAgICAgcGFkZGluZy10b3A6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAub2ZmZXItLWZ1bGwge1xuICAgICAgcGFkZGluZy10b3A6IDYuMjVyZW07IH0gfVxuICAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIGgyLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC5vZmZlcl9fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLm9yZGVyLXByb2dyZXNzX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAucGFydF9fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLnBhcnQtLWZ1bGwgLnBhcnRfX2Zvcm0tdGl0bGUsIC5wYXJ0LS1mdWxsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLnBhcnRfX2Zvcm0tdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLnBvc3RfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAudmVoaWNsZV9fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1sYXRlc3QgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAudmVoaWNsZV9fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC5saXN0aW5nX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAubGlzdGluZ19fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlLCAucGFnZS0tdGVhc2VyIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLnBhZ2VfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgaDIsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC5wYXJ0X190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAucGFydF9fZm9ybS10aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlLCAucG9zdC0tZmVhdHVyZWQgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAucG9zdF9fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tZ2VuZXJhbCAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC52ZWhpY2xlX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC52ZWhpY2xlX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAubGlzdGluZ19fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAubGlzdGluZ19fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkaW5nIC5saXN0aW5nX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAubGlzdGluZ19fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRpbmcgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGluZyAucGFnZV9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gIC5vZmZlci0tZnVsbCAub2ZmZXJfX2xpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMC41cmVtIDAuODc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub2ZmZXItLWZ1bGwgLm9mZmVyX19saW5rIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19saW5rOmhvdmVyLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19saW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRlbnQ6OmJlZm9yZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGVudDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250ZW50OjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRlbnQtZmlyc3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGVudC1maXJzdCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRlbnQtZmlyc3Q6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGVudC1maXJzdCB7XG4gICAgICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGVudC1maXJzdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRlbnQtZmlyc3Q6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRlbnQtc2Vjb25kIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250ZW50LXNlY29uZCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRlbnQtc2Vjb25kOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRlbnQtc2Vjb25kIHtcbiAgICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICB0b3A6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGVudC1zZWNvbmQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250ZW50LXNlY29uZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5vZmZlci0tZnVsbCAub2ZmZXJfX21lZGlhIC5vZmZlcl9fcHJpbWFyeS1pbWFnZXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX21lZGlhIC5vZmZlcl9fcHJpbWFyeS1pbWFnZXMgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fbWVkaWEgLm9mZmVyX19wcmltYXJ5LWltYWdlcyB1bCBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTsgfSB9XG4gICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGVyIC5vZmZlcl9fdGl0bGUgaDEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9faGVhZGVyIC5vZmZlcl9fdGl0bGUgaDEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2hlYWRlciAub2ZmZXJfX21vbnRobHktcHJpY2Uge1xuICAgICAgbWFyZ2luLXRvcDogMC4zMTI1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS4zOyB9XG4gICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19oZWFkZXIgLm9mZmVyX19tb250aGx5LXByaWNlIHNwYW4ge1xuICAgICAgICBjb2xvcjogIzcxNzU4MDsgfVxuICAub2ZmZXItLWZ1bGwgLm9mZmVyX19tb2JpbGUtc2lkZWJhciB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fbW9iaWxlLXNpZGViYXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX21vYmlsZS1zaWRlYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19kZXNjcmlwdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19kZXNjcmlwdGlvbiAub2ZmZXJfX3N1Yi10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZGVzY3JpcHRpb24gLm9mZmVyX19zdWItdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Rlc2NyaXB0aW9uLWlubmVyIHtcbiAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODsgfVxuICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZGVzY3JpcHRpb24taW5uZXIgYTpub3QoLmJ1dHRvbikge1xuICAgICAgICBjb2xvcjogI2MzMDAyZjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Rlc2NyaXB0aW9uLWlubmVyIGE6bm90KC5idXR0b24pOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogIzkwMDAyMztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Rlc2NyaXB0aW9uLWlubmVyIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fdGFibGUge1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX3RhYmxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX3RhYmxlIHRhYmxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX190YWJsZSB0YWJsZSB0Ym9keSB0ciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX190YWJsZSB0YWJsZSB0Ym9keSB0ciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAgICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX190YWJsZSB0YWJsZSB0Ym9keSB0cjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX190YWJsZSB0YWJsZSB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fdGFibGUgdGFibGUgdGJvZHkgdHIgdGgsXG4gICAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX3RhYmxlIHRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICAgICAgICBwYWRkaW5nOiAwLjM3NXJlbTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Y2RjZGNjsgfVxuICAgICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX190YWJsZSB0YWJsZSB0Ym9keSB0ciB0aCxcbiAgICAgICAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX3RhYmxlIHRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMC42MjVyZW07IH0gfVxuICAgICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX190YWJsZSB0YWJsZSB0Ym9keSB0ciB0aCB7XG4gICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fdGFibGUgdGFibGUgdGJvZHkgdHIgdGQge1xuICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBjb2xvcjogIzIyMjIyMjtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAub2ZmZXItLWZ1bGwgLm9mZmVyX192aWRlb3Mge1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX3ZpZGVvcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX192aWRlb3MgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fdmlkZW9zIHVsIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX3ZpZGVvcyB1bCBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gICAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX3ZpZGVvcyB1bCBsaTo6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX192aWRlb3MgdWwgbGkgaWZyYW1lIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXgtd2lkdGg6IDk3LjVyZW07XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19zZWNvbmRhcnktaW1hZ2VzOjpiZWZvcmUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX3NlY29uZGFyeS1pbWFnZXM6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fc2Vjb25kYXJ5LWltYWdlczo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX3NlY29uZGFyeS1pbWFnZXM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19zZWNvbmRhcnktaW1hZ2VzLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19zZWNvbmRhcnktaW1hZ2VzOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07IH0gfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX3NlY29uZGFyeS1pbWFnZXMgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fc2Vjb25kYXJ5LWltYWdlcyB1bCBsaSBpbWcge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCB7XG4gICAgcGFkZGluZzogMS44NzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IGgzLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3RpdGxlLCAuYmxvY2stLXNpZGViYXIgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAuYmxvY2tfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19zdWItdGl0bGUsIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAub2ZmZXJfX3N1Yi10aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAuYWRkLW9uX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX21vbnRoIHNwYW4sIC5jYWxlbmRhcl9faGVhZGVyIC5jYWxlbmRhcl9fbW9udGggLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCBzcGFuLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAub3JkZXItcGF5bWVudF9fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19zdWItdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5wYXJ0X19zdWItdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X19zdWItdGl0bGUsIC5wb3N0LS1mZWF0dXJlZCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5wb3N0X19zdWItdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLnF1aWNrLXNlYXJjaF9fbGVnZW5kLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX190aXRsZSAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IGgxLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsIC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fdGl0bGUgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCBoMSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCBoMSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsIC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIC5saXN0aW5nX190aXRsZSAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IGgxLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCBoMSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIGgxLCAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgaDEsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLCAuYnJhbmNoLS1jb250YWN0IC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAuZm9ybS0tcGFydC1leGNoYW5nZSAuZm9ybV9fdGl0bGUsIC5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLmZvcm1fX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190aXRsZSwgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAuZmluYW5jZS10YWJsZV9fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLmZpbmFuY2UtY2hlY2tlcl9fZGV0YWlscy10aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3RpdGxlLCAuZmluYW5jZS10YWJsZS0tb3JkZXIgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAuZmluYW5jZS10YWJsZV9fdGl0bGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgaDMsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLmJsb2NrLS1zaWRlYmFyIC5ibG9ja19fdGl0bGUsIC5ibG9jay0tc2lkZWJhciAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5ibG9ja19fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3N1Yi10aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5vZmZlcl9fc3ViLXRpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5hZGQtb25fX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5jYWxlbmRhcl9faGVhZGVyIC5jYWxlbmRhcl9fbW9udGggc3BhbiwgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IHNwYW4sIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLmNvbGxlY3Rpb24tZGVsaXZlcnlfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5vcmRlci1wYXltZW50X190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAub3JkZXItc3RhdGUtc3VtbWFyeV9fdmVoaWNsZS10aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3N1Yi10aXRsZSwgLnBhcnQtLWZlYXR1cmVkIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLnBhcnRfX3N1Yi10aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3N1Yi10aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLnBvc3RfX3N1Yi10aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAucXVpY2stc2VhcmNoX19sZWdlbmQsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgaDEsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IGgxLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IGgxLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgaDEsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IGgxLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgaDEsIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCBoMSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAuYnJhbmNoLS1jb250YWN0IC5icmFuY2hfX29wZW5pbmctaG91cnMtdGl0bGUsIC5icmFuY2gtLWNvbnRhY3QgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5mb3JtX190aXRsZSwgLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAuZm9ybV9fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX3RpdGxlLCAuZmluYW5jZS10YWJsZS0tZnVsbCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5maW5hbmNlLXRhYmxlX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCAuZmluYW5jZS1jaGVja2VyX19kZXRhaWxzLXRpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fdGl0bGUsIC5maW5hbmNlLXRhYmxlLS1vcmRlciAub2ZmZXItLWZ1bGwgLm9mZmVyX19jb250YWN0IC5maW5hbmNlLXRhYmxlX190aXRsZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2NvbnRhY3QgcCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fY29udGFjdCBwIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5vZmZlci0tZnVsbCAub2ZmZXJfX3RlbGVwaG9uZSB7XG4gICAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX3RlbGVwaG9uZS1sYWJlbCB7XG4gICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS40OyB9XG4gICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fdGVsZXBob25lLXZhbHVlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX3RlbGVwaG9uZS12YWx1ZSBpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjMxMjVyZW07XG4gICAgICAgIGNvbG9yOiAjYzMwMDJmOyB9XG4gICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX190ZWxlcGhvbmUtdmFsdWUgc3BhbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybSB7XG4gICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm06OmJlZm9yZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybTo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0sIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm06bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNi4yNXJlbTsgfSB9XG4gICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSBoMiwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0tdGl0bGUgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSwgLnBhcnQtLWZlYXR1cmVkIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0tdGl0bGUgLnBhcnRfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFydC0tZnVsbCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5wYXJ0X19mb3JtLXRpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsIC5wb3N0LS1mZWF0dXJlZCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5wb3N0X190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1nZW5lcmFsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0tdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tbGF0ZXN0IC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0tdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0tdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5saXN0aW5nX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5saXN0aW5nX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5saXN0aW5nX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSwgLnBhZ2UtLXRlYXNlciAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5wYWdlX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSBoMiwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0tdGl0bGUgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSwgLnBhcnQtLWZlYXR1cmVkIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0tdGl0bGUgLnBhcnRfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFydC0tZnVsbCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5wYXJ0X19mb3JtLXRpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsIC5wb3N0LS1mZWF0dXJlZCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5wb3N0X190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1nZW5lcmFsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0tdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tbGF0ZXN0IC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0tdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0tdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5saXN0aW5nX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5saXN0aW5nX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5vZmZlci0tZnVsbCAub2ZmZXJfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5saXN0aW5nX190aXRsZSwgLm9mZmVyLS1mdWxsIC5vZmZlcl9fZm9ybS10aXRsZSAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSwgLnBhZ2UtLXRlYXNlciAub2ZmZXItLWZ1bGwgLm9mZmVyX19mb3JtLXRpdGxlIC5wYWdlX190aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG5cbi5vZmZlci0tdGVhc2VyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX19wcmltYXJ5LWltYWdlcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4zMTI1cmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3ByaW1hcnktaW1hZ2VzIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzOyB9XG4gICAgICAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3ByaW1hcnktaW1hZ2VzIGltZzpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IC44OyB9XG4gIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fZGV0YWlscyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMC42MjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAub2ZmZXItLXRlYXNlciAub2ZmZXJfX2RldGFpbHMge1xuICAgICAgICBwYWRkaW5nOiAxLjI1cmVtOyB9IH1cbiAgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSBoMiwgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSwgLnBhcnQtLWZlYXR1cmVkIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLnBhcnRfX3RpdGxlLCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFydC0tZnVsbCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5wYXJ0X19mb3JtLXRpdGxlLCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsIC5wb3N0LS1mZWF0dXJlZCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5wb3N0X190aXRsZSwgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1nZW5lcmFsIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tbGF0ZXN0IC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSwgLnBhZ2UtLXRlYXNlciAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5wYWdlX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogIzIyMjIyMjtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgaDIsIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLm9mZmVyX190aXRsZSwgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5wYXJ0X190aXRsZSwgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAucGFydF9fZm9ybS10aXRsZSwgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlLCAucG9zdC0tZmVhdHVyZWQgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAucG9zdF9fdGl0bGUsIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tZ2VuZXJhbCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC52ZWhpY2xlX190aXRsZSwgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC52ZWhpY2xlX190aXRsZSwgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAub2ZmZXItLXRlYXNlciAub2ZmZXJfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fdGl0bGUgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX190aXRsZSAucGFnZV9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9IH1cbiAgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX19zdWItdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDAuMzEyNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzY2NjY2NjtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX19zdWItdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfSB9XG4gIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fYm90dG9tIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIGdhcDogMS44NzVyZW07XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBwYWRkaW5nOiAwLjkzNzVyZW0gMC42MjVyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFOEU4RTg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX19ib3R0b20ge1xuICAgICAgICBwYWRkaW5nOiAxLjI1cmVtOyB9IH1cbiAgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX19saW5rIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMC44MTI1cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub2ZmZXItLXRlYXNlciAub2ZmZXJfX2xpbmsgYSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX19saW5rIGE6aG92ZXIsIC5vZmZlci0tdGVhc2VyIC5vZmZlcl9fbGluayBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAub2ZmZXItLXRlYXNlciAub2ZmZXJfX2xpbmsgYSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07IH0gfVxuICAub2ZmZXItLXRlYXNlciAub2ZmZXJfX21vbnRobHktcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX19tb250aGx5LXByaWNlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfSB9XG4gICAgLm9mZmVyLS10ZWFzZXIgLm9mZmVyX19tb250aGx5LXByaWNlIHNwYW4ge1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IDcwJTsgfVxuXG4ucGFnZS0tY29udGFjdCB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYWdlLS1jb250YWN0IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzLjEyNXJlbTsgfSB9XG4gIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX3ByaW1hcnktaW1hZ2VzIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19wcmltYXJ5LWltYWdlcyBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQ6OmJlZm9yZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50OjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQsIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuODc1cmVtOyB9IH1cbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIGgyLCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsIC5vZmZlci0tZmVhdHVyZWQgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLm9mZmVyX190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLm9yZGVyLXByb2dyZXNzX190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSwgLnBhcnQtLWZlYXR1cmVkIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5wYXJ0X190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBhcnQtLWZ1bGwgLnBhcnRfX2Zvcm0tdGl0bGUsIC5wYXJ0LS1mdWxsIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlLCAucG9zdC0tZmVhdHVyZWQgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBvc3RfX3RpdGxlLCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1nZW5lcmFsIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC52ZWhpY2xlX190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1sYXRlc3QgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlLCAucGFnZS0tdGVhc2VyIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5wYWdlX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIGgyLCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsIC5vZmZlci0tZmVhdHVyZWQgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLm9mZmVyX190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLm9yZGVyLXByb2dyZXNzX190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSwgLnBhcnQtLWZlYXR1cmVkIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5wYXJ0X190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBhcnQtLWZ1bGwgLnBhcnRfX2Zvcm0tdGl0bGUsIC5wYXJ0LS1mdWxsIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlLCAucG9zdC0tZmVhdHVyZWQgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBvc3RfX3RpdGxlLCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1nZW5lcmFsIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC52ZWhpY2xlX190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1sYXRlc3QgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlLCAucGFnZS0tdGVhc2VyIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5wYWdlX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9IH1cbiAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiB7XG4gICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gYTpub3QoLmJ1dHRvbikge1xuICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGE6bm90KC5idXR0b24pOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGgyLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLFxuICAgICAgLm9mZmVyLS1mZWF0dXJlZCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAub2ZmZXJfX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm9yZGVyLXByb2dyZXNzX190aXRsZSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsXG4gICAgICAucGFydC0tZmVhdHVyZWQgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBhcnRfX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBhcnQtLWZ1bGwgLnBhcnRfX2Zvcm0tdGl0bGUsXG4gICAgICAucGFydC0tZnVsbCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAucGFydF9fZm9ybS10aXRsZSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsXG4gICAgICAucG9zdC0tZmVhdHVyZWQgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBvc3RfX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLFxuICAgICAgLnZlaGljbGUtLWdlbmVyYWwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnZlaGljbGVfX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGl0bGUsXG4gICAgICAudmVoaWNsZS0tbGF0ZXN0IC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlX190aXRsZSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbiAgICAgIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZ19fdGl0bGUsXG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsXG4gICAgICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZ19fdGl0bGUsXG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlLFxuICAgICAgLnBhZ2UtLXRlYXNlciAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAucGFnZV9fdGl0bGUsXG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMyxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3RpdGxlLFxuICAgICAgLmJsb2NrLS1zaWRlYmFyIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5ibG9ja19fdGl0bGUsXG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fc3ViLXRpdGxlLFxuICAgICAgLm9mZmVyLS1mZWF0dXJlZCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAub2ZmZXJfX3N1Yi10aXRsZSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5hZGQtb25fX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCBzcGFuLFxuICAgICAgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBzcGFuLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmNvbGxlY3Rpb24tZGVsaXZlcnlfX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm9yZGVyLXBheW1lbnRfX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtdGl0bGUsXG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3N1Yi10aXRsZSxcbiAgICAgIC5wYXJ0LS1mZWF0dXJlZCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAucGFydF9fc3ViLXRpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBvc3QtLWZlYXR1cmVkIC5wb3N0X19zdWItdGl0bGUsXG4gICAgICAucG9zdC0tZmVhdHVyZWQgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBvc3RfX3N1Yi10aXRsZSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5xdWljay1zZWFyY2hfX2xlZ2VuZCxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgICAgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgICAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgICAgLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgaDEsXG4gICAgICAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGgxLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLFxuICAgICAgLmJyYW5jaC0tY29udGFjdCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLmZvcm1fX3RpdGxlLFxuICAgICAgLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZvcm1fX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAgICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtY2hlY2tlcl9fZGV0YWlscy10aXRsZSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fdGl0bGUsXG4gICAgICAuZmluYW5jZS10YWJsZS0tb3JkZXIgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDQsXG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudmlkZW8tLXBhZ2UgLnZpZGVvX190aXRsZSxcbiAgICAgIC52aWRlby0tcGFnZSAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudmlkZW9fX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGkgLnNwZWNpZmljYXRpb24tY2F0ZWdvcnlfX3RpdGxlLFxuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGkgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnNwZWNpZmljYXRpb24tY2F0ZWdvcnlfX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4gICAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4gICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtZm9ybSAuZmluYW5jZS1mb3JtX190aXRsZSxcbiAgICAgIC5maW5hbmNlLWZvcm0gLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtZm9ybV9fdGl0bGUsXG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZXMgLmZpbmFuY2Utd2FybmluZyxcbiAgICAgIC5maW5hbmNlLXRhYmxlcyAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS13YXJuaW5nLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2NoZWNrZXItdGl0bGUsXG4gICAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fY2hlY2tlci10aXRsZSxcbiAgICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLWV4YW1wbGVfX3RpdGxlLFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDUsXG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYmxvY2stLXNpZGViYXIgLmJsb2NrX19zdWItdGl0bGUsXG4gICAgICAuYmxvY2stLXNpZGViYXIgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmJsb2NrX19zdWItdGl0bGUsXG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoNiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjYyNXJlbTsgfVxuICAgICAgLnBhZ2UtLWNvbnRhY3QgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5wYWdlLS1jb250YWN0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2ZpbGVzIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19maWxlcyB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19maWxlcyB1bCBsaSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgICAgICAgICAucGFnZS0tY29udGFjdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19maWxlcyB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAucGFnZS0tY29udGFjdCAucGFnZV9fYnJhbmNoZXMge1xuICAgIG1heC13aWR0aDogODEuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICAucGFnZS0tY29udGFjdCAucGFnZV9fYnJhbmNoZXM6OmJlZm9yZSwgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2JyYW5jaGVzOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC5wYWdlLS1jb250YWN0IC5wYWdlX19icmFuY2hlczo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2JyYW5jaGVzIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2JyYW5jaGVzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2JyYW5jaGVzLCAucGFnZS0tY29udGFjdCAucGFnZV9fYnJhbmNoZXM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS0tY29udGFjdCAucGFnZV9fYnJhbmNoZXMge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gIC5wYWdlLS1jb250YWN0IC5wYWdlX192aWRlb3Mge1xuICAgIG1heC13aWR0aDogODEuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICAucGFnZS0tY29udGFjdCAucGFnZV9fdmlkZW9zOjpiZWZvcmUsIC5wYWdlLS1jb250YWN0IC5wYWdlX192aWRlb3M6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3ZpZGVvczo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3ZpZGVvcyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5wYWdlLS1jb250YWN0IC5wYWdlX192aWRlb3M6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAucGFnZS0tY29udGFjdCAucGFnZV9fdmlkZW9zLCAucGFnZS0tY29udGFjdCAucGFnZV9fdmlkZW9zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3ZpZGVvcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3ZpZGVvcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07IH0gfVxuICAgIC5wYWdlLS1jb250YWN0IC5wYWdlX192aWRlb3MgdWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogMS4yNXJlbTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucGFnZS0tY29udGFjdCAucGFnZV9fdmlkZW9zIHVsIHtcbiAgICAgICAgICBnYXA6IDEuODc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3ZpZGVvcyB1bCB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG4gICAgICAucGFnZS0tY29udGFjdCAucGFnZV9fdmlkZW9zIHVsIGxpIHtcbiAgICAgICAgZmxleDogMTsgfVxuICAgICAgICAucGFnZS0tY29udGFjdCAucGFnZV9fdmlkZW9zIHVsIGxpIGlmcmFtZSB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIC5wYWdlLS1jb250YWN0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogOTcuNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgIC5wYWdlLS1jb250YWN0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzOjpiZWZvcmUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC5wYWdlLS1jb250YWN0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS0tY29udGFjdCAucGFnZV9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5wYWdlLS1jb250YWN0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMsIC5wYWdlLS1jb250YWN0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdlLS1jb250YWN0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNi4yNXJlbTsgfSB9XG4gICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMgdWwgbGkgaW1nIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIC5wYWdlLS1jb250YWN0IC5wYWdlX19zaG9ydC1kZXNjcmlwdGlvbiB7XG4gICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbiAgICBjb2xvcjogIzcxNzU4MDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODsgfVxuICAgIC5wYWdlLS1jb250YWN0IC5wYWdlX19zaG9ydC1kZXNjcmlwdGlvbjo6YmVmb3JlLCAucGFnZS0tY29udGFjdCAucGFnZV9fc2hvcnQtZGVzY3JpcHRpb246OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3Nob3J0LWRlc2NyaXB0aW9uOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS0tY29udGFjdCAucGFnZV9fc2hvcnQtZGVzY3JpcHRpb24ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAucGFnZS0tY29udGFjdCAucGFnZV9fc2hvcnQtZGVzY3JpcHRpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAucGFnZS0tY29udGFjdCAucGFnZV9fc2hvcnQtZGVzY3JpcHRpb24sIC5wYWdlLS1jb250YWN0IC5wYWdlX19zaG9ydC1kZXNjcmlwdGlvbjpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdlLS1jb250YWN0IC5wYWdlX19zaG9ydC1kZXNjcmlwdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3Nob3J0LWRlc2NyaXB0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNi4yNXJlbTsgfSB9XG4gICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3Nob3J0LWRlc2NyaXB0aW9uIHA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtIHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm06OmJlZm9yZSwgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm06OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm06OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybSwgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm06bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0ge1xuICAgICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cbiAgICAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSBoMiwgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5vZmZlcl9fdGl0bGUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAucGFydF9fdGl0bGUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFydC0tZnVsbCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAucGFydF9fZm9ybS10aXRsZSwgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5wb3N0X190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tZ2VuZXJhbCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tbGF0ZXN0IC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC52ZWhpY2xlX190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSwgLnBhZ2UtLXRlYXNlciAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAucGFnZV9fdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSBoMiwgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5vZmZlcl9fdGl0bGUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAucGFydF9fdGl0bGUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFydC0tZnVsbCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAucGFydF9fZm9ybS10aXRsZSwgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5wb3N0X190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tZ2VuZXJhbCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tbGF0ZXN0IC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC52ZWhpY2xlX190aXRsZSwgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1jb250YWN0IC5wYWdlX19mb3JtLXRpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSwgLnBhZ2UtLXRlYXNlciAucGFnZS0tY29udGFjdCAucGFnZV9fZm9ybS10aXRsZSAucGFnZV9fdGl0bGUge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuXG4ucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19wcmltYXJ5LWltYWdlcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19wcmltYXJ5LWltYWdlcyB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fcHJpbWFyeS1pbWFnZXMgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4ucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50OjpiZWZvcmUsIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQsIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07IH0gfVxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgaDIsIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAub2ZmZXJfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBhcnRfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBhcnRfX2Zvcm0tdGl0bGUsIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsIC5wb3N0LS1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAucG9zdF9fdGl0bGUsIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBhZ2VfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgaDIsIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAub2ZmZXJfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBhcnRfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBhcnRfX2Zvcm0tdGl0bGUsIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsIC5wb3N0LS1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAucG9zdF9fdGl0bGUsIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fdGl0bGUgLnBhZ2VfX3RpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9IH1cbiAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24ge1xuICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGE6bm90KC5idXR0b24pIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gYTpub3QoLmJ1dHRvbik6aG92ZXIge1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGgxLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGgyLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSxcbiAgICAub2ZmZXItLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5vZmZlcl9fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm9yZGVyLXByb2dyZXNzX190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLFxuICAgIC5wYXJ0LS1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAucGFydF9fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBhcnQtLWZ1bGwgLnBhcnRfX2Zvcm0tdGl0bGUsXG4gICAgLnBhcnQtLWZ1bGwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBhcnRfX2Zvcm0tdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSxcbiAgICAucG9zdC0tZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBvc3RfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSxcbiAgICAudmVoaWNsZS0tZ2VuZXJhbCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudmVoaWNsZV9fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGl0bGUsXG4gICAgLnZlaGljbGUtLWxhdGVzdCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudmVoaWNsZV9fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsXG4gICAgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSxcbiAgICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZ19fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbiAgICAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlLFxuICAgIC5wYWdlLS10ZWFzZXIgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBhZ2VfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGgzLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3RpdGxlLFxuICAgIC5ibG9jay0tc2lkZWJhciAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYmxvY2tfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19zdWItdGl0bGUsXG4gICAgLm9mZmVyLS1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAub2ZmZXJfX3N1Yi10aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYWRkLW9uX190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX21vbnRoIHNwYW4sXG4gICAgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBzcGFuLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAub3JkZXItcGF5bWVudF9fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19zdWItdGl0bGUsXG4gICAgLnBhcnQtLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wYXJ0X19zdWItdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBvc3QtLWZlYXR1cmVkIC5wb3N0X19zdWItdGl0bGUsXG4gICAgLnBvc3QtLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wb3N0X19zdWItdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnF1aWNrLXNlYXJjaF9fbGVnZW5kLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGgxLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgICAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGgxLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIGgxLFxuICAgIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDEsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLFxuICAgIC5icmFuY2gtLWNvbnRhY3QgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZm9ybS0tcGFydC1leGNoYW5nZSAuZm9ybV9fdGl0bGUsXG4gICAgLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZvcm1fX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbiAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtY2hlY2tlcl9fZGV0YWlscy10aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAgIC5maW5hbmNlLXRhYmxlLS1vcmRlciAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDQsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnZpZGVvLS1wYWdlIC52aWRlb19fdGl0bGUsXG4gICAgLnZpZGVvLS1wYWdlIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC52aWRlb19fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGkgLnNwZWNpZmljYXRpb24tY2F0ZWdvcnlfX3RpdGxlLFxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCA+IGxpIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5zcGVjaWZpY2F0aW9uLWNhdGVnb3J5X190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSxcbiAgICAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtZm9ybSAuZmluYW5jZS1mb3JtX190aXRsZSxcbiAgICAuZmluYW5jZS1mb3JtIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLWZvcm1fX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlcyAuZmluYW5jZS13YXJuaW5nLFxuICAgIC5maW5hbmNlLXRhYmxlcyAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS13YXJuaW5nLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX19jaGVja2VyLXRpdGxlLFxuICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlX19jaGVja2VyLXRpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLWV4YW1wbGVfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGg1LFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3N1Yi10aXRsZSxcbiAgICAuYmxvY2stLXNpZGViYXIgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmJsb2NrX19zdWItdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDYge1xuICAgICAgcGFkZGluZy10b3A6IDAuNjI1cmVtO1xuICAgICAgY29sb3I6ICMyMjIyMjI7IH1cbiAgICBcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMixcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsXG4gICAgLm9mZmVyLS1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAub2ZmZXJfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSxcbiAgICAucGFydC0tZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBhcnRfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLFxuICAgIC5wYXJ0LS1mdWxsIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wYXJ0X19mb3JtLXRpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsXG4gICAgLnBvc3QtLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wb3N0X190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsXG4gICAgLnZlaGljbGUtLWdlbmVyYWwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnZlaGljbGVfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLFxuICAgIC52ZWhpY2xlLS1sYXRlc3QgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnZlaGljbGVfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbiAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZ19fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSxcbiAgICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsXG4gICAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsXG4gICAgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nX190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSxcbiAgICAucGFnZS0tdGVhc2VyIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wYWdlX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMixcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLFxuICAgICAgICAub2ZmZXItLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5vZmZlcl9fdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsXG4gICAgICAgIC5wYXJ0LS1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAucGFydF9fdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLFxuICAgICAgICAucGFydC0tZnVsbCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAucGFydF9fZm9ybS10aXRsZSxcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSxcbiAgICAgICAgLnBvc3QtLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wb3N0X190aXRsZSxcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLFxuICAgICAgICAudmVoaWNsZS0tZ2VuZXJhbCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudmVoaWNsZV9fdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLFxuICAgICAgICAudmVoaWNsZS0tbGF0ZXN0IC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlX190aXRsZSxcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZ19fdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbiAgICAgICAgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSxcbiAgICAgICAgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZ19fdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSxcbiAgICAgICAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgICAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSxcbiAgICAgICAgLnBhZ2UtLXRlYXNlciAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAucGFnZV9fdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS42MjVyZW07IH0gfVxuICAgIFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGgzLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5ibG9jay0tc2lkZWJhciAuYmxvY2tfX3RpdGxlLFxuICAgIC5ibG9jay0tc2lkZWJhciAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYmxvY2tfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19zdWItdGl0bGUsXG4gICAgLm9mZmVyLS1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAub2ZmZXJfX3N1Yi10aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYWRkLW9uX190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX21vbnRoIHNwYW4sXG4gICAgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBzcGFuLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAub3JkZXItcGF5bWVudF9fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm9yZGVyLXN0YXRlLXN1bW1hcnlfX3ZlaGljbGUtdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19zdWItdGl0bGUsXG4gICAgLnBhcnQtLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wYXJ0X19zdWItdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBvc3QtLWZlYXR1cmVkIC5wb3N0X19zdWItdGl0bGUsXG4gICAgLnBvc3QtLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wb3N0X19zdWItdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnF1aWNrLXNlYXJjaF9fbGVnZW5kLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGgxLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgICAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGgxLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIGgxLFxuICAgIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDEsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmJyYW5jaC0tY29udGFjdCAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLFxuICAgIC5icmFuY2gtLWNvbnRhY3QgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZm9ybS0tcGFydC1leGNoYW5nZSAuZm9ybV9fdGl0bGUsXG4gICAgLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZvcm1fX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbiAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtY2hlY2tlcl9fZGV0YWlscy10aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAgIC5maW5hbmNlLXRhYmxlLS1vcmRlciAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGgzLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYmxvY2stLXNpZGViYXIgLmJsb2NrX190aXRsZSxcbiAgICAgICAgLmJsb2NrLS1zaWRlYmFyIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5ibG9ja19fdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19zdWItdGl0bGUsXG4gICAgICAgIC5vZmZlci0tZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm9mZmVyX19zdWItdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5hZGQtb25fX3RpdGxlLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX21vbnRoIHNwYW4sXG4gICAgICAgIC5jYWxlbmRhcl9faGVhZGVyIC5jYWxlbmRhcl9fbW9udGggLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gc3BhbixcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmNvbGxlY3Rpb24tZGVsaXZlcnlfX3RpdGxlLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAub3JkZXItcGF5bWVudF9fdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5vcmRlci1zdGF0ZS1zdW1tYXJ5X192ZWhpY2xlLXRpdGxlLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3N1Yi10aXRsZSxcbiAgICAgICAgLnBhcnQtLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wYXJ0X19zdWItdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fc3ViLXRpdGxlLFxuICAgICAgICAucG9zdC0tZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnBvc3RfX3N1Yi10aXRsZSxcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnF1aWNrLXNlYXJjaF9fbGVnZW5kLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgICAgICAgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgICAgIC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fdGl0bGUgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgICAgICAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoMSxcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgICAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsXG4gICAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgaDEsXG4gICAgICAgIC5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSxcbiAgICAgICAgLmJyYW5jaC0tY29udGFjdCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYnJhbmNoX19vcGVuaW5nLWhvdXJzLXRpdGxlLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZm9ybS0tcGFydC1leGNoYW5nZSAuZm9ybV9fdGl0bGUsXG4gICAgICAgIC5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5mb3JtX190aXRsZSxcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAgICAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLWNoZWNrZXJfX2RldGFpbHMtdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fdGl0bGUsXG4gICAgICAgIC5maW5hbmNlLXRhYmxlLS1vcmRlciAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9IH1cbiAgICBcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoNCxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudmlkZW8tLXBhZ2UgLnZpZGVvX190aXRsZSxcbiAgICAudmlkZW8tLXBhZ2UgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnZpZGVvX190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zcGVjaWZpY2F0aW9uID4gdWwgPiBsaSAuc3BlY2lmaWNhdGlvbi1jYXRlZ29yeV9fdGl0bGUsXG4gICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fc3BlY2lmaWNhdGlvbiA+IHVsID4gbGkgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnNwZWNpZmljYXRpb24tY2F0ZWdvcnlfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4gICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS1mb3JtIC5maW5hbmNlLWZvcm1fX3RpdGxlLFxuICAgIC5maW5hbmNlLWZvcm0gLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtZm9ybV9fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGVzIC5maW5hbmNlLXdhcm5pbmcsXG4gICAgLmZpbmFuY2UtdGFibGVzIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXdhcm5pbmcsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2NoZWNrZXItdGl0bGUsXG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGVfX2NoZWNrZXItdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtZXhhbXBsZV9fdGl0bGUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDUsXG4gICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmJsb2NrLS1zaWRlYmFyIC5ibG9ja19fc3ViLXRpdGxlLFxuICAgIC5ibG9jay0tc2lkZWJhciAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYmxvY2tfX3N1Yi10aXRsZSxcbiAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoNiB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiBoNCxcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLnZpZGVvLS1wYWdlIC52aWRlb19fdGl0bGUsXG4gICAgICAgIC52aWRlby0tcGFnZSAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudmlkZW9fX3RpdGxlLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zcGVjaWZpY2F0aW9uID4gdWwgPiBsaSAuc3BlY2lmaWNhdGlvbi1jYXRlZ29yeV9fdGl0bGUsXG4gICAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCA+IGxpIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5zcGVjaWZpY2F0aW9uLWNhdGVnb3J5X190aXRsZSxcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4gICAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS1mb3JtIC5maW5hbmNlLWZvcm1fX3RpdGxlLFxuICAgICAgICAuZmluYW5jZS1mb3JtIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLWZvcm1fX3RpdGxlLFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZXMgLmZpbmFuY2Utd2FybmluZyxcbiAgICAgICAgLmZpbmFuY2UtdGFibGVzIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXdhcm5pbmcsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX19jaGVja2VyLXRpdGxlLFxuICAgICAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZV9fY2hlY2tlci10aXRsZSxcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gLmZpbmFuY2UtZXhhbXBsZV9fdGl0bGUsXG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIGg1LFxuICAgICAgICAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYmxvY2stLXNpZGViYXIgLmJsb2NrX19zdWItdGl0bGUsXG4gICAgICAgIC5ibG9jay0tc2lkZWJhciAucGFnZS0tZGVmYXVsdCA+IC5wYWdlX19jb250ZW50IC5wYWdlX19kZXNjcmlwdGlvbiAuYmxvY2tfX3N1Yi10aXRsZSxcbiAgICAgICAgLnBhZ2UtLWRlZmF1bHQgPiAucGFnZV9fY29udGVudCAucGFnZV9fZGVzY3JpcHRpb24gaDYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07IH0gfVxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2Rlc2NyaXB0aW9uIHA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2ZpbGVzIHtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2ZpbGVzIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2ZpbGVzIHVsIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9XG4gICAgICAgIC5wYWdlLS1kZWZhdWx0ID4gLnBhZ2VfX2NvbnRlbnQgLnBhZ2VfX2ZpbGVzIHVsIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4ucGFnZS0tZGVmYXVsdCAucGFnZV9fdmlkZW9zIHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3ZpZGVvczo6YmVmb3JlLCAucGFnZS0tZGVmYXVsdCAucGFnZV9fdmlkZW9zOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX192aWRlb3M6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYWdlLS1kZWZhdWx0IC5wYWdlX192aWRlb3Mge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAucGFnZS0tZGVmYXVsdCAucGFnZV9fdmlkZW9zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAucGFnZS0tZGVmYXVsdCAucGFnZV9fdmlkZW9zLCAucGFnZS0tZGVmYXVsdCAucGFnZV9fdmlkZW9zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3ZpZGVvcyB7XG4gICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3ZpZGVvcyB7XG4gICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cbiAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3ZpZGVvcyB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fdmlkZW9zIHVsIGxpICsgbGkge1xuICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuICAgIC5wYWdlLS1kZWZhdWx0IC5wYWdlX192aWRlb3MgdWwgbGkgLnZpZGVvIC52aWRlb19fdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS42OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fdmlkZW9zIHVsIGxpIC52aWRlbyAudmlkZW9fX3RpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fdmlkZW9zIHVsIGxpIGlmcmFtZSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fdmlkZW9zIHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6IDEuODc1cmVtOyB9XG4gICAgICAgIC5wYWdlLS1kZWZhdWx0IC5wYWdlX192aWRlb3MgdWwgbGkge1xuICAgICAgICAgIGZsZXg6IDEgMSA0NSU7IH1cbiAgICAgICAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fdmlkZW9zIHVsIGxpICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi5wYWdlLS1kZWZhdWx0IC5wYWdlX19zZXJ2aWNlIHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3NlcnZpY2U6OmJlZm9yZSwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3NlcnZpY2U6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3NlcnZpY2U6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zZXJ2aWNlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3NlcnZpY2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zZXJ2aWNlLCAucGFnZS0tZGVmYXVsdCAucGFnZV9fc2VydmljZTpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zZXJ2aWNlIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fc2VydmljZSB7XG4gICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cblxuLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMge1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDk3LjVyZW07XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzOjpiZWZvcmUsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAucGFnZS0tZGVmYXVsdCAucGFnZV9fc2Vjb25kYXJ5LWltYWdlcywgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMge1xuICAgICAgbWFyZ2luLXRvcDogNi4yNXJlbTsgfSB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIHVsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIHVsIGxpIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cblxuLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3Nob3J0LWRlc2NyaXB0aW9uIHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gIGNvbG9yOiAjNzE3NTgwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg7IH1cbiAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3Nob3J0LWRlc2NyaXB0aW9uOjpiZWZvcmUsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zaG9ydC1kZXNjcmlwdGlvbjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAucGFnZS0tZGVmYXVsdCAucGFnZV9fc2hvcnQtZGVzY3JpcHRpb246OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zaG9ydC1kZXNjcmlwdGlvbiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zaG9ydC1kZXNjcmlwdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3Nob3J0LWRlc2NyaXB0aW9uLCAucGFnZS0tZGVmYXVsdCAucGFnZV9fc2hvcnQtZGVzY3JpcHRpb246bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fc2hvcnQtZGVzY3JpcHRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zaG9ydC1kZXNjcmlwdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cbiAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3Nob3J0LWRlc2NyaXB0aW9uIHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucGFnZS0tZGVmYXVsdCAucGFnZV9fY2hpbGRyZW4ge1xuICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAucGFnZS0tZGVmYXVsdCAucGFnZV9fY2hpbGRyZW46OmJlZm9yZSwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2NoaWxkcmVuOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19jaGlsZHJlbjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2NoaWxkcmVuIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2NoaWxkcmVuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAucGFnZS0tZGVmYXVsdCAucGFnZV9fY2hpbGRyZW4sIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19jaGlsZHJlbjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19jaGlsZHJlbiB7XG4gICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2NoaWxkcmVuIHtcbiAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07IH0gfVxuXG4ucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybSB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtOjpiZWZvcmUsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybSwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm06bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybSB7XG4gICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0ge1xuICAgICAgbWFyZ2luLXRvcDogNi4yNXJlbTsgfSB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIGgyLCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fdGl0bGUsIC5vZmZlci0tZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLm9mZmVyX190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLm9yZGVyLXByb2dyZXNzX190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X190aXRsZSwgLnBhcnQtLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5wYXJ0X190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLnBhcnQtLWZ1bGwgLnBhcnRfX2Zvcm0tdGl0bGUsIC5wYXJ0LS1mdWxsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlLCAucG9zdC0tZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLnBvc3RfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1nZW5lcmFsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC52ZWhpY2xlX190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1sYXRlc3QgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5saXN0aW5nX190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5saXN0aW5nX190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlLCAucGFnZS0tdGVhc2VyIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5wYWdlX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSBoMiwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5vZmZlcl9fdGl0bGUsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAucGFydF9fdGl0bGUsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFydC0tZnVsbCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAucGFydF9fZm9ybS10aXRsZSwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5wb3N0X190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tZ2VuZXJhbCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tbGF0ZXN0IC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC52ZWhpY2xlX190aXRsZSwgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19mb3JtLXRpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX2Zvcm0tdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSwgLnBhZ2UtLXRlYXNlciAucGFnZS0tZGVmYXVsdCAucGFnZV9fZm9ybS10aXRsZSAucGFnZV9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG5cbi5wYWdlLS1ob21lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucGFnZS0taG9tZSAucGFnZV9fdG9wLFxuICAucGFnZS0taG9tZSAucGFnZV9fbWVkaWEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucGFnZS0taG9tZSAucGFnZV9fcHJpbWFyeS1pbWFnZXMgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5wYWdlLS1ob21lIC5wYWdlX19wcmltYXJ5LWltYWdlcyBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5wYWdlLS1ob21lIC5wYWdlX19vdmVybGF5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX292ZXJsYXkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDk5OTsgfSB9XG4gIC5wYWdlLS1ob21lIC5wYWdlX19oZXJvIHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gICAgbWF4LXdpZHRoOiA5Ny41cmVtOyB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2hlcm86OmJlZm9yZSwgLnBhZ2UtLWhvbWUgLnBhZ2VfX2hlcm86OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2hlcm86OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19oZXJvIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2hlcm86bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAucGFnZS0taG9tZSAucGFnZV9faGVybywgLnBhZ2UtLWhvbWUgLnBhZ2VfX2hlcm86bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9faGVybyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAucGFnZS0taG9tZSAucGFnZV9faGVyby1pbm5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogMS44NzVyZW07IH1cbiAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3Nsb2dhbiB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7IH1cbiAgICAucGFnZS0taG9tZSAucGFnZV9fc2xvZ2FuIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDQuMzc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDsgfVxuICAucGFnZS0taG9tZSAucGFnZV9fcGFydG5lcnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiAtNC4zNzVyZW07XG4gICAgcGFkZGluZy10b3A6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDM0LCAzNCwgMC4yNSk7XG4gICAgei1pbmRleDogOTk5OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19wYXJ0bmVycyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtO1xuICAgICAgICBvcmRlcjogMjsgfSB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3BhcnRuZXJzLWlubmVyIHtcbiAgICAgIG1heC13aWR0aDogODEuMjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICBtYXgtd2lkdGg6IDk3LjVyZW07IH1cbiAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19wYXJ0bmVycy1pbm5lcjo6YmVmb3JlLCAucGFnZS0taG9tZSAucGFnZV9fcGFydG5lcnMtaW5uZXI6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3BhcnRuZXJzLWlubmVyOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucGFnZS0taG9tZSAucGFnZV9fcGFydG5lcnMtaW5uZXIge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fcGFydG5lcnMtaW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3BhcnRuZXJzLWlubmVyLCAucGFnZS0taG9tZSAucGFnZV9fcGFydG5lcnMtaW5uZXI6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZsb2F0OiBub25lOyB9XG4gIC5wYWdlLS1ob21lIC5wYWdlX19zZWFyY2gge1xuICAgIG1heC13aWR0aDogODEuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWF4LXdpZHRoOiA5Ny41cmVtO1xuICAgIHBhZGRpbmctdG9wOiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC42MjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjsgfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX19zZWFyY2g6OmJlZm9yZSwgLnBhZ2UtLWhvbWUgLnBhZ2VfX3NlYXJjaDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAucGFnZS0taG9tZSAucGFnZV9fc2VhcmNoOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fc2VhcmNoIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3NlYXJjaDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX19zZWFyY2gsIC5wYWdlLS1ob21lIC5wYWdlX19zZWFyY2g6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fc2VhcmNoIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19zZWFyY2gge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBvcmRlcjogMTsgfSB9XG4gIC5wYWdlLS1ob21lIC5wYWdlX19mYWRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwKSAwJSwgcmdiYSgwLCAwLCAwLCAwLjE1KSA1MCUsIHJnYmEoMCwgMCwgMCwgMC4zNSkgNzUlLCByZ2JhKDAsIDAsIDAsIDAuMzUpIDEwMCUpOyB9XG4gIC5wYWdlLS1ob21lIC5wYWdlX19taWRkbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX21pZGRsZSAucGFnZV9fdmVoaWNsZS10eXBlcyxcbiAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19taWRkbGUgLnBhZ2VfX2p1ZGdlLXNlcnZpY2Uge1xuICAgICAgICBvcmRlcjogLTE7IH0gfVxuICAucGFnZS0taG9tZSAucGFnZV9fanVkZ2Utc2VydmljZSB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2p1ZGdlLXNlcnZpY2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19qdWRnZS1zZXJ2aWNlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNi4yNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0UzRTNFMzsgfSB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2p1ZGdlLXNlcnZpY2UtaW5uZXIge1xuICAgICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2p1ZGdlLXNlcnZpY2UtaW5uZXI6OmJlZm9yZSwgLnBhZ2UtLWhvbWUgLnBhZ2VfX2p1ZGdlLXNlcnZpY2UtaW5uZXI6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2p1ZGdlLXNlcnZpY2UtaW5uZXI6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19qdWRnZS1zZXJ2aWNlLWlubmVyIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2p1ZGdlLXNlcnZpY2UtaW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2p1ZGdlLXNlcnZpY2UtaW5uZXIsIC5wYWdlLS1ob21lIC5wYWdlX19qdWRnZS1zZXJ2aWNlLWlubmVyOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbm9uZTsgfVxuICAucGFnZS0taG9tZSAucGFnZV9fY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX19jb250ZW50OjpiZWZvcmUsIC5wYWdlLS1ob21lIC5wYWdlX19jb250ZW50OjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX19jb250ZW50OjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2NvbnRlbnQsIC5wYWdlLS1ob21lIC5wYWdlX19jb250ZW50Omxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2NvbnRlbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYuMjVyZW07IH0gfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX19jb250ZW50LWlubmVyIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgIGdhcDogMS44NzVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19jb250ZW50LWlubmVyIHtcbiAgICAgICAgICBnYXA6IDMuMTI1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19jb250ZW50LWlubmVyIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgICAgZ2FwOiA2LjI1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2NvbnRlbnQtaW5uZXIge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNTAlIDFmcjtcbiAgICAgICAgICBnYXA6IDguNzVyZW07IH0gfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX19jb250ZW50LWltYWdlcyB7XG4gICAgICBtaW4td2lkdGg6IDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19jb250ZW50LWltYWdlcyB7XG4gICAgICAgICAgb3JkZXI6IC0xOyB9IH1cbiAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3RpdGxlIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMi4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fdGl0bGUgaDEge1xuICAgICAgICBmb250LXNpemU6IDMuMTI1cmVtOyB9IH1cbiAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3N1Yi10aXRsZSB7XG4gICAgY29sb3I6ICNjMzAwMmY7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3N1Yi10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG4gIC5wYWdlLS1ob21lIC5wYWdlX19kZXNjcmlwdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbiAgICBjb2xvcjogIzY2NjY2NjtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbGluZS1oZWlnaHQ6IDI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07IH0gfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX19kZXNjcmlwdGlvbiBhOm5vdCguYnV0dG9uKSB7XG4gICAgICBjb2xvcjogI2MzMDAyZjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2Rlc2NyaXB0aW9uIGE6bm90KC5idXR0b24pOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICM5MDAwMjM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX19kZXNjcmlwdGlvbiBwOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX19kZXNjcmlwdGlvbiAuZXhwYW5kIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctdG9wOiA2LjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHdoaXRlIDAlLCB3aGl0ZSAyNSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogMS44NzVyZW07IH1cbiAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19kZXNjcmlwdGlvbiAuZXhwYW5kIGEuZXhwYW5kX19yZWFkLW1vcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAwLjg3NXJlbTtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogMC45Mzc1cmVtIDEuODc1cmVtO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgICAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnBhZ2UtLWhvbWUgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5leHBhbmQgYS5leHBhbmRfX3JlYWQtbW9yZSB7XG4gICAgICAgICAgb3V0bGluZTogMDsgfVxuICAgICAgICAucGFnZS0taG9tZSAucGFnZV9fZGVzY3JpcHRpb24gLmV4cGFuZCBhLmV4cGFuZF9fcmVhZC1tb3JlOmhvdmVyLCAucGFnZS0taG9tZSAucGFnZV9fZGVzY3JpcHRpb24gLmV4cGFuZCBhLmV4cGFuZF9fcmVhZC1tb3JlOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYwMDI4O1xuICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2Rlc2NyaXB0aW9uIC5leHBhbmQgYS5leHBhbmRfX3JlYWQtbW9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjI1cmVtIDIuNXJlbTsgfSB9XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fZGVzY3JpcHRpb24gLmV4cGFuZCBhLmV4cGFuZF9fdmlldy1vdXItc3RvY2sge1xuICAgICAgICBjb2xvcjogIzIyMjIyMjtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19kZXNjcmlwdGlvbiAuZXhwYW5kIGEuZXhwYW5kX192aWV3LW91ci1zdG9jayBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3ZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4zMTI1cmVtO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fdmlkZW8ge1xuICAgICAgICBwYWRkaW5nOiAxLjg3NXJlbTsgfSB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3ZpZGVvIGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgICAgIC5wYWdlLS1ob21lIC5wYWdlX192aWRlbyBpOjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAucGFnZS0taG9tZSAucGFnZV9fdmlkZW8gaTo6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNC4zNzVyZW07IH0gfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX192aWRlbyBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5wYWdlLS1ob21lIC5wYWdlX192aWRlbyBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMTg3NXJlbTsgfSB9XG4gIC5wYWdlLS1ob21lIC5wYWdlX19mZWF0dXJlZC12ZWhpY2xlcyB7XG4gICAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjg3NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19mZWF0dXJlZC12ZWhpY2xlcyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzLjEyNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2ZlYXR1cmVkLXZlaGljbGVzIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDYuMjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA2LjI1cmVtOyB9IH1cbiAgICAucGFnZS0taG9tZSAucGFnZV9fZmVhdHVyZWQtdmVoaWNsZXMtaW5uZXIge1xuICAgICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIG1heC13aWR0aDogOTcuNXJlbTsgfVxuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2ZlYXR1cmVkLXZlaGljbGVzLWlubmVyOjpiZWZvcmUsIC5wYWdlLS1ob21lIC5wYWdlX19mZWF0dXJlZC12ZWhpY2xlcy1pbm5lcjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnOyB9XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fZmVhdHVyZWQtdmVoaWNsZXMtaW5uZXI6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19mZWF0dXJlZC12ZWhpY2xlcy1pbm5lciB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19mZWF0dXJlZC12ZWhpY2xlcy1pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fZmVhdHVyZWQtdmVoaWNsZXMtaW5uZXIsIC5wYWdlLS1ob21lIC5wYWdlX19mZWF0dXJlZC12ZWhpY2xlcy1pbm5lcjpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2Jsb2NrcyB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2Jsb2NrcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2Jsb2NrcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHdoaXRlIDAlLCB3aGl0ZSA1MCUsICNmNmY2ZjYgNTAlLCAjZjZmNmY2IDEwMCUpOyB9IH1cbiAgICAucGFnZS0taG9tZSAucGFnZV9fYmxvY2tzLWlubmVyIHtcbiAgICAgIG1heC13aWR0aDogODEuMjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19ibG9ja3MtaW5uZXI6OmJlZm9yZSwgLnBhZ2UtLWhvbWUgLnBhZ2VfX2Jsb2Nrcy1pbm5lcjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnOyB9XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fYmxvY2tzLWlubmVyOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucGFnZS0taG9tZSAucGFnZV9fYmxvY2tzLWlubmVyIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX2Jsb2Nrcy1pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fYmxvY2tzLWlubmVyLCAucGFnZS0taG9tZSAucGFnZV9fYmxvY2tzLWlubmVyOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbm9uZTsgfVxuICAucGFnZS0taG9tZSAucGFnZV9fcmV2aWV3cyB7XG4gICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3Jldmlld3M6OmJlZm9yZSwgLnBhZ2UtLWhvbWUgLnBhZ2VfX3Jldmlld3M6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3Jldmlld3M6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19yZXZpZXdzIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3Jldmlld3M6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAucGFnZS0taG9tZSAucGFnZV9fcmV2aWV3cywgLnBhZ2UtLWhvbWUgLnBhZ2VfX3Jldmlld3M6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS0taG9tZSAucGFnZV9fcmV2aWV3cyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzLjEyNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3Jldmlld3Mge1xuICAgICAgICBwYWRkaW5nLXRvcDogNi4yNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYuMjVyZW07IH0gfVxuICAgIC5wYWdlLS1ob21lIC5wYWdlX19yZXZpZXdzLW91dGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNmNmY2ZjYgMCUsIHdoaXRlIDEwMCUpOyB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3Jldmlld3MtaW5uZXIge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogMS44NzVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19yZXZpZXdzLWlubmVyIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgICAgZ2FwOiAzLjEyNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5wYWdlLS1ob21lIC5wYWdlX19yZXZpZXdzLWlubmVyIHtcbiAgICAgICAgICBnYXA6IDYuMjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgICAucGFnZS0taG9tZSAucGFnZV9fcmV2aWV3cy1pbm5lciB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1MCUgMWZyO1xuICAgICAgICAgIGdhcDogOC40Mzc1cmVtOyB9IH1cbiAgICAucGFnZS0taG9tZSAucGFnZV9fcmV2aWV3cy1maXJzdCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAucGFnZS0taG9tZSAucGFnZV9fcmV2aWV3cy1maXJzdCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3Jldmlld3MtZmlyc3QgaW1nIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgLnBhZ2UtLWhvbWUgLnBhZ2VfX3Jldmlld3Mtc2Vjb25kIHtcbiAgICAgIG1pbi13aWR0aDogMDsgfVxuXG4ucGFnZS0tdGVhc2VyIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS0tdGVhc2VyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFnZS0tdGVhc2VyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLnBhZ2UtLXRlYXNlcjo6YmVmb3JlLCAucGFnZS0tdGVhc2VyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5wYWdlLS10ZWFzZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucGFnZS0tdGVhc2VyIC5wYWdlX19wcmltYXJ5LWltYWdlcyxcbiAgLnBhZ2UtLXRlYXNlciAucGFnZV9fdmlkZW9zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3ByaW1hcnktaW1hZ2VzLFxuICAgICAgLnBhZ2UtLXRlYXNlciAucGFnZV9fdmlkZW9zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnBhZ2UtLXRlYXNlciAucGFnZV9fcHJpbWFyeS1pbWFnZXM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgICAucGFnZS0tdGVhc2VyIC5wYWdlX192aWRlb3M6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLXRlYXNlciAucGFnZV9fcHJpbWFyeS1pbWFnZXMsXG4gICAgICAucGFnZS0tdGVhc2VyIC5wYWdlX192aWRlb3Mge1xuICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS0tdGVhc2VyIC5wYWdlX19wcmltYXJ5LWltYWdlcyxcbiAgICAucGFnZS0tdGVhc2VyIC5wYWdlX192aWRlb3Mge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3ByaW1hcnktaW1hZ2VzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4gICAgICAgIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3ZpZGVvczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3ByaW1hcnktaW1hZ2VzIGltZyxcbiAgICAucGFnZS0tdGVhc2VyIC5wYWdlX19wcmltYXJ5LWltYWdlcyBpZnJhbWUsXG4gICAgLnBhZ2UtLXRlYXNlciAucGFnZV9fdmlkZW9zIGltZyxcbiAgICAucGFnZS0tdGVhc2VyIC5wYWdlX192aWRlb3MgaWZyYW1lIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAucGFnZS0tdGVhc2VyIC5wYWdlX19jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAucGFnZS0tdGVhc2VyIC5wYWdlX19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX2NvbnRlbnQge1xuICAgICAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS0tdGVhc2VyIC5wYWdlX19jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAucGFnZS0tdGVhc2VyIC5wYWdlX19jb250ZW50Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX2NvbnRlbnQtLXdpdGhvdXQtbWVkaWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLXRlYXNlciAucGFnZV9fY29udGVudC0td2l0aG91dC1tZWRpYSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX2NvbnRlbnQtLXdpdGhvdXQtbWVkaWE6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuODc1cmVtOyB9IH1cbiAgLnBhZ2UtLXRlYXNlciAucGFnZV9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbiAgICBjb2xvcjogIzcxNzU4MDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODsgfVxuICAucGFnZS0tdGVhc2VyIC5wYWdlX19saW5rIC5idXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm1ldGEgPiB1bCB7XG4gIG1hcmdpbjogMCAwIDAuOTM3NXJlbSAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5tZXRhID4gdWwgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMC4zNzVyZW07IH1cblxuLm1ldGFfX3B1Ymxpc2hlZCBzcGFuIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4ubWV0YV9fY2F0ZWdvcmllcy10aXRsZSwgLm1ldGFfX3RhZ3MtdGl0bGUsIC5tZXRhX19yZWFkLXRpbWUtdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC4xODc1cmVtOyB9XG5cbi5tZXRhX19jYXRlZ29yaWVzIHVsLCAubWV0YV9fdGFncyB1bCwgLm1ldGFfX3JlYWQtdGltZSB1bCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5tZXRhX19jYXRlZ29yaWVzIHVsIGxpLCAubWV0YV9fdGFncyB1bCBsaSwgLm1ldGFfX3JlYWQtdGltZSB1bCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAubWV0YV9fY2F0ZWdvcmllcyB1bCBsaTo6YWZ0ZXIsIC5tZXRhX190YWdzIHVsIGxpOjphZnRlciwgLm1ldGFfX3JlYWQtdGltZSB1bCBsaTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJywnO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjE4NzVyZW07XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLm1ldGFfX2NhdGVnb3JpZXMgdWwgbGk6bGFzdC1jaGlsZDo6YWZ0ZXIsIC5tZXRhX190YWdzIHVsIGxpOmxhc3QtY2hpbGQ6OmFmdGVyLCAubWV0YV9fcmVhZC10aW1lIHVsIGxpOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5wb3N0LS1kZWZhdWx0IHtcbiAgcGFkZGluZy10b3A6IDEuODc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvc3QtLWRlZmF1bHQge1xuICAgICAgcGFkZGluZy10b3A6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucG9zdC0tZGVmYXVsdCB7XG4gICAgICBwYWRkaW5nLXRvcDogNi4yNXJlbTsgfSB9XG4gIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogNjRyZW07IH1cbiAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19wcmltYXJ5LWltYWdlczo6YmVmb3JlLCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19wcmltYXJ5LWltYWdlczo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19wcmltYXJ5LWltYWdlczo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19wcmltYXJ5LWltYWdlczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX3ByaW1hcnktaW1hZ2VzLCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19wcmltYXJ5LWltYWdlczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fcHJpbWFyeS1pbWFnZXMgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX3ByaW1hcnktaW1hZ2VzIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogNjRyZW07IH1cbiAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50OjpiZWZvcmUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudDo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50LCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50Omxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSBoMiwgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5vZmZlcl9fdGl0bGUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAucGFydF9fdGl0bGUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFydC0tZnVsbCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAucGFydF9fZm9ybS10aXRsZSwgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5wb3N0X190aXRsZSwgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tZ2VuZXJhbCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tbGF0ZXN0IC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC52ZWhpY2xlX190aXRsZSwgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSwgLnBhZ2UtLXRlYXNlciAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAucGFnZV9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSBoMiwgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5vZmZlcl9fdGl0bGUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAucGFydF9fdGl0bGUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFydC0tZnVsbCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAucGFydF9fZm9ybS10aXRsZSwgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5wb3N0X190aXRsZSwgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tZ2VuZXJhbCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tbGF0ZXN0IC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC52ZWhpY2xlX190aXRsZSwgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX3RpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSwgLnBhZ2UtLXRlYXNlciAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X190aXRsZSAucGFnZV9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfSB9XG4gICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24ge1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiBhOm5vdCguYnV0dG9uKTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiBoMixcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSxcbiAgICAgIC5vZmZlci0tZmVhdHVyZWQgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLm9mZmVyX190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLFxuICAgICAgLnBhcnQtLWZlYXR1cmVkIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5wYXJ0X190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLFxuICAgICAgLnBhcnQtLWZ1bGwgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLnBhcnRfX2Zvcm0tdGl0bGUsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlLFxuICAgICAgLnBvc3QtLWZlYXR1cmVkIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5wb3N0X190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSxcbiAgICAgIC52ZWhpY2xlLS1nZW5lcmFsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlX190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLFxuICAgICAgLnZlaGljbGUtLWxhdGVzdCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAudmVoaWNsZV9fdGl0bGUsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsXG4gICAgICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAubGlzdGluZ19fdGl0bGUsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsXG4gICAgICAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAubGlzdGluZ19fdGl0bGUsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSxcbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLmxpc3RpbmdfX3RpdGxlLFxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbiAgICAgIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAubGlzdGluZ19fdGl0bGUsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSxcbiAgICAgIC5wYWdlLS10ZWFzZXIgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLnBhZ2VfX3RpdGxlLFxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gaDMsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAuYmxvY2stLXNpZGViYXIgLmJsb2NrX190aXRsZSxcbiAgICAgIC5ibG9jay0tc2lkZWJhciAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAuYmxvY2tfX3RpdGxlLFxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3N1Yi10aXRsZSxcbiAgICAgIC5vZmZlci0tZmVhdHVyZWQgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLm9mZmVyX19zdWItdGl0bGUsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAuYWRkLW9uX190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5jYWxlbmRhcl9faGVhZGVyIC5jYWxlbmRhcl9fbW9udGggc3BhbixcbiAgICAgIC5jYWxlbmRhcl9faGVhZGVyIC5jYWxlbmRhcl9fbW9udGggLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gc3BhbixcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5vcmRlci1wYXltZW50X190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5vcmRlci1zdGF0ZS1zdW1tYXJ5X192ZWhpY2xlLXRpdGxlLFxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19zdWItdGl0bGUsXG4gICAgICAucGFydC0tZmVhdHVyZWQgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLnBhcnRfX3N1Yi10aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fc3ViLXRpdGxlLFxuICAgICAgLnBvc3QtLWZlYXR1cmVkIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5wb3N0X19zdWItdGl0bGUsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAucXVpY2stc2VhcmNoX19sZWdlbmQsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgICAgIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIGgxLFxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgICAgIC5saXN0aW5nLS1wb3N0LXRlYXNlciAubGlzdGluZ19fdGl0bGUgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgICAgIC5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIGgxLFxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuICAgICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIGgxLFxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbiAgICAgIC5saXN0aW5nLS12ZWhpY2xlLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gaDEsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIGgxLFxuICAgICAgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX190aXRsZSAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiBoMSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSxcbiAgICAgIC5icmFuY2gtLWNvbnRhY3QgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5mb3JtX190aXRsZSxcbiAgICAgIC5mb3JtLS1wYXJ0LWV4Y2hhbmdlIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5mb3JtX190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbiAgICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLWNoZWNrZXJfX2RldGFpbHMtdGl0bGUsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAgICAgLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIGg0LFxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLnZpZGVvLS1wYWdlIC52aWRlb19fdGl0bGUsXG4gICAgICAudmlkZW8tLXBhZ2UgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLnZpZGVvX190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCA+IGxpIC5zcGVjaWZpY2F0aW9uLWNhdGVnb3J5X190aXRsZSxcbiAgICAgIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3NwZWNpZmljYXRpb24gPiB1bCA+IGxpIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5zcGVjaWZpY2F0aW9uLWNhdGVnb3J5X190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5uZXctdmVoaWNsZS0tZnVsbCAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAgICAgLm5ldy12ZWhpY2xlLS1mdWxsIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlLFxuICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLWZvcm0gLmZpbmFuY2UtZm9ybV9fdGl0bGUsXG4gICAgICAuZmluYW5jZS1mb3JtIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLWZvcm1fX3RpdGxlLFxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGVzIC5maW5hbmNlLXdhcm5pbmcsXG4gICAgICAuZmluYW5jZS10YWJsZXMgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLmZpbmFuY2Utd2FybmluZyxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX19jaGVja2VyLXRpdGxlLFxuICAgICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLmZpbmFuY2UtdGFibGVfX2NoZWNrZXItdGl0bGUsXG4gICAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19kZXNjcmlwdGlvbiAuZmluYW5jZS1leGFtcGxlX190aXRsZSxcbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIGg1LFxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gLmJsb2NrLS1zaWRlYmFyIC5ibG9ja19fc3ViLXRpdGxlLFxuICAgICAgLmJsb2NrLS1zaWRlYmFyIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIC5ibG9ja19fc3ViLXRpdGxlLFxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZGVzY3JpcHRpb24gaDYge1xuICAgICAgICBwYWRkaW5nLXRvcDogMC42MjVyZW07IH1cbiAgICAgIC5wb3N0LS1kZWZhdWx0ID4gLnBvc3RfX2NvbnRlbnQgLnBvc3RfX2Rlc2NyaXB0aW9uIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAucG9zdC0tZGVmYXVsdCA+IC5wb3N0X19jb250ZW50IC5wb3N0X19maWxlcyB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZmlsZXMgdWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZmlsZXMgdWwgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9XG4gICAgICAgICAgLnBvc3QtLWRlZmF1bHQgPiAucG9zdF9fY29udGVudCAucG9zdF9fZmlsZXMgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3ZpZGVvcyB7XG4gICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgIC5wb3N0LS1kZWZhdWx0IC5wb3N0X192aWRlb3M6OmJlZm9yZSwgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3ZpZGVvczo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fdmlkZW9zOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fdmlkZW9zIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3ZpZGVvczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5wb3N0LS1kZWZhdWx0IC5wb3N0X192aWRlb3MsIC5wb3N0LS1kZWZhdWx0IC5wb3N0X192aWRlb3M6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fdmlkZW9zIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fdmlkZW9zIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNi4yNXJlbTsgfSB9XG4gICAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3ZpZGVvcyB1bCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAxLjI1cmVtO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5wb3N0LS1kZWZhdWx0IC5wb3N0X192aWRlb3MgdWwge1xuICAgICAgICAgIGdhcDogMS44NzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fdmlkZW9zIHVsIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cbiAgICAgIC5wb3N0LS1kZWZhdWx0IC5wb3N0X192aWRlb3MgdWwgbGkge1xuICAgICAgICBmbGV4OiAxOyB9XG4gICAgICAgIC5wb3N0LS1kZWZhdWx0IC5wb3N0X192aWRlb3MgdWwgbGkgaWZyYW1lIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3NlY29uZGFyeS1pbWFnZXMge1xuICAgIG1heC13aWR0aDogODEuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWF4LXdpZHRoOiA5Ny41cmVtO1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gICAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3NlY29uZGFyeS1pbWFnZXM6OmJlZm9yZSwgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3NlY29uZGFyeS1pbWFnZXM6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3NlY29uZGFyeS1pbWFnZXM6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3N0LS1kZWZhdWx0IC5wb3N0X19zZWNvbmRhcnktaW1hZ2VzIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3NlY29uZGFyeS1pbWFnZXM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fc2Vjb25kYXJ5LWltYWdlcywgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3NlY29uZGFyeS1pbWFnZXM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3NlY29uZGFyeS1pbWFnZXMge1xuICAgICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cbiAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fc2Vjb25kYXJ5LWltYWdlcyB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fc2Vjb25kYXJ5LWltYWdlcyB1bCBsaSBpbWcge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3Nob3J0LWRlc2NyaXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtO1xuICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS44OyB9XG4gICAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3Nob3J0LWRlc2NyaXB0aW9uOjpiZWZvcmUsIC5wb3N0LS1kZWZhdWx0IC5wb3N0X19zaG9ydC1kZXNjcmlwdGlvbjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fc2hvcnQtZGVzY3JpcHRpb246OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3N0LS1kZWZhdWx0IC5wb3N0X19zaG9ydC1kZXNjcmlwdGlvbiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5wb3N0LS1kZWZhdWx0IC5wb3N0X19zaG9ydC1kZXNjcmlwdGlvbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5wb3N0LS1kZWZhdWx0IC5wb3N0X19zaG9ydC1kZXNjcmlwdGlvbiwgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3Nob3J0LWRlc2NyaXB0aW9uOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3Nob3J0LWRlc2NyaXB0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fc2hvcnQtZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cbiAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fc2hvcnQtZGVzY3JpcHRpb24gcDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnBvc3QtLXRlYXNlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4zMTI1cmVtO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3ByaW1hcnktaW1hZ2VzIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzOyB9XG4gICAgICAucG9zdC0tdGVhc2VyIC5wb3N0X19wcmltYXJ5LWltYWdlcyBpbWc6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuODsgfVxuICAucG9zdC0tdGVhc2VyIC5wb3N0X19zYXNoIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjkzNzVyZW07XG4gICAgbGVmdDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmc6IDAuMzEyNXJlbSAwLjYyNXJlbTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI2MkIzNTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3QtLXRlYXNlciAucG9zdF9fc2FzaCB7XG4gICAgICAgIHRvcDogMS4yNXJlbTtcbiAgICAgICAgbGVmdDogMS4yNXJlbTtcbiAgICAgICAgcGFkZGluZzogMC40Mzc1cmVtIDAuODEyNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfSB9XG4gICAgLnBvc3QtLXRlYXNlciAucG9zdF9fc2FzaCB1bCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3Nhc2ggdWwgbGk6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJywnOyB9XG4gICAgICAucG9zdC0tdGVhc2VyIC5wb3N0X19zYXNoIHVsIGxpOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3Nhc2ggYSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAucG9zdC0tdGVhc2VyIC5wb3N0X19kZXRhaWxzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMS4yNXJlbSAwLjYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3N0LS10ZWFzZXIgLnBvc3RfX2RldGFpbHMge1xuICAgICAgICBwYWRkaW5nOiAxLjI1cmVtOyB9IH1cbiAgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgaDIsIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAub2ZmZXJfX3RpdGxlLCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLnBhcnRfX3RpdGxlLCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLnBhcnRfX2Zvcm0tdGl0bGUsIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsIC5wb3N0LS1mZWF0dXJlZCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAucG9zdF9fdGl0bGUsIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLnBhZ2VfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgaDIsIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAub2ZmZXJfX3RpdGxlLCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLnBhcnRfX3RpdGxlLCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLnBhcnRfX2Zvcm0tdGl0bGUsIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsIC5wb3N0LS1mZWF0dXJlZCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAucG9zdF9fdGl0bGUsIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAucG9zdC0tdGVhc2VyIC5wb3N0X190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLnBvc3QtLXRlYXNlciAucG9zdF9fdGl0bGUgLnBhZ2VfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfSB9XG4gIC5wb3N0LS10ZWFzZXIgLnBvc3RfX3JlYWQtdGltZSB7XG4gICAgbWFyZ2luLXRvcDogMC4zMTI1cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucG9zdC0tdGVhc2VyIC5wb3N0X19yZWFkLXRpbWUge1xuICAgICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfSB9XG4gIC5wb3N0LS10ZWFzZXIgLnBvc3RfX2JvdHRvbSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdhcDogMS44NzVyZW07XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBwYWRkaW5nOiAwLjkzNzVyZW0gMC42MjVyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFOEU4RTg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBvc3QtLXRlYXNlciAucG9zdF9fYm90dG9tIHtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbTsgfSB9XG4gIC5wb3N0LS10ZWFzZXIgLnBvc3RfX2xpbmsgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMC44NzVyZW07XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAwLjgxMjVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5wb3N0LS10ZWFzZXIgLnBvc3RfX2xpbmsgYSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgLnBvc3QtLXRlYXNlciAucG9zdF9fbGluayBhOmhvdmVyLCAucG9zdC0tdGVhc2VyIC5wb3N0X19saW5rIGE6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E2MDAyODtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb3N0LS10ZWFzZXIgLnBvc3RfX2xpbmsgYSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07IH0gfVxuXG4uc2VhcmNoIHtcbiAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2O1xuICBib3gtc2hhZG93OiAwIDMwcHggNjBweCAwIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuc2VhcmNoX19oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMy4xMjVyZW0gMS44NzVyZW0gMDsgfVxuICAgIC5zZWFyY2hfX2hlYWRlciBsZWdlbmQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5zZWFyY2ggLnNlYXJjaF9fZm9ybSB7XG4gICAgcGFkZGluZzogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNlYXJjaCAuc2VhcmNoX19mb3JtIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4zMTI1cmVtOyB9IH1cbiAgLnNlYXJjaCAuaGVscC1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgLnNlYXJjaCBsYWJlbC5jb250cm9sLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAuc2VhcmNoIHNlbGVjdCB7XG4gICAgaGVpZ2h0OiAzLjA2MjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIC5zZWFyY2ggLmZvcm0tZ3JvdXAgbGFiZWw6bm90KC5jb250cm9sLWxhYmVsKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZWVlZWU7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnNlYXJjaCAuZm9ybS1ncm91cCBsYWJlbDpub3QoLmNvbnRyb2wtbGFiZWwpIC5sYWJlbC1jb3VudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4xODc1cmVtOyB9XG4gICAgLnNlYXJjaCAuZm9ybS1ncm91cCBsYWJlbDpub3QoLmNvbnRyb2wtbGFiZWwpIGlucHV0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnNlYXJjaCAuZm9ybS1ncm91cCBkaXY6bm90KC5oZWxwLWJsb2NrKTpub3QoI3ByaWNlX3R5cGUpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICAuc2VhcmNoIC5mb3JtLWdyb3VwIGRpdjpub3QoLmhlbHAtYmxvY2spOm5vdCgjcHJpY2VfdHlwZSkgbGFiZWw6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTsgfVxuICAgIC5zZWFyY2ggLmZvcm0tZ3JvdXAgZGl2Om5vdCguaGVscC1ibG9jayk6bm90KCNwcmljZV90eXBlKSBsYWJlbDpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgLnNlYXJjaCAuZm9ybS1ncm91cCBkaXY6bm90KC5oZWxwLWJsb2NrKTpub3QoI3ByaWNlX3R5cGUpIGxhYmVsOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4zMTI1cmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgIC5zZWFyY2ggLmZvcm0tZ3JvdXAgZGl2Om5vdCguaGVscC1ibG9jayk6bm90KCNwcmljZV90eXBlKSNjb2xvdXJzIGxhYmVsOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwLjYyNXJlbTtcbiAgICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMXJlbTtcbiAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgLnNlYXJjaCAuZm9ybS1ncm91cCBkaXY6bm90KC5oZWxwLWJsb2NrKTpub3QoI3ByaWNlX3R5cGUpI2NvbG91cnMgbGFiZWxbZm9yPWNvbG91cnMtd2hpdGVdOjphZnRlciB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlZWVlOyB9XG4gIC5zZWFyY2ggLnNlYXJjaF9fcHJpY2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgLnNlYXJjaCAuc2VhcmNoX19wcmljZSAuZmllbGQtcHJpY2VfdHlwZSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgLnNlYXJjaCAuc2VhcmNoX19wcmljZSAuZmllbGQtcHJpY2VfdHlwZSAjcHJpY2VfdHlwZSB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgZ2FwOiAwLjYyNXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC5zZWFyY2ggLnNlYXJjaF9fcHJpY2UgLmZpZWxkLXByaWNlX3R5cGUgI3ByaWNlX3R5cGUge1xuICAgICAgICAgICAgZ2FwOiAxLjI1cmVtOyB9IH1cbiAgICAgIC5zZWFyY2ggLnNlYXJjaF9fcHJpY2UgLmZpZWxkLXByaWNlX3R5cGUgbGFiZWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgICAgIC5zZWFyY2ggLnNlYXJjaF9fcHJpY2UgLmZpZWxkLXByaWNlX3R5cGUgbGFiZWw6bm90KC5jb250cm9sLWxhYmVsKSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgICAgICAuc2VhcmNoIC5zZWFyY2hfX3ByaWNlIC5maWVsZC1wcmljZV90eXBlIGxhYmVsIC5sYWJlbC12YWx1ZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogMC42MjVyZW07XG4gICAgICAgICAgY29sb3I6ICMyMjIyMjI7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgICAgLnNlYXJjaCAuc2VhcmNoX19wcmljZSAuZmllbGQtcHJpY2VfdHlwZSBpbnB1dCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5zZWFyY2ggLnNlYXJjaF9fcHJpY2UgLmZpZWxkLXByaWNlX3R5cGUgaW5wdXQ6Y2hlY2tlZCArIC5sYWJlbC12YWx1ZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmOyB9XG4gICAgLnNlYXJjaCAuc2VhcmNoX19wcmljZSAuZmllbGQtcHJpY2VfbWluLFxuICAgIC5zZWFyY2ggLnNlYXJjaF9fcHJpY2UgLmZpZWxkLXByaWNlX21vbnRobHlfbWluIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuc2VhcmNoIC5zZWFyY2hfX3ByaWNlIC5maWVsZC1wcmljZV9tYXgsXG4gICAgLnNlYXJjaCAuc2VhcmNoX19wcmljZSAuZmllbGQtcHJpY2VfbW9udGhseV9tYXgge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuc2VhcmNoIC5zaG93LW1vcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiAwLjMxMjVyZW07XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuc2VhcmNoIC5maWVsZC1zdWJtaXQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuc2VhcmNoIC5maWVsZC1zdWJtaXQgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAwLjg3NXJlbTtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IDEuMzEyNXJlbSAwLjMxMjVyZW07XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuc2VhcmNoIC5maWVsZC1zdWJtaXQgYSB7XG4gICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgIC5zZWFyY2ggLmZpZWxkLXN1Ym1pdCBhOmhvdmVyLCAuc2VhcmNoIC5maWVsZC1zdWJtaXQgYTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5wYWdlLS1ob21lIC5zZWFyY2gge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5wYWdlLS1ob21lIC5zZWFyY2ggLnNlYXJjaF9faGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wYWdlLS1ob21lIC5zZWFyY2ggLnNlYXJjaF9fZm9ybSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhZ2UtLWhvbWUgLnNlYXJjaCAuc2VhcmNoX19mb3JtIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMmZyIDJmciAxZnI7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFnZS0taG9tZSAuc2VhcmNoIC5zZWFyY2hfX2Zvcm0ge1xuICAgICAgICBnYXA6IDEuMjVyZW07IH0gfVxuICAucGFnZS0taG9tZSAuc2VhcmNoIC5oZWxwLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wYWdlLS1ob21lIC5zZWFyY2ggc2VsZWN0IHtcbiAgICBoZWlnaHQ6IDMuNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgYm9yZGVyOiBub25lOyB9XG4gIC5wYWdlLS1ob21lIC5zZWFyY2ggLnNlYXJjaF9fbWFrZS1tb2RlbCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgZ2FwOiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFnZS0taG9tZSAuc2VhcmNoIC5zZWFyY2hfX21ha2UtbW9kZWwge1xuICAgICAgICBnYXA6IDEuMjVyZW07IH0gfVxuICAucGFnZS0taG9tZSAuc2VhcmNoIC5zZWFyY2hfX3ByaWNlIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2UtLWhvbWUgLnNlYXJjaCAuc2VhcmNoX19wcmljZSB7XG4gICAgICAgIGdhcDogMS4yNXJlbTsgfSB9XG4gICAgLnBhZ2UtLWhvbWUgLnNlYXJjaCAuc2VhcmNoX19wcmljZS10eXBlIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBnYXA6IDAuNjI1cmVtO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAucGFnZS0taG9tZSAuc2VhcmNoIC5zZWFyY2hfX3ByaWNlLXR5cGUge1xuICAgICAgICAgIGdhcDogMS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucGFnZS0taG9tZSAuc2VhcmNoLS1maW5hbmNlIC5maWVsZC1pc19uZXcsXG4gICAgLnBhZ2UtLWhvbWUgLnNlYXJjaC0tZmluYW5jZSAuc2VhcmNoX19tYWtlLW1vZGVsLFxuICAgIC5wYWdlLS1ob21lIC5zZWFyY2gtLWZpbmFuY2UgLmZpZWxkLXN1Ym1pdCB7XG4gICAgICBtYXJnaW4tdG9wOiAyLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYWdlLS1ob21lIC5zZWFyY2gtLWZpbmFuY2UgLmZpZWxkLWlzX25ldyxcbiAgICAucGFnZS0taG9tZSAuc2VhcmNoLS1maW5hbmNlIC5zZWFyY2hfX21ha2UtbW9kZWwsXG4gICAgLnBhZ2UtLWhvbWUgLnNlYXJjaC0tZmluYW5jZSAuZmllbGQtc3VibWl0IHtcbiAgICAgIG1hcmdpbi10b3A6IDMuNTYyNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAudG9nZ2xlciAuc2VhcmNoIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC50b2dnbGVyIC5zZWFyY2ggLnNlYXJjaF9faGVhZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMy4xMjVyZW07IH0gfVxuXG4uc2Vuc2ktc3Bpbm5lci1vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTsgfVxuXG4uc2stc3Bpbm5lci10aHJlZS1ib3VuY2UgZGl2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjsgfVxuXG4uc2hvd3Jvb20tLWZ1bGwge1xuICBwYWRkaW5nLXRvcDogMS44NzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2hvd3Jvb20tLWZ1bGwge1xuICAgICAgcGFkZGluZy10b3A6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2hvd3Jvb20tLWZ1bGwge1xuICAgICAgcGFkZGluZy10b3A6IDYuMjVyZW07IH0gfVxuICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIGgyLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC5vZmZlcl9fdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLm9yZGVyLXByb2dyZXNzX190aXRsZSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAucGFydF9fdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLnBhcnQtLWZ1bGwgLnBhcnRfX2Zvcm0tdGl0bGUsIC5wYXJ0LS1mdWxsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLnBhcnRfX2Zvcm0tdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLnBvc3RfX3RpdGxlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAudmVoaWNsZV9fdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1sYXRlc3QgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAudmVoaWNsZV9fdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC5saXN0aW5nX190aXRsZSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAubGlzdGluZ19fdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlLCAucGFnZS0tdGVhc2VyIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLnBhZ2VfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgaDIsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLm9mZmVyX190aXRsZSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC5wYXJ0X190aXRsZSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAucGFydF9fZm9ybS10aXRsZSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlLCAucG9zdC0tZmVhdHVyZWQgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAucG9zdF9fdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tZ2VuZXJhbCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC52ZWhpY2xlX190aXRsZSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC52ZWhpY2xlX190aXRsZSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAubGlzdGluZ19fdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAubGlzdGluZ19fdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkaW5nIC5saXN0aW5nX190aXRsZSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAubGlzdGluZ19fdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRpbmcgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGluZyAucGFnZV9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG4gIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2xpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMC41cmVtIDAuODc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19saW5rIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19saW5rOmhvdmVyLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19saW5rOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19iYW5uZXIge1xuICAgIG1heC13aWR0aDogODEuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2Jhbm5lcjo6YmVmb3JlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19iYW5uZXI6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fYmFubmVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19iYW5uZXIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19iYW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19iYW5uZXIsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2Jhbm5lcjpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2Jhbm5lciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19iYW5uZXIgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fYmFubmVyIHVsIGltZyB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRlbnQ6OmJlZm9yZSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGVudDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250ZW50OjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRlbnQtZmlyc3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250ZW50LWZpcnN0IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGVudC1maXJzdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250ZW50LWZpcnN0IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250ZW50LWZpcnN0IHtcbiAgICAgICAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRlbnQtZmlyc3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250ZW50LWZpcnN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250ZW50LXNlY29uZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGVudC1zZWNvbmQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250ZW50LXNlY29uZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250ZW50LXNlY29uZCB7XG4gICAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgICAgdG9wOiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRlbnQtc2Vjb25kIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGVudC1zZWNvbmQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19tZWRpYSB7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMC42MjVyZW0gMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX21lZGlhIHtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbSAxLjI1cmVtIDA7IH0gfVxuICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX21lZGlhIC5zaG93cm9vbV9fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fbWVkaWEgLnNob3dyb29tX19wcmltYXJ5LWltYWdlcyB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19tZWRpYSAuc2hvd3Jvb21fX3ByaW1hcnktaW1hZ2VzIHVsIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAxLjI1cmVtO1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGVyIHtcbiAgICAgICAgZ2FwOiAxLjg3NXJlbTtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbTsgfSB9XG4gICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9faGVhZGVyIC5zaG93cm9vbV9fdGl0bGUgaDEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkZXIgLnNob3dyb29tX19zdWItdGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogMC4zMTI1cmVtO1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19oZWFkZXIgLnNob3dyb29tX19wcmljZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7IH1cbiAgICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2hlYWRlciAuc2hvd3Jvb21fX3ByaWNlIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDcwJTsgfVxuICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19tb2JpbGUtY29udGFjdCB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fbW9iaWxlLWNvbnRhY3Qge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX21vYmlsZS1jb250YWN0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2Rlc2NyaXB0aW9uIHtcbiAgICBjb2xvcjogIzY2NjY2NjtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS44OyB9XG4gICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fZGVzY3JpcHRpb24gcDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19kZXNjcmlwdGlvbiBwIGE6bm90KC5idXR0b24pIHtcbiAgICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2Rlc2NyaXB0aW9uIHAgYTpub3QoLmJ1dHRvbik6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19kZXNjcmlwdGlvbi1vdXRlciB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fZGVzY3JpcHRpb24tb3V0ZXIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fdmlkZW9zIHtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX192aWRlb3Mge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fdmlkZW9zIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3ZpZGVvcyB1bCBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX192aWRlb3MgdWwgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICAgICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX192aWRlb3MgdWwgbGk6Omxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fdmlkZW9zIHVsIGxpIGlmcmFtZSB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3NlY29uZGFyeS1pbWFnZXMge1xuICAgIG1heC13aWR0aDogODEuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWF4LXdpZHRoOiA5Ny41cmVtO1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fc2Vjb25kYXJ5LWltYWdlczo6YmVmb3JlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19zZWNvbmRhcnktaW1hZ2VzOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3NlY29uZGFyeS1pbWFnZXM6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3NlY29uZGFyeS1pbWFnZXMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19zZWNvbmRhcnktaW1hZ2VzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fc2Vjb25kYXJ5LWltYWdlcywgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fc2Vjb25kYXJ5LWltYWdlczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3NlY29uZGFyeS1pbWFnZXMge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3NlY29uZGFyeS1pbWFnZXMge1xuICAgICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19zZWNvbmRhcnktaW1hZ2VzIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3NlY29uZGFyeS1pbWFnZXMgdWwgbGkgaW1nIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3Qge1xuICAgIHBhZGRpbmc6IDEuODc1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGFjdCBoMywgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGFjdCAuYmxvY2stLXNpZGViYXIgLmJsb2NrX190aXRsZSwgLmJsb2NrLS1zaWRlYmFyIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgLmJsb2NrX190aXRsZSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGFjdCAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fc3ViLXRpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgLm9mZmVyX19zdWItdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgLmFkZC1vbl9fdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCBzcGFuLCAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX21vbnRoIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3Qgc3BhbiwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGFjdCAuY29sbGVjdGlvbi1kZWxpdmVyeV9fdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgLm9yZGVyLXBheW1lbnRfX3RpdGxlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250YWN0IC5vcmRlci1zdGF0ZS1zdW1tYXJ5X192ZWhpY2xlLXRpdGxlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250YWN0IC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fc3ViLXRpdGxlLCAucGFydC0tZmVhdHVyZWQgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGFjdCAucGFydF9fc3ViLXRpdGxlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250YWN0IC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fc3ViLXRpdGxlLCAucG9zdC0tZmVhdHVyZWQgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGFjdCAucG9zdF9fc3ViLXRpdGxlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250YWN0IC5xdWljay1zZWFyY2hfX2xlZ2VuZCwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGFjdCAubGlzdGluZy0tc2hvd3Jvb20tdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGFjdCBoMSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGFjdCAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgaDEsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsIC5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgaDEsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXRlYXNlciAubGlzdGluZ19fdGl0bGUgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGFjdCBoMSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGFjdCAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgaDEsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX190aXRsZSBoMSwgLmJsb2NrLS1pbmRleC1oZWFkZXIgLmJsb2NrX190aXRsZSAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250YWN0IGgxLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250YWN0IC5icmFuY2gtLWNvbnRhY3QgLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSwgLmJyYW5jaC0tY29udGFjdCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250YWN0IC5icmFuY2hfX29wZW5pbmctaG91cnMtdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLmZvcm1fX3RpdGxlLCAuZm9ybS0tcGFydC1leGNoYW5nZSAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250YWN0IC5mb3JtX190aXRsZSwgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fY29udGFjdCAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fdGl0bGUsIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgLmZpbmFuY2UtdGFibGVfX3RpdGxlLCAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250YWN0IC5maW5hbmNlLWNoZWNrZXJfX2RldGFpbHMtdGl0bGUsIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5maW5hbmNlLXRhYmxlX190aXRsZSwgLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX2NvbnRhY3QgLmZpbmFuY2UtdGFibGVfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19jb250YWN0IHAge1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX190ZWxlcGhvbmUge1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX190ZWxlcGhvbmUtbGFiZWwge1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3RlbGVwaG9uZS12YWx1ZSB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS40OyB9XG4gICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX190ZWxlcGhvbmUtdmFsdWUgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtO1xuICAgICAgICBjb2xvcjogI2MzMDAyZjsgfVxuICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fdGVsZXBob25lLXZhbHVlIHNwYW4ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3BhcnQtZXhjaGFuZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gICAgcGFkZGluZzogMS44NzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fcGFydC1leGNoYW5nZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fcmV2aWV3cyB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fcmV2aWV3cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fcmV2aWV3cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDVyZW07IH0gfVxuICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19wYXJ0LWV4Y2hhbmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3BhcnQtZXhjaGFuZ2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMy4xMjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19wYXJ0LWV4Y2hhbmdlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTVyZW07IH0gfVxuXG4uc2hvd3Jvb20tLXRlYXNlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fcHJpbWFyeS1pbWFnZXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX19wcmltYXJ5LWltYWdlcyBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuICAgICAgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX19wcmltYXJ5LWltYWdlcyBpbWc6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAuODsgfVxuICAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX2RldGFpbHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDAuNjI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX19kZXRhaWxzIHtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbTsgfSB9XG4gIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgaDIsIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLm9mZmVyX190aXRsZSwgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC5wYXJ0X190aXRsZSwgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAucGFydF9fZm9ybS10aXRsZSwgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3RpdGxlLCAucG9zdC0tZmVhdHVyZWQgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAucG9zdF9fdGl0bGUsIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tZ2VuZXJhbCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC52ZWhpY2xlX190aXRsZSwgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC52ZWhpY2xlX190aXRsZSwgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAucGFnZV9fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgY29sb3I6ICMyMjIyMjI7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIGgyLCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC5vZmZlcl9fdGl0bGUsIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLm9yZGVyLXByb2dyZXNzX190aXRsZSwgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAucGFydF9fdGl0bGUsIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLnBhcnQtLWZ1bGwgLnBhcnRfX2Zvcm0tdGl0bGUsIC5wYXJ0LS1mdWxsIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLnBhcnRfX2Zvcm0tdGl0bGUsIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLnBvc3RfX3RpdGxlLCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1sYXRlc3QgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAudmVoaWNsZV9fdGl0bGUsIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX190aXRsZSAubGlzdGluZ19fdGl0bGUsIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3RpdGxlIC5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlLCAucGFnZS0tdGVhc2VyIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fdGl0bGUgLnBhZ2VfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfSB9XG4gIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fc3ViLXRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAwLjMxMjVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fc3ViLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07IH0gfVxuICAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX2JvdHRvbSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICBnYXA6IDEuODc1cmVtO1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgcGFkZGluZzogMC45Mzc1cmVtIDAuNjI1cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRThFOEU4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fYm90dG9tIHtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbTsgfSB9XG4gIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fbGluayBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgcGFkZGluZzogMC43NXJlbSAwLjg3NXJlbTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDAuODEyNXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX19saW5rIGEge1xuICAgICAgb3V0bGluZTogMDsgfVxuICAgIC5zaG93cm9vbS0tdGVhc2VyIC5zaG93cm9vbV9fbGluayBhOmhvdmVyLCAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX2xpbmsgYTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYwMDI4O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX19saW5rIGEge1xuICAgICAgICBwYWRkaW5nOiAxcmVtOyB9IH1cbiAgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX19wcmljZSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2hvd3Jvb20tLXRlYXNlciAuc2hvd3Jvb21fX3ByaWNlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfSB9XG4gICAgLnNob3dyb29tLS10ZWFzZXIgLnNob3dyb29tX19wcmljZSBzcGFuIHtcbiAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgZm9udC1zaXplOiA3MCU7IH1cblxuLnByaWNlX190b3RhbCwgLnByaWNlX19zb2xkLCAucHJpY2VfX21vbnRobHkge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yOyB9XG5cbi5wcmljZV9fc29sZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLnByaWNlLS10ZWFzZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDAuMTg3NXJlbTsgfVxuICAucHJpY2UtLXRlYXNlciAucHJpY2VfX3RvdGFsLFxuICAucHJpY2UtLXRlYXNlciAucHJpY2VfX21vbnRobHksXG4gIC5wcmljZS0tdGVhc2VyIC5wcmljZV9fc29sZCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wcmljZS0tdGVhc2VyIC5wcmljZV9fdG90YWwsXG4gICAgICAucHJpY2UtLXRlYXNlciAucHJpY2VfX21vbnRobHksXG4gICAgICAucHJpY2UtLXRlYXNlciAucHJpY2VfX3NvbGQge1xuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9IH1cblxuLnByaWNlLS1mdWxsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAwLjE4NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5wcmljZS0tZnVsbCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gIC5wcmljZS0tZnVsbCAucHJpY2VfX3RvdGFsLFxuICAucHJpY2UtLWZ1bGwgLnByaWNlX19tb250aGx5LFxuICAucHJpY2UtLWZ1bGwgLnByaWNlX19zb2xkIHtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9XG5cbi5wcmljZS0tY29tcGFyZSAucHJpY2VfX3RvdGFsLFxuLnByaWNlLS1jb21wYXJlIC5wcmljZV9fc29sZCB7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuLnByaWNlLS1yZWNlbnRseS12aWV3ZWQgLnByaWNlX190b3RhbCxcbi5wcmljZS0tcmVjZW50bHktdmlld2VkIC5wcmljZV9fc29sZCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi5wcmljZS1jb21iaW5lZCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5wcmljZS1jb21iaW5lZF9fdmFsdWUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLnByaWNlLWNvbWJpbmVkX192YXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLnByaWNlLWNvbWJpbmVkX193YXMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjMxMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC5wcmljZS1jb21iaW5lZF9fd2FzLWxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogNzAlOyB9XG4gICAgLnByaWNlLWNvbWJpbmVkX193YXMtdmFsdWUge1xuICAgICAgZm9udC1zaXplOiA3MCU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDsgfVxuXG4uc3BlY2lmaWNhdGlvbixcbi5zcGVjaWZpY2F0aW9uLWxpbmsge1xuICBjb2xvcjogIzIyMjIyMjtcbiAgcGFkZGluZzogMC44MTI1cmVtO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2O1xuICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cblxuLnNwZWNpZmljYXRpb24tbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuc3BlY2lmaWNhdGlvbi1saW5rIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5zcGVjaWZpY2F0aW9uLWxpbms6aG92ZXIsIC5zcGVjaWZpY2F0aW9uLWxpbms6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnRlY2huaWNhbC1kYXRhLS1kZWZhdWx0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjtcbiAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIC50ZWNobmljYWwtZGF0YS0tZGVmYXVsdCAudGVjaG5pY2FsLWRhdGFfX2xhYmVsIHtcbiAgICBjb2xvcjogIzcxNzU4MDsgfVxuXG4udGVjaG5pY2FsLWRhdGEtLWZ1bGwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC50ZWNobmljYWwtZGF0YS0tZnVsbCAudGVjaG5pY2FsLWRhdGFfX2xhYmVsIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLnRlY2huaWNhbC1kYXRhLS1mdWxsIC50ZWNobmljYWwtZGF0YV9fdmFsdWUge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuXG4udGVjaG5pY2FsLWRhdGEtLXByb21vdGVkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogNjAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAudGVjaG5pY2FsLWRhdGEtLXByb21vdGVkIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyB9IH1cbiAgLnRlY2huaWNhbC1kYXRhLS1wcm9tb3RlZCAudGVjaG5pY2FsLWRhdGFfX2ljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC50ZWNobmljYWwtZGF0YS0tcHJvbW90ZWQgLnRlY2huaWNhbC1kYXRhX19pY29uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAudGVjaG5pY2FsLWRhdGEtLXByb21vdGVkIC50ZWNobmljYWwtZGF0YV9fbGFiZWwge1xuICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC50ZWNobmljYWwtZGF0YS0tcHJvbW90ZWQgLnRlY2huaWNhbC1kYXRhX19sYWJlbCB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICBmb250LXNpemU6IDAuOTM3NXJlbTsgfSB9XG4gIC50ZWNobmljYWwtZGF0YS0tcHJvbW90ZWQgLnRlY2huaWNhbC1kYXRhX192YWx1ZSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnRlY2huaWNhbC1kYXRhLS1wcm9tb3RlZCAudGVjaG5pY2FsLWRhdGFfX3ZhbHVlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4xODc1cmVtO1xuICAgICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfSB9XG5cbi50ZWNobmljYWwtZGF0YS0tcHJvbW90ZWQtcmV2ZWFsIC50ZWNobmljYWwtZGF0YV9faWNvbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMi41cmVtO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDMuMTI1cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRlY2huaWNhbC1kYXRhLS1wcm9tb3RlZC1yZXZlYWwgLnRlY2huaWNhbC1kYXRhX19pY29uIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMi4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbi50ZWNobmljYWwtZGF0YS0tcHJvbW90ZWQtcmV2ZWFsIC50ZWNobmljYWwtZGF0YV9fbGFiZWwge1xuICBmbG9hdDogbGVmdDtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDMuMTI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRlY2huaWNhbC1kYXRhLS1wcm9tb3RlZC1yZXZlYWwgLnRlY2huaWNhbC1kYXRhX19sYWJlbCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4udGVjaG5pY2FsLWRhdGEtLXByb21vdGVkLXJldmVhbCAudGVjaG5pY2FsLWRhdGFfX3ZhbHVlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAzLjEyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50ZWNobmljYWwtZGF0YS0tcHJvbW90ZWQtcmV2ZWFsIC50ZWNobmljYWwtZGF0YV9fdmFsdWUge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4udGVjaG5pY2FsLWRhdGEtLXN1bW1hcnkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAudGVjaG5pY2FsLWRhdGEtLXN1bW1hcnkgLnRlY2huaWNhbC1kYXRhX19sYWJlbCB7XG4gICAgY29sb3I6ICM3MTc1ODA7IH1cblxuLnRlY2huaWNhbC1kYXRhLS10ZWFzZXIge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50ZWNobmljYWwtZGF0YS0tdGVhc2VyIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG5cbi50ZWNobmljYWwtZGF0YS0tZmVhdHVyZWQgLnRlY2huaWNhbC1kYXRhX19pY29uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udGVjaG5pY2FsLWRhdGEtLWZlYXR1cmVkIC50ZWNobmljYWwtZGF0YV9fbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLnRlY2huaWNhbC1kYXRhLS1mZWF0dXJlZCAudGVjaG5pY2FsLWRhdGFfX3ZhbHVlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbi50ZWNobmljYWwtZGF0YS0tY29tcGFyZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAudGVjaG5pY2FsLWRhdGEtLWNvbXBhcmUgLnRlY2huaWNhbC1kYXRhX19sYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC4zMTI1cmVtO1xuICAgIGxlZnQ6IDAuMzEyNXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnRlY2huaWNhbC1kYXRhLS1jb21wYXJlIC50ZWNobmljYWwtZGF0YV9fbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnRlY2huaWNhbC1kYXRhLS1jb21wYXJlIC50ZWNobmljYWwtZGF0YV9fdmFsdWUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC50ZWNobmljYWwtZGF0YS0tY29tcGFyZSAudGVjaG5pY2FsLWRhdGFfX3ZhbHVlIHtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi52ZWhpY2xlLS1jb21wYXJlIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMC4xODc1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnZlaGljbGUtLWNvbXBhcmUgLnZlaGljbGVfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICAgIGhlaWdodDogMTMuNDM3NXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52ZWhpY2xlLS1jb21wYXJlIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcyBpbWcge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgICAgIG1heC13aWR0aDogMTAwdnc7IH0gfVxuXG4udmVoaWNsZS0tY29tcGFyZSAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudmVoaWNsZS0tY29tcGFyZSAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAzLjc1cmVtOyB9IH1cbiAgLnZlaGljbGUtLWNvbXBhcmUgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gbGk6bnRoLWNoaWxkKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7IH1cblxuLnZlaGljbGUtLWNvbXBhcmUgLnZlaGljbGVfX2FkbWluLWZlZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiA2NSU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC52ZWhpY2xlLS1jb21wYXJlIC52ZWhpY2xlX19hZG1pbi1mZWU6OmJlZm9yZSB7XG4gICAgY29udGVudDogJysnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMTg3NXJlbTsgfVxuXG4udmVoaWNsZS0tY29tcGFyZSAudmVoaWNsZV9fZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudmVoaWNsZS0tY29tcGFyZSAudmVoaWNsZV9fZm9vdGVyIGEge1xuICAgIG1hcmdpbjogMC4xODc1cmVtOyB9XG5cbi52ZWhpY2xlLS1mdWxsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyBoMiwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5vZmZlcl9fdGl0bGUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5vcmRlci1wcm9ncmVzc19fdGl0bGUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAucGFydF9fdGl0bGUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5wYXJ0LS1mdWxsIC5wYXJ0X19mb3JtLXRpdGxlLCAucGFydC0tZnVsbCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAucGFydF9fZm9ybS10aXRsZSwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLnBvc3QtLWZlYXR1cmVkIC5wb3N0X190aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5wb3N0X190aXRsZSwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC52ZWhpY2xlLS1sYXRlc3QgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAubGlzdGluZ19fdGl0bGUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAubGlzdGluZ19fdGl0bGUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLmxpc3RpbmdfX3RpdGxlLCAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAucGFnZS0tdGVhc2VyIC5wYWdlX190aXRsZSwgLnBhZ2UtLXRlYXNlciAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAucGFnZV9fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgaDIsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAub2ZmZXJfX3RpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLnBhcnRfX3RpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLnBhcnRfX2Zvcm0tdGl0bGUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsIC5wb3N0LS1mZWF0dXJlZCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAucG9zdF9fdGl0bGUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5saXN0aW5nX190aXRsZSwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLmxpc3RpbmdfX3RpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGluZyAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5saXN0aW5nX190aXRsZSwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkaW5nIC5saXN0aW5nX190aXRsZSwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRpbmcgLnBhZ2VfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fYmFjayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fYmFjayBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19iYWNrIGEgc3BhbiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3RvcCB7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3RvcCB7XG4gICAgICBwYWRkaW5nOiAxLjg3NXJlbTsgfSB9XG4gIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX190b3AtYmcge1xuICAgIHBhZGRpbmctdG9wOiAxLjg3NXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdG9wLWJnIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMuMTI1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMy4xMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX190b3Atb3V0ZXIge1xuICAgICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3RvcC1vdXRlcjo6YmVmb3JlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdG9wLW91dGVyOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7IH1cbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX190b3Atb3V0ZXI6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdG9wLW91dGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX190b3Atb3V0ZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3RvcC1vdXRlciwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3RvcC1vdXRlcjpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7IH0gfVxuICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdG9wLWlubmVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdG9wLWlubmVyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX190b3AtaW5uZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdG9wLWlubmVyOjpiZWZvcmUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX190b3AtaW5uZXI6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3RvcC1pbm5lcjo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3RvcCAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX190b3AgLnZlaGljbGVfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3RvcCAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3RvcCAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdG9wIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3RvcCAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdG9wIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcyB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdG9wIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcyB1bCBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdG9wIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcy1pbm5lciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG4gIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcy10aHVtYm5haWxzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogMC4wNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcy10aHVtYm5haWxzIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3ByaW1hcnktaW1hZ2VzLXRodW1ibmFpbHM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3ByaW1hcnktaW1hZ2VzLXRodW1ibmFpbHMge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMC42MjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMtdGh1bWJuYWlscyB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcy10aHVtYm5haWxzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMtdGh1bWJuYWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcy10aHVtYm5haWxzIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMtdGh1bWJuYWlscyB1bCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMtdGh1bWJuYWlscyB1bCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3ByaW1hcnktaW1hZ2VzLXRodW1ibmFpbHMgdWwgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMtdGh1bWJuYWlscyB1bCBpbWcge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3ByaW1hcnktaW1hZ2VzLXRodW1ibmFpbHMtaW5uZXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH0gfVxuICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDYuMjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0zLjEyNXJlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHotaW5kZXg6IDk5OTsgfVxuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX192aWRlbyBpOjpiZWZvcmUge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBmb250LXNpemU6IDYuMjVyZW07IH1cbiAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX21lZGlhLW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDIuODEyNXJlbTtcbiAgICBib3R0b206IDEuMjVyZW07XG4gICAgei1pbmRleDogOTk5O1xuICAgIHRleHQtc2hhZG93OiAwLjEyNXJlbSAwLjEyNXJlbSAwLjMxMjVyZW0gcmdiYSgzNCwgMzQsIDM0LCAwLjE1KTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fbWVkaWEtbWVudSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fbWVkaWEtbWVudSB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fbWVkaWEtbWVudSB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fbWVkaWEtbWVudSB1bCBsaSBhIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19tZWRpYS1tZW51IHVsIGxpIGEgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMzEyNXJlbTtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBnYXA6IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtO1xuICAgICAgICBnYXA6IDEuODc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkZXIgLnZlaGljbGVfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmbGV4OiAxO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7IH1cbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkZXIgLnZlaGljbGVfX3RpdGxlIC52ZWhpY2xlX19tYWtlLFxuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRlciAudmVoaWNsZV9fdGl0bGUgLnZlaGljbGVfX21vZGVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfVxuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2hlYWRlciAudmVoaWNsZV9fdGl0bGUgLnZlaGljbGVfX21vZGVsIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMTI1cmVtOyB9XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9faGVhZGVyIC52ZWhpY2xlX190aXRsZSAudmVoaWNsZV9fbW9kZWwtdmFyaWFudCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjMxMjVyZW07XG4gICAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkZXIgLnZlaGljbGVfX3ByaWNlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBmbGV4OiAxOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkZXIgLnZlaGljbGVfX3ByaWNlIHtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH0gfVxuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19oZWFkZXIgLnZlaGljbGVfX3Byb21vLXRleHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMC45Mzc1cmVtO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjYyQjM1O1xuICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50OjpiZWZvcmUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50OjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50OjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGVudC1maXJzdCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGVudC1maXJzdCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50LWZpcnN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50LWZpcnN0IHtcbiAgICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGxlZnQ6IDY2LjY2NjY3JTtcbiAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICAgIHRvcDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGVudC1maXJzdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50LWZpcnN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGVudC1zZWNvbmQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGVudC1zZWNvbmQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGVudC1zZWNvbmQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRlbnQtc2Vjb25kIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGVudC1zZWNvbmQge1xuICAgICAgICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbGVmdDogLTMzLjMzMzMzJTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRlbnQtc2Vjb25kIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRlbnQtc2Vjb25kOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGVudCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGdhcDogMC42MjVyZW07XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50IC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50IC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsIGxpIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0UzRTNFMzsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRlbnQgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgbGkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lOyB9IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGVudCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRlbnQgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50IC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgICBnYXA6IDAuNjI1cmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50IC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50IC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjsgfSB9XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGVudCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeS1saW5rIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMC44NzVyZW07XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICAgICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250ZW50IC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5LWxpbmsge1xuICAgICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRlbnQgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnktbGluazpob3ZlciwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRlbnQgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnktbGluazpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2E2MDAyODtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19kZXNjcmlwdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fZGVzY3JpcHRpb24taW5uZXIge1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19kZXNjcmlwdGlvbi1pbm5lciB7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19kZXNjcmlwdGlvbi1pbm5lciBwOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fZGVzY3JpcHRpb24taW5uZXIgcCBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fZGVzY3JpcHRpb24taW5uZXIgcCBhOm5vdCguYnV0dG9uKTpob3ZlciB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zcGVjaWZpY2F0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc3BlY2lmaWNhdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc3BlY2lmaWNhdGlvbiB1bCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBnYXA6IDAuNjI1cmVtO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NwZWNpZmljYXRpb24gdWwge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zcGVjaWZpY2F0aW9uIHVsIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyOyB9IH1cbiAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NpZGViYXItb3B0aW9ucyB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gICAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNGNkY2RjY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NpZGViYXItb3B0aW9ucyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIuNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDIuNXJlbTsgfSB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NpZGViYXItb3B0aW9ucyB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2lkZWJhci1vcHRpb25zIHVsIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Y2RjZGNjsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zaWRlYmFyLW9wdGlvbnMgdWwgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICAgICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2lkZWJhci1vcHRpb25zIHVsIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2lkZWJhci1vcHRpb25zIC52ZWhpY2xlLXNpZGViYXItb3B0aW9ucyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGdhcDogMS4yNXJlbTsgfVxuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NpZGViYXItb3B0aW9ucyAudmVoaWNsZS1zaWRlYmFyLW9wdGlvbnNfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zaWRlYmFyLW9wdGlvbnMgLnZlaGljbGUtc2lkZWJhci1vcHRpb25zX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2lkZWJhci1vcHRpb25zIC52ZWhpY2xlLXNpZGViYXItb3B0aW9uc19faWNvbiBpOjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogI2MzMDAyZjtcbiAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfVxuICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCB7XG4gICAgcGFkZGluZzogMS44NzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCBoMywgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRhY3QgLmJsb2NrLS1zaWRlYmFyIC5ibG9ja19fdGl0bGUsIC5ibG9jay0tc2lkZWJhciAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAuYmxvY2tfX3RpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAub2ZmZXItLWZlYXR1cmVkIC5vZmZlcl9fc3ViLXRpdGxlLCAub2ZmZXItLWZlYXR1cmVkIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250YWN0IC5vZmZlcl9fc3ViLXRpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAuYWRkLW9uX190aXRsZSwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRhY3QgLmNhbGVuZGFyX19oZWFkZXIgLmNhbGVuZGFyX19tb250aCBzcGFuLCAuY2FsZW5kYXJfX2hlYWRlciAuY2FsZW5kYXJfX21vbnRoIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250YWN0IHNwYW4sIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250YWN0IC5jb2xsZWN0aW9uLWRlbGl2ZXJ5X190aXRsZSwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRhY3QgLm9yZGVyLXBheW1lbnRfX3RpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAub3JkZXItc3RhdGUtc3VtbWFyeV9fdmVoaWNsZS10aXRsZSwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRhY3QgLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19zdWItdGl0bGUsIC5wYXJ0LS1mZWF0dXJlZCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAucGFydF9fc3ViLXRpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3N1Yi10aXRsZSwgLnBvc3QtLWZlYXR1cmVkIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250YWN0IC5wb3N0X19zdWItdGl0bGUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250YWN0IC5xdWljay1zZWFyY2hfX2xlZ2VuZCwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRhY3QgLmxpc3RpbmctLXNob3dyb29tLXRlYXNlciAubGlzdGluZ19fdGl0bGUgaDEsIC5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250YWN0IGgxLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tcG9zdC10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250YWN0IGgxLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAubGlzdGluZy0tb2ZmZXItdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLW9mZmVyLXRlYXNlciAubGlzdGluZ19fdGl0bGUgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRhY3QgaDEsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250YWN0IC5saXN0aW5nLS1jdXN0b20tZW50cnktdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250YWN0IGgxLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLCAubGlzdGluZy0tdmVoaWNsZS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250YWN0IGgxLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIGgxLCAuYmxvY2stLWluZGV4LWhlYWRlciAuYmxvY2tfX3RpdGxlIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250YWN0IGgxLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAuYnJhbmNoLS1jb250YWN0IC5icmFuY2hfX29wZW5pbmctaG91cnMtdGl0bGUsIC5icmFuY2gtLWNvbnRhY3QgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRhY3QgLmJyYW5jaF9fb3BlbmluZy1ob3Vycy10aXRsZSwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRhY3QgLmZvcm0tLXBhcnQtZXhjaGFuZ2UgLmZvcm1fX3RpdGxlLCAuZm9ybS0tcGFydC1leGNoYW5nZSAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAuZm9ybV9fdGl0bGUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19jb250YWN0IC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190aXRsZSwgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRhY3QgLmZpbmFuY2UtdGFibGVfX3RpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAuZmluYW5jZS1jaGVja2VyX19kZXRhaWxzLXRpdGxlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3RpdGxlLCAuZmluYW5jZS10YWJsZS0tb3JkZXIgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2NvbnRhY3QgLmZpbmFuY2UtdGFibGVfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fY29udGFjdCBwIHtcbiAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2JyYW5jaCB7XG4gICAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19icmFuY2gtbmFtZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19icmFuY2gtbmFtZSBzcGFuIHtcbiAgICAgICAgY29sb3I6ICMyMjIyMjI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fYnJhbmNoLXRlbGVwaG9uZS1sYWJlbCB7XG4gICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS40OyB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2JyYW5jaC10ZWxlcGhvbmUtdmFsdWUge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2JyYW5jaC10ZWxlcGhvbmUtdmFsdWUgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtO1xuICAgICAgICBjb2xvcjogI2MzMDAyZjsgfVxuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2JyYW5jaC10ZWxlcGhvbmUtdmFsdWUgc3BhbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3BhcnQtZXhjaGFuZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gICAgcGFkZGluZzogMS44NzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3BhcnQtZXhjaGFuZ2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzIHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogOTcuNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzOjpiZWZvcmUsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NlY29uZGFyeS1pbWFnZXMsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NlY29uZGFyeS1pbWFnZXMge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNi4yNXJlbTsgfSB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NlY29uZGFyeS1pbWFnZXMgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NlY29uZGFyeS1pbWFnZXMgdWwgbGkgaW1nIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19maW5hbmNlIHtcbiAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2ZpbmFuY2U6OmJlZm9yZSwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2ZpbmFuY2U6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY29udGVudDogJyAnOyB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2ZpbmFuY2U6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19maW5hbmNlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2ZpbmFuY2U6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fZmluYW5jZSwgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2ZpbmFuY2U6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fZmluYW5jZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2ZpbmFuY2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtOyB9IH1cbiAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2p1ZGdlLXNlcnZpY2Uge1xuICAgIG1heC13aWR0aDogODEuMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fanVkZ2Utc2VydmljZTo6YmVmb3JlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fanVkZ2Utc2VydmljZTo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fanVkZ2Utc2VydmljZTo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2p1ZGdlLXNlcnZpY2Uge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fanVkZ2Utc2VydmljZTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19qdWRnZS1zZXJ2aWNlLCAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fanVkZ2Utc2VydmljZTpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19qdWRnZS1zZXJ2aWNlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fanVkZ2Utc2VydmljZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07IH0gfVxuICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhIHVsIGxpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtOyB9XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTsgfVxuICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2VydmljZS1oaXN0b3J5ID4gdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NlcnZpY2UtaGlzdG9yeSA+IHVsID4gbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zZXJ2aWNlLWhpc3RvcnkgPiB1bCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2VydmljZS1oaXN0b3J5ID4gdWwgPiBsaSA+IHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NlcnZpY2UtaGlzdG9yeSA+IHVsID4gbGkgPiB1bCA+IGxpIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMC42MjVyZW07XG4gICAgICAgICAgbWFyZ2luLXRvcDogMC42MjVyZW07IH1cbiAgICAgICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2VydmljZS1oaXN0b3J5ID4gdWwgPiBsaSA+IHVsID4gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTsgfVxuICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2VydmljZS1oaXN0b3J5IC5zZXJ2aWNlLWhpc3Rvcnkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAwLjYyNXJlbTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2VydmljZS1oaXN0b3J5IC5zZXJ2aWNlLWhpc3RvcnkgLnNlcnZpY2UtaGlzdG9yeV9fbGFiZWwge1xuICAgICAgZmxleDogMTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2VydmljZS1oaXN0b3J5IC5zZXJ2aWNlLWhpc3RvcnkgLnNlcnZpY2UtaGlzdG9yeV9fdmFsdWUge1xuICAgICAgZmxleDogMTtcbiAgICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fZG9jdW1lbnRzIHtcbiAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2RvY3VtZW50cyB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fZG9jdW1lbnRzIHVsIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2RvY3VtZW50cyB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19kb2N1bWVudHMgdWwgbGkgYSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMC44NzVyZW07XG4gICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjkzNzVyZW07XG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICAgICAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX2RvY3VtZW50cyB1bCBsaSBhIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fZG9jdW1lbnRzIHVsIGxpIGE6aG92ZXIsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19kb2N1bWVudHMgdWwgbGkgYTpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTYwMDI4O1xuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fZG9jdW1lbnRzIHVsIGxpIGE6Zm9jdXMsIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19kb2N1bWVudHMgdWwgbGkgYTpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCAjYzMwMDJmIDkwJSwgYmxhY2spOyB9XG4gIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19kaXNjbGFpbWVyIHtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbiAgICBjb2xvcjogIzIyMjIyMjtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX19zcGVjaWZpY2F0aW9uIHVsIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdhcDogMC42MjVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX19zcGVjaWZpY2F0aW9uIHVsIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX19zcGVjaWZpY2F0aW9uIHVsIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjsgfSB9XG4gIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWw6OmJlZm9yZSwgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsOjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bDo6YWZ0ZXIge1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaSB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGk6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsOjpiZWZvcmUsIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bDo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICBjb250ZW50OiAnICc7IH1cbiAgICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWw6OmFmdGVyIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGkge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogNTAlOyB9XG4gICAgICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGk6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyB9XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGkge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAgICAgICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaSB7XG4gICAgICAgICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaSA+IGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsIGlucHV0LFxuICAgICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCBzZWxlY3QsXG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsIGEsXG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsIGJ1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGk6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMC42MjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkID4gdWwgPiBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAuOTM3NXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCA+IHVsID4gbGkge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfSB9XG4gIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bDo6YmVmb3JlLCAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bDo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnOyB9XG4gICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bDo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaTpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaTpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bCA+IGxpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bCA+IGxpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaTpudGgtb2YtdHlwZSgxbikge1xuICAgICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bCA+IGxpOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsID4gbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSA+IHVsID4gbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1zdW1tYXJ5ID4gdWwgPiBsaTpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkgPiB1bCA+IGxpOm50aC1sYXN0LWNoaWxkKDMpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhIHtcbiAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMC4zNzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjMxMjVyZW07IH1cbiAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsOjpiZWZvcmUsIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bDo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY29udGVudDogJyAnOyB9XG4gICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWw6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGk6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gICAgICAudmVoaWNsZS0tZnVsbC1yZXZlYWwgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhID4gdWwgPiBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDAuNjI1cmVtIDAuNjI1cmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkge1xuICAgICAgICAgICAgcGFkZGluZzogMC42MjVyZW0gMC45Mzc1cmVtOyB9IH1cbiAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIHVsIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAgICAgLnZlaGljbGUtLWZ1bGwtcmV2ZWFsIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgdWwgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICAgICAgICAgIC52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIHVsIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi52ZWhpY2xlLS10ZWFzZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMC4zMTI1cmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcyBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41czsgfVxuICAgICAgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMgaW1nOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjg7IH1cbiAgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fc2F2ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC45Mzc1cmVtO1xuICAgIGxlZnQ6IDAuOTM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX19zYXZlIHtcbiAgICAgICAgdG9wOiAxLjI1cmVtO1xuICAgICAgICBsZWZ0OiAxLjI1cmVtOyB9IH1cbiAgICAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX19zYXZlIGEgaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX19zYXZlIGEgaTo6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgICAgY29udGVudDogJ1xcZTg3ZSc7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX19zYXZlIGEgaTo6YmVmb3JlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuODc1cmVtOyB9IH1cbiAgICAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX19zYXZlIGEuanMtc2F2ZS12ZWhpY2xlLS1zYXZlZCBpOjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgICBjb250ZW50OiAnXFxlODdkJzsgfVxuICAgIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3NhdmUgYSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fc2FzaCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMC45Mzc1cmVtO1xuICAgIGxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nOiAwLjMxMjVyZW0gMC42MjVyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNjJCMzU7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3Nhc2gge1xuICAgICAgICBib3R0b206IDEuMjVyZW07XG4gICAgICAgIGxlZnQ6IDEuMjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNDM3NXJlbSAwLjgxMjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuICAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX19kZXRhaWxzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMS4yNXJlbSAwLjYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX2RldGFpbHMge1xuICAgICAgICBwYWRkaW5nOiAxLjI1cmVtOyB9IH1cbiAgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgaDIsIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAub2ZmZXJfX3RpdGxlLCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLnBhcnRfX3RpdGxlLCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLnBhcnRfX2Zvcm0tdGl0bGUsIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsIC5wb3N0LS1mZWF0dXJlZCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAucG9zdF9fdGl0bGUsIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLnBhZ2VfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiAjMjIyMjIyO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgaDIsIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX190aXRsZSwgLm9mZmVyLS1mZWF0dXJlZCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAub2ZmZXJfX3RpdGxlLCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAub3JkZXItcHJvZ3Jlc3NfX3RpdGxlLCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAucGFydC0tZmVhdHVyZWQgLnBhcnRfX3RpdGxlLCAucGFydC0tZmVhdHVyZWQgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLnBhcnRfX3RpdGxlLCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSwgLnBhcnQtLWZ1bGwgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLnBhcnRfX2Zvcm0tdGl0bGUsIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsIC5wb3N0LS1mZWF0dXJlZCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAucG9zdF9fdGl0bGUsIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC52ZWhpY2xlLS1nZW5lcmFsIC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWdlbmVyYWwgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLnZlaGljbGVfX3RpdGxlLCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAudmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSwgLnZlaGljbGUtLWxhdGVzdCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAudmVoaWNsZV9fdGl0bGUsIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLmxpc3RpbmdfX3RpdGxlLCAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190aXRsZSAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAubGlzdGluZ19fdGl0bGUsIC5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSwgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC5saXN0aW5nX190aXRsZSwgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLnBhZ2UtLXRlYXNlciAucGFnZV9fdGl0bGUsIC5wYWdlLS10ZWFzZXIgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGl0bGUgLnBhZ2VfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfSB9XG4gIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC52ZWhpY2xlX19tb2RlbC12YXJpYW50IHtcbiAgICBtYXJnaW4tdG9wOiAwLjMxMjVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RpdGxlIC52ZWhpY2xlX19tb2RlbC12YXJpYW50IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07IH0gfVxuICAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCB7XG4gICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfSB9XG4gICAgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQgPiB1bCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZ2FwOiAwLjMxMjVyZW07XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX2JvdHRvbSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICBnYXA6IDEuODc1cmVtO1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgcGFkZGluZzogMC45Mzc1cmVtIDAuNjI1cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRThFOEU4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX2JvdHRvbSB7XG4gICAgICAgIHBhZGRpbmc6IDEuMjVyZW07IH0gfVxuICAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX19saW5rIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzMwMDJmO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMC44MTI1cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX19saW5rIGEge1xuICAgICAgb3V0bGluZTogMDsgfVxuICAgIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX2xpbmsgYTpob3ZlciwgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fbGluayBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmVoaWNsZS0tdGVhc2VyIC52ZWhpY2xlX19saW5rIGEge1xuICAgICAgICBwYWRkaW5nOiAxcmVtOyB9IH1cbiAgLnZlaGljbGUtLXRlYXNlciAudmVoaWNsZV9fcHJpY2Uge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC52ZWhpY2xlLS10ZWFzZXIgLnZlaGljbGVfX2ZpbmFuY2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnZlaGljbGVfX21lZGlhLWNvdW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwOyB9XG4gIC52ZWhpY2xlX19tZWRpYS1jb3VudCA+IHVsIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMC4zNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTsgfVxuICAgIC52ZWhpY2xlX19tZWRpYS1jb3VudCA+IHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDAuMzc1cmVtIDAuMTI1cmVtOyB9XG4gICAgICAudmVoaWNsZV9fbWVkaWEtY291bnQgPiB1bCBsaSBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTsgfVxuXG5oMSxcbmgyLFxuLm9mZmVyLS1mZWF0dXJlZCAub2ZmZXJfX3RpdGxlLFxuLm9yZGVyLXByb2dyZXNzX190aXRsZSxcbi5wYXJ0LS1mZWF0dXJlZCAucGFydF9fdGl0bGUsXG4ucGFydC0tZnVsbCAucGFydF9fZm9ybS10aXRsZSxcbi5wb3N0LS1mZWF0dXJlZCAucG9zdF9fdGl0bGUsXG4udmVoaWNsZS0tZ2VuZXJhbCAudmVoaWNsZV9fdGl0bGUsXG4udmVoaWNsZS0tbGF0ZXN0IC52ZWhpY2xlX190aXRsZSxcbi5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbi5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbi5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLmxpc3RpbmdfX3RpdGxlLFxuLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLmxpc3RpbmdfX3RpdGxlLFxuLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5saXN0aW5nX190aXRsZSxcbi5wYWdlLS10ZWFzZXIgLnBhZ2VfX3RpdGxlLFxuaDMsXG4uYmxvY2stLXNpZGViYXIgLmJsb2NrX190aXRsZSxcbi5vZmZlci0tZmVhdHVyZWQgLm9mZmVyX19zdWItdGl0bGUsXG4uYWRkLW9uX190aXRsZSxcbi5jYWxlbmRhcl9faGVhZGVyIC5jYWxlbmRhcl9fbW9udGggc3Bhbixcbi5jb2xsZWN0aW9uLWRlbGl2ZXJ5X190aXRsZSxcbi5vcmRlci1wYXltZW50X190aXRsZSxcbi5vcmRlci1zdGF0ZS1zdW1tYXJ5X192ZWhpY2xlLXRpdGxlLFxuLnBhcnQtLWZlYXR1cmVkIC5wYXJ0X19zdWItdGl0bGUsXG4ucG9zdC0tZmVhdHVyZWQgLnBvc3RfX3N1Yi10aXRsZSxcbi5xdWljay1zZWFyY2hfX2xlZ2VuZCxcbi5saXN0aW5nLS1zaG93cm9vbS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuLmxpc3RpbmctLXBvc3QtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbi5saXN0aW5nLS1vZmZlci10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuLmxpc3RpbmctLWN1c3RvbS1lbnRyeS10ZWFzZXIgLmxpc3RpbmdfX3RpdGxlIGgxLFxuLmxpc3RpbmctLXZlaGljbGUtdGVhc2VyIC5saXN0aW5nX190aXRsZSBoMSxcbi5ibG9jay0taW5kZXgtaGVhZGVyIC5ibG9ja19fdGl0bGUgaDEsXG4uYnJhbmNoLS1jb250YWN0IC5icmFuY2hfX29wZW5pbmctaG91cnMtdGl0bGUsXG4uZm9ybS0tcGFydC1leGNoYW5nZSAuZm9ybV9fdGl0bGUsXG4uZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fdGl0bGUsXG4uZmluYW5jZS1jaGVja2VyX19kZXRhaWxzLXRpdGxlLFxuLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5maW5hbmNlLXRhYmxlX190aXRsZSxcbmg0LFxuLnZpZGVvLS1wYWdlIC52aWRlb19fdGl0bGUsXG4ubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX19zcGVjaWZpY2F0aW9uID4gdWwgPiBsaSAuc3BlY2lmaWNhdGlvbi1jYXRlZ29yeV9fdGl0bGUsXG4ubmV3LXZlaGljbGUtLWZ1bGwgLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YSA+IHVsID4gbGkgLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSxcbi52ZWhpY2xlLS1mdWxsLXJldmVhbCAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEgPiB1bCA+IGxpIC50ZWNobmljYWwtZGF0YS1jYXRlZ29yeV9fdGl0bGUsXG4uZmluYW5jZS1mb3JtIC5maW5hbmNlLWZvcm1fX3RpdGxlLFxuLmZpbmFuY2UtdGFibGVzIC5maW5hbmNlLXdhcm5pbmcsXG4uZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fY2hlY2tlci10aXRsZSxcbi5maW5hbmNlLWV4YW1wbGVfX3RpdGxlLFxuaDUsXG4uYmxvY2stLXNpZGViYXIgLmJsb2NrX19zdWItdGl0bGUsXG5oNiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmJvZHlfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmwtYnJlYWRjcnVtYnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2OyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ05pc3Nhbi1Cb2xkJztcbiAgc3JjOiB1cmwoXCIuLi8uLi9mb250L05pc3Nhbi1Cb2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTmlzc2FuLVJlZ3VsYXInO1xuICBzcmM6IHVybChcIi4uLy4uL2ZvbnQvTmlzc2FuLVJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbi5sLWZvb3RlciB7XG4gIHBhZGRpbmctdG9wOiAzLjEyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmwtZm9vdGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2LjI1cmVtOyB9IH1cbiAgLmwtZm9vdGVyX19pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIC5sLWZvb3Rlcl9faW5uZXI6OmJlZm9yZSwgLmwtZm9vdGVyX19pbm5lcjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7IH1cbiAgICAubC1mb290ZXJfX2lubmVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubC1mb290ZXJfX2lubmVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmwtZm9vdGVyX19pbm5lcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5sLWZvb3Rlcl9faW5uZXIsIC5sLWZvb3Rlcl9faW5uZXI6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAubC1mb290ZXJfX2ZpcnN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubC1mb290ZXJfX2ZpcnN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07IH0gfVxuICAubC1mb290ZXJfX3NlY29uZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICAubC1mb290ZXJfX3NlY29uZCBociB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTNFM0UzOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAubC1mb290ZXJfX3NlY29uZCBociB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICAubC1mb290ZXJfX3RoaXJkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubC1mb290ZXJfX3RoaXJkIHtcbiAgICAgICAgZ2FwOiAxLjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmwtZm9vdGVyX190aGlyZCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuXG4ubC1oZWFkZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgbWF4LXdpZHRoOiA5Ny41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmwtaGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDEuODc1cmVtIDAuOTM3NXJlbTsgfSB9XG4gIC5sLWhlYWRlcl9faW5uZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGNvbHVtbi1nYXA6IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmwtaGVhZGVyX19pbm5lciB7XG4gICAgICAgIGNvbHVtbi1nYXA6IDEuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmwtaGVhZGVyX19pbm5lciB7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAubC1oZWFkZXJfX2lubmVyIHtcbiAgICAgICAgY29sdW1uLWdhcDogMi41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubC1oZWFkZXJfX3NlY29uZCB7XG4gICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogcmlnaHQ7IH0gfVxuICAubC1oZWFkZXJfX3RoaXJkIHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5sLWhlYWRlcl9fdGhpcmQge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuODc1cmVtO1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNFM0UzRTM7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5sLWhlYWRlcl9fdGhpcmQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTsgfSB9XG5cbi5sLW1haW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2OyB9XG4gIC5sLW1haW4tLWZ1bGwtd2lkdGgge1xuICAgIHBhZGRpbmctdG9wOiAxLjg3NXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmwtbWFpbi0tZnVsbC13aWR0aCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzLjEyNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmwtbWFpbi0tZnVsbC13aWR0aCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2LjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNi4yNXJlbTsgfSB9XG4gICAgLmwtbWFpbi0tZnVsbC13aWR0aCAubC1tYWluX19pbm5lciB7XG4gICAgICBtYXgtd2lkdGg6IDgxLjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgICAubC1tYWluLS1mdWxsLXdpZHRoIC5sLW1haW5fX2lubmVyOjpiZWZvcmUsIC5sLW1haW4tLWZ1bGwtd2lkdGggLmwtbWFpbl9faW5uZXI6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgICAgLmwtbWFpbi0tZnVsbC13aWR0aCAubC1tYWluX19pbm5lcjo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmwtbWFpbi0tZnVsbC13aWR0aCAubC1tYWluX19pbm5lciB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIC5sLW1haW4tLWZ1bGwtd2lkdGggLmwtbWFpbl9faW5uZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLmwtbWFpbi0tZnVsbC13aWR0aCAubC1tYWluX19pbm5lciwgLmwtbWFpbi0tZnVsbC13aWR0aCAubC1tYWluX19pbm5lcjpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7IH1cblxuLmZyb250IC5sLW1haW4sXG4uY29udHJvbGxlci12ZWhpY2xlLmFjdGlvbi1kZXRhaWwgLmwtbWFpbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLmwtbmF2IHtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5sLW5hdiB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmwtbmF2IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG4uZXh0cmFzLXByaWNlX192YWx1ZSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLmV4dHJhcy1wcmljZS0tdGVhc2VyIHtcbiAgbWFyZ2luLXRvcDogMC4xODc1cmVtO1xuICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4gIC5leHRyYXMtcHJpY2UtLXRlYXNlciAuZXh0cmFzLXByaWNlX19sYWJlbCB7XG4gICAgZm9udC1zaXplOiA2NSU7IH1cblxuLmV4dHJhcy1wcmljZS0tZnVsbCB7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5leHRyYXMtcHJpY2UtLWZ1bGwgLmV4dHJhcy1wcmljZV9fdmFsdWVzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5leHRyYXMtcHJpY2UtLWZ1bGwgLmV4dHJhcy1wcmljZV9fdmFsdWVzIHN0cm9uZyB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmV4dHJhcy1wcmljZS0tZnVsbCAuZXh0cmFzLXByaWNlX19saW5rIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAuODc1cmVtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMjIyO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMC42MjVyZW07XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuZXh0cmFzLXByaWNlLS1mdWxsIC5leHRyYXMtcHJpY2VfX2xpbmsgYSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgLmV4dHJhcy1wcmljZS0tZnVsbCAuZXh0cmFzLXByaWNlX19saW5rIGE6aG92ZXIsIC5leHRyYXMtcHJpY2UtLWZ1bGwgLmV4dHJhcy1wcmljZV9fbGluayBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxYjFiMWI7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uZXh0cmFzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZXh0cmFzIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZXh0cmFzIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmV4dHJhczo6YmVmb3JlLCAuZXh0cmFzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5leHRyYXM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5leHRyYXMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICAuZXh0cmFzX19saXN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5leHRyYXNfX2xpc3Qge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuZXh0cmFzX19saXN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5leHRyYXNfX2xpc3Qge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZXh0cmFzX19saXN0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuZXh0cmFzX19saXN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgLmV4dHJhc19fbGlzdC1oZWFkaW5nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gIC5leHRyYXNfX3N1bW1hcnkge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXNoYWRvdzogMXB4IDFweCAjZmZmZmZmOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5leHRyYXNfX3N1bW1hcnkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuZXh0cmFzX19zdW1tYXJ5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5leHRyYXNfX3N1bW1hcnkge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmV4dHJhc19fc3VtbWFyeSB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZXh0cmFzX19zdW1tYXJ5IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5leHRyYXNfX3N1bW1hcnk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICAuZXh0cmFzX19zdW1tYXJ5LWFtb3VudCB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgLmV4dHJhc19fc3VtbWFyeS1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAgIC5leHRyYXNfX3N1bW1hcnktdmFsdWUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiA0LjM3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi5maW5hbmNlLXByaWNlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLmZpbmFuY2UtcHJpY2VfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5maW5hbmNlLXByaWNlX19saXN0LWl0ZW0ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5maW5hbmNlLXByaWNlX19sYWJlbCB7XG4gICAgZm9udC1zaXplOiA2NSU7IH1cbiAgLmZpbmFuY2UtcHJpY2VfX3ZhbHVlIHtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIC5maW5hbmNlLXByaWNlX19zdWZmaXgge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMC4xODc1cmVtO1xuICAgIGZvbnQtc2l6ZTogNjAlOyB9XG4gIC5maW5hbmNlLXByaWNlLS10ZWFzZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG4gIC5maW5hbmNlLXByaWNlLS1mdWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzcxNzU4MDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4gICAgLmZpbmFuY2UtcHJpY2UtLWZ1bGwgLmZpbmFuY2UtcHJpY2VfX2xpc3QtaXRlbTo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjE4NzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC4xODc1cmVtO1xuICAgICAgZm9udC1zaXplOiA2NSU7XG4gICAgICBjb250ZW50OiAnb3InOyB9XG4gICAgLmZpbmFuY2UtcHJpY2UtLWZ1bGwgLmZpbmFuY2UtcHJpY2VfX2xpc3QtaXRlbTpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5maW5hbmNlLWZvcm0ge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5maW5hbmNlLWZvcm0ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5maW5hbmNlLWZvcm0ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAuZmluYW5jZS1mb3JtOjpiZWZvcmUsIC5maW5hbmNlLWZvcm06OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7IH1cbiAgLmZpbmFuY2UtZm9ybTo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5maW5hbmNlLWZvcm0gLmZpbmFuY2UtZm9ybV9fdGl0bGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5maW5hbmNlLWZvcm0gLmZpbmFuY2UtZm9ybV9fdGl0bGUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAuZmluYW5jZS1mb3JtIC5maW5hbmNlLWZvcm1fX3RpdGxlOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5maW5hbmNlLWZvcm0gLmZvcm0tZ3JvdXAge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmluYW5jZS1mb3JtIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZpbmFuY2UtZm9ybSAuZm9ybS1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmluYW5jZS1mb3JtIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZpbmFuY2UtZm9ybSAuZm9ybS1ncm91cCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmZpbmFuY2UtZm9ybSAuZm9ybS1ncm91cDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuZmluYW5jZS1mb3JtIC5idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDEuNTYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5maW5hbmNlLXN1bW1hcnkge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5maW5hbmNlLXRhYmxlcyB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZpbmFuY2UtdGFibGVzIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmluYW5jZS10YWJsZXMge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAuZmluYW5jZS10YWJsZXM6OmJlZm9yZSwgLmZpbmFuY2UtdGFibGVzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5maW5hbmNlLXRhYmxlczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5maW5hbmNlLXRhYmxlcyA+IC5maW5hbmNlLXRhYmxlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5maW5hbmNlLXRhYmxlcyA+IC5maW5hbmNlLXRhYmxlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZpbmFuY2UtdGFibGVzID4gLmZpbmFuY2UtdGFibGU6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmZpbmFuY2UtdGFibGVzID4gLmZpbmFuY2UtdGFibGU6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAuZmluYW5jZS10YWJsZXMgPiAuZmluYW5jZS10YWJsZTpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZpbmFuY2UtdGFibGVzID4gLmZpbmFuY2UtdGFibGUge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZpbmFuY2UtdGFibGVzID4gLmZpbmFuY2UtdGFibGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZpbmFuY2UtdGFibGVzID4gLmZpbmFuY2UtdGFibGU6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5maW5hbmNlLXRhYmxlcyA+IC5maW5hbmNlLXRhYmxlOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5maW5hbmNlLXRhYmxlcyA+IC5maW5hbmNlLXRhYmxlOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZpbmFuY2UtdGFibGVzLS0zID4gLmZpbmFuY2UtdGFibGUge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZpbmFuY2UtdGFibGVzLS0zID4gLmZpbmFuY2UtdGFibGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZpbmFuY2UtdGFibGVzLS0zID4gLmZpbmFuY2UtdGFibGU6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5maW5hbmNlLXRhYmxlcy0tMyA+IC5maW5hbmNlLXRhYmxlOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5maW5hbmNlLXRhYmxlcy0tMyA+IC5maW5hbmNlLXRhYmxlOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIC5maW5hbmNlLXRhYmxlcyAuZmluYW5jZS13YXJuaW5nIHtcbiAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5maW5hbmNlLXRhYmxlLS10ZWFzZXIge1xuICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgLmZpbmFuY2UtdGFibGUtLXRlYXNlciB0YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5maW5hbmNlLXRhYmxlLS10ZWFzZXIgdGFibGUgdGhlYWQgdGgsXG4gICAgLmZpbmFuY2UtdGFibGUtLXRlYXNlciB0YWJsZSB0aGVhZCB0ZCxcbiAgICAuZmluYW5jZS10YWJsZS0tdGVhc2VyIHRhYmxlIHRib2R5IHRkIHtcbiAgICAgIHBhZGRpbmc6IDAuMjVyZW07XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5maW5hbmNlLXRhYmxlLS10ZWFzZXIgdGFibGUgdGJvZHkgdGQge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC5maW5hbmNlLXRhYmxlLS10ZWFzZXIgdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7IH1cblxuLmZpbmFuY2UtdGFibGUtLWZ1bGwge1xuICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07IH1cbiAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX3RhYmxlIHtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190YWJsZSB0Ym9keSB7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190YWJsZSB0Ym9keSB0aCxcbiAgICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX190YWJsZSB0Ym9keSB0ZCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fdGFibGUgdGJvZHkgdGgge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fdGFibGUgdGJvZHkgdGQge1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fY2hlY2tlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjkzNzVyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX19jaGVja2VyIHtcbiAgICAgICAgcGFkZGluZzogMC45Mzc1cmVtOyB9IH1cbiAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fY2hlY2tlci10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX19jaGVja2VyLWltYWdlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fY2hlY2tlci1pbWFnZSBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEzLjc1cmVtOyB9XG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2NoZWNrZXIgLmJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX19hcHBseSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2FwcGx5IC5idXR0b24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4zMTI1cmVtOyB9XG4gIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX193aHktYXBwbHkge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fdmlkZW8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAwLjkzNzVyZW0gMCAwOyB9XG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX3ZpZGVvIGlmcmFtZSxcbiAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fdmlkZW8gb2JqZWN0LFxuICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX192aWRlbyBlbWJlZCxcbiAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fdmlkZW8gdmlkZW8ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5maW5hbmNlLWV4YW1wbGUge1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZpbmFuY2UtZXhhbXBsZSB7XG4gICAgICBwYWRkaW5nOiAxLjg3NXJlbTsgfSB9XG4gIC5maW5hbmNlLWV4YW1wbGVfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5maW5hbmNlLWV4YW1wbGVfX3RhYmxlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmZpbmFuY2UtZXhhbXBsZV9fdGFibGUgdGgsXG4gICAgLmZpbmFuY2UtZXhhbXBsZV9fdGFibGUgdGQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U2ZTZlNjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgLmZpbmFuY2UtZXhhbXBsZV9fdGFibGUgdGg6bGFzdC1jaGlsZCxcbiAgICAgIC5maW5hbmNlLWV4YW1wbGVfX3RhYmxlIHRkOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH1cbiAgICAuZmluYW5jZS1leGFtcGxlX190YWJsZSB0aGVhZCxcbiAgICAuZmluYW5jZS1leGFtcGxlX190YWJsZSB0Ym9keSxcbiAgICAuZmluYW5jZS1leGFtcGxlX190YWJsZSB0Zm9vdCB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gICAgLmZpbmFuY2UtZXhhbXBsZV9fdGFibGUgdGhlYWQgdGgge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgICAuZmluYW5jZS1leGFtcGxlX190YWJsZSB0Ym9keSB0ZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgIC5maW5hbmNlLWV4YW1wbGVfX3RhYmxlIHRmb290IHRkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlNmU2ZTY7IH1cblxuLmZpbmFuY2UtZGlzY2xhaW1lciB7XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5maW5hbmNlLWRpc2NsYWltZXItLWZ1bGwge1xuICAgIG1hcmdpbjogMC45Mzc1cmVtIDAgMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmZpbmFuY2UtY2hlY2tlciB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmluYW5jZS1jaGVja2VyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmluYW5jZS1jaGVja2VyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmZpbmFuY2UtY2hlY2tlcjo6YmVmb3JlLCAuZmluYW5jZS1jaGVja2VyOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnOyB9XG4gIC5maW5hbmNlLWNoZWNrZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuZmluYW5jZS1jaGVja2VyX192aWRlbyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmluYW5jZS1jaGVja2VyX192aWRlbyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIC5maW5hbmNlLWNoZWNrZXJfX3ZpZGVvOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5maW5hbmNlLWNoZWNrZXJfX3ZpZGVvIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZpbmFuY2UtY2hlY2tlcl9fdmlkZW8ge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5maW5hbmNlLWNoZWNrZXJfX3ZpZGVvOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgLmZpbmFuY2UtY2hlY2tlcl9fdmlkZW8taW5uZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAuZmluYW5jZS1jaGVja2VyX192aWRlby1pbm5lciBpZnJhbWUsXG4gICAgICAuZmluYW5jZS1jaGVja2VyX192aWRlby1pbm5lciBvYmplY3QsXG4gICAgICAuZmluYW5jZS1jaGVja2VyX192aWRlby1pbm5lciBlbWJlZCxcbiAgICAgIC5maW5hbmNlLWNoZWNrZXJfX3ZpZGVvLWlubmVyIHZpZGVvIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmZpbmFuY2UtY2hlY2tlcl9fZGV0YWlscyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmluYW5jZS1jaGVja2VyX19kZXRhaWxzIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZpbmFuY2UtY2hlY2tlcl9fZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmluYW5jZS1jaGVja2VyX19kZXRhaWxzIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZpbmFuY2UtY2hlY2tlcl9fZGV0YWlscyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmZpbmFuY2UtY2hlY2tlcl9fZGV0YWlsczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC5maW5hbmNlLWNoZWNrZXJfX2RldGFpbHMtaW1hZ2UgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTMuNzVyZW07XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cbi5maW5hbmNlLXdpZGdldF9fdmlkZW9zIHtcbiAgcGFkZGluZy10b3A6IDEuMjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmluYW5jZS13aWRnZXRfX3ZpZGVvcyB7XG4gICAgICBwYWRkaW5nLXRvcDogMS44NzVyZW07IH0gfVxuICAuZmluYW5jZS13aWRnZXRfX3ZpZGVvcyB1bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmluYW5jZS13aWRnZXRfX3ZpZGVvcyB1bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmluYW5jZS13aWRnZXRfX3ZpZGVvcyB1bCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICAgIC5maW5hbmNlLXdpZGdldF9fdmlkZW9zIHVsOjpiZWZvcmUsIC5maW5hbmNlLXdpZGdldF9fdmlkZW9zIHVsOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAgIC5maW5hbmNlLXdpZGdldF9fdmlkZW9zIHVsOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5maW5hbmNlLXdpZGdldF9fdmlkZW9zIHVsID4gbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmZpbmFuY2Utd2lkZ2V0X192aWRlb3MgdWwgPiBsaSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgICAgIC5maW5hbmNlLXdpZGdldF9fdmlkZW9zIHVsID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5maW5hbmNlLXdpZGdldF9fdmlkZW9zIHVsID4gbGk6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLmZpbmFuY2Utd2lkZ2V0X192aWRlb3MgdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZpbmFuY2Utd2lkZ2V0X192aWRlb3MgdWwgPiBsaSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5maW5hbmNlLXdpZGdldF9fdmlkZW9zIHVsID4gbGkge1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5maW5hbmNlLXdpZGdldF9fdmlkZW9zIHVsID4gbGk6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgICBjbGVhcjogbm9uZTsgfVxuICAgICAgICAuZmluYW5jZS13aWRnZXRfX3ZpZGVvcyB1bCA+IGxpOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAuZmluYW5jZS13aWRnZXRfX3ZpZGVvcyB1bCA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgICAuZmluYW5jZS13aWRnZXRfX3ZpZGVvcyB1bCBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmZpbmFuY2Utd2lkZ2V0X192aWRlb3MgdWwgbGkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgICAgLmZpbmFuY2Utd2lkZ2V0X192aWRlb3MgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmZpbmFuY2Utd2lkZ2V0X192aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5maW5hbmNlLXdpZGdldF9fdmlkZW8gaWZyYW1lLFxuICAuZmluYW5jZS13aWRnZXRfX3ZpZGVvIG9iamVjdCxcbiAgLmZpbmFuY2Utd2lkZ2V0X192aWRlbyBlbWJlZCxcbiAgLmZpbmFuY2Utd2lkZ2V0X192aWRlbyB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuXG4uZmluYW5jZS1wcmljZS1zbGlkZXIge1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZmluYW5jZS1wcmljZS1zbGlkZXIge1xuICAgICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDBlbSkge1xuICAgIC5maW5hbmNlLXByaWNlLXNsaWRlciB7XG4gICAgICBtYXJnaW4tdG9wOiAyLjVyZW07IH0gfVxuICAuZmluYW5jZS1wcmljZS1zbGlkZXJfX2xhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5maW5hbmNlLXByaWNlLXNsaWRlcl9fbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICAgIC5maW5hbmNlLXByaWNlLXNsaWRlcl9fbGFiZWwtdmFsdWUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgICBmb250LXdlaWdodDogODAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuZmluYW5jZS1wcmljZS1zbGlkZXJfX2xhYmVsLXZhbHVlIHtcbiAgICAgICAgICBmb250LXNpemU6IDIuNjI1cmVtOyB9IH1cbiAgLmZpbmFuY2UtcHJpY2Utc2xpZGVyX19zbGlkZXIgLm5vVWktY29ubmVjdHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFN0U3RTc7IH1cbiAgLmZpbmFuY2UtcHJpY2Utc2xpZGVyX19zbGlkZXIgLm5vVWktdGFyZ2V0IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XG4gIC5maW5hbmNlLXByaWNlLXNsaWRlcl9fc2xpZGVyIC5ub1VpLWhhbmRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0IxQjFCMTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQjFCMUIxO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLmZpbmFuY2UtcHJpY2Utc2xpZGVyX19idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gICAgLmZpbmFuY2UtcHJpY2Utc2xpZGVyX19idXR0b24gYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAwLjg3NXJlbTtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IDEuMTI1cmVtIDEuODc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuZmluYW5jZS1wcmljZS1zbGlkZXJfX2J1dHRvbiBhIHtcbiAgICAgICAgb3V0bGluZTogMDsgfVxuICAgICAgLmZpbmFuY2UtcHJpY2Utc2xpZGVyX19idXR0b24gYTpob3ZlciwgLmZpbmFuY2UtcHJpY2Utc2xpZGVyX19idXR0b24gYTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjAwMjg7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5maW5hbmNlLXRhYmxlLS1vcmRlcixcbi5maW5hbmNlLXRhYmxlLS1mdWxsIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmluYW5jZS10YWJsZS0tb3JkZXIsXG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5maW5hbmNlLXRhYmxlLS1vcmRlcixcbiAgICAuZmluYW5jZS10YWJsZS0tZnVsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG4gIC5maW5hbmNlLXRhYmxlLS1vcmRlcjo6YmVmb3JlLCAuZmluYW5jZS10YWJsZS0tb3JkZXI6OmFmdGVyLFxuICAuZmluYW5jZS10YWJsZS0tZnVsbDo6YmVmb3JlLFxuICAuZmluYW5jZS10YWJsZS0tZnVsbDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJzsgfVxuICAuZmluYW5jZS10YWJsZS0tb3JkZXI6OmFmdGVyLFxuICAuZmluYW5jZS10YWJsZS0tZnVsbDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5maW5hbmNlLXRhYmxlLS1vcmRlciA+IC5maW5hbmNlLXRhYmxlX19jb250YWluZXIsXG4gIC5maW5hbmNlLXRhYmxlLS1mdWxsID4gLmZpbmFuY2UtdGFibGVfX2NvbnRhaW5lciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmluYW5jZS10YWJsZS0tb3JkZXIgPiAuZmluYW5jZS10YWJsZV9fY29udGFpbmVyLFxuICAgICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgPiAuZmluYW5jZS10YWJsZV9fY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmZpbmFuY2UtdGFibGUtLW9yZGVyID4gLmZpbmFuY2UtdGFibGVfX2NvbnRhaW5lcjpudGgtb2YtdHlwZSgxbiksXG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgPiAuZmluYW5jZS10YWJsZV9fY29udGFpbmVyOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5maW5hbmNlLXRhYmxlLS1vcmRlciA+IC5maW5hbmNlLXRhYmxlX19jb250YWluZXI6bnRoLW9mLXR5cGUoMW4rMSksXG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgPiAuZmluYW5jZS10YWJsZV9fY29udGFpbmVyOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmZpbmFuY2UtdGFibGUtLW9yZGVyID4gLmZpbmFuY2UtdGFibGVfX2NvbnRhaW5lcjpsYXN0LWNoaWxkLFxuICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsID4gLmZpbmFuY2UtdGFibGVfX2NvbnRhaW5lcjpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZmluYW5jZS10YWJsZS0tb3JkZXIgPiAuZmluYW5jZS10YWJsZV9fY29udGFpbmVyLFxuICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsID4gLmZpbmFuY2UtdGFibGVfX2NvbnRhaW5lciB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5maW5hbmNlLXRhYmxlLS1vcmRlciA+IC5maW5hbmNlLXRhYmxlX19jb250YWluZXIsXG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgPiAuZmluYW5jZS10YWJsZV9fY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmZpbmFuY2UtdGFibGUtLW9yZGVyID4gLmZpbmFuY2UtdGFibGVfX2NvbnRhaW5lcjpudGgtb2YtdHlwZSgxbiksXG4gICAgICAuZmluYW5jZS10YWJsZS0tZnVsbCA+IC5maW5hbmNlLXRhYmxlX19jb250YWluZXI6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAgIC5maW5hbmNlLXRhYmxlLS1vcmRlciA+IC5maW5hbmNlLXRhYmxlX19jb250YWluZXI6bnRoLW9mLXR5cGUoMm4rMSksXG4gICAgICAuZmluYW5jZS10YWJsZS0tZnVsbCA+IC5maW5hbmNlLXRhYmxlX19jb250YWluZXI6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLmZpbmFuY2UtdGFibGUtLW9yZGVyID4gLmZpbmFuY2UtdGFibGVfX2NvbnRhaW5lcjpsYXN0LWNoaWxkLFxuICAgICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgPiAuZmluYW5jZS10YWJsZV9fY29udGFpbmVyOmxhc3QtY2hpbGQge1xuICAgICAgICBmbG9hdDogbGVmdDsgfSB9XG4gIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fY29udGFpbmVyLFxuICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07IH1cbiAgICAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX2NvbnRhaW5lcjpsYXN0LWNoaWxkLFxuICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX19jb250YWluZXI6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5maW5hbmNlLXRhYmxlX19jb250YWluZXIgdWwsXG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2NvbnRhaW5lciB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX2NvbnRhaW5lciB1bCBsaSxcbiAgICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX19jb250YWluZXIgdWwgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZWVlZTsgfVxuICAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3RpdGxlLFxuICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG4gICAgcGFkZGluZzogMC42MjVyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjIyMjsgfVxuICAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX3N1Yi10aXRsZSxcbiAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX3N1Yi10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fbGluayxcbiAgLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5maW5hbmNlLXRhYmxlX19hcHBseSxcbiAgLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5maW5hbmNlLXRhYmxlX19kZWFsLFxuICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fbGluayxcbiAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2FwcGx5LFxuICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fZGVhbCB7XG4gICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtOyB9XG4gICAgLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5maW5hbmNlLXRhYmxlX19saW5rIC5idXR0b24sXG4gICAgLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5maW5hbmNlLXRhYmxlX19hcHBseSAuYnV0dG9uLFxuICAgIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fZGVhbCAuYnV0dG9uLFxuICAgIC5maW5hbmNlLXRhYmxlLS1mdWxsIC5maW5hbmNlLXRhYmxlX19saW5rIC5idXR0b24sXG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2FwcGx5IC5idXR0b24sXG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2RlYWwgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fbGluayAuYnV0dG9uLFxuICAgICAgICAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX2FwcGx5IC5idXR0b24sXG4gICAgICAgIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fZGVhbCAuYnV0dG9uLFxuICAgICAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fbGluayAuYnV0dG9uLFxuICAgICAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fYXBwbHkgLmJ1dHRvbixcbiAgICAgICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2RlYWwgLmJ1dHRvbiB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZpbmFuY2UtdGFibGUtLW9yZGVyIC5maW5hbmNlLXRhYmxlX19hcHBseSxcbiAgICAuZmluYW5jZS10YWJsZS0tZnVsbCAuZmluYW5jZS10YWJsZV9fYXBwbHkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNDglOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmluYW5jZS10YWJsZS0tb3JkZXIgLmZpbmFuY2UtdGFibGVfX2RlYWwsXG4gICAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2RlYWwge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDQ4JTsgfSB9XG4gIC5maW5hbmNlLXRhYmxlLS1vcmRlciAuZmluYW5jZS10YWJsZV9fZGlzY2xhaW1lcixcbiAgLmZpbmFuY2UtdGFibGUtLWZ1bGwgLmZpbmFuY2UtdGFibGVfX2Rpc2NsYWltZXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZTpob3ZlciwgLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGU6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYsXG4uc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIHdpZHRoOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAwcHg7XG4gIGZvbnQtc2l6ZTogMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMzAwMmY7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgei1pbmRleDogOTtcbiAgYm9yZGVyLXJhZGl1czogMC4xODc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldixcbiAgICAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICAgIGhlaWdodDogMy4xMjVyZW07XG4gICAgICB3aWR0aDogMy4xMjVyZW07IH0gfVxuICAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2OmZvY3VzLFxuICAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0OmhvdmVyLFxuICAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2LnNsaWNrLWRpc2FibGVkOmJlZm9yZSxcbiAgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dC5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldjpiZWZvcmUsXG4gIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAgICAgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IDAuMzEyNXJlbTsgfVxuICAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZTVjNCc7IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAwLjMxMjVyZW07IH1cbiAgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU1YzgnOyB9XG5cbi5zbGljay1zbGlkZXIuc2xpY2stZG90dGVkIHtcbiAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMC40Mzc1cmVtO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAwLjE4NzVyZW07XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gICAgbWFyZ2luOiAwIDAuMTI1cmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2xpY2stc2xpZGVyIC5zbGljay1kb3RzIGxpIHtcbiAgICAgICAgd2lkdGg6IDEuODc1cmVtO1xuICAgICAgICBtYXJnaW46IDAgMC4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMgbGkge1xuICAgICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgICBtYXJnaW46IDAgMC4zNzVyZW07IH0gfVxuICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMC4xODc1cmVtO1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICBmb250LXNpemU6IDBweDtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjIyMjI7IH1cbiAgICAgIC5zbGljay1zbGlkZXIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyLCAuc2xpY2stc2xpZGVyIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAuc2xpY2stc2xpZGVyIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICAgICAgYmFja2dyb3VuZDogI2MzMDAyZjsgfVxuXG4ubGlzdGluZy0tYmxvY2stdGlsZSAuc2xpY2stc2xpZGVyIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGlzdGluZy0tYmxvY2stdGlsZSAuc2xpY2stc2xpZGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLWJsb2NrLXRpbGUgLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1ibG9jay10aWxlIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuICAubGlzdGluZy0tYmxvY2stdGlsZSAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2LFxuICAubGlzdGluZy0tYmxvY2stdGlsZSAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICBoZWlnaHQ6IDYuMjVyZW07IH1cbiAgLmxpc3RpbmctLWJsb2NrLXRpbGUgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldiB7XG4gICAgbGVmdDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLWJsb2NrLXRpbGUgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldiB7XG4gICAgICAgIGxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS1ibG9jay10aWxlIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGlzdGluZy0tYmxvY2stdGlsZSAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGUgLnNsaWNrLXNsaWRlciB7XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZSAuc2xpY2stc2xpZGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZSAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZSAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZSAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2LFxuICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIHdpZHRoOiAyLjVyZW07XG4gICAgaGVpZ2h0OiAyLjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYsXG4gICAgICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgICAgICB0b3A6IC0yLjVyZW07IH0gfVxuICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgICAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZSAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogaW5oZXJpdDtcbiAgICAgICAgcmlnaHQ6IDMuNDM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGUgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldiB7XG4gICAgICAgIHJpZ2h0OiAzLjc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZSAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZSAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5saXN0aW5nLS1zaG93cm9vbS1mZWF0dXJlZCB7XG4gIHBhZGRpbmctdG9wOiAzLjc1cmVtOyB9XG4gIC5saXN0aW5nLS1zaG93cm9vbS1mZWF0dXJlZCAuc2xpY2stc2xpZGVyIHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1zaG93cm9vbS1mZWF0dXJlZCAuc2xpY2stc2xpZGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTsgfSB9XG4gICAgLmxpc3RpbmctLXNob3dyb29tLWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAubGlzdGluZy0tc2hvd3Jvb20tZmVhdHVyZWQgLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXNob3dyb29tLWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9IH1cbiAgICAubGlzdGluZy0tc2hvd3Jvb20tZmVhdHVyZWQgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldiB7XG4gICAgICB0b3A6IC0yLjVyZW07XG4gICAgICBsZWZ0OiAwLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmxpc3RpbmctLXNob3dyb29tLWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgICAgICAgIGxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgLmxpc3RpbmctLXNob3dyb29tLWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgICAgdG9wOiAtMi41cmVtO1xuICAgICAgcmlnaHQ6IGluaGVyaXQ7XG4gICAgICBsZWZ0OiAzLjc1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAubGlzdGluZy0tc2hvd3Jvb20tZmVhdHVyZWQgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgICAgICAgbGVmdDogNC4wNjI1cmVtOyB9IH1cblxuLmxpc3RpbmctLWJsb2NrIC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tbGVmdDogLTAuMzEyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4zMTI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLWJsb2NrIC5zbGljay1zbGlkZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07IH0gfVxuICAubGlzdGluZy0tYmxvY2sgLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgLmxpc3RpbmctLWJsb2NrIC5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmxpc3RpbmctLWJsb2NrIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICBtYXJnaW4tbGVmdDogMC4zMTI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1ibG9jayAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9IH1cblxuLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnNsaWNrLXNsaWRlcixcbi5saXN0aW5nLS12ZWhpY2xlLXNpbWlsYXIgLnNsaWNrLXNsaWRlcixcbi5saXN0aW5nLS12ZWhpY2xlLWluLXN0b2NrIC5zbGljay1zbGlkZXIsXG4ubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnNsaWNrLXNsaWRlciB7XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnNsaWNrLXNsaWRlcixcbiAgICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5zbGljay1zbGlkZXIsXG4gICAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnNsaWNrLXNsaWRlcixcbiAgICAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnNsaWNrLXNsaWRlciB7XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAuc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbiAgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrIHtcbiAgICBtYXJnaW4tbGVmdDogaW5oZXJpdDtcbiAgICBtYXJnaW4tcmlnaHQ6IGluaGVyaXQ7IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCxcbiAgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAuc2xpY2stc2xpZGVyIC5zbGljay1saXN0LFxuICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAuc2xpY2stc2xpZGVyIC5zbGljay1saXN0LFxuICAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZCAuc2xpY2stc2xpZGVyIC5zbGljay1saXN0LFxuICAgICAgLmxpc3RpbmctLXZlaGljbGUtc2ltaWxhciAuc2xpY2stc2xpZGVyIC5zbGljay1saXN0LFxuICAgICAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCxcbiAgICAgIC5saXN0aW5nLS1vZmZlci1mZWF0dXJlZCAuc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAuc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbiAgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlLFxuICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlLFxuICAubGlzdGluZy0tdmVoaWNsZS1pbi1zdG9jayAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSxcbiAgLmxpc3RpbmctLW9mZmVyLWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQgLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUsXG4gICAgICAubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlLFxuICAgICAgLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2sgLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUsXG4gICAgICAubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQgLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUge1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5zbGljay1zbGlkZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07IH0gfVxuICAubGlzdGluZy0tY3VzdG9tLWVudHJ5LXJldmlldy1mZWF0dXJlZCAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUge1xuICAgICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgIHRvcDogaW5oZXJpdDtcbiAgICBsZWZ0OiAwLjYyNXJlbTtcbiAgICBib3R0b206IC01cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgICAgICBib3R0b206IC02LjU2MjVyZW07XG4gICAgICAgIGxlZnQ6IDAuOTM3NXJlbTsgfSB9XG4gIC5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIHRvcDogaW5oZXJpdDtcbiAgICByaWdodDogaW5oZXJpdDtcbiAgICBib3R0b206IC01cmVtO1xuICAgIGxlZnQ6IDMuNzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpc3RpbmctLWN1c3RvbS1lbnRyeS1yZXZpZXctZmVhdHVyZWQgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgICAgIGJvdHRvbTogLTYuNTYyNXJlbTtcbiAgICAgICAgbGVmdDogNC42ODc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnZlaGljbGVfX3ByaW1hcnktaW1hZ2VzIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuXG4udmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMtdGh1bWJuYWlscyAuc2xpY2stc2xpZGVyIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjA2MjVyZW07XG4gIG1hcmdpbi1yaWdodDogLTAuMDYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcy10aHVtYm5haWxzIC5zbGljay1zbGlkZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjMxMjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjMxMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcy10aHVtYm5haWxzIC5zbGljay1zbGlkZXIge1xuICAgICAgbWFyZ2luLXRvcDogLTAuNjg3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjY4NzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogaW5oZXJpdDtcbiAgICAgIG1hcmdpbi1yaWdodDogaW5oZXJpdDsgfSB9XG4gIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcy10aHVtYm5haWxzIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICBtYXJnaW4tbGVmdDogMC4wNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC4wNjI1cmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZlaGljbGVfX3ByaW1hcnktaW1hZ2VzLXRodW1ibmFpbHMgLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUge1xuICAgICAgICBtYXJnaW4tbGVmdDogMC4zMTI1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcy10aHVtYm5haWxzIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC42ODc1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjY4NzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBpbmhlcml0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGluaGVyaXQ7IH0gfVxuXG4ubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5zbGljay1zbGlkZXIge1xuICBwYWRkaW5nLXRvcDogMi41NjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4xODc1cmVtOyB9IH1cbiAgLmxpc3RpbmctLXZlaGljbGUtY29tcGFyZSAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2LFxuICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIHRvcDogMS4yNXJlbTtcbiAgICBoZWlnaHQ6IDIuMTI1cmVtO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgICAubGlzdGluZy0tdmVoaWNsZS1jb21wYXJlIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAgIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2MzMDAyZjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldiB7XG4gICAgbGVmdDogaW5oZXJpdDtcbiAgICByaWdodDogMi41NjI1cmVtOyB9XG4gIC5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5saXN0aW5nLS1ibG9jay1wYXJ0bmVyIC5zbGljay1saXN0IHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgfSB9XG5cbi5saXN0aW5nLS1ibG9jay1wYXJ0bmVyIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICBmbG9hdDogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5saXN0aW5nLS1ibG9jay1wYXJ0bmVyIC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTsgfVxuICAubGlzdGluZy0tYmxvY2stcGFydG5lciAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cblxuLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQtc2lkZWJhciAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2LFxuLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQtc2lkZWJhciAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgdG9wOiAyLjE4NzVyZW07XG4gIGhlaWdodDogMy4xMjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkLXNpZGViYXIgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldixcbiAgICAubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZC1zaWRlYmFyIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgICAgdG9wOiAyLjgxMjVyZW07XG4gICAgICBoZWlnaHQ6IDMuNzVyZW07IH0gfVxuXG4ubGlzdGluZy0tdmVoaWNsZS1mZWF0dXJlZC1zaWRlYmFyIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYge1xuICBsZWZ0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQtc2lkZWJhciAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkLXNpZGViYXIgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiBpbmhlcml0O1xuICBsZWZ0OiAzLjA2MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkLXNpZGViYXIgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgICBsZWZ0OiAzLjY4NzVyZW07IH0gfVxuXG4ucGFnZS0tZGVmYXVsdCAucGFnZV9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyLFxuLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlcixcbi5wYWdlLS1jb250YWN0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIsXG4udmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyLFxuLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyLFxuLm9mZmVyLS1mdWxsIC5vZmZlcl9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyLFxuICAgIC5wb3N0LS1kZWZhdWx0IC5wb3N0X19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIsXG4gICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlcixcbiAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyLFxuICAgIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlcixcbiAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07IH0gfVxuICAucGFnZS0tZGVmYXVsdCAucGFnZV9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSxcbiAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUsXG4gIC5wYWdlLS1jb250YWN0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlLFxuICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSxcbiAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSxcbiAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUsXG4gICAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSxcbiAgICAgIC5wYWdlLS1jb250YWN0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlLFxuICAgICAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUsXG4gICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlLFxuICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9IH1cbiAgLnBhZ2UtLWRlZmF1bHQgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldixcbiAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldixcbiAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldixcbiAgLnZlaGljbGUtLWZ1bGwgLnZlaGljbGVfX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldixcbiAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2LFxuICAub2ZmZXItLWZ1bGwgLm9mZmVyX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDAuOTM3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnZS0tZGVmYXVsdCAucGFnZV9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2LFxuICAgICAgLnBvc3QtLWRlZmF1bHQgLnBvc3RfX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlciAuc2xpY2stcHJldixcbiAgICAgIC5wYWdlLS1jb250YWN0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYsXG4gICAgICAudmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2LFxuICAgICAgLnNob3dyb29tLS1mdWxsIC5zaG93cm9vbV9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2LFxuICAgICAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogMS4yNXJlbTsgfSB9XG4gIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQsXG4gIC5wb3N0LS1kZWZhdWx0IC5wb3N0X19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQsXG4gIC5wYWdlLS1jb250YWN0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQsXG4gIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQsXG4gIC5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dCxcbiAgLm9mZmVyLS1mdWxsIC5vZmZlcl9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogMC45Mzc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdlLS1kZWZhdWx0IC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQsXG4gICAgICAucG9zdC0tZGVmYXVsdCAucG9zdF9fc2Vjb25kYXJ5LWltYWdlcyAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0LFxuICAgICAgLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dCxcbiAgICAgIC52ZWhpY2xlLS1mdWxsIC52ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQsXG4gICAgICAuc2hvd3Jvb20tLWZ1bGwgLnNob3dyb29tX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQsXG4gICAgICAub2ZmZXItLWZ1bGwgLm9mZmVyX19zZWNvbmRhcnktaW1hZ2VzIC5zbGljay1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgICAgICByaWdodDogMS4yNXJlbTsgfSB9XG5cbi5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGVzIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYsXG4ubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgd2lkdGg6IDYwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjsgfVxuICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2OmJlZm9yZSxcbiAgLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZXMgLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBjb2xvcjogIzIyMjIyMjsgfVxuXG4ubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2IHtcbiAgdG9wOiAtMS4zMTI1cmVtO1xuICBsZWZ0OiBpbmhlcml0O1xuICByaWdodDogMy43NXJlbTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4zMTI1cmVtOyB9XG4gIC5saXN0aW5nLS1ibG9jay12ZWhpY2xlLXR5cGVzIC5zbGljay1zbGlkZXIgLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFxmMWU2JzsgfVxuICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogMi41cmVtO1xuICAgIHdpZHRoOiAwLjA2MjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRTNFMzsgfVxuXG4ubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgdG9wOiAtMS4zMTI1cmVtO1xuICByaWdodDogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMzEyNXJlbTsgfVxuICAubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyAuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZjFkZic7IH1cblxuLmRhdGVwaWNrZXIuZHJvcGRvd24tbWVudSB7XG4gIHotaW5kZXg6IDk5OTk5OTk5OTk5ICFpbXBvcnRhbnQ7IH1cblxuLm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQge1xuICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ0ZJTEwnIDAsICd3Z2h0JyA0MDAsICdHUkFEJyAwLCAnb3BzeicgMjQ7IH1cblxuLmRyb3Bkb3duLXBhbmUge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7IH1cbiAgLmRyb3Bkb3duLXBhbmUgYSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuaHRtbCB7XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoOyB9XG5cbi50YWJsZS1zY3JvbGwtd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cbiAgLnRhYmxlLXNjcm9sbC13cmFwcGVyIHRhYmxlIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgLnRhYmxlLXNjcm9sbC13cmFwcGVyIHRhYmxlIHtcbiAgICAgICAgbWluLXdpZHRoOiA2NTBweDsgfSB9XG4iLCIvKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi4zLjFcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5cbi8vIERlcGVuZGVuY2llc1xuQGltcG9ydCAnLi4vX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvbWlzc2luZy1kZXBlbmRlbmNpZXMnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL3RydWUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcHVyZ2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVtb3ZlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvdG8tbGlzdCc7XG5cbi8vIFNldHRpbmdzXG4vLyBpbXBvcnQgeW91ciBvd24gYHNldHRpbmdzYCBoZXJlIG9yXG4vLyBpbXBvcnQgYW5kIG1vZGlmeSB0aGUgZGVmYXVsdCBzZXR0aW5ncyB0aHJvdWdoXG4vLyBAaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5cbi8vIFNhc3MgdXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLyBHbG9iYWwgdmFyaWFibGVzIGFuZCBzdHlsZXNcbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JhZGdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZygkZmxleDogZmFsc2UpIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG5cbiAgQGlmICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcztcbiAgfVxufVxuIiwiLy8gSGVscGVyIGZ1bmN0aW9uIGZvciB0aGUgbm9ybWFsaXplKCkgbWl4aW4uXG5AZnVuY3Rpb24gX25vcm1hbGl6ZS1pbmNsdWRlKCRzZWN0aW9uLCAkZXhjbHVkZTogbnVsbCkge1xuICAvLyBJbml0aWFsaXplIHRoZSBnbG9iYWwgdmFyaWFibGVzIG5lZWRlZCBieSB0aGlzIGZ1bmN0aW9uLlxuICBAaWYgbm90IGdsb2JhbF92YXJpYWJsZV9leGlzdHMoX25vcm1hbGl6ZS1pbmNsdWRlKSB7XG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogKCkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiAoKSAhZ2xvYmFsO1xuICB9XG4gIC8vIFNpbmNlIHdlIGFyZSBnaXZlbiAyIHBhcmFtZXRlcnMsIHNldCB0aGUgZ2xvYmFsIHZhcmlhYmxlcy5cbiAgQGlmICRleGNsdWRlICE9IG51bGwge1xuICAgICRpbmNsdWRlOiAkc2VjdGlvbjtcbiAgICAvLyBTYXNzIGRvZXNuJ3QgaGF2ZSBzdGF0aWMgdmFyaWFibGVzLCBzbyB0aGUgd29yay1hcm91bmQgaXMgdG8gc3R1ZmYgdGhlc2VcbiAgICAvLyB2YWx1ZXMgaW50byBnbG9iYWwgdmFyaWFibGVzIHNvIHdlIGNhbiBhY2Nlc3MgdGhlbSBpbiBmdXR1cmUgY2FsbHMuXG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogaWYodHlwZS1vZigkaW5jbHVkZSkgPT0gJ2xpc3QnLCAkaW5jbHVkZSwgKCRpbmNsdWRlKSkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiBpZih0eXBlLW9mKCRleGNsdWRlKSA9PSAnbGlzdCcsICRleGNsdWRlLCAoJGV4Y2x1ZGUpKSAhZ2xvYmFsO1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICRzZWN0aW9uIGlzIGluIHRoZSAkaW5jbHVkZSBsaXN0LlxuICBAaWYgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgJHNlY3Rpb24pIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgLy8gSWYgJGluY2x1ZGUgaXMgc2V0IHRvIChhbGwpLCBtYWtlIHN1cmUgJHNlY3Rpb24gaXMgbm90IGluICRleGNsdWRlLlxuICBAZWxzZSBpZiBub3QgaW5kZXgoJF9ub3JtYWxpemUtZXhjbHVkZSwgJHNlY3Rpb24pIGFuZCBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCBhbGwpIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZSgkaW5jbHVkZTogKGFsbCksICRleGNsdWRlOiAoKSkge1xuICAvLyBJbml0aWFsaXplIHRoZSBoZWxwZXIgZnVuY3Rpb24gYnkgcGFzc2luZyBpdCB0aGlzIG1peGluJ3MgcGFyYW1ldGVycy5cbiAgJGluaXQ6IF9ub3JtYWxpemUtaW5jbHVkZSgkaW5jbHVkZSwgJGV4Y2x1ZGUpO1xuXG4gIC8vIElmIHdlJ3ZlIGN1c3RvbWl6ZWQgYW55IGZvbnQgdmFyaWFibGVzLCB3ZSdsbCBuZWVkIGV4dHJhIHByb3BlcnRpZXMuXG4gIEBpZiAkYmFzZS1mb250LXNpemUgIT0gMTZweFxuICAgIG9yICRiYXNlLWxpbmUtaGVpZ2h0ICE9IDI0cHhcbiAgICBvciAkYmFzZS11bml0ICE9ICdlbSdcbiAgICBvciAkaDEtZm9udC1zaXplICE9IDIgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDItZm9udC1zaXplICE9IDEuNSAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDMtZm9udC1zaXplICE9IDEuMTcgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDQtZm9udC1zaXplICE9IDEgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDUtZm9udC1zaXplICE9IDAuODMgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDYtZm9udC1zaXplICE9IDAuNjcgKiAkYmFzZS1mb250LXNpemUge1xuICAgICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvKiEgbm9ybWFsaXplLXNjc3MgfCBNSVQvR1BMdjIgTGljZW5zZSB8IGJpdC5seS9ub3JtYWxpemUtc2NzcyAqL1xuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZG9jdW1lbnQpIHtcbiAgICAvKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5cbiAgICBodG1sIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLy8gQ29ycmVjdCBvbGQgYnJvd3NlciBidWcgdGhhdCBwcmV2ZW50ZWQgYWNjZXNzaWJsZSByZXNpemluZyBvZiB0ZXh0XG4gICAgICAgIC8vIHdoZW4gcm9vdCBmb250LXNpemUgaXMgc2V0IHdpdGggcHggb3IgZW0uXG4gICAgICAgIGZvbnQtc2l6ZTogKCRiYXNlLWZvbnQtc2l6ZSAvIDE2cHgpICogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDIgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDIgKi9cbiAgICAgIH1cbiAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNlY3Rpb25zKSB7XG4gICAgLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBib2R5IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGFydGljbGUsXG4gICAgYXNpZGUsXG4gICAgZm9vdGVyLFxuICAgIGhlYWRlcixcbiAgICBuYXYsXG4gICAgc2VjdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGgxIHtcbiAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiAqL1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbjogMC42N2VtIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgyLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMy1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgzLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNC1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg0LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg1IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNS1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg1LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg2IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg2LWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShncm91cGluZykge1xuICAgIC8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cblxuICAgICAgZGwsXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICovXG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBvbCxcbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBkZCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGZpZ2NhcHRpb24sXG4gICAgZmlndXJlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAgICAgKi9cblxuICAgIGZpZ3VyZSB7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgJGluZGVudC1hbW91bnQpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDFlbSAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuXG4gICAgaHIge1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgICAgIGhlaWdodDogMDsgLyogMSAqL1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIG1haW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBwLFxuICAgICAgcHJlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgcHJlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGxpbmtzKSB7XG4gICAgLyogTGlua3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgICAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAgICAgKi9cblxuICAgIGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAgICAgKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cblxuICAgIGE6YWN0aXZlLFxuICAgIGE6aG92ZXIge1xuICAgICAgb3V0bGluZS13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHRleHQpIHtcbiAgICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGFiYnJbdGl0bGVdIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cblxuICAgIGIsXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgY29kZSxcbiAgICBrYmQsXG4gICAgc2FtcCB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuXG4gICAgZGZuIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtYXJrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1YixcbiAgICBzdXAge1xuICAgICAgZm9udC1zaXplOiA3NSU7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB9XG5cbiAgICBzdWIge1xuICAgICAgYm90dG9tOiAtMC4yNWVtO1xuICAgIH1cblxuICAgIHN1cCB7XG4gICAgICB0b3A6IC0wLjVlbTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGVtYmVkZGVkKSB7XG4gICAgLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGF1ZGlvLFxuICAgIHZpZGVvIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICAgICAqL1xuXG4gICAgYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgc3ZnOm5vdCg6cm9vdCkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGZvcm1zKSB7XG4gICAgLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgaW5wdXQsXG4gICAgb3B0Z3JvdXAsXG4gICAgc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBsaW5lLWhlaWdodDogKCRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgbWFyZ2luOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5cbiAgICBidXR0b24ge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIHNlbGVjdCB7IC8qIDEgKi9cbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgfVxuXG4gICAgYnV0dG9uLFxuICAgIFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cblxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi9cblxuICAgICAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuXG4gICAgaW5wdXQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gICAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi9cblxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBmaWVsZHNldCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBsZWdlbmQge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgICAgIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMyAqL1xuICAgICAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAqL1xuXG4gICAgcHJvZ3Jlc3Mge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAgICAqL1xuXG4gICAgdGV4dGFyZWEge1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShpbnRlcmFjdGl2ZSkge1xuICAgIC8qIEludGVyYWN0aXZlXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgZGV0YWlscyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1bW1hcnkge1xuICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKlxuICAgICAgICAgKiAxLiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxuICAgICAgICAgKiAyLiBTZXQgY29uc2lzdGVudCBzcGFjZSBmb3IgdGhlIGxpc3Qgc3R5bGUgaW1hZ2UuXG4gICAgICAgICAqL1xuXG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTsgLyogMSAqL1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDsgLyogMiAqL1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAgICovXG5cbiAgICAgICAgbWVudSAmLFxuICAgICAgICBvbCAmLFxuICAgICAgICB1bCAmIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNjcmlwdGluZykge1xuICAgIC8qIFNjcmlwdGluZ1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGNhbnZhcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICB0ZW1wbGF0ZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaGlkZGVuKSB7XG4gICAgLyogSGlkZGVuXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIFtoaWRkZW5dIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gVmFyaWFibGVzXG4vL1xuLy8gWW91IGNhbiBvdmVycmlkZSB0aGUgZGVmYXVsdCB2YWx1ZXMgYnkgc2V0dGluZyB0aGUgdmFyaWFibGVzIGluIHlvdXIgU2Fzc1xuLy8gYmVmb3JlIGltcG9ydGluZyB0aGUgbm9ybWFsaXplLXNjc3MgbGlicmFyeS5cblxuLy8gVGhlIGZvbnQgc2l6ZSBzZXQgb24gdGhlIHJvb3QgaHRtbCBlbGVtZW50LlxuJGJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgYmFzZSBsaW5lIGhlaWdodCBkZXRlcm1pbmVzIHRoZSBiYXNpYyB1bml0IG9mIHZlcnRpY2FsIHJoeXRobS5cbiRiYXNlLWxpbmUtaGVpZ2h0OiAyNHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgbGVuZ3RoIHVuaXQgaW4gd2hpY2ggdG8gb3V0cHV0IHZlcnRpY2FsIHJoeXRobSB2YWx1ZXMuXG4vLyBTdXBwb3J0ZWQgdmFsdWVzOiBweCwgZW0sIHJlbS5cbiRiYXNlLXVuaXQ6ICdlbScgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5LlxuJGJhc2UtZm9udC1mYW1pbHk6IHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb250IHNpemVzIGZvciBoMS1oNi5cbiRoMS1mb250LXNpemU6IDIgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAxLjUgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogMS4xNyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6IDEgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAwLjgzICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogMC42NyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8gVGhlIGFtb3VudCBsaXN0cyBhbmQgYmxvY2txdW90ZXMgYXJlIGluZGVudGVkLlxuJGluZGVudC1hbW91bnQ6IDQwcHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb2xsb3dpbmcgdmFyaWFibGUgY29udHJvbHMgd2hldGhlciBub3JtYWxpemUtc2NzcyB3aWxsIG91dHB1dFxuLy8gZm9udC1zaXplcywgbGluZS1oZWlnaHRzIGFuZCBibG9jay1sZXZlbCB0b3AvYm90dG9tIG1hcmdpbnMgdGhhdCBmb3JtIGEgYmFzaWNcbi8vIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgcGFnZSwgd2hpY2ggZGlmZmVycyBmcm9tIHRoZSBvcmlnaW5hbCBOb3JtYWxpemUuY3NzLlxuLy8gSG93ZXZlciwgY2hhbmdpbmcgYW55IG9mIHRoZSB2YXJpYWJsZXMgYWJvdmUgd2lsbCBjYXVzZVxuLy8gJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0gdG8gYmUgYXV0b21hdGljYWxseSBzZXQgdG8gdHJ1ZS5cbiRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiBmYWxzZSAhZGVmYXVsdDtcbiIsIi8vXG4vLyBWZXJ0aWNhbCBSaHl0aG1cbi8vXG4vLyBUaGlzIGlzIHRoZSBtaW5pbWFsIGFtb3VudCBvZiBjb2RlIG5lZWRlZCB0byBjcmVhdGUgdmVydGljYWwgcmh5dGhtIGluIG91clxuLy8gQ1NTLiBJZiB5b3UgYXJlIGxvb2tpbmcgZm9yIGEgcm9idXN0IHNvbHV0aW9uLCBsb29rIGF0IHRoZSBleGNlbGxlbnQgVHlwZXlcbi8vIGxpYnJhcnkuIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2pwdGFyYW50by90eXBleVxuXG5AZnVuY3Rpb24gbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplLCAkdW5pdDogJGJhc2UtdW5pdCkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9IHB4IHtcbiAgICBAZXJyb3IgXCJUaGUgbm9ybWFsaXplIHZlcnRpY2FsLXJoeXRobSBtb2R1bGUgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBAaWYgJHVuaXQgPT0gcmVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkYmFzZS1mb250LXNpemUpICogMXJlbTtcbiAgfVxuICBAZWxzZSBpZiAkdW5pdCA9PSBlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJHJlbGF0aXZlLXRvKSAqIDFlbTtcbiAgfVxuICBAZWxzZSB7IC8vICR1bml0ID09IHB4XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbn1cblxuQG1peGluIG5vcm1hbGl6ZS1mb250LXNpemUoJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdweCcge1xuICAgIEBlcnJvciBcIm5vcm1hbGl6ZS1mb250LXNpemUoKSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIGZvbnQtc2l6ZTogbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtcmh5dGhtKCRwcm9wZXJ0eSwgJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgJHZhbHVlLWxpc3Q6ICR2YWx1ZXM7XG4gICRzZXA6IHNwYWNlO1xuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSAnbGlzdCcge1xuICAgICRzZXA6IGxpc3Qtc2VwYXJhdG9yKCR2YWx1ZXMpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsdWUtbGlzdDogYXBwZW5kKCgpLCAkdmFsdWVzKTtcbiAgfVxuXG4gICRub3JtYWxpemVkLXZhbHVlczogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWUtbGlzdCB7XG4gICAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICR2YWx1ZSAhPSAwIHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogbm9ybWFsaXplLXJoeXRobSgkYmFzZS1saW5lLWhlaWdodCwgJHJlbGF0aXZlLXRvKTtcbiAgICB9XG4gICAgJG5vcm1hbGl6ZWQtdmFsdWVzOiBhcHBlbmQoJG5vcm1hbGl6ZWQtdmFsdWVzLCAkdmFsdWUsICRzZXApO1xuICB9XG4gICN7JHByb3BlcnR5fTogJG5vcm1hbGl6ZWQtdmFsdWVzO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLW1hcmdpbigkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKG1hcmdpbiwgJHZhbHVlcywgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkZm9udC1zaXplLCAkbWluLWxpbmUtcGFkZGluZzogMnB4KSB7XG4gICRsaW5lczogY2VpbCgkZm9udC1zaXplIC8gJGJhc2UtbGluZS1oZWlnaHQpO1xuICAvLyBJZiBsaW5lcyBhcmUgY3JhbXBlZCBpbmNsdWRlIHNvbWUgZXh0cmEgbGVhZGluZy5cbiAgQGlmICgkbGluZXMgKiAkYmFzZS1saW5lLWhlaWdodCAtICRmb250LXNpemUpIDwgKCRtaW4tbGluZS1wYWRkaW5nICogMikge1xuICAgICRsaW5lczogJGxpbmVzICsgMTtcbiAgfVxuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKGxpbmUtaGVpZ2h0LCAkbGluZXMsICRmb250LXNpemUpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIGZvcmNlLWF0dHJpYnV0ZS1uZXN0aW5nLCBmb3JjZS1wc2V1ZG8tbmVzdGluZywgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiBmYWxzZSAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuJHByaW1hcnktY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRzZWNvbmRhcnktY29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuJHN1Y2Nlc3MtY29sb3I6IGdldC1jb2xvcihzdWNjZXNzKTtcbiR3YXJuaW5nLWNvbG9yOiBnZXQtY29sb3Iod2FybmluZyk7XG4kYWxlcnQtY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSAtemYtbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIExvYWRzIG5vcm1hbGl6ZS5jc3MuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLXpmLW5vcm1hbGl6ZSB7XG4gIEBpbmNsdWRlIG5vcm1hbGl6ZSgpO1xufVxuIiwiLy8gIEZvdW5kYXRpb24gZm9yIFNpdGVzIFNldHRpbmdzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZvcm1zXG4vLyAgMjAuIExhYmVsXG4vLyAgMjEuIE1lZGlhIE9iamVjdFxuLy8gIDIyLiBNZW51XG4vLyAgMjMuIE1ldGVyXG4vLyAgMjQuIE9mZi1jYW52YXNcbi8vICAyNS4gT3JiaXRcbi8vICAyNi4gUGFnaW5hdGlvblxuLy8gIDI3LiBQcm9ncmVzcyBCYXJcbi8vICAyOC4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDI5LiBSZXZlYWxcbi8vICAzMC4gU2xpZGVyXG4vLyAgMzEuIFN3aXRjaFxuLy8gIDMyLiBUYWJsZVxuLy8gIDMzLiBUYWJzXG4vLyAgMzQuIFRodW1ibmFpbFxuLy8gIDM1LiBUaXRsZSBCYXJcbi8vICAzNi4gVG9vbHRpcFxuLy8gIDM3LiBUb3AgQmFyXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vIDEuIEdsb2JhbFxuLy8gLS0tLS0tLS0tXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTMwMCk7XG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNTtcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogI2MzMDAyZixcbiAgc2Vjb25kYXJ5OiAjMDAwMDAwLFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbik7XG4kbGlnaHQtZ3JheTogI2VlZWVlZTtcbiRtZWRpdW0tZ3JheTogI2U2ZTZlNjtcbiRkYXJrLWdyYXk6ICMyMjIyMjI7XG4kYmxhY2s6ICMyMjIyMjI7XG4kd2hpdGU6ICNmZmZmZmY7XG4kZ3JlZW46ICM1MTBkYTA7XG4kb3JhbmdlOiAjNTEwZGEwO1xuJHBpbms6ICM1MTBkYTA7XG4kcHJpbWFyeS1jdGE6ICNkMjcxMDA7XG4kYm9keS1iYWNrZ3JvdW5kOiAjZmZmZmZmO1xuOyAvLyBCbGFjayBWZXJzaW9uOiAjMTExMTExXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2s7IC8vIEJsYWNrIFZlcnNpb246ICR3aGl0ZVxuJGJvZHktZm9udC1mYW1pbHk6ICAnTmlzc2FuLVJlZ3VsYXInLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1saWdodDogMzAwO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiA0MDA7IC8vIFJlZ3VsYXJcbiRnbG9iYWwtd2VpZ2h0LW1lZGl1bTogNTAwO1xuJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkOiA2MDA7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiA3MDA7XG4kZ2xvYmFsLXdlaWdodC1leHRyYS1ib2xkOiA4MDA7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0cjtcbiRnbG9iYWwtZmxleGJveDogZmFsc2U7XG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWU7XG5cbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuLy8gMi4gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbik7XG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKTtcblxuLy8gMy4gVGhlIEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRncmlkLWNvbHVtbi1jb3VudDogMTI7XG4kZ3JpZC1jb2x1bW4tZ3V0dGVyOiAoXG4gIHNtYWxsOiAyMHB4LFxuICBtZWRpdW06IDMwcHgsXG4pO1xuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkZXItZm9udC1mYW1pbHk6ICdOaXNzYW4tQm9sZCcsIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxO1xuJGhlYWRlci1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjYpLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTYpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTQpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDI2KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIyKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgKSxcbik7XG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kc21hbGwtZm9udC1zaXplOiA4MCU7XG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS44O1xuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGFuY2hvci1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiBpbmhlcml0O1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogaW5oZXJpdDtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IG5vbmU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNsYXNoOiB0cnVlO1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tcGFkZGluZzogcmVtLWNhbGMoMTIgMTQpO1xuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJ1dHRvbi1maWxsOiBzb2xpZDtcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGU7XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiByZW0tY2FsYygxNiksXG4gIGRlZmF1bHQ6IHJlbS1jYWxjKDE4KSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pO1xuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJTtcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJTtcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xuXG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cblxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuXG4vLyAxNC4gQ2FyZFxuLy8gLS0tLS0tLS1cblxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gMTUuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbik7XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xuXG4vLyAxNi4gRHJpbGxkb3duXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kZHJvcGRvd24tYm9yZGVyOiBub25lO1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbTtcbiRkcm9wZG93bi13aWR0aDogMjcwcHg7XG4kZHJvcGRvd24tcmFkaXVzOiAwO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMjBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcblxuLy8gMTkuIEZvcm1zXG4vLyAtLS0tLS0tLS1cblxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICNlZWVlZWU7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAjZWVlZWVlO1xuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xuJGZvcm0tbGFiZWwtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44O1xuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5O1xuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGlucHV0LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRkYXJrLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICR3aGl0ZTtcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAjZWVlZWVlO1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSk7XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIwLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjEuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjIuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW1hcmdpbi1uZXN0ZWQ6IDFyZW07XG4kbWVudS1pdGVtLXBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kbWVudS1ib3JkZXI6ICRsaWdodC1ncmF5O1xuXG4vLyAyMy4gTWV0ZXJcbi8vIC0tLS0tLS0tLVxuXG4kbWV0ZXItaGVpZ2h0OiAxcmVtO1xuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG1ldGVyLWZpbGwtZ29vZDogJHN1Y2Nlc3MtY29sb3I7XG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XG5cbi8vIDI0LiBPZmYtY2FudmFzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kb2ZmY2FudmFzLXNpemU6IDI1MHB4O1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplOiAyNTBweDtcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNyk7XG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxO1xuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTA7XG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDE7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KTtcbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCc7XG5cbi8vIDI1LiBPcmJpdFxuLy8gLS0tLS0tLS0tXG5cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcblxuLy8gMjYuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGU7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuXG4vLyAyNy4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI4LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKTtcblxuLy8gMjkuIFJldmVhbFxuLy8gLS0tLS0tLS0tLVxuXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kcmV2ZWFsLWJvcmRlcjogbm9uZTtcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcblxuLy8gMzAuIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDMxLiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cblxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcblxuLy8gMzIuIFRhYmxlXG4vLyAtLS0tLS0tLS1cblxuJHRhYmxlLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZTtcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXN0cmlwZTogZXZlbjtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XG5cbi8vIDMzLiBUYWJzXG4vLyAtLS0tLS0tLVxuXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItYWN0aXZlLWNvbG9yOiAkd2hpdGU7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuJHRhYi1leHBhbmQtbWF4OiA2O1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6IGluaGVyaXQ7XG4kdGFiLWNvbnRlbnQtYm9yZGVyOiBub25lO1xuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDM0LiBUaHVtYm5haWxcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAzNS4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2s7XG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcblxuLy8gMzYuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW07XG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NjtcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDM3LiBUb3AgQmFyXG4vLyAtLS0tLS0tLS0tLVxuXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnOyAgICBcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlKSB7XG4gICRsaXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuXG4gIEBpZiBub3QgJHNtYWxsIHtcbiAgICAkbGlzdDogc2wtcmVtb3ZlKCRsaXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICBAZWFjaCAkbmFtZSBpbiAkbGlzdCB7XG4gICAgJC16Zi1zaXplOiAkbmFtZSAhZ2xvYmFsO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUgb3IgYnJlYWtwb2ludCBuYW1lIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRuYW1lOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIE91dHB1dHMgQ1NTIGNsYXNzZXMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIGZvdW5kYXRpb24tZ3JpZChcbiAgJHJvdzogJ3JvdycsXG4gICRjb2x1bW46ICdjb2x1bW4nLFxuICAkY29sdW1uLXJvdzogJ2NvbHVtbi1yb3cnLFxuICAkZ3V0dGVyOiAnZ3V0dGVyJyxcbiAgJHB1c2g6ICdwdXNoJyxcbiAgJHB1bGw6ICdwdWxsJyxcbiAgJGNlbnRlcjogJ2NlbnRlcmVkJyxcbiAgJHVuY2VudGVyOiAndW5jZW50ZXJlZCcsXG4gICRjb2xsYXBzZTogJ2NvbGxhcHNlJyxcbiAgJHVuY29sbGFwc2U6ICd1bmNvbGxhcHNlJyxcbiAgJG9mZnNldDogJ29mZnNldCcsXG4gICRlbmQ6ICdlbmQnLFxuICAkZXhwYW5kZWQ6ICdleHBhbmRlZCcsXG4gICRibG9jazogJ2Jsb2NrJ1xuKSB7XG4gIC8vIFJvd1xuICAuI3skcm93fSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG5cbiAgICAvLyBDb2xsYXBzaW5nXG4gICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmIC4jeyRyb3d9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGdyaWQtY29sdW1uLWd1dHRlcik7XG5cbiAgICAgICYuI3skY29sbGFwc2V9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFeHBhbmRlZCAoZnVsbC13aWR0aCkgcm93XG4gICAgJi4jeyRleHBhbmRlZH0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoLiN7JGV4cGFuZGVkfSkgLiN7JHJvd30ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuICAgIH1cblxuICAgIEBpZiB0eXBlLW9mKCRncmlkLWNvbHVtbi1ndXR0ZXIpID09ICdtYXAnIHtcbiAgICAgIC8vIFN0YXRpYyAodW5yZXNwb25zaXZlKSByb3cgZ3V0dGVyc1xuICAgICAgLy9cbiAgICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGdyaWQtY29sdW1uLWd1dHRlciB7XG4gICAgICAgICYuI3skZ3V0dGVyfS0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgPiAuI3skY29sdW1ufSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJHZhbHVlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW5cbiAgLiN7JGNvbHVtbn0ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sO1xuXG4gICAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAgICYuI3skZW5kfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWVuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW4gcm93XG4gIC8vIFRoZSBkb3VibGUgLnJvdyBjbGFzcyBpcyBuZWVkZWQgdG8gYnVtcCB1cCB0aGUgc3BlY2lmaWNpdHlcbiAgLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC8vIFRvIHByb3Blcmx5IG5lc3QgYSBjb2x1bW4gcm93LCBwYWRkaW5nIGFuZCBtYXJnaW4gaXMgcmVtb3ZlZFxuICAuI3skcm93fSAuI3skY29sdW1ufS4jeyRyb3d9LiN7JHJvd30ge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIENvbHVtbiB3aWR0aFxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXNpemUoJGkpO1xuICAgICAgfVxuXG4gICAgICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgICAgIEBpZiAkaSA8ICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygkaSk7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoLSRpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LSN7JG9mZnNldH0tI3skb30ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1vZmYoJG8pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJsb2NrIGdyaWRcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoJGksICcuI3skY29sdW1ufScpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgY29sbGFwc2luZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JGV4cGFuZGVkfS4jeyRyb3d9IC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9LiN7JHJvd30ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS0jeyR1bmNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCQtemYtc2l6ZSk7IH1cbiAgICB9XG5cbiAgICAvLyBQb3NpdGlvbmluZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY2VudGVyfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoY2VudGVyKTtcbiAgICB9XG5cbiAgICAvLyBHdXR0ZXIgYWRqdXN0bWVudFxuICAgIC4jeyQtemYtc2l6ZX0tI3skdW5jZW50ZXJ9LFxuICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tMCxcbiAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LTAge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtdW5wb3M7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZCBjb2x1bW5zXG4gIC4jeyRjb2x1bW59LSN7JGJsb2NrfSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tbWFyZ2luO1xuICB9XG5cbiAgQGlmICRjb2x1bW4gPT0gJ2NvbHVtbicge1xuICAgIC5jb2x1bW5zIHtcbiAgICAgIC8vIHNhc3MtbGludDpkaXNhYmxlLWJsb2NrIHBsYWNlaG9sZGVyLWluLWV4dGVuZFxuICAgICAgQGV4dGVuZCAuY29sdW1uO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2hhbmdlIHRoZSBiZWhhdmlvciBvZiBjb2x1bW5zIGRlZmluZWQgaW5zaWRlIHRoaXMgbWl4aW4gdG8gdXNlIGEgZGlmZmVyZW50IGNvbHVtbiBjb3VudC5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHJvb3QgW2ZhbHNlXVxuLy8vICAgSWYgYGZhbHNlYCwgc2VsZWN0b3JzIGluc2lkZSB0aGlzIG1peGluIHdpbGwgbmVzdCBpbnNpZGUgdGhlIHBhcmVudCBzZWxlY3Rvci5cbi8vLyAgIElmIGB0cnVlYCwgc2VsZWN0b3JzIHdpbGwgbm90IG5lc3QuXG5AbWl4aW4gZ3JpZC1jb250ZXh0KFxuICAkY29sdW1ucyxcbiAgJHJvb3Q6IGZhbHNlXG4pIHtcbiAgLy8gU3RvcmUgdGhlIGN1cnJlbnQgY29sdW1uIGNvdW50IHNvIGl0IGNhbiBiZSByZS1zZXQgbGF0ZXJcbiAgJG9sZC1ncmlkLWNvbHVtbi1jb3VudDogJGdyaWQtY29sdW1uLWNvdW50O1xuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRjb2x1bW5zICFnbG9iYWw7XG5cbiAgQGlmICRyb290IHtcbiAgICBAYXQtcm9vdCB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgb2xkIGNvbHVtbiBjb3VudFxuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRvbGQtZ3JpZC1jb2x1bW4tY291bnQgIWdsb2JhbDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIHJvdy5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIENvbHVtbiBjb3VudCBmb3IgdGhpcyByb3cuIGBudWxsYCB3aWxsIHVzZSB0aGUgZGVmYXVsdCBjb2x1bW4gY291bnQuXG4vLy8gQHBhcmFtIHtLZXl3b3Jkc30gJGJlaGF2aW9yIFtudWxsXVxuLy8vICAgTW9kaWZpY2F0aW9ucyB0byB0aGUgZGVmYXVsdCBncmlkIHN0eWxlcy4gYG5lc3RgIGluZGljYXRlcyB0aGUgcm93IHdpbGwgYmUgcGxhY2VkIGluc2lkZSBhbm90aGVyIHJvdy4gYGNvbGxhcHNlYCBpbmRpY2F0ZXMgdGhhdCB0aGUgY29sdW1ucyBpbnNpZGUgdGhpcyByb3cgd2lsbCBub3QgaGF2ZSBwYWRkaW5nLiBgbmVzdCBjb2xsYXBzZWAgY29tYmluZXMgYm90aCBiZWhhdmlvcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGNmIFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgYSBjbGVhcmZpeC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93KFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkc2l6ZTogJGdyaWQtcm93LXdpZHRoLFxuICAkY2Y6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXJzKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZSgkc2l6ZSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRjZiB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEludmVydHMgdGhlIG1hcmdpbnMgb2YgYSByb3cgdG8gbmVzdCBpdCBpbnNpZGUgb2YgYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93LW5lc3QoJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgJG1hcmdpbjogcmVtLWNhbGMoLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtc2l6ZSkpIC8gMiAqIC0xO1xuXG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXQgYSBncmlkIHJvdyBzaXplXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG5AbWl4aW4gZ3JpZC1yb3ctc2l6ZSgkc2l6ZTogJGdyaWQtcm93LXdpZHRoKSB7XG4gIEBpZiAkc2l6ZSA9PSBleHBhbmQge1xuICAgICRzaXplOiBub25lO1xuICB9XG5cbiAgbWF4LXdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8vIENvbnZlcnRzIG9uZSBvciBtb3JlIHBpeGVsIHZhbHVlcyBpbnRvIG1hdGNoaW5nIHJlbSB2YWx1ZXMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkdmFsdWVzIC0gT25lIG9yIG1vcmUgdmFsdWVzIHRvIGNvbnZlcnQuIEJlIHN1cmUgdG8gc2VwYXJhdGUgdGhlbSB3aXRoIHNwYWNlcyBhbmQgbm90IGNvbW1hcy4gSWYgeW91IG5lZWQgdG8gY29udmVydCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB3cmFwIHRoZSBsaXN0IGluIHBhcmVudGhlc2VzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBUaGUgYmFzZSB2YWx1ZSB0byB1c2Ugd2hlbiBjYWxjdWxhdGluZyB0aGUgYHJlbWAuIElmIHlvdSdyZSB1c2luZyBGb3VuZGF0aW9uIG91dCBvZiB0aGUgYm94LCB0aGlzIGlzIDE2cHguIElmIHRoaXMgcGFyYW1ldGVyIGlzIGBudWxsYCwgdGhlIGZ1bmN0aW9uIHdpbGwgcmVmZXJlbmNlIHRoZSBgJGJhc2UtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXRzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogKCR2YWx1ZSAvIDEwMCUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgLy8gJ3B4J1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcge1xuICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlcm4gdGhlbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJGd1dHRlciBbYXV0b11cbi8vLyAgIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkZ3V0dGVycyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkZ3V0dGVycyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkZ3V0dGVyLCAkZ3V0dGVycykge1xuICAgICRwYWRkaW5nOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICB9XG59XG5cbi8vLyBDb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZW1vdmluZyB0aGUgcGFkZGluZy4gKipOb3RlOioqIG9ubHkgdXNlIHRoaXMgbWl4aW4gd2l0aGluIGEgYnJlYWtwb2ludC4gVG8gY29sbGFwc2UgYSBjb2x1bW4ncyBndXR0ZXJzIG9uIGFsbCBzY3JlZW4gc2l6ZXMsIHVzZSB0aGUgYCRndXR0ZXJgIHBhcmFtZXRlciBvZiB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluIGluc3RlYWQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoMCk7XG59XG5cbi8vLyBVbi1jb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZS1hZGRpbmcgdGhlIHBhZGRpbmcuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy5cbkBtaXhpbiBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQHdhcm4gJ1RoaXMgbWl4aW4gaXMgYmVpbmcgcmVwbGFjZWQgYnkgZ3JpZC1jb2x1bW4tZ3V0dGVyKCkuIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXJzOiAkZ3V0dGVyKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWd1dHRlcigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZ3V0dGVyXG5AbWl4aW4gZ3JpZC1jb2wtZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLXVuY29sbGFwc2UoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBncmlkLWNvbC1ndXR0ZXIoKS4gZ3JpZC1jb2wtdW5jb2xsYXBzZSgpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCRndXR0ZXIpO1xufVxuXG4vLy8gU2V0cyBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucyB0byBtYXRjaCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJG1hcmdpbiBbYXV0b11cbi8vLyAgIFRoZSBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJG1hcmdpbnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIG1hcmdpbiByZXNwb25zaXZlLCB1c2luZyB0aGUgJG1hcmdpbnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXJnaW5zIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLW1hcmdpbiAoXG4gICRtYXJnaW46IGF1dG8sXG4gICRtYXJnaW5zOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJG1hcmdpbiwgJG1hcmdpbnMpIHtcbiAgICAkbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSk7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdZb3VyIHNtYWxsZXN0IGJyZWFrcG9pbnQgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzKSBtdXN0IGJlIHNldCB0byBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtICgxLzE2KTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHZhbHVlKTtcbiAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgJGJwIDw9ICRwYnAge1xuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIENvbnZlcnMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgd2lkdGggb2YgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR3aWR0aCBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIHRvIG1ha2UgdGhlIGNvbHVtbi4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICB3aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tc2l6ZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tc2l6ZVxuQG1peGluIGdyaWQtY29sLXNpemUoXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZXMgdGhlIHdpZHRoIG9mIGEgY29sdW1uIGJhc2VkIG9uIGEgbnVtYmVyIG9mIGZhY3RvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkY29sdW1uc1xuLy8vICAgV2lkdGggb2YgdGhlIGNvbHVtbi4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgcGVyY2VudGFnZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGNvbHVtbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgc2luZ2xlIGRpZ2l0IHdpbGwgbWFrZSB0aGUgY29sdW1uIHNwYW4gdGhhdCBudW1iZXIgb2YgY29sdW1ucyB3aWRlLCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBjb2x1bW4gY291bnQgb2YgdGhlIHBhcmVudCByb3cuXG4vLy8gICAtIEEgbGlzdCBvZiB0aGUgZm9ybWF0IFwieCBvZiB5XCIgKHdpdGhvdXQgcXVvdGVzKSB3aWxsIG1ha2UgYSBjb2x1bW4gdGhhdCBpcyAqeCogY29sdW1ucyB3aWRlLCBhc3N1bWluZyAqeSogdG90YWwgY29sdW1ucyBmb3IgdGhlIHBhcmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgY2FsY3VsYXRlZCBwZXJjZW50YWdlIHZhbHVlLlxuQGZ1bmN0aW9uIGdyaWQtY29sdW1uKCRjb2x1bW5zKSB7XG4gICR3aWR0aDogMCU7XG5cbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIGFuZCBjb2x1bW4gY291bnRzXG4gIEBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJGNvbHVtbnMpID09ICclJyB7XG4gICAgICAkd2lkdGg6ICRjb2x1bW5zO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkY29sdW1ucyA8IDEge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2UgaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRjb2x1bW5zKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZShudGgoJGNvbHVtbnMsIDEpIC8gbnRoKCRjb2x1bW5zLCAzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIuJztcbiAgfVxuXG4gIEByZXR1cm4gJHdpZHRoO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG4gIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBMYXN0IGNvbHVtbiBhbGlnbm1lbnRcbiAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4gcm93LiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50IG9mIGFkZGluZyBgLnJvd2AgYW5kIGAuY29sdW1uYCB0byB0aGUgc2FtZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gV2lkdGggb2YgdGhlIGd1dHRlcnMgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNvbHVtbiByb3cuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93O1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gICYsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQGZ1bmN0aW9uIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQHJldHVybiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBtaXhpbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcm93KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1yb3dcbkBtaXhpbiBncmlkLWNvbC1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXJzKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFJlcG9zaXRpb24gYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkcG9zaXRpb24gLSBEaXJlY3Rpb24gYW5kIGFtb3VudCB0byBtb3ZlLiBUaGUgY29sdW1uIHdpbGwgbW92ZSBlcXVhbCB0byB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbiBjb3VudCBzcGVjaWZpZWQuIEEgcG9zaXRpdmUgbnVtYmVyIHdpbGwgcHVzaCB0aGUgY29sdW1uIHRvIHRoZSByaWdodCwgd2hpbGUgYSBuZWdhdGl2ZSBudW1iZXIgd2lsbCBwdWxsIGl0IHRvIHRoZSBsZWZ0LiBTZXQgdG8gY2VudGVyIHRvIGNlbnRlciB0aGUgY29sdW1uLlxuQG1peGluIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbikge1xuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRwb3NpdGlvbiAvICRncmlkLWNvbHVtbi1jb3VudCk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBvciBjZW50ZXIuJztcbiAgfVxufVxuXG4vLy8gUmVzZXQgYSBwb3NpdGlvbiBkZWZpbml0aW9uLlxuQG1peGluIGdyaWQtY29sdW1uLXVucG9zaXRpb24ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLy8vIE9mZnNldHMgYSBjb2x1bW4gdG8gdGhlIHJpZ2h0IGJ5IGAkbmAgY29sdW1ucy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFdpZHRoIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLW9mZnNldCgkbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiBncmlkLWNvbHVtbigkbik7XG59XG5cbi8vLyBEaXNhYmxlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIHRoZSBsYXN0IGNvbHVtbiBpbiBhIHJvdyBhbGlnbmluZyB0byB0aGUgb3Bwb3NpdGUgZWRnZS5cbkBtaXhpbiBncmlkLWNvbHVtbi1lbmQge1xuICAvLyBUaGlzIGV4dHJhIHNwZWNpZmljaXR5IGlzIHJlcXVpcmVkIGZvciB0aGUgcHJvcGVydHkgdG8gYmUgYXBwbGllZFxuICAmOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtcG9zKCRwb3NpdGlvbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXVucG9zIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbjtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLW9mZnNldCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tb2Zmc2V0XG5AbWl4aW4gZ3JpZC1jb2wtb2ZmKCRuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgkbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1lbmQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWVuZFxuQG1peGluIGdyaWQtY29sLWVuZCB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWVuZDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNpemVzIGNoaWxkIGVsZW1lbnRzIHNvIHRoYXQgYCRuYCBudW1iZXIgb2YgaXRlbXMgYXBwZWFyIG9uIGVhY2ggcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGVsZW1lbnRzIHRvIGRpc3BsYXkgcGVyIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsnLmNvbHVtbiddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkZ3V0dGVyXG4vLy8gICBUaGUgZ3V0dGVyIHRvIGFwcGx5IHRvIGNoaWxkIGVsZW1lbnRzLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gJGdyaWQtY29sdW1uLWd1dHRlciB3aWxsIHVzZSB0aGUgdmFsdWVzIGluIHRoZSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIG1hcCwgaW5jbHVkaW5nIGJyZWFrcG9pbnQgc2l6ZXMuXG4vLy8gICAtIEEgZml4ZWQgbnVtZXJpYyB2YWx1ZSB3aWxsIGFwcGx5IHRoaXMgZ3V0dGVyIHRvIGFsbCBicmVha3BvaW50cy5cbkBtaXhpbiBncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jb2x1bW4nLFxuICAkZ3V0dGVyOiBudWxsXG4pIHtcbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgxLyRuKTtcblxuICAgIC8vIElmIGEgJGd1dHRlciB2YWx1ZSBpcyBwYXNzZWRcbiAgICBAaWYoJGd1dHRlcikge1xuICAgICAgLy8gR3V0dGVyc1xuICAgICAgQGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ21hcCcge1xuICAgICAgICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRndXR0ZXIge1xuICAgICAgICAgICRwYWRkaW5nOiByZW0tY2FsYygkdmFsdWUpIC8gMjtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ251bWJlcicgYW5kIHN0cmlwLXVuaXQoJGd1dHRlcikgPiAwIHtcbiAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCRndXR0ZXIpIC8gMjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpudGgtb2YtdHlwZSgjeyRufW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGV4dHJhIENTUyB0byBibG9jayBncmlkIGNoaWxkcmVuIHNvIHRoZSBsYXN0IGl0ZW1zIGluIHRoZSByb3cgY2VudGVyIGF1dG9tYXRpY2FsbHkuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbHVtbnMsIG5vdCB0aGUgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGl0ZW1zIHRoYXQgYXBwZWFyIGluIGVhY2ggcm93LlxuQG1peGluIGdyaWQtbGF5b3V0LWNlbnRlci1sYXN0KCRuKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRvICRuIHtcbiAgICBAaWYgJGkgPT0gMSB7XG4gICAgICAmOm50aC1jaGlsZCgjeyRufW4rMSk6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAoMTAwIC0gMTAwLyRuICogJGkpIC8gMiAqIDElO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAmOm50aC1jaGlsZCgjeyRufW4rMSk6bnRoLWxhc3QtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSAxMDAvJG4gKiAkaSkgLyAyICogMSU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTsgIFxuICAgIH1cbiAgICAkaGVhZGVyLXN0eWxlczogbWFwLW1lcmdlKCRoZWFkZXItc3R5bGVzLCAoJHNpemU6ICRoZWFkZXItbWFwKSk7XG4gIH1cbiAgQHJldHVybiAkaGVhZGVyLXN0eWxlcztcbn1cblxuLy8gSWYgaXQgZXhpc3RzICRoZWFkZXJzLXNpemVzIGlzIHVzZWQgdG8gYnVpbGQgJGhlYWRlci1zdHlsZXMuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoaGVhZGVyLXNpemVzKSB7XG4gICRoZWFkZXItc3R5bGVzOiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKTtcbn1cblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGA8c21hbGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGA8c21hbGw+YCBlbGVtZW50cyB3aGVuIHBsYWNlZCBpbnNpZGUgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGluc2lkZSBgPHA+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIGZvciBwYXJhZ3JhcGggdGV4dC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlb2NyYXRpb24gZm9yIGxpbmtzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBMaXN0XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0byAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b20gIWRlZmF1bHQ7XG5cbi8vLyBCdWxsZXQgdHlwZSB0byB1c2UgZm9yIHVub3JkZXJlZCBsaXN0cyAoZS5nLiwgYHNxdWFyZWAsIGBjaXJjbGVgLCBgZGlzY2ApLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYyAhZGVmYXVsdDtcblxuLy8vIFBvc2l0aW9uaW5nIGZvciBidWxsZXRzIG9uIHVub3JkZXJlZCBsaXN0IGl0ZW1zLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGUgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBsaXN0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgYSBsaXN0IGluc2lkZSBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBgPGRsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBgPGR0PmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYDxkdD5gIGFuZCBgPGRkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgYDxibG9ja3F1b3RlPmAgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpICFkZWZhdWx0O1xuXG4vLy8gU2lkZSBib3JkZXIgZm9yIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBzZXVkbyBjb250ZW50IGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCcgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuICB9XG5cbiAgLy8gRW1waGFzaXplZCB0ZXh0XG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTdHJvbmcgdGV4dFxuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU21hbGwgdGV4dFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSGVhZGluZ3NcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgc21hbGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBjb2xvcjogJGhlYWRlci1zbWFsbC1mb250LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc3R5bGVzXG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXN0eWxlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGhlYWRlciwgJGhlYWRlci1kZWZzIGluICRoZWFkZXJzIHtcbiAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiAxcmVtO1xuICAgICAgICAjeyRoZWFkZXJ9IHtcblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZzKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtdCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGhlYWRlci1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaW5rc1xuICBhIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsLFxuICBvbCxcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zXG4gIGxpIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBVbm9yZGVyZWQgbGlzdHNcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogJGxpc3Qtc3R5bGUtdHlwZTtcbiAgfVxuXG4gIC8vIE9yZGVyZWQgbGlzdHNcbiAgb2wge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gTmVzdGVkIHVub3JkZXJlZC9vcmRlcmVkIGxpc3RzXG4gIHVsLCBvbCB7XG4gICAgJiAmIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBsaXN0c1xuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LW1hcmdpbi1ib3R0b207XG5cbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tO1xuICAgICAgZm9udC13ZWlnaHQ6ICRkZWZubGlzdC10ZXJtLXdlaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBCbG9ja3F1b3Rlc1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAmLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2l0YXRpb25zXG4gIGNpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGNpdGUtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkY2l0ZS1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICRjaXRlLXBzZXVkby1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgIGN1cnNvcjogaGVscDtcbiAgfVxuXG4gIC8vIEZpZ3VyZXNcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcblxuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3ViaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJoZWFkZXItY29sb3I7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYW4gaW50cm9kdWN0b3J5IGxlYWQsIGRlY2ssIGJsdXJiLCBldGMuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxlYWQtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhIGxhcmdlIG51bWJlciB0byBkaXNwbGF5IGEgc3RhdGlzdGljXG4gIC5zdGF0IHtcbiAgICBmb250LXNpemU6ICRzdGF0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHAgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIFVzZSB0byByZW1vdmUgdGhlIGJ1bGxldHMgZnJvbSBhbiB1bm9yZGVyZWQgbGlzdFxuICAubm8tYnVsbGV0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b25cbi8vLy9cblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcblxuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyBiYWNrZ3JvdW5kIGZpbGwgb24gaG92ZXIgYW5kIGZvY3VzIGZvciBob2xsb3cgYnV0dG9ucy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJixcbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJHByaW1hcnktY29sb3IsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3I7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50LCByZXNldGluZyB0aGUgY3Vyc29yLCBhbmQgZGlzYWJsaW5nIHBvaW50ZXIgZXZlbnRzLlxuLy8vIEBwYXJhbSBbQ29sb3JdICRiYWNrZ3JvdW5kIFskcHJpbWFyeS1jb2xvcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHBhcmFtIFtDb2xvcl0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gYnV0dG9uLWRpc2FibGVkKFxuICAkYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpO1xuICB9XG59XG5cbi8vLyBBZGRzIGFsbCBzdHlsZXMgZm9yIGEgYnV0dG9uLiBGb3IgbW9yZSBncmFudWxhciBjb250cm9sIG92ZXIgc3R5bGVzLCB1c2UgdGhlIGluZGl2aWR1YWwgYnV0dG9uIG1peGlucy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gbWFrZSB0aGUgYnV0dG9uIGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0eWxlIFtzb2xpZF0gLSBTZXQgdG8gYGhvbGxvd2AgdG8gY3JlYXRlIGEgaG9sbG93IGJ1dHRvbi4gVGhlIGNvbG9yIGRlZmluZWQgaW4gYCRiYWNrZ3JvdW5kYCB3aWxsIGJlIHVzZWQgYXMgdGhlIHByaW1hcnkgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24oXG4gICRleHBhbmQ6IGZhbHNlLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRzdHlsZTogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG5cbiAgQGlmICRzdHlsZSA9PSBzb2xpZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcbiAgfVxuICBAZWxzZSBpZiAkc3R5bGUgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG5cbiAgQGlmICRleHBhbmQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZXhwYW5kOyB9XG5cbiAgICAvLyBDb2xvcnNcbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuI3skbmFtZX0uZHJvcGRvd246OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0eWxlXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkKCRjb2xvciwgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICYuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRyb3Bkb3duO1xuXG4gICAgICBAaWYgJGJ1dHRvbi1maWxsID09IGhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBGb250IGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgRm9udFxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMjtcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tYnV0dG9uLXJhZGl1cztcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhcblxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeFxuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuXG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJltmb3JdIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0cyBpbnNpZGUgbGFiZWxzXG4gIGxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG4gIGxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLy8gTm9ybWFsaXplIGZpbGUgaW5wdXQgd2lkdGhcbiAgW3R5cGU9J2ZpbGUnXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgJGZvcm0tc3BhY2luZyAqIDEuNSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24sXG4gICAgbGFiZWwge1xuICAgICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyKTtcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGVycm9yIHN0eWxlcyB0byBhIGZvcm0gZWxlbWVudCwgdXNpbmcgdGhlIHZhbHVlcyBpbiB0aGUgc2V0dGluZ3MgZmlsZS5cbkBtaXhpbiBmb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2luZyAqIC0wLjU7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBhY2NvcmRpb24gdGl0bGVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhbiBhY2NvcmRpb24gaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciAoXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWJhY2tncm91bmRcbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGlzdCBpdGVtIHdpdGhpbiBhbiBhY2NvcmRpb24gdWwuXG5AbWl4aW4gYWNjb3JkaW9uLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cyAwIDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHRpdGxlIG9mIGFuIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaW5rIHdpdGhpbiBhbiBhY2NvcmRpb24gaXRlbS5cbkBtaXhpbiBhY2NvcmRpb24tdGl0bGUgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplLFxuICAkY29sb3I6ICRhY2NvcmRpb24taXRlbS1jb2xvcixcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gJiB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxuXG4gIEBpZiAkYWNjb3JkaW9uLXBsdXNtaW51cyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICBjb250ZW50OiAnKyc7XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDEzJztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhY2NvcmRpb24gY29udGVudC4gQXBwbHkgdGhpcyB0byB0aGUgY29udGVudCBwYW5lIGJlbG93IGFuIGFjY29yZGlvbiBpdGVtJ3MgdGl0bGUuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWNvbnRlbnQtY29sb3Jcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQgPiAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uIHtcbiAgLmFjY29yZGlvbiB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWl0ZW07XG4gIH1cblxuICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tdGl0bGU7XG4gIH1cblxuICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVhZGNydW1ic1xuLy8vL1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBhY3RpdmUgYnJlYWRjcnVtYiBsaW5rLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBPcGFjaXR5IG9mIGRpc2FibGVkIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnJlYWRjcnVtYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgbWFrZXMgYnJlYWRjcnVtYiBsaW5rcyB1cHBlcmNhc2UuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIGEgc2xhc2ggYmV0d2VlbiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRicmVhZGNydW1icy1pdGVtLXNsYXNoOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgYnJlYWRjcnVtYnMgY29udGFpbmVyLCBhbG9uZyB3aXRoIHRoZSBzdHlsZXMgZm9yIHRoZSBgPGxpPmAgYW5kIGA8YT5gIGVsZW1lbnRzIGluc2lkZSBvZiBpdC5cbkBtaXhpbiBicmVhZGNydW1icy1jb250YWluZXIge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luOiAkYnJlYWRjcnVtYnMtbWFyZ2luO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC8vIEl0ZW0gd3JhcHBlclxuICBsaSB7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICAgIGZvbnQtc2l6ZTogJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplO1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50O1xuICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2Uge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gge1xuICAgICAgLy8gTmVlZCB0byBlc2NhcGUgdGhlIGJhY2tzbGFzaFxuICAgICAgJHNsYXNoOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdsdHInLCAnLycsICdcXFxcJyk7XG5cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMXB4O1xuICAgICAgICBtYXJnaW46IDAgJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuXG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGNvbnRlbnQ6ICRzbGFzaDtcbiAgICAgICAgY29sb3I6ICRtZWRpdW0tZ3JheTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzIHtcbiAgLmJyZWFkY3J1bWJzIHtcbiAgICBAaW5jbHVkZSBicmVhZGNydW1icy1jb250YWluZXI7XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNhbGxvdXRcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmYWRlIHZhbHVlIGZvciBjYWxsb3V0IGJhY2tncm91bmRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZSBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTGlzdFxuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgaW5uZXIgcGFkZGluZyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMsIGlmIHRoZSBjYWxsb3V0IGhhcyBhIGRhcmsgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciByYWRpdXMgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQW1vdW50IHRvIHRpbnQgbGlua3MgdXNlZCB3aXRoaW4gY29sb3JlZCBwYW5lbHMuIFNldCB0byBgZmFsc2VgIHRvIGRpc2FibGUgdGhpcyBmZWF0dXJlLlxuLy8vIEB0eXBlIE51bWJlciB8IEJvb2xlYW5cbiRjYWxsb3V0LWxpbmstdGludDogMzAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGEgY2FsbG91dCwgaW5jbHVkaW5nIHBhZGRpbmcgYW5kIG1hcmdpbi5cbkBtaXhpbiBjYWxsb3V0LWJhc2UoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAkY2FsbG91dC1tYXJnaW47XG4gIHBhZGRpbmc6ICRjYWxsb3V0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkY2FsbG91dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRjYWxsb3V0LXJhZGl1cztcblxuICAvLyBSZXNwZWN0IHRoZSBwYWRkaW5nLCBmb29sLlxuICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHF1aWNrIHN0eWxlcyBmb3IgYSBjYWxsb3V0IHVzaW5nIGEgc2luZ2xlIGNvbG9yIGFzIGEgYmFzZWxpbmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0LXN0eWxlKCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICAkYmFja2dyb3VuZDogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGUpO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRjYWxsb3V0LWZvbnQtY29sb3IsICRjYWxsb3V0LWZvbnQtY29sb3ItYWx0KSk7XG59XG5cbkBtaXhpbiBjYWxsb3V0LXNpemUoJHBhZGRpbmcpIHtcbiAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nO1xuICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYWxsb3V0LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dCgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgQGluY2x1ZGUgY2FsbG91dC1iYXNlO1xuICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhbGxvdXQge1xuICAuY2FsbG91dCB7XG4gICAgQGluY2x1ZGUgY2FsbG91dDtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc21hbGwge1xuICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKDAuNXJlbSk7XG4gICAgfVxuXG4gICAgJi5sYXJnZSB7XG4gICAgICBAaW5jbHVkZSBjYWxsb3V0LXNpemUoM3JlbSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYXJkXG4vLy8vXG5cbi8vLyBEZWZ1YWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FyZHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZS5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY2FyZCBzaGFkb3cuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luLlxuLy8vIEB0eXBlIG51bWJlclxuJGNhcmQtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBmb250IGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWFyZ2luIC0gQm90dG9tIG1hcmdpbiBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRib3JkZXIgLSBCb3JkZXIgYXJvdW5kIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHJhZGl1cyAtIGJvcmRlciByYWRpdXMgb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hhZG93IC0gYm94IHNoYWRvdyBvZiB0aGUgY2FyZC5cbkBtaXhpbiBjYXJkLWNvbnRhaW5lcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGNhcmQtZm9udC1jb2xvcixcbiAgJG1hcmdpbjogJGNhcmQtbWFyZ2luLFxuICAkYm9yZGVyOiAkY2FyZC1ib3JkZXIsXG4gICRyYWRpdXM6ICRjYXJkLWJvcmRlci1yYWRpdXMsXG4gICRzaGFkb3c6ICRjYXJkLXNoYWRvd1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkY2FyZC1mb250LWNvbG9yO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBkaXZpZGVyLlxuQG1peGluIGNhcmQtZGl2aWRlcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWRpdmlkZXItYmFja2dyb3VuZCxcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhcmQgc2VjdGlvbi5cbkBtaXhpbiBjYXJkLXNlY3Rpb24oXG4gICRwYWRkaW5nOiAkY2FyZC1wYWRkaW5nXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FyZCB7XG4gIC5jYXJkIHtcbiAgICBAaW5jbHVkZSBjYXJkLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5jYXJkLWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIGNhcmQtZGl2aWRlcjtcbiAgfVxuXG4gIC5jYXJkLXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIGNhcmQtc2VjdGlvbjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2xvc2UtYnV0dG9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uIFRoZSBmaXJzdCB2YWx1ZSBzaG91bGQgYmUgYHJpZ2h0YCBvciBgbGVmdGAsIGFuZCB0aGUgc2Vjb25kIHZhbHVlIHNob3VsZCBiZSBgdG9wYCBvciBgYm90dG9tYC5cbi8vLyBAdHlwZSBMaXN0XG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcCAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IChvciBsZWZ0KSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRvcCAob3IgYm90dG9tKSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsaW5lLWhlaWdodCBvZiB0aGUgY2xvc2UgYnV0dG9uLiBJdCBhZmZlY3RzIHRoZSBzcGFjaW5nIG9mIHRoZSBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDEgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbiB3aGVuIGJlaW5nIGhvdmVyZWQgb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrICFkZWZhdWx0O1xuXG5cbi8vLyBHZXQgdGhlIHNpemUgYW5kIHBvc2l0aW9uIGZvciBhIGNsb3NlIGJ1dHRvbi4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgbnVtYmVyLCB0aGUgbnVtYmVyIGlzIHJldHVybmVkLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBjb25maWcgbWFwIGFuZCB0aGUgbWFwIGhhcyB0aGUga2V5IGAkc2l6ZWAsIHRoZSB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJHZhbHVlIC0gQSBudW1iZXIgb3IgbWFwIHRoYXQgcmVwcmVzZW50cyB0aGUgc2l6ZSBvciBwb3NpdGlvbiB2YWx1ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBUaGUgc2l6ZSBvZiB0aGUgY2xvc2UgYnV0dG9uIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gVGhlIGdpdmVuIG51bWJlciBvciB0aGUgdmFsdWUgZm91bmQgaW4gdGhlIG1hcC5cbkBmdW5jdGlvbiAtemYtZ2V0LXNpemUtdmFsKCR2YWx1ZSwgJHNpemUpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIC8vIElmIGl0IGlzLCBqdXN0IHJldHVybiB0aGUgbnVtYmVyXG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgc2l6ZSBuYW1lIGV4aXN0cyBpbiB0aGUgdmFsdWUgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCR2YWx1ZSwgJHNpemUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCR2YWx1ZSwgJHNpemUpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBzaXplIGFuZCBwb3NpdGlvbiBvZiBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFttZWRpdW1dIC0gVGhlIHNpemUgdG8gdXNlLiBTZXQgdG8gYHNtYWxsYCB0byBjcmVhdGUgYSBzbWFsbCBjbG9zZSBidXR0b24uIFRoZSAnbWVkaXVtJyB2YWx1ZXMgZGVmaW5lZCBpbiBgJGNsb3NlYnV0dG9uLSpgIHZhcmlhYmxlcyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgc2l6ZSBhbmQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbkBtaXhpbiBjbG9zZS1idXR0b24tc2l6ZSgkc2l6ZSkge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICAjeyR4fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWwsICRzaXplKTtcbiAgI3skeX06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbCwgJHNpemUpO1xuICBmb250LXNpemU6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLXNpemUsICRzaXplKTtcbiAgbGluZS1oZWlnaHQ6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQsICRzaXplKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNsb3NlIGJ1dHRvbiwgdXNpbmcgdGhlIHN0eWxlcyBpbiB0aGUgc2V0dGluZ3MgdmFyaWFibGVzLlxuQG1peGluIGNsb3NlLWJ1dHRvbiB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jbG9zZS1idXR0b24ge1xuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBjbG9zZS1idXR0b247XG5cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUoc21hbGwpIH1cbiAgICAmLCAmLm1lZGl1bSB7IEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKG1lZGl1bSkgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZW51XG4vLy8vXG5cbi8vLyBNYXJnaW4gb2YgYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gTGVmdC1oYW5kIG1hcmdpbiBvZiBhIG5lc3RlZCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luLW5lc3RlZDogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWl0ZW0tcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYW4gaG92ZXJlZCBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBmb3IgYm9yZGVyZWQgbWVudVxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBtYXJnaW46ICRtZW51LW1hcmdpbjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXMgYXJlIHRhYmxlIGNlbGwgdG8gYWxsb3cgZm9yIHZlcnRpY2FsIGFsaWdubWVudFxuICA+IGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBsaW5lIGhlaWdodCB0byBtYWtlIHRoZSBoZWlnaHQgb2YgdGhlIG92ZXJhbGwgaXRlbSBlYXNpZXIgdG8gY2FsY3VsYXRlXG4gID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtLXBhZGRpbmc7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBFeHBhbmRzIHRoZSBpdGVtcyBvZiBhIE1lbnUsIHNvIGVhY2ggaXRlbSBpcyB0aGUgc2FtZSB3aWR0aC5cbkBtaXhpbiBtZW51LWV4cGFuZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgID4gbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cblxuICA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAgID4gbGkge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgPiBsaSAgPiBhIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFNldCB0byBgbnVsbGAgdG8gZG8gbm90IGdlbmVyYXRlIHN0eWxlcyBmb3IgZGlyZWN0aW9uLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCkge1xuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgQGlmICRkaXIgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVudS1zaW1wbGUtZGlyZWN0aW9uKCRkaXIpO1xuICB9XG59XG5cbi8vLyBEaXJlY3Rpb24gbW9kaWZpZXIgZm9yIGEgc2ltcGxlIE1lbnVcbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnVcbkBtaXhpbiBtZW51LXNpbXBsZS1kaXJlY3Rpb24oJGRpcjogJGdsb2JhbC1sZWZ0KSB7XG4gICRuby1tYXJnaW4tZGlyOiAkZGlyO1xuICAkbWFyZ2luLWRpcjogZGlyZWN0aW9uLW9wcG9zaXRlKCRkaXIpO1xuXG4gIGxpIHtcbiAgICBtYXJnaW4tI3skbm8tbWFyZ2luLWRpcn06IDA7XG4gICAgbWFyZ2luLSN7JG1hcmdpbi1kaXJ9OiBnZXQtc2lkZSgkbWVudS1pdGVtLXBhZGRpbmcsICRtYXJnaW4tZGlyKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbmVzdGVkIE1lbnUsIGJ5IGFkZGluZyBgbWFyZ2luLWxlZnRgIHRvIHRoZSBtZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRwYWRkaW5nIFthdXRvXSAtIExlbmd0aCBvZiB0aGUgbWFyZ2luLlxuQG1peGluIG1lbnUtbmVzdGVkKCRtYXJnaW46ICRtZW51LW1hcmdpbi1uZXN0ZWQpIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG1hcmdpbjtcbn1cblxuLy8vIEFkZHMgc3VwcG9ydCBmb3IgaWNvbnMgdG8gTWVudSBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRwb3NpdGlvbiBbc2lkZV0gLSBQb3NpdGlvbmluZyBmb3IgaWNvbnMuIENhbiBiZSBgc2lkZWAgKGxlZnQsIG9yIHJpZ2h0IG9uIFJUTCkgb3IgYHRvcGAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYmFzZSBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBwcmV2ZW50IHRoZSBzaGFyZWQgQ1NTIGJldHdlZW4gc2lkZS0gYW5kIHRvcC1hbGlnbmVkIGljb25zIGZyb20gYmVpbmcgcHJpbnRlZC4gU2V0IHRoaXMgdG8gYGZhbHNlYCBpZiB5b3UncmUgY2FsbGluZyB0aGUgbWl4aW4gbXVsdGlwbGUgdGltZXMgb24gdGhlIHNhbWUgZWxlbWVudC5cbkBtaXhpbiBtZW51LWljb25zKCRwb3NpdGlvbjogc2lkZSwgJGJhc2U6IHRydWUpIHtcbiAgQGlmICRiYXNlIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSA+IGEge1xuICAgICAgICBpbWcsXG4gICAgICAgIGksXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAgICsgc3BhbiB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcG9zaXRpb24gPT0gc2lkZSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkbWVudS1pY29uLXNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJG1lbnUtaWNvbi1zcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRtZW51LWljb24tc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZzogJG1lbnUtaXRlbS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggbW9kaWZpZXIgZm9yIGhvcml6b250YWwgb3JpZW50YXRpb25cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IGZhbHNlKSB7XG4gICAgICAmLiN7JC16Zi1zaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuXG4gICAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgICBAaW5jbHVkZSBtZW51LXNpbXBsZS1kaXJlY3Rpb24oJGdsb2JhbC1yaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgID4gbGkge1xuICAgICAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgaWNvbnNcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnModG9wLCAkYmFzZTogZmFsc2UpO1xuICAgICAgLy8gTWFrZSB2ZXJ0aWNhbCBtZW51IHdpdGggaWNvbnMgb24gdG9wIHdvcmtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICBhID4gc3BhbiB7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLy8gTWVudSB3aXRoIGJvcmRlclxuICAgICYubWVudS1ib3JkZXJlZCB7XG4gICAgICBsaSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZW51LWJvcmRlcjtcbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1lbnUgd2l0aCBiYWNrZ3JvdW5kIGhvdmVyXG4gICAgJi5tZW51LWhvdmVyIHtcbiAgICAgIGxpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tZW51LXRleHQge1xuICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgfVxuXG4gIC8vIEFsaWduIGNlbnRlclxuICAubWVudS1jZW50ZXJlZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgPiAubWVudSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1tZW51LWljb24ge1xuICAubWVudS1pY29uIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXIoJGNvbG9yOiAkdGl0bGViYXItaWNvbi1jb2xvciwgJGNvbG9yLWhvdmVyOiAkdGl0bGViYXItaWNvbi1jb2xvci1ob3Zlcik7XG4gIH1cblxuICAubWVudS1pY29uLmRhcmsge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJpbGxkb3duXG4vLy8vXG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnR5IHRvIHVzZSBmb3IgYW5pbWF0aW5nIG1lbnVzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhciAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYXJyb3dzIHRvIGRyaWxsZG93biBpdGVtcyB3aXRoIHN1Ym1lbnVzLCBhcyB3ZWxsIGFzIHRoZSBiYWNrIGJ1dHRvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJpbGxkb3duLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gc3VibWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudSB7XG4gIC8vIEFwcGxpZWQgdG8gdGhlIE1lbnUgY29udGFpbmVyXG4gIC5pcy1kcmlsbGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi5hbmltYXRlLWhlaWdodCB7XG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41cztcbiAgICB9XG4gIH1cblxuICAvLyBBcHBsaWVkIHRvIG5lc3RlZCA8dWw+c1xuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IC0xO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246ICRkcmlsbGRvd24tdHJhbnNpdGlvbjtcblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgLTEwMCUsIDEwMCUpKTtcbiAgICB9XG5cbiAgICAmLmlzLWNsb3Npbmcge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAxMDAlLCAtMTAwJSkpO1xuICAgIH1cbiAgfVxuXG4gIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIEBpZiAkZHJpbGxkb3duLWFycm93cyB7XG4gICAgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtcmlnaHQpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcmlsbGRvd24tYXJyb3ctc2l6ZTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1sZWZ0KTtcbiAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNzVyZW07IC8vIENyZWF0ZXMgc3BhY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0XG5cbiAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93blxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGRyb3Bkb3duIHBhbmVzLiBFYWNoIHNpemUgaXMgYSBDU1MgY2xhc3MgeW91IGNhbiBhcHBseS5cbi8vLyBAdHlwZSBNYXBcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIGEgYmFzaWMgZHJvcGRvd24uXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6ICRkcm9wZG93bi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmc7XG5cbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRkcm9wZG93bi1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtc2l6ZTogJGRyb3Bkb3duLWZvbnQtc2l6ZTtcblxuICAmLmlzLW9wZW4ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24ge1xuICAuZHJvcGRvd24tcGFuZSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tY29udGFpbmVyO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUsICRzaXplIGluICRkcm9wZG93bi1zaXplcyB7XG4gICAgLmRyb3Bkb3duLXBhbmUuI3skbmFtZX0ge1xuICAgICAgd2lkdGg6ICRzaXplO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd24tbWVudVxuLy8vL1xuXG4vLy8gRW5hYmxlcyBhcnJvd3MgZm9yIGl0ZW1zIHdpdGggZHJvcGRvd24gbWVudXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJvcGRvd25zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBCb3JkZXIgd2lkdGggZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vIFVzZWQgdG8gYWRqdXN0IHRvcCBtYXJnaW4gb2YgYSBzdWItbWVudSBpZiBhIGJvcmRlciBpcyB1c2VkLlxuLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aDogbnRoKCRkcm9wZG93bm1lbnUtYm9yZGVyLCAxKTtcblxuQG1peGluIGxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgPiBhOjphZnRlciB7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMTRweDtcbiAgfVxuXG4gICYub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgfVxuXG4gICYub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICB9XG59XG5cbkBtaXhpbiBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgID4gbGkub3BlbnMtbGVmdCB7XG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpLm9wZW5zLXJpZ2h0IHtcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAxLjVyZW07XG4gICAgICB9XG5cbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xICogKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSAvIDIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICA+IGxpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLWxlZnQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtcmlnaHQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIGxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93bi1tZW51IHtcbiAgLmRyb3Bkb3duLm1lbnUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgfVxuXG4gICAgLm5vLWpzICYgdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LWhvcml6b250YWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi4jeyRzaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgICB3aWR0aDogMTAwcHg7XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGE6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJvcGRvd25tZW51LWFycm93LXNpemU7XG4gICAgfVxuXG4gICAgJi5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcblxuICAgICAgdG9wOiAxMDAlO1xuICAgICAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogMTtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAkZHJvcGRvd25tZW51LW1pbi13aWR0aDtcblxuICAgIGJvcmRlcjogJGRyb3Bkb3dubWVudS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kO1xuXG4gICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIGxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAodHlwZS1vZigkZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCkgPT0gJ251bWJlcicpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgbWFyZ2luLXRvcDogKC0kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBbVE9ET10gQ3V0IGJhY2sgc3BlY2lmaWNpdHlcbiAgICAvLyY6bm90KC5qcy1kcm9wZG93bi1ub2hvdmVyKSA+IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudDpob3ZlciA+ICYsIC8vIHdoeSBpcyB0aGlzIGxpbmUgbmVlZGVkPyBPcGVuaW5nIGlzIGhhbmRsZWQgYnkgSlMgYW5kIHRoaXMgY2F1c2VzIHNvbWUgdWdseSBmbGlja2VyaW5nIHdoZW4gdGhlIHN1YiBpcyByZS1wb3NpdGlvbmVkIGF1dG9tYXRpY2FsbHkuLi5cbiAgICAmLmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJlc3BvbnNpdmUtZW1iZWRcbi8vLy9cblxuLy8vIE1hcmdpbiBiZWxvdyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gQXNwZWN0IHJhdGlvcyB1c2VkIHRvIGRldGVybWluZSBwYWRkaW5nLWJvdHRvbSBvZiByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lcnMuXG4vLy8gQHR5cGUgTWFwXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ3xMaXN0fSAkcmF0aW8gW2RlZmF1bHRdIC0gUmF0aW8gb2YgdGhlIGNvbnRhaW5lci4gQ2FuIGJlIGEga2V5IGZyb20gdGhlIGAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3NgIG1hcCBvciBhIGxpc3QgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuQG1peGluIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KSB7XG4gIEBpZiB0eXBlLW9mKCRyYXRpbykgPT0gJ3N0cmluZycge1xuICAgICRyYXRpbzogbWFwLWdldCgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsICRyYXRpbyk7XG4gIH1cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b207XG4gIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaWZyYW1lLFxuICBvYmplY3QsXG4gIGVtYmVkLFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQge1xuICAucmVzcG9uc2l2ZS1lbWJlZCxcbiAgLmZsZXgtdmlkZW8ge1xuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KTtcblxuICAgICRyYXRpb3M6IG1hcC1yZW1vdmUoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLGRlZmF1bHQpO1xuXG4gICAgQGVhY2ggJG5hbWUsICRyYXRpbyBpbiAkcmF0aW9zIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LXZpZGVvIHtcbiAgQHdhcm4gJ1RoaXMgbWl4aW4gaXMgYmVpbmcgcmVwbGFjZWQgYnkgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkKCkuIGZvdW5kYXRpb24tZmxleC12aWRlbygpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG59XG5cbkBtaXhpbiBmbGV4LXZpZGVvKCRyYXRpbzogJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW8pIHtcbiAgQHdhcm4gJ1RoaXMgbWl4aW4gaXMgYmVpbmcgcmVwbGFjZWQgYnkgcmVzcG9uc2l2ZS1lbWJlZCgpLiBmbGV4LXZpZGVvKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZW1iZWQ7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIEZpbmRzIHRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvciBvZiB0d28gaW50ZWdlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGEgLSBGaXJzdCBudW1iZXIgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGIgLSBTZWNvbmQgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3IuXG5AZnVuY3Rpb24gZ2NkKCRhLCAkYikge1xuICAvLyBGcm9tOiBodHRwOi8vcm9zZXR0YWNvZGUub3JnL3dpa2kvR3JlYXRlc3RfY29tbW9uX2Rpdmlzb3IjSmF2YVNjcmlwdFxuICBAaWYgKCRiICE9IDApIHtcbiAgICBAcmV0dXJuIGdjZCgkYiwgJGEgJSAkYik7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gYWJzKCRhKTtcbiAgfVxufVxuXG4vLy8gSGFuZGxlcyBkZWNpbWFsIGV4cG9uZW50cyBieSB0cnlpbmcgdG8gY29udmVydCB0aGVtIGludG8gYSBmcmFjdGlvbiBhbmQgdGhlbiB1c2UgYSBudGgtcm9vdC1hbGdvcml0aG0gZm9yIHBhcnRzIG9mIHRoZSBjYWxjdWxhdGlvblxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGJhc2UgbnVtYmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZXhwb25lbnQgLSBUaGUgZXhwb25lbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgcHJvZHVjdCBvZiB0aGUgZXhwb25lbnRpYXRpb24uXG5AZnVuY3Rpb24gcG93KCRiYXNlLCAkZXhwb25lbnQsICRwcmVjOiAxMikge1xuICBAaWYgKGZsb29yKCRleHBvbmVudCkgIT0gJGV4cG9uZW50KSB7XG4gICAgJHByZWMyIDogcG93KDEwLCAkcHJlYyk7XG4gICAgJGV4cG9uZW50OiByb3VuZCgkZXhwb25lbnQgKiAkcHJlYzIpO1xuICAgICRkZW5vbWluYXRvcjogZ2NkKCRleHBvbmVudCwgJHByZWMyKTtcbiAgICBAcmV0dXJuIG50aC1yb290KHBvdygkYmFzZSwgJGV4cG9uZW50IC8gJGRlbm9taW5hdG9yKSwgJHByZWMyIC8gJGRlbm9taW5hdG9yLCAkcHJlYyk7XG4gIH1cblxuICAkdmFsdWU6ICRiYXNlO1xuICBAaWYgJGV4cG9uZW50ID4gMSB7XG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgKiAkYmFzZTtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGV4cG9uZW50IDwgMSB7XG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAtJGV4cG9uZW50IHtcbiAgICAgICR2YWx1ZTogJHZhbHVlIC8gJGJhc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbkBmdW5jdGlvbiBudGgtcm9vdCgkbnVtLCAkbjogMiwgJHByZWM6IDEyKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9OdGhfcm9vdCNKYXZhU2NyaXB0XG4gICR4OiAxO1xuXG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJHByZWMge1xuICAgICR4OiAxIC8gJG4gKiAoKCRuIC0gMSkgKiAkeCArICgkbnVtIC8gcG93KCR4LCAkbiAtIDEpKSk7XG4gIH1cblxuICBAcmV0dXJuICR4O1xufVxuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgaGVpZ2h0IGFzIGEgcGVyY2VudGFnZSBvZiB0aGUgd2lkdGggZm9yIGEgZ2l2ZW4gcmF0aW8uXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmF0aW8gLSBSYXRpbyB0byB1c2UgdG8gY2FsY3VsYXRlIHRoZSBoZWlnaHQsIGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IEEgcGVyY2VudGFnZSB2YWx1ZSBmb3IgdGhlIGhlaWdodCByZWxhdGl2ZSB0byB0aGUgd2lkdGggb2YgYSByZXNwb25zaXZlIGNvbnRhaW5lci5cbkBmdW5jdGlvbiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbykge1xuICAkdzogbnRoKCRyYXRpbywgMSk7XG4gICRoOiBudGgoJHJhdGlvLCAzKTtcbiAgQHJldHVybiAkaCAvICR3ICogMTAwJTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGxhYmVsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIG9mIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGJhc2Ugc3R5bGVzIGZvciBhIGxhYmVsLlxuQG1peGluIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkbGFiZWwtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiAkbGFiZWwtcmFkaXVzO1xuXG4gIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbGFiZWwge1xuICAubGFiZWwge1xuICAgIEBpbmNsdWRlIGxhYmVsO1xuXG4gICAgYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGxhYmVsLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGxhYmVsLWNvbG9yLCAkbGFiZWwtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZWRpYS1vYmplY3Rcbi8vLy9cblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IGFuZCByaWdodCBwYWRkaW5nIG9uIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIG9mIGltYWdlcyB3aXRoaW4gYSBtZWRpYSBvYmplY3QsIHdoZW4gdGhlIG9iamVjdCBpcyBzdGFja2VkIHZlcnRpY2FsbHkuIFNldCB0byAnYXV0bycgdG8gdXNlIHRoZSBpbWFnZSdzIG5hdHVyYWwgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1lZGlhIG9iamVjdCBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgYmxvY2spO1xuICBtYXJnaW4tYm90dG9tOiAkbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmddIC0gUGFkZGluZyBiZXR3ZWVuIHNlY3Rpb25zLlxuQG1peGluIG1lZGlhLW9iamVjdC1zZWN0aW9uKCRwYWRkaW5nOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRwYWRkaW5nO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtbGVmdH06ICRwYWRkaW5nO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gc3RhY2sgc2VjdGlvbnMgb2YgYSBtZWRpYSBvYmplY3QuIEFwcGx5IHRoaXMgdG8gdGhlIHNlY3Rpb24gZWxlbWVudHMsIG5vdCB0aGUgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1zdGFjayB7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6ICRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdCB7XG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1jb250YWluZXI7XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zdGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zZWN0aW9uO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAmLm1haW4tc2VjdGlvbiB7XG4gICAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICYubWlkZGxlIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cblxuICAgICAgJi5ib3R0b20ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcGFnaW5hdGlvblxuLy8vL1xuXG4vLy8gRm9udCBzaXplIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBvZiB0aGUgcGFnaW5hdGlvbiBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCBtYXJnaW4gdG8gc2VwYXJhdGUgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBlbGxpcHNpcyBpbiBhIHBhZ2luYXRpb24gbWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIElmIGBmYWxzZWAsIGRvbid0IGRpc3BsYXkgcGFnZSBudW1iZXIgbGlua3Mgb24gbW9iaWxlLCBvbmx5IG5leHQvcHJldmlvdXMgbGlua3Ncbi8vLyBhbmQgb3B0aW9uYWxseSBjdXJyZW50IHBhZ2UgbnVtYmVyLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXkgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgb24gbW9iaWxlIGV2ZW4gaWYgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGBmYWxzZWAuXG4vLy8gVGhpcyBwYXJhbWV0ZXIgd2lsbCBvbmx5IG92ZXJyaWRlIHRoZSB2aXNpYmlsaXR5IHNldHRpbmcgb2YgdGhlIGN1cnJlbnQgaXRlbSBmb3IgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7YCxcbi8vLyBpdCB3aWxsIG5vdCBhZmZlY3QgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgdmlzaWJpbGl0eSB3aGVuIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgdHJ1ZWAuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFycm93cyBhcmUgYWRkZWQgdG8gdGhlIG5leHQgYW5kIHByZXZpb3VzIGxpbmtzIG9mIHBhZ2luYXRpb24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcGFnaW5hdGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1jb250YWluZXIgKFxuICAkbWFyZ2luLWJvdHRvbTogJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbSxcbiAgJGZvbnQtc2l6ZTogJHBhZ2luYXRpb24tZm9udC1zaXplLFxuICAkc3BhY2luZzogJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nLFxuICAkcmFkaXVzOiAkcGFnaW5hdGlvbi1yYWRpdXMsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvcixcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAvLyBMaXN0IGl0ZW1cbiAgbGkge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcblxuICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmOmxhc3QtY2hpbGQsXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbSB7XG4gICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGN1cnJlbnQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1jdXJyZW50IChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQsXG4gICRjb2xvci1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY3VycmVudDtcbiAgY29sb3I6ICRjb2xvci1jdXJyZW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBlbGxpcHNpcyBmb3IgdXNlIGluIGEgcGFnaW5hdGlvbiBsaXN0LlxuQG1peGluIHBhZ2luYXRpb24tZWxsaXBzaXMgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICBjb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wYWdpbmF0aW9uIHtcbiAgLnBhZ2luYXRpb24ge1xuICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tY29udGFpbmVyO1xuXG4gICAgLmN1cnJlbnQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQ7XG4gICAgfVxuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tZWxsaXBzaXM7XG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWdpbmF0aW9uLWFycm93cyB7XG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYWInO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4gICAgLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJ1xcMDBiYic7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXZlYWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2lkdGggb2YgYSBtb2RhbCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heGltdW0gd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gei1pbmRleCBmb3IgbW9kYWxzLiBUaGUgb3ZlcmxheSB1c2VzIHRoaXMgdmFsdWUsIHdoaWxlIHRoZSBtb2RhbCBpdHNlbGYgdXNlcyB0aGlzIHZhbHVlIHBsdXMgb25lLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC16aW5kZXg6IDEwMDUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIG92ZXJsYXlzLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbW9kYWwgb3ZlcmxheS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgb3ZlcmxheS5cbkBtaXhpbiByZXZlYWwtb3ZlcmxheSgkYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciBhIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleCArIDE7XG4gIC8vIFdvcmthcm91bmQgYW5kcm9pZCBicm93c2VyIHotaW5kZXggYnVnXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcmV2ZWFsLXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkcmV2ZWFsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJldmVhbC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyZXZlYWwtYmFja2dyb3VuZDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgcm93cyBkb24ndCBoYXZlIGEgbWluLXdpZHRoIG9uIHRoZW1cbiAgLmNvbHVtbixcbiAgLmNvbHVtbnMge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgQGV4dGVuZCAlcmV2ZWFsLWNlbnRlcmVkO1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1kdXBsaWNhdGUtcHJvcGVydGllc1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuICAvLyBbVE9ET10gSXMgdGhpcyBuZWNlc3Nhcnk/XG4gIGJvZHkuaXMtcmV2ZWFsLW9wZW4geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gaHRtbCBnZXRzIHRoaXMgY2xhc3Mgb25seSBpbiBpT1NcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbixcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cblxuICAvLyBPdmVybGF5XG4gIC5yZXZlYWwtb3ZlcmxheSB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW92ZXJsYXk7XG4gIH1cblxuICAvLyBNb2RhbCBjb250YWluZXJcbiAgLnJldmVhbCB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2U7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKCRyZXZlYWwtd2lkdGgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgLy8gUGxhY2Vob2xkZXIgc2VsZWN0b3IgZm9yIG1lZGl1bS1hbmQtdXAgbW9kYWxzXG4gICAgLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAlcmV2ZWFsLWNlbnRlcmVkIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIGZvcmNlLWVsZW1lbnQtbmVzdGluZywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYmxlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciB0YWJsZSBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlICAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgc3RyaXBlZCB0YWJsZSByb3dzIGFuZCB0aGUgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3R5bGUgZm9yIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYmxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RhbmRhcmQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCB0YWJsZXMgYXJlIHN0cmlwZWQgYnkgZGVmYXVsdCBhbmQgYW4gLnVuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLiBJZiBgZmFsc2VgLCBhIC5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIHN0cmlwZWQgcm93cy5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBzdHJpcGUgb24gcm93cyBvZiB0aGUgdGFibGVzLCBleGNsdWRpbmcgdGhlIGhlYWRlciBhbmQgZm9vdGVyLiBJZiBldmVuLCB0aGUgZXZlbiByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIG9kZCwgdGhlIG9kZCByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIGVtcHR5LCBvciBhbnkgb3RoZXIgdmFsdWUsIHRoZSB0YWJsZSByb3dzIHdpbGwgaGF2ZSBubyBzdHJpcGluZy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kdGFibGUtc3RyaXBlOiBldmVuICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVhZGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGZvb3RlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgaGVhZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb290ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBoZWFkZXIgd2hlbiB1c2luZyBzdGFja2VkIHRhYmxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG5AbWl4aW4gLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlOiAkdGFibGUtc3RyaXBlKSB7XG4gIHRyIHtcbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIGV2ZW4sIGRhcmtlbiB0aGUgZXZlbiByb3dzLlxuICAgIEBpZiAkc3RyaXBlID09IGV2ZW4ge1xuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gb2RkLCBkYXJrZW4gdGhlIG9kZCByb3dzLlxuICAgIEBlbHNlIGlmICRzdHJpcGUgPT0gb2RkIHtcbiAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLXVuc3RyaXBlKCkge1xuICB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsICRpcy1zdHJpcGVkOiAkdGFibGUtaXMtc3RyaXBlZCkge1xuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDYXB0aW9uXG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZFxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGZvb3RcbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1mb290LWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkIGFuZCBmb290XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgLy8gUm93cyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIENlbGxzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtYWxpZ246ICN7JGdsb2JhbC1sZWZ0fTtcbiAgICB9XG4gIH1cblxuICAvLyBUYWJsZSByb3dzXG4gIHRib2R5IHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIHN0cmlwZWRcbiAgQGlmICRpcy1zdHJpcGVkID09IHRydWUge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgfVxuXG4gICAgJi51bnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBub3Qgc3RyaXBlZFxuICBAZWxzZSBpZiAkaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgfVxuXG4gICAgJi5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0YWJsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RyaXBlIFskdGFibGUtc3RyaXBlXSAtIFVzZXMga2V5d29yZHMgZXZlbiwgb2RkLCBvciBub25lIHRvIGRhcmtlbiByb3dzIG9mIHRoZSB0YWJsZS4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgZXZlbi5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0YWJsZS1pcy1zdHJpcGVkID09IHRydWUge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2VpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWNrZWQgdGFibGUuIFVzZWZ1bCBmb3Igc21hbGwtc2NyZWVuIGxheW91dHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaGVhZGVyIFskc2hvdy1oZWFkZXItZm9yLXN0YWNrZWRdIC0gU2hvdyB0aGUgZmlyc3QgdGggb2YgaGVhZGVyIHdoZW4gc3RhY2tlZC5cbkBtaXhpbiB0YWJsZS1zdGFjaygkaGVhZGVyOiAkc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQpIHtcbiAgQGlmICRoZWFkZXIge1xuICAgIHRoZWFkIHtcbiAgICAgIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjaztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5zY3JvbGwge1xuICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgfVxuXG4gIHRhYmxlLmhvdmVyIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1ob3ZlcjtcbiAgfVxuXG4gIC50YWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICB0YWJsZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdtYXRoJztcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gY2hlY2sgdGhlIGx1bWluYW5jZSBvZi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG5AZnVuY3Rpb24gY29sb3ItbHVtaW5hbmNlKCRjb2xvcikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jcmVsYXRpdmVsdW1pbmFuY2VkZWZcbiAgJHJnYmE6IHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvcik7XG4gICRyZ2JhMjogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAzIHtcbiAgICAkcmdiOiBudGgoJHJnYmEsICRpKTtcbiAgICAkcmdiOiAkcmdiIC8gMjU1O1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsICRyZ2IgLyAxMi45MiwgcG93KCgkcmdiICsgMC4wNTUpIC8gMS4wNTUsIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86ICRsdW1pbmFuY2UxIC8gJGx1bWluYW5jZTI7XG5cbiAgQGlmICRsdW1pbmFuY2UyID4gJGx1bWluYW5jZTEge1xuICAgICRyYXRpbzogMSAvICRyYXRpbztcbiAgfVxuXG4gICRyYXRpbzogcm91bmQoJHJhdGlvICogMTApIC8gMTA7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6IDApIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiBcIkNvbnRyYXN0IHJhdGlvIG9mICN7JGJlc3R9IG9uICN7JGJhc2V9IGlzIHByZXR0eSBiYWQsIGp1c3QgI3skY29udHJhc3R9XCI7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYG1hcCBpbnRvIHZhcmlhYmxlcywgc3VjaCBhcyBgJHByaW1hcnktY29sb3JgIGFuZCBgJHNlY29uZGFyeS1jb2xvcmAuIENhbGwgdGhpcyBtaXhpbiBiZWxvdyB0aGUgR2xvYmFsIHNlY3Rpb24gb2YgeW91ciBzZXR0aW5ncyBmaWxlIHRvIHByb3Blcmx5IG1pZ3JhdGUgeW91ciBjb2RlYmFzZS5cbkBtaXhpbiBhZGQtZm91bmRhdGlvbi1jb2xvcnMoKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gICAgJHByaW1hcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYnNcbi8vLy9cblxuLy8vIERlZmF1bHQgbWFyZ2luIG9mIHRoZSB0YWIgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBmb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGFiIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGEgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIG51bWJlciBvZiBgZXhwYW5kLW5gIGNsYXNzZXMgdG8gaW5jbHVkZSBpbiB0aGUgQ1NTLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1leHBhbmQtbWF4OiA2ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lciAoXG4gICRtYXJnaW46ICR0YWItbWFyZ2luLFxuICAkYmFja2dyb3VuZDogJHRhYi1iYWNrZ3JvdW5kLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJG1hcmdpbjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRhaW5lciB0byBoYXZlIHZlcnRpY2FsIHRhYnMuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGFpbmVyKClgLlxuQG1peGluIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsIHtcbiAgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgbGlua3Mgd2l0aGluIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgYDxsaT5gIGVsZW1lbnRzIGluc2lkZSBhIHRhYiBjb250YWluZXIuXG5AbWl4aW4gdGFicy10aXRsZSAoXG4gICRwYWRkaW5nOiAkdGFiLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJHRhYi1pdGVtLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkdGFiLWNvbG9yLFxuICAkY29sb3ItYWN0aXZlOiAkdGFiLWFjdGl2ZS1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkYmFja2dyb3VuZC1hY3RpdmU6ICR0YWItYmFja2dyb3VuZC1hY3RpdmVcbikge1xuICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGNvbG9yLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgd3JhcHBlciB0aGF0IHN1cnJvdW5kcyBhIHRhYiBncm91cCdzIGNvbnRlbnQgcGFuZXMuXG5AbWl4aW4gdGFicy1jb250ZW50IChcbiAgJGJhY2tncm91bmQ6ICR0YWItY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICR0YWItY29udGVudC1jb2xvcixcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGVudCBjb250YWluZXIgdG8gaGF2ZSBhIHZlcnRpY2FsIHN0eWxlLCBieSBzaGlmdGluZyB0aGUgYm9yZGVyIGFyb3VuZC4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250ZW50KClgLlxuQG1peGluIHRhYnMtY29udGVudC12ZXJ0aWNhbCAoXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGluZGl2aWR1YWwgdGFiIGNvbnRlbnQgcGFuZWwgd2l0aGluIHRoZSB0YWIgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gdGFicy1wYW5lbCAoXG4gICRwYWRkaW5nOiAkdGFiLWNvbnRlbnQtcGFkZGluZ1xuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICZbYXJpYS1oaWRkZW49XCJmYWxzZVwiXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFicyB7XG4gIC50YWJzIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsXG4gIC50YWJzLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFNpbXBsZVxuICAudGFicy5zaW1wbGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmltYXJ5IGNvbG9yXG4gIC50YWJzLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJHByaW1hcnktY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCRwcmltYXJ5LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFicy10aXRsZSB7XG4gICAgQGluY2x1ZGUgdGFicy10aXRsZTtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudDtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudC12ZXJ0aWNhbDtcbiAgfVxuXG4gIC50YWJzLXBhbmVsIHtcbiAgICBAaW5jbHVkZSB0YWJzLXBhbmVsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gKDEgLyAxNik7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IHdpdGhpbiBhIGNlcnRhaW4gYnJlYWtwb2ludC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yLW9ubHkoJHNpemUpIHtcbiAgJGxvd2VyLWJvdW5kLXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICR1cHBlci1ib3VuZC1zaXplOiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG5cbiAgLy8gbW9yZSBvZnRlbiB0aGFuIG5vdCB0aGlzIHdpbGwgYmUgY29ycmVjdCwganVzdCBvbmUgdGltZSByb3VuZCB0aGUgbG9vcCBpdCB3b24ndCBzbyBzZXQgaW4gc2NvcGUgaGVyZVxuICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSkgLSAoMSAvIDE2KTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsb2F0XG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXMge1xuICAuZmxvYXQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAuY2xlYXJmaXgge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG59XG4iLCIvLy8gQXBwbGllcyBiYXNpYyB0cmFuc2l0aW9uIHNldHRpbmdzIHRvIGFuIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gdHJhbnNpdGlvbi1iYXNpY3MoXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgQGluY2x1ZGUgLW1vdGlvbi11aS1kZWZhdWx0cztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZztcbiAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5O1xufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIHNldHVwIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gc2V0dXAgZm9yIHRyYW5zaXRpb24uXG5AbWl4aW4gdHJhbnNpdGlvbi1zdGFydCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBhY3RpdmUgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBhY3RpdmF0ZSBhIHRyYW5zaXRpb24gb24uXG5AbWl4aW4gdHJhbnNpdGlvbi1lbmQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpciksIHRydWUpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFnZ2VyIGFuaW1hdGlvbiwgd2hpY2ggY2FuIGJlIHVzZWQgd2l0aCBBbmd1bGFyJ3MgYG5nLXJlcGVhdGAuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5LWFtb3VudCAtIEFtb3VudCBvZiB0aW1lIGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIHRvIGFkZCBiZXR3ZWVuIGVhY2ggaXRlbSdzIGFuaW1hdGlvbi5cbkBtaXhpbiBzdGFnZ2VyKCRkZWxheS1hbW91bnQpIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5LWFtb3VudDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMDsgLy8gUHJldmVudCBhY2NpZGVudGFsIENTUyBpbmhlcml0YW5jZVxufVxuIiwiLy8gc2Nzcy1saW50OmRpc2FibGUgSW1wb3J0YW50UnVsZSwgU3BhY2VBZnRlckNvbW1hLCBTaW5nbGVMaW5lUGVyUHJvcGVydHlcblxuQG1peGluIC1tb3Rpb24tdWktZGVmYXVsdHMge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IG1hcC1nZXQoJG1vdGlvbi11aS1lYXNpbmdzLCBkZWZhdWx0KTtcbn1cblxuLy8gVHJhbnNpdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLXRyYW5zaXRpb25zIHtcbiAgLy8gU2xpZGVcbiAgLnNsaWRlLWluLWRvd24gICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBkb3duKTsgfVxuICAuc2xpZGUtaW4tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIHJpZ2h0KTsgfVxuICAuc2xpZGUtaW4tdXAgICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIHVwKTsgfVxuICAuc2xpZGUtaW4tcmlnaHQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGxlZnQpOyB9XG4gIC5zbGlkZS1vdXQtZG93biAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgZG93bik7IH1cbiAgLnNsaWRlLW91dC1yaWdodCAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCByaWdodCk7IH1cbiAgLnNsaWRlLW91dC11cCAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCB1cCk7IH1cbiAgLnNsaWRlLW91dC1sZWZ0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCBsZWZ0KTsgfVxuXG4gIC8vIEZhZGVcbiAgLmZhZGUtaW4gIHsgQGluY2x1ZGUgbXVpLWZhZGUoaW4sICAwLCAxKTsgfVxuICAuZmFkZS1vdXQgeyBAaW5jbHVkZSBtdWktZmFkZShvdXQsIDEsIDApOyB9XG5cbiAgLy8gSGluZ2VcbiAgLmhpbmdlLWluLWZyb20tdG9wICAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3ApOyB9XG4gIC5oaW5nZS1pbi1mcm9tLXJpZ2h0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQpOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWJvdHRvbSAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgYm90dG9tKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1sZWZ0ICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGxlZnQpOyB9XG4gIC5oaW5nZS1pbi1mcm9tLW1pZGRsZS14ICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1pbi1mcm9tLW1pZGRsZS15ICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0LCBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS10b3AgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tcmlnaHQgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0KTsgfVxuICAuaGluZ2Utb3V0LWZyb20tYm90dG9tICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGJvdHRvbSk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBsZWZ0KTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbWlkZGxlLXggeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCwgY2VudGVyKTsgfVxuXG4gIC8vIFNjYWxlXG4gIC5zY2FsZS1pbi11cCAgICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMC41LCAxKTsgfVxuICAuc2NhbGUtaW4tZG93biAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDEuNSwgMSk7IH1cbiAgLnNjYWxlLW91dC11cCAgIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAxLjUpOyB9XG4gIC5zY2FsZS1vdXQtZG93biB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMC41KTsgfVxuXG4gIC8vIFNwaW5cbiAgLnNwaW4taW4gICAgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjdyk7IH1cbiAgLnNwaW4tb3V0ICAgIHsgQGluY2x1ZGUgbXVpLXNwaW4ob3V0LCBjdyk7IH1cbiAgLnNwaW4taW4tY2N3ICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY2N3KTsgfVxuICAuc3Bpbi1vdXQtY2N3IHsgQGluY2x1ZGUgbXVpLXNwaW4ob3V0LCBjY3cpOyB9XG5cbiAgLy8gVHJhbnNpdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZGVsYXlzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0tZGVsYXkgeyB0cmFuc2l0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBBbmltYXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS1hbmltYXRpb25zIHtcbiAgLnNoYWtlICAgIHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzaGFrZSk7IH1cbiAgLnNwaW4tY3cgIHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKTsgfVxuICAuc3Bpbi1jY3cgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4oY2N3KSk7IH1cbiAgLndpZ2dsZSAgIHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbih3aWdnbGUpOyB9XG5cbiAgLnNoYWtlLFxuICAuc3Bpbi1jdyxcbiAgLnNwaW4tY2N3LFxuICAud2lnZ2xlIHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG1vdGlvbi11aS1zcGVlZHMsIGRlZmF1bHQpO1xuICB9XG5cbiAgLy8gQW5pbWF0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuICAuaW5maW5pdGUgeyBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZGVsYXlzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0tZGVsYXkgeyBhbmltYXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG4iLCIvLy8gRm9ybWF0IGZvciBDU1MgY2xhc3NlcyBjcmVhdGVkIHdpdGggTW90aW9uIFVJLlxuLy8vIEB0eXBlIE1hcFxuLy8vIEBwcm9wIHtCb29sZWFufSBhcHBlbmQgW3RydWVdIC0gRGVmaW5lcyBpZiBzZWxlY3RvcnMgYXJlIGNoYWluZWQgdG8gdGhlIHNlbGVjdG9yIChgLmNsYXNzLmVudGVyYCksIG9yIGFwcGVuZGVkIGFzIGEgbmV3IGNsYXNzIChgLmNsYXNzLWVudGVyYCkuXG4vLy8gQHByb3Age1N0cmluZ30gcHJlZml4IFsnbXVpLSddIC0gUHJlZml4IHRvIGFkZCBiZWZvcmUgdGhlIHN0YXRlIG9mIGEgY2xhc3MuIEVudGVyIGFuIGVtcHR5IHN0cmluZyB0byB1c2Ugbm8gcHJlZml4LlxuLy8vIEBwcm9wIHtTdHJpbmd9IHByZWZpeCBbJy1hY3RpdmUnXSAtIFN1ZmZpeCB0byBhZGQgdG8gdGhlIGFjdGl2ZSBzdGF0ZSBjbGFzcy5cbiRtb3Rpb24tdWktY2xhc3NlczogKFxuICBjaGFpbjogdHJ1ZSxcbiAgcHJlZml4OiAnbXVpLScsXG4gIGFjdGl2ZTogJy1hY3RpdmUnLFxuKSAhZGVmYXVsdDtcblxuLy8vIFN0YXRlIG5hbWVzIHRvIHJlZmVyZW5jZSB3aGVuIHdyaXRpbmcgbW90aW9uIGNsYXNzZXMuIFRvIHVzZSBtdWx0aXBsZSBjbGFzcyBuYW1lcyBmb3Igb25lIHN0YXRlLCBlbnRlciBhIGxpc3Qgb2Ygc3RyaW5ncyBpbnN0ZWFkIG9mIG9uZSBzdHJpbmcuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLXN0YXRlczogKFxuICBpbjogJ2VudGVyJyxcbiAgb3V0OiAnbGVhdmUnLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3BlZWQgdGhhdCB0cmFuc2l0aW9ucyBhbmQgYW5pbWF0aW9ucyBwbGF5IGF0LCBhbG9uZyB3aXRoIHZhbHVlcyBmb3IgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGhlIHNwZWVkLlxuLy8vIEB0eXBlIE1hcFxuJG1vdGlvbi11aS1zcGVlZHM6IChcbiAgZGVmYXVsdDogNTAwbXMsXG4gIHNsb3c6IDc1MG1zLFxuICBmYXN0OiAyNTBtcyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGRlbGF5IHRvIGFkZCBiZWZvcmUgbW90aW9uLCBhbG9uZyB3aXRoIHZhbHVlcyBmb3IgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGhlIGRlbGF5LlxuLy8vIEB0eXBlIE1hcFxuJG1vdGlvbi11aS1kZWxheXM6IChcbiAgZGVmYXVsdDogMCxcbiAgc2hvcnQ6IDMwMG1zLFxuICBsb25nOiA3MDBtcyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGVhc2luZyBmb3IgdHJhbnNpdGlvbnMgYW5kIGFuaW1hdGlvbnMsIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgZWFzaW5nLlxuLy8vIEB0eXBlIE1hcFxuJG1vdGlvbi11aS1lYXNpbmdzOiAoXG4gIGRlZmF1bHQ6IGxpbmVhcixcbiAgbGluZWFyOiBsaW5lYXIsXG4gIGVhc2U6IGVhc2UsXG4gIGVhc2UtaW46IGVhc2UtaW4sXG4gIGVhc2Utb3V0OiBlYXNlLW91dCxcbiAgZWFzZS1pbi1vdXQ6IGVhc2UtaW4tb3V0LFxuICBib3VuY2UtaW46IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSxcbiAgYm91bmNlLW91dDogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSxcbiAgYm91bmNlLWluLW91dDogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpLFxuKSAhZGVmYXVsdDtcblxuLy8vIE1pc2NlbGxhbmVvdXMgc2V0dGluZ3MgcmVsYXRlZCB0byBNb3Rpb24gVUkuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFtmYWxzZV0gLSBEZWZpbmVzIGlmIHNsaWRlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgaGluZ2UgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBzY2FsZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNwaW4gbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbiRtb3Rpb24tdWktc2V0dGluZ3M6IChcbiAgc2xpZGUtYW5kLWZhZGU6IGZhbHNlLFxuICBoaW5nZS1hbmQtZmFkZTogdHJ1ZSxcbiAgc2NhbGUtYW5kLWZhZGU6IHRydWUsXG4gIHNwaW4tYW5kLWZhZGU6IHRydWUsXG4gIGFjdGl2YXRlLXF1ZXVlLWNsYXNzOiAnaXMtYW5pbWF0aW5nJyxcbikgIWRlZmF1bHQ7XG4iLCIvLyBJbnRlcm5hbCBjb3VudGVyIGZvciBjcmVhdGluZyB1bmlxdWUga2V5ZnJhbWUgbmFtZXNcbiQtbXVpLWN1c3RvbTogMDtcblxuLy8vIENyZWF0ZXMgYSBrZXlmcmFtZSBmcm9tIG9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMuIFVzZSB0aGlzIGZ1bmN0aW9uIGluc3RlYWQgb2YgYG11aS1hbmltYXRpb25gIGlmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIGtleWZyYW1lIGFuaW1hdGlvbiAqd2l0aG91dCogYXV0b21hdGljYWxseSBhc3NpZ25pbmcgaXQgdG8gdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUga2V5ZnJhbWUuXG4vLy8gQHBhcmFtIHtGdW5jdGlvbn0gJGVmZmVjdHMuLi4gLSBPbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIHRvIGJ1aWxkIHRoZSBrZXlmcmFtZSB3aXRoLlxuQG1peGluIG11aS1rZXlmcmFtZXMoJG5hbWUsICRlZmZlY3RzLi4uKSB7XG4gICRvYmo6IC1tdWktcHJvY2Vzcy1hcmdzKCRlZmZlY3RzLi4uKTtcbiAgJG9iajogbWFwLXJlbW92ZSgkb2JqLCBuYW1lKTtcblxuICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAvLyBOb3cgaXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIEBlYWNoICRwY3QsICRwcm9wcyBpbiAkb2JqIHtcbiAgICAgICN7LW11aS1rZXlmcmFtZS1wY3QoJHBjdCl9IHtcbiAgICAgICAgLy8gTGFzdGx5LCBpdGVyYXRlIHRocm91Z2ggZWFjaCBDU1MgcHJvcGVydHkgd2l0aGluIGEgcGVyY2VudGFnZSBhbmQgcHJpbnQgaXQgb3V0XG4gICAgICAgIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJHByb3BzIHtcbiAgICAgICAgICAjeyRwcm9wfTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc3RyaW5nIGZvciBhIENTUyBrZXlmcmFtZSwgYnkgY29udmVydGluZyBhIGxpc3Qgb2YgbnVtYmVycyB0byBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRpbnB1dCAtIExpc3Qgb2YgbnVtYmVycyB0byB1c2UuXG4vLy8gQHJldHVybiB7U3RyaW5nfSBBIHNldCBvZiBjb21tYS1zZXBhcmF0ZWQgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1wY3QoJGlucHV0KSB7XG4gICRvdXRwdXQ6ICgpO1xuXG4gIEBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ251bWJlcicge1xuICAgICRvdXRwdXQ6ICgkaW5wdXQgKiAxJSk7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkaW5wdXQpID09ICdsaXN0JyB7XG4gICAgQGVhY2ggJGkgaW4gJGlucHV0IHtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAoJGkgKiAxJSksIGNvbW1hKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRvdXRwdXQ7XG59XG5cbi8vLyBQcmludHMgdGhlIENTUyBwcm9wZXJ0aWVzIGZyb20gYSBzcGVjaWZpYyBrZXkgaW4gYSBrZXlmcmFtZXMgbWFwLiBVc2VkIHRvIGJvcnJvdyBDU1MgZnJvbSBrZXlmcmFtZSBmdW5jdGlvbnMgZm9yIHVzZSBpbiB0cmFuc2l0aW9ucy5cbi8vLyBAcGFyYW0ge01hcH0gJGtmIC0gS2V5ZnJhbWUgbWFwIHRvIGV4dHJhY3QgZnJvbS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGtleSAtIEtleSBpbiB0aGUgbWFwIHRvIHByaW50IHRoZSBDU1Mgb2YuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLW11aS1rZXlmcmFtZS1nZXQoJGtmLCAka2V5KSB7XG4gICRtYXA6IG1hcC1nZXQoJGtmLCAka2V5KTtcblxuICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRtYXAgb3IgKCkge1xuICAgIC8vIFNvbWUga2V5ZnJhbWUgbWFwcyBzdG9yZSB0cmFuc2Zvcm1zIGFzIHF1b3RlZCBzdHJpbmdzXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkdmFsdWU6IHVucXVvdGUoJHZhbHVlKTtcbiAgICB9XG4gICAgI3skcHJvcH06ICR2YWx1ZTtcbiAgfVxufVxuXG4vLy8gUmVmb3JtYXRzIGEgbWFwIGNvbnRhaW5pbmcga2V5cyB3aXRoIGEgbGlzdCBvZiB2YWx1ZXMsIHNvIHRoYXQgZWFjaCBrZXkgaXMgYSBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gc3BsaXQgdXAuXG4vLy8gQHJldHVybiB7TWFwfSBBIHJlZm9ybWF0dGVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIFNwbGl0IGtleXMgd2l0aCBtdWx0aXBsZSB2YWx1ZXMgaW50byBpbmRpdmlkdWFsIGtleXNcbiAgQGVhY2ggJGtleSwgJGl0ZW0gaW4gJG1hcCB7XG4gICAgJGtleS10eXBlOiB0eXBlLW9mKCRrZXkpO1xuXG4gICAgQGlmICRrZXktdHlwZSA9PSAnbnVtYmVyJyB7XG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJGl0ZW0pKTtcbiAgICB9IEBlbHNlIGlmICRrZXktdHlwZSA9PSAnbGlzdCcge1xuICAgICAgQGVhY2ggJGsgaW4gJGtleSB7XG4gICAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgkazogJGl0ZW0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgYSBzZXJpZXMgb2Yga2V5ZnJhbWUgb2JqZWN0cyBpbnRvIG9uZS5cbi8vLyBAcGFyYW0ge01hcH0gJG1hcHMuLi4gLSBBIHNlcmllcyBvZiBtYXBzIHRvIG1lcmdlLCBhcyBpbmRpdmlkdWFsIHBhcmFtZXRlcnMuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIGtleWZyYW1lIG9iamVjdC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLWNvbWJpbmUoJG1hcHMuLi4pIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIG1hcCBwYXNzZWQgaW5cbiAgQGVhY2ggJG1hcCBpbiAkbWFwcyB7XG4gICAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ3N0cmluZycge1xuICAgICAgJG1hcDogY2FsbCgkbWFwKTtcbiAgICB9XG5cbiAgICAkbWFwOiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApO1xuXG4gICAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgaW4gdGhlIG1hcFxuICAgIC8vICRrZXkgaXMgdGhlIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICAvLyAkdmFsdWUgaXMgYSBtYXAgb2YgQ1NTIHByb3BlcnRpZXNcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgICAkbmV3LXZhbHVlOiAoKTtcblxuICAgICAgQGlmIG1hcC1oYXMta2V5KCRuZXctbWFwLCAka2V5KSB7XG4gICAgICAgIC8vIElmIHRoZSBtYXAgYWxyZWFkeSBoYXMgdGhlIGtleWZyYW1lICUsIGFwcGVuZCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6IC1tdWktbWVyZ2UtcHJvcGVydGllcyhtYXAtZ2V0KCRuZXctbWFwLCAka2V5KSwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBPdGhlcndpc2UsIGNyZWF0ZSBhIG5ldyBtYXAgd2l0aCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6ICR2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgLy8gRmluYWxseSwgbWVyZ2UgdGhlIG1vZGlmaWVkIGtleWZyYW1lIHZhbHVlIGludG8gdGhlIG91dHB1dCBtYXBcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkbmV3LXZhbHVlKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTWFrZSBhIG5hbWUgZm9yIHRoZSBrZXlmcmFtZXNcbiAgJC1tdWktY3VzdG9tOiAkLW11aS1jdXN0b20gKyAxICFnbG9iYWw7XG4gICRtYXAtbmFtZTogKG5hbWU6ICdjdXN0b20tI3skLW11aS1jdXN0b219Jyk7XG4gICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICRtYXAtbmFtZSk7XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIHR3byBtYXBzIG9mIENTUyBwcm9wZXJ0aWVzIGludG8gb25lIG1hcC4gSWYgYm90aCBtYXBzIGhhdmUgYSB0cmFuc2Zvcm0gcHJvcGVydHksIHRoZSB2YWx1ZXMgZnJvbSBlYWNoIHdpbGwgYmUgY29tYmluZWQgaW50byBvbmUgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtNYXB9ICRvbmUgLSBGaXJzdCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHBhcmFtIHtNYXB9ICR0d28gLSBTZWNvbmQgbWFwIHRvIG1lcmdlLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1tZXJnZS1wcm9wZXJ0aWVzKCRvbmUsICR0d28pIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRvbmUsIHRyYW5zZm9ybSkgYW5kIG1hcC1oYXMta2V5KCR0d28sIHRyYW5zZm9ybSkge1xuICAgICR0cmFuc2Zvcm06IGpvaW4obWFwLWdldCgkb25lLCB0cmFuc2Zvcm0pLCBtYXAtZ2V0KCR0d28sIHRyYW5zZm9ybSkpO1xuICAgICRvbmU6IG1hcC1tZXJnZSgkb25lLCAodHJhbnNmb3JtOiAkdHJhbnNmb3JtKSk7XG4gICAgJHR3bzogbWFwLXJlbW92ZSgkdHdvLCB0cmFuc2Zvcm0pO1xuICB9XG5cbiAgQHJldHVybiBtYXAtbWVyZ2UoJG9uZSwgJHR3byk7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNsaWRpbmcgdHJhbnNpdGlvbiBieSB0cmFuc2xhdGluZyB0aGUgZWxlbWVudCBob3Jpem9udGFsbHkgb3IgdmVydGljYWxseS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2xlZnRdIC0gRGlyZWN0aW9uIHRvIHNsaWRlIHRvLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRhbW91bnQgWzEwMCVdIC0gTGVuZ3RoIG9mIHRoZSBzbGlkZSBhcyBhIHBlcmNlbnRhZ2UgdmFsdWUuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc2xpZGUgKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBsZWZ0LFxuICAkYW1vdW50OiAxMDAlLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzbGlkZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHNsaWRlOiBzbGlkZSgkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIC8vIENTUyBPdXRwdXRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cblxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBmYWRlIHRyYW5zaXRpb24gYnkgYWRqdXN0aW5nIHRoZSBvcGFjaXR5IG9mIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMF0gLSBPcGFjaXR5IHRvIHN0YXJ0IGF0LiBNdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gMCBhbmQgMS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvIFsxXSAtIE9wYWNpdHkgdG8gZW5kIG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWZhZGUoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiAwLFxuICAkdG86IDEsXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGZhZGU6IGZhZGUoJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDApO1xuXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAxMDApO1xuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIGVmZmVjdCBieSByb3RhdGluZyB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmcm9tIFtsZWZ0XSAtIEVkZ2Ugb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIGZyb20uIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRheGlzIFtlZGdlXSAtIEF4aXMgb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIG9uLiBDYW4gYmUgYGVkZ2VgIG9yIGBjZW50ZXJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGVyc3BlY3RpdmUgWzIwMDBweF0gLSBQZXJjZWl2ZWQgZGlzdGFuY2UgYmV0d2VlbiB0aGUgdmlld2VyIGFuZCB0aGUgZWxlbWVudC4gQSBoaWdoZXIgbnVtYmVyIHdpbGwgbWFrZSB0aGUgcm90YXRpb24gZWZmZWN0IG1vcmUgcHJvbm91bmNlZC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0dXJuLW9yaWdpbiBbZnJvbS1iYWNrXSAtIFNpZGUgb2YgdGhlIGVsZW1lbnQgdG8gc3RhcnQgdGhlIHJvdGF0aW9uIGZyb20uIENhbiBiZSBgZnJvbS1iYWNrYCBvciBgZnJvbS1mcm9udGAuXG5AZnVuY3Rpb24gaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IGZyb20tYmFja1xuKSB7XG4gIC8vIFJvdGF0aW9uIGRpcmVjdGlvbnMgd2hlbiBoaW5naW5nIGZyb20gYmFjayB2cy4gZnJvbnRcbiAgJHJvdGF0aW9uLWFtb3VudDogOTBkZWc7XG4gICRyb3RhdGlvbnMtYmFjazogKFxuICAgIHRvcDogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgYm90dG9tOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCksXG4gICk7XG4gICRyb3RhdGlvbnMtZnJvbTogKFxuICAgIHRvcDogcm90YXRlWCgkcm90YXRpb24tYW1vdW50KSxcbiAgICByaWdodDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBsZWZ0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICk7XG5cbiAgLy8gUm90YXRpb24gb3JpZ2luXG4gICRyb3RhdGlvbjogJyc7XG4gIEBpZiAkdHVybi1vcmlnaW4gPT0gZnJvbS1mcm9udCB7XG4gICAgJHJvdGF0aW9uOiBtYXAtZ2V0KCRyb3RhdGlvbnMtZnJvbSwgJGZyb20pO1xuICB9IEBlbHNlIGlmICR0dXJuLW9yaWdpbiA9PSBmcm9tLWJhY2sge1xuICAgICRyb3RhdGlvbjogbWFwLWdldCgkcm90YXRpb25zLWJhY2ssICRmcm9tKTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gJyR0dXJuLW9yaWdpbiBtdXN0IGJlIGVpdGhlciBcImZyb20tYmFja1wiIG9yIFwiZnJvbS1mcm9udFwiJztcbiAgfVxuXG4gIC8vIFN0YXJ0IGFuZCBlbmQgc3RhdGVcbiAgJHN0YXJ0OiAnJztcbiAgJGVuZDogJyc7XG4gIEBpZiAkc3RhdGUgPT0gaW4ge1xuICAgICRzdGFydDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkcm90YXRpb247XG4gICAgJGVuZDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSByb3RhdGUoMGRlZyk7XG4gIH0gQGVsc2Uge1xuICAgICRzdGFydDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSByb3RhdGUoMGRlZyk7XG4gICAgJGVuZDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkcm90YXRpb247XG4gIH1cblxuICAvLyBUdXJuIGF4aXNcbiAgJG9yaWdpbjogJyc7XG4gIEBpZiAkYXhpcyA9PSBlZGdlIHtcbiAgICAkb3JpZ2luOiAkZnJvbTtcbiAgfSBAZWxzZSB7XG4gICAgJG9yaWdpbjogY2VudGVyO1xuICB9XG5cbiAgJGtleWZyYW1lczogKFxuICAgIG5hbWU6ICdoaW5nZS0jeyRzdGF0ZX0tI3skZnJvbX0tI3skYXhpc30tI3skdHVybi1vcmlnaW59JyxcbiAgICAwOiAodHJhbnNmb3JtOiAkc3RhcnQsIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW4pLFxuICAgIDEwMDogKHRyYW5zZm9ybTogJGVuZCksXG4gICk7XG5cbiAgQHJldHVybiAka2V5ZnJhbWVzO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtmcm9tLWJhY2tdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBmcm9tLWJhY2ssXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIGhpbmdlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkaGluZ2U6IGhpbmdlKCRzdGF0ZSwgJGZyb20sICRheGlzLCAkcGVyc3BlY3RpdmUsICR0dXJuLW9yaWdpbik7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzY2FsaW5nIHRyYW5zaXRpb24uIEEgc2NhbGUgb2YgYDFgIG1lYW5zIHRoZSBlbGVtZW50IGlzIHRoZSBzYW1lIHNpemUuIExhcmdlciBudW1iZXJzIG1ha2UgdGhlIGVsZW1lbnQgYmlnZ2VyLCB3aGlsZSBudW1iZXJzIGxlc3MgdGhhbiAxIG1ha2UgdGhlIGVsZW1lbnQgc21hbGxlci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzEuNV0gLSBTaXplIHRvIHN0YXJ0IGF0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMV0gLSBTaXplIHRvIGVuZCBhdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXpvb20oXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiAxLjUsXG4gICR0bzogMSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2NhbGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzY2FsZTogem9vbSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNwaW5uaW5nIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuIFRoZSBgdHVybmAgdW5pdCBpcyB1c2VkIHRvIHNwZWNpZnkgaG93IGZhciB0byByb3RhdGUuIGAxdHVybmAgaXMgZXF1YWwgdG8gYSAzNjAtZGVncmVlIHNwaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZGlyZWN0aW9uIFtjd10gLSBEaXJlY3Rpb24gdG8gc3Bpbi4gU2hvdWxkIGJlIGBjd2AgKGNsb2Nrd2lzZSkgb3IgYGNjd2AgKGNvdW50ZXJjbG9ja3dpc2UpLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYW1vdW50IFswLjc1dHVybl0gLSBBbW91bnQgdG8gZWxlbWVudCB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zcGluKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBjdyxcbiAgJGFtb3VudDogMC43NXR1cm4sXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNwaW4tYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzcGluOiBzcGluKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIGFuZCBhc3NpZ25zIGl0IHRvIHRoZSBlbGVtZW50IGJ5IGFkZGluZyB0aGUgYGFuaW1hdGlvbi1uYW1lYCBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge0Z1bmN0aW9ufSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWFuaW1hdGlvbigkYXJncy4uLikge1xuICAkbmFtZTogbWFwLWdldCgtbXVpLXByb2Nlc3MtYXJncygkYXJncy4uLiksIG5hbWUpO1xuICBAaW5jbHVkZSBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkYXJncy4uLik7XG4gIGFuaW1hdGlvbi1uYW1lOiB1bnF1b3RlKCRuYW1lKTtcbn1cbiIsImEgeyBvdXRsaW5lOiBub25lOyB9XG5zdHJvbmcgeyBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkOyB9XG5pZnJhbWUgeyBib3JkZXI6IDA7IH1cbiIsIi5jYWxsb3V0IHtcbiAgbWFyZ2luOiByZW0tY2FsYyg1IDApO1xuICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygzMik7XG4gIGJvcmRlcjogbm9uZTtcbn1cbiIsIi5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1hY3RpdmUgeyB6LWluZGV4OiAyICFpbXBvcnRhbnQ7IH1cbiIsIi5kYXRlcGlja2VyIHtcbiAgdGFibGUge1xuICAgIHRoZWFkIHtcbiAgICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHsgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDsgfVxuICB9XG59XG4iLCIudGVtcG9yYXJ5LXNsb2dhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB6LWluZGV4OiA5OTk7XG4gICZfX2lubmVyIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygxNCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHsgZm9udC1zaXplOiByZW0tY2FsYygxNik7IH1cbiAgICBhIHsgY29sb3I6ICR3aGl0ZTsgfVxuICB9XG59XG4iLCIuYmxvY2stLXNpZGViYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJhY2tncm91bmQ7XG4gIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmJsb2NrX19pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNiA4KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG4gIH1cbiAgLmJsb2NrX19kZXRhaWxzIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC5ibG9ja19fdGl0bGUge1xuICAgIEBleHRlbmQgaDM7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICB9XG4gIC5ibG9ja19fc3ViLXRpdGxlIHtcbiAgICBAZXh0ZW5kIGg1O1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmJsb2NrX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNik7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgfVxufVxuIiwiLmRlcGFydG1lbnQtLXZlaGljbGUge1xuICAuZGVwYXJ0bWVudF9fdGVsZXBob25lIHtcbiAgICAuZGVwYXJ0bWVudF9fbGFiZWwge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbnRlbnQ6ICc6JztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmRlcGFydG1lbnRfX3ZhbHVlIHsgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDsgfVxuICB9XG4gIC5kZXBhcnRtZW50X19vcGVuaW5nLWhvdXJzIHtcbiAgICAuZGVwYXJ0bWVudF9fdmFsdWUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICB9XG4gIH1cbn1cbiIsIi5mb3JtLS1kZWxpdmVyeS1jYWxlbmRhciB7XG4gIG1hcmdpbi10b3A6IHJlbS1jYWxjKDE1KTtcbiAgLmZvcm1fX2xpbmsge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7IH1cbiAgICAuYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICB9XG59XG4iLCIuZm9ybS0tc2VsbC15b3VyLXZlaGljbGUtdmFsdWF0aW9uIHtcbiAgW3R5cGU9J3RleHQnXSxcbiAgW3R5cGU9J3Bhc3N3b3JkJ10sXG4gIFt0eXBlPSdkYXRlJ10sXG4gIFt0eXBlPSdkYXRldGltZSddLFxuICBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSxcbiAgW3R5cGU9J21vbnRoJ10sXG4gIFt0eXBlPSd3ZWVrJ10sXG4gIFt0eXBlPSdlbWFpbCddLFxuICBbdHlwZT0nbnVtYmVyJ10sXG4gIFt0eXBlPSdzZWFyY2gnXSxcbiAgW3R5cGU9J3RlbCddLFxuICBbdHlwZT0ndGltZSddLFxuICBbdHlwZT0ndXJsJ10sXG4gIFt0eXBlPSdjb2xvciddLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpOyB9XG4gIGxhYmVsLmVycm9yIHtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDE5KTtcbiAgICBtYXJnaW4tdG9wOiAtIHJlbS1jYWxjKDE1KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgY29sb3I6ICRhbGVydC1jb2xvcjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTkpO1xuICB9XG4gIC5mb3JtX19iYWNrIHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNik7XG4gICAgICBpIHsgZm9udC1zaXplOiByZW0tY2FsYygxMik7IH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm1fX3N0ZXAwIHtcbiAgICAuZmllbGQtcmVnaXN0cmF0aW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgIC5mb3JtLWdyb3VwX19pbnB1dCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNjApO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDYwKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg2KTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBmb250LWZhbWlseTogXCI2N2RlZ3JlZXNcIjtcbiAgICAgICAgICBjb250ZW50OiBcIlxcNDdcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg2MCk7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDUwKTtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMi4xO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogcmVtLWNhbGMoNik7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogcmVtLWNhbGMoNik7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICAgICAgICBkaXJlY3Rpb246IGx0cjtcbiAgICAgICAgICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNTgpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29udHJvbC1sYWJlbCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG4gIH1cbiAgLmZvcm1fX3N0ZXAxIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgIGZpZWxkc2V0IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOCk7IH1cbiAgICB9XG4gICAgLnN1bW1hcnkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBAaW5jbHVkZSBncmlkLWNvbHVtbig0KTsgfVxuICAgICAgJl9faW5uZXIge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgICAgJl9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIH1cbiAgICAgICZfX2xpc3Qge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICB9XG4gICAgICAmX19saXN0LWl0ZW0ge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLnZhbHVhdGlvbiB7XG4gICZfX3ByaWNlIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgfVxufVxuIiwiLmZvcm0tLXNlcnZpY2UtYm9va2luZyB7XG4gIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gIFt0eXBlPSd0ZXh0J10sXG4gIFt0eXBlPSdwYXNzd29yZCddLFxuICBbdHlwZT0nZGF0ZSddLFxuICBbdHlwZT0nZGF0ZXRpbWUnXSxcbiAgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4gIFt0eXBlPSdtb250aCddLFxuICBbdHlwZT0nd2VlayddLFxuICBbdHlwZT0nZW1haWwnXSxcbiAgW3R5cGU9J251bWJlciddLFxuICBbdHlwZT0nc2VhcmNoJ10sXG4gIFt0eXBlPSd0ZWwnXSxcbiAgW3R5cGU9J3RpbWUnXSxcbiAgW3R5cGU9J3VybCddLFxuICBbdHlwZT0nY29sb3InXSxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTsgfVxuICBsYWJlbC5lcnJvciB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygxOSk7XG4gICAgbWFyZ2luLXRvcDogLSByZW0tY2FsYygxNSk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgIGNvbG9yOiAkYWxlcnQtY29sb3I7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDE5KTtcbiAgfVxuICAuZm9ybV9fc3RlcHMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKDkpOyB9XG4gIH1cbiAgLmZvcm1fX3N1bW1hcnkge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKDMpOyB9XG4gIH1cbiAgLmZvcm0tZGlzY2xhaW1lciB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICB9XG4gIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tcmVnaXN0cmF0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgLmZvcm0tZ3JvdXBfX2lucHV0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg2MCk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDYwKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDYpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNik7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiNjdkZWdyZWVzXCI7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFw0N1wiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg2MCk7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYyg1MCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICBsaW5lLWhlaWdodDogMi4xO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHJlbS1jYWxjKDYpO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiByZW0tY2FsYyg2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICAgIC13ZWJraXQtZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgICAgaW5wdXQge1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDU4KTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRyb2wtbGFiZWwgeyBkaXNwbGF5OiBub25lOyB9XG4gIH1cbiAgLmZpZWxkLXNlcnZpY2Vib29raW5nZm9ybS1zZXJ2aWNlX3R5cGUsXG4gIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tYWRkaXRpb25hbC1zZXJ2aWNlX3R5cGUge1xuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgfVxuICB9XG4gIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tc2VydmljZV90eXBlIHtcbiAgICAub3B0aW9ucyB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMSwgJ2xhYmVsJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IEBpbmNsdWRlIGdyaWQtbGF5b3V0KDMsICdsYWJlbCcsICRncmlkLWNvbHVtbi1ndXR0ZXIpOyB9XG4gICAgICAmX19sYWJlbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgaW5wdXQgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIC5vcHRpb25zX19kZXRhaWxzIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygxMDApO1xuICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dDpjaGVja2VkICsgLm9wdGlvbnNfX2RldGFpbHMge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgLm9wdGlvbnNfX25hbWUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIH1cbiAgICAgICAgLm9wdGlvbnNfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygzMik7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgfVxuICAgICAgICAub3B0aW9uc19fcHJpY2Uge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIH1cbiAgICAgICAgbGFiZWwuZXJyb3Ige1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IHJlbS1jYWxjKDMpO1xuICAgICAgICAgIGxlZnQ6IHJlbS1jYWxjKDEwMCk7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5maWVsZC1zZXJ2aWNlYm9va2luZ2Zvcm0tYWRkaXRpb25hbC1zZXJ2aWNlX3R5cGUge1xuICAgIC5vcHRpb25zIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgxLCAnbGFiZWwnLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICAgICZfX2xhYmVsIHtcbiAgICAgICAgaW5wdXQgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIC5vcHRpb25zX19kZXRhaWxzIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQ6Y2hlY2tlZCArIC5vcHRpb25zX19kZXRhaWxzIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgIC5vcHRpb25zX19uYW1lIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB9XG4gICAgICAgIC5vcHRpb25zX19kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNSk7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgfVxuICAgICAgICAub3B0aW9uc19fcHJpY2Uge1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB9XG4gICAgICAgIGxhYmVsLmVycm9yIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiByZW0tY2FsYygzKTtcbiAgICAgICAgICBsZWZ0OiByZW0tY2FsYygxMDApO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY29uZmlybWF0aW9uIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDEsICdsaScsICRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMywgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7IH1cbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2KTtcbiAgICAmID4gbGkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7IH1cbiAgICAmX19zdGVwIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJhY2tncm91bmQ7XG4gICAgfVxuICAgICZfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEzKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIH1cbiAgICAmX19jaGFuZ2Uge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICB9XG4gICAgJl9fcm93IHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNik7IH1cbiAgICAmX19sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuICAgICZfX3ZhbHVlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuICAgICZfX3Jvdy0tYWRkaXRpb25hbC1zZXJ2aWNlLFxuICAgICZfX3Jvdy0tc2VydmljZS10eXBlIHtcbiAgICAgIC5jb25maXJtYXRpb25fX2xhYmVsLFxuICAgICAgLmNvbmZpcm1hdGlvbl9fdmFsdWUgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgIH1cbiAgfVxuICAuc3VtbWFyeSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygyMCk7XG4gICAgJl9fdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgICAmX19sYWJlbCB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICZfX3ZhbHVlIHsgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgJl9fcm93LS1zZXJ2aWNlIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMyk7IH1cbiAgICAmX19yb3ctLXRvdGFsIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodGVuKCRwcmltYXJ5LWNvbG9yLCAxMCUpO1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTMpO1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICB9XG4gIH1cbn1cbiIsIi5mb3JtLS12ZWhpY2xlLXBheW1lbnQge1xuICAuZm9ybS1tYXJrZXRpbmcge1xuICAgICZfX2ZpZWxkcyB7XG4gICAgICBpbnB1dCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICB9XG4gIH1cbiAgLmZpZWxkLXN1Ym1pdCB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTsgfVxuICAgIC5idXR0b24geyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIH1cbn1cbiIsIi5mb3JtLS12ZWhpY2xlLXNvcnQge1xuICBzZWxlY3QgeyBoZWlnaHQ6IHJlbS1jYWxjKDQ2KTsgfVxufVxuIiwiLmZvcm0tLXZlaGljbGUtdmFsdWF0aW9uIHtcbiAgLmZvcm1fX2JhY2sge1xuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2KTtcbiAgICAgIGkgeyBmb250LXNpemU6IHJlbS1jYWxjKDEyKTsgfVxuICAgICAgc3BhbiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuZm9ybV9fZGVzY3JpcHRpb24geyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7IH1cbiAgLmZvcm1fX3JvdyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgfVxuICAuZm9ybV9fcmVnaXN0cmF0aW9uLFxuICAuZm9ybV9fbWlsZWFnZSxcbiAgLmZvcm1fX2ZpcnN0LW5hbWUsXG4gIC5mb3JtX19sYXN0LW5hbWUsXG4gIC5mb3JtX190b3duLFxuICAuZm9ybV9fYnJhbmNoLFxuICAuZm9ybV9fcGhvbmUsXG4gIC5mb3JtX19lbWFpbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuICAgIH1cbiAgfVxuICAuZm9ybV9fcGFydC1leGNoYW5nZS12ZWhpY2xlIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gIH1cbiAgLnN1bW1hcnkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAmX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIH1cbiAgICAmX19saXN0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybV9fdmVoaWNsZS1zcGVjaWZpY3Mge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGxpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAuY2hlY2tib3ggeyBtYXJnaW46IDA7IH1cbiAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgbGFiZWwgeyBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMyk7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZvcm1fX2ZpZWxkLWhhcy1vdXRzdGFuZGluZy1maW5hbmNlIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpOyB9XG4gIH1cbiAgLmZvcm1fX3ZlaGljbGUtY29uZGl0aW9uIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDE1KTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDEsICdsaScsICRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCg1LCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICB9XG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpOyB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KDc2OCkgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgfVxuICB9XG4gIC5maWVsZC1wYXJ0ZXhjaGFuZ2Vmb3JtLWxpZ2h0Y29uZGl0aW9uIHsgZGlzcGxheTogbm9uZTsgfVxuICAuZm9ybV9fdmFsdWF0aW9uIHtcbiAgICBoMyB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuZm9ybV9fdmFsdWF0aW9uLWRlc2NyaXB0aW9uIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTUpOyB9XG4gIH1cbn1cbi5yZXZlYWwtLXZlaGljbGUtdmFsdWF0aW9uIHtcbiAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUwKTtcbiAgcDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxufVxuIiwiZm9ybSB7XG4gIFt0eXBlPSd0ZXh0J10sXG4gIFt0eXBlPSdwYXNzd29yZCddLFxuICBbdHlwZT0nZGF0ZSddLFxuICBbdHlwZT0nZGF0ZXRpbWUnXSxcbiAgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG4gIFt0eXBlPSdtb250aCddLFxuICBbdHlwZT0nd2VlayddLFxuICBbdHlwZT0nZW1haWwnXSxcbiAgW3R5cGU9J251bWJlciddLFxuICBbdHlwZT0nc2VhcmNoJ10sXG4gIFt0eXBlPSd0ZWwnXSxcbiAgW3R5cGU9J3RpbWUnXSxcbiAgW3R5cGU9J3VybCddLFxuICBbdHlwZT0nY29sb3InXSB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg0NCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAmOmRpc2FibGVkIHsgY29sb3I6ICRkYXJrLWdyYXk7IH1cbiAgfVxuICBzZWxlY3Qge1xuICAgIGhlaWdodDogcmVtLWNhbGMoNDQpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB3aWR0aD0nMTInIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDEyIDgnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHBhdGggZD0nTTEwLjU5LjU5TDYgNS4xNyAxLjQxLjU5IDAgMmw2IDYgNi02JyBmaWxsPSclMjMyZDM3MzcnIGZpbGwtcnVsZT0nZXZlbm9kZCcvPjwvc3ZnPlwiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IHJlbS1jYWxjKDExIDcpO1xuICAgICY6ZGlzYWJsZWQgeyBjb2xvcjogJGRhcmstZ3JheTsgfVxuICB9XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDEwMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuaGVscC1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgIGNvbG9yOiAkYWxlcnQtY29sb3I7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4gIH1cbiAgW3R5cGU9J2hpZGRlbiddICsgLmhlbHAtYmxvY2sgeyBkaXNwbGF5OiBub25lOyB9XG4gIC5yZXF1aXJlZCBsYWJlbC5jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgY29udGVudDogJyAqJztcbiAgICBjb2xvcjogJGFsZXJ0LWNvbG9yO1xuICB9XG4gIC5mb3JtLW1hcmtldGluZyB7XG4gICAgJl9fbWVzc2FnZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG4gICAgICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgICB9XG4gICAgJl9fbGFiZWwge1xuICAgICAgbGFiZWwge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyAqJztcbiAgICAgICAgICBjb2xvcjogJGFsZXJ0LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICZfX2ZpZWxkcyB7XG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgICB9XG4gICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgIC5qcy1tYXJrZXRpbmcge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMSk7XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB9XG4gICAgICAgIC5oZWxwLWJsb2NrIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgfVxuICAgIH1cbiAgICAmX19jaGFubmVscyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgIH1cbiAgICAgIFt0eXBlPSdjaGVja2JveCddIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIH1cbiAgfVxufVxuLmZvcm0tZGlzY2xhaW1lciB7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICBsaW5lLWhlaWdodDogMS44O1xuICBvcGFjaXR5OiAwLjY7XG59XG4iLCIudmlkZW8ge1xuICAmX191cmwge1xuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZW1iZWQoMTYgYnkgOSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAmLS1wYWdlIHtcbiAgICAudmlkZW9fX3RpdGxlIHtcbiAgICAgIEBleHRlbmQgaDQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5uZXctdmVoaWNsZS0tZnVsbCB7XG4gIC5uZXctdmVoaWNsZV9fdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc21hcnQtc2NhbGUoJGJvZHktYmFja2dyb3VuZCwgNSUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg1MCk7XG4gICAgfVxuICAgICYtaW5uZXIgeyBAaW5jbHVkZSBncmlkLXJvdygpOyB9XG4gICAgLm5ldy12ZWhpY2xlX19wcm9tby10ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICB0b3A6IGluaGVyaXQ7XG4gICAgICBsZWZ0OiBpbmhlcml0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgIH1cbiAgfVxuICAubmV3LXZlaGljbGVfX2JhY2sge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYpO1xuICAgICAgaSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpOyB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5uZXctdmVoaWNsZV9fbWVkaWEge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NjgpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDcpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig4KTtcbiAgICB9XG4gIH1cbiAgLm5ldy12ZWhpY2xlX19wcmltYXJ5LWltYWdlcyB7XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLm5ldy12ZWhpY2xlX19wcmltYXJ5LWltYWdlcy10aHVtYm5haWxzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxuICAubmV3LXZlaGljbGVfX2RldGFpbHMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KDc2OCkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDQpO1xuICAgIH1cbiAgICAubmV3LXZlaGljbGVfX2RldGFpbHMtaW5uZXIge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmFja2dyb3VuZDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgICB9XG4gICAgICAubmV3LXZlaGljbGVfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgLm5ldy12ZWhpY2xlX19tb2RlbC12YXJpYW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubmV3LXZlaGljbGVfX3ByaWNlIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpOyB9XG4gICAgICAubmV3LXZlaGljbGVfX3RlbGVwaG9uZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm5ldy12ZWhpY2xlX19jdGEge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAyMCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHNtYXJ0LXNjYWxlKCRib2R5LWJhY2tncm91bmQsIDUlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm5ldy12ZWhpY2xlX19wYXJ0LWV4Y2hhbmdlIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDQpO1xuICAgIH1cbiAgfVxuICAmID4gLm5ldy12ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNTApO1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gICAgJiA+IHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDApO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgxLCAnbGknKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMiwgJ2xpJyk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtYmFzZTtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG4gICAgICAmID4gbGkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5uZXctdmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gICAgJiA+IHVsIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgxLCAnbGknKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMiwgJ2xpJyk7IH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMywgJ2xpJyk7IH1cbiAgICAgICYgPiBsaSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpIDQpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgJjpudGgtY2hpbGQoM24pIHsgYm9yZGVyLXJpZ2h0OiBub25lOyB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNob3cge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDEyKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5uZXctdmVoaWNsZV9fZGVzY3JpcHRpb24ge1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuZXhwYW5kIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoMTAwKTtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg3NSk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgkYm9keS1iYWNrZ3JvdW5kLDEpMCUsIHJnYmEoJGJvZHktYmFja2dyb3VuZCwxKTI1JSwgcmdiYSgkYm9keS1iYWNrZ3JvdW5kLDApMTAwJSk7XG4gICAgfVxuICAgICYtb3V0ZXIge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm5ldy12ZWhpY2xlX19zZWNvbmRhcnktaW1hZ2VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzbWFydC1zY2FsZSgkYm9keS1iYWNrZ3JvdW5kLCA1JSk7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNTApO1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gICAgJi1pbm5lciB7IEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpOyB9XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLm5ldy12ZWhpY2xlX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICAmLW91dGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogc21hcnQtc2NhbGUoJGJvZHktYmFja2dyb3VuZCwgOCUpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUwKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1pbm5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBwYWRkaW5nOiByZW0tY2FsYygyMCk7IH1cbiAgICB9XG4gIH1cbiAgLm5ldy12ZWhpY2xlX19zcGVjaWZpY2F0aW9uIHtcbiAgICAmID4gdWwge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDEsICdsaScpO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDMsICdsaScpO1xuICAgICAgfVxuICAgICAgJiA+IGxpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAgKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgICAgIH1cbiAgICAgICAgLnNwZWNpZmljYXRpb24ge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAmX192YWx1ZSB7IGRpc3BsYXk6IGlubGluZTsgfVxuICAgICAgICB9XG4gICAgICAgIC5zcGVjaWZpY2F0aW9uLWNhdGVnb3J5X190aXRsZSB7IEBleHRlbmQgaDQ7IH1cbiAgICAgICAgJiB1bCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgbGlzdC1zdHlsZTogc3F1YXJlO1xuICAgICAgICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLWJ1dHRvbiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAuYnV0dG9uIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIH1cbiAgfVxuICAubmV3LXZlaGljbGVfX3RlY2huaWNhbC1kYXRhIHtcbiAgICAmID4gdWwge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDEsICdsaScpO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDMsICdsaScpO1xuICAgICAgfVxuICAgICAgJiA+IGxpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAgKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgICAgIH1cbiAgICAgICAgLnRlY2huaWNhbC1kYXRhLWNhdGVnb3J5X190aXRsZSB7IEBleHRlbmQgaDQ7IH1cbiAgICAgICAgLnRlY2huaWNhbC1kYXRhX19sYWJlbCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICY6OmFmdGVyIHsgY29udGVudDogJzonOyB9XG4gICAgICAgIH1cbiAgICAgICAgLnRlY2huaWNhbC1kYXRhX192YWx1ZSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICB9XG4gICAgICAgICYgdWwge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm5ldy12ZWhpY2xlX19kb2N1bWVudHMsXG4gIC5uZXctdmVoaWNsZV9fYXVkaW8ge1xuICAgIHVsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubmV3LXZlaGljbGVfX3NpbWlsYXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiBzbWFydC1zY2FsZSgkYm9keS1iYWNrZ3JvdW5kLCA1JSk7IH1cbn1cbiIsIi5uZXctdmVoaWNsZS0tdGVhc2VyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpOyB9XG4gIC5uZXctdmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLm5ldy12ZWhpY2xlX19kZXRhaWxzIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgfVxuICAubmV3LXZlaGljbGVfX2hlYWRlciB7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuICAubmV3LXZlaGljbGVfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICAubmV3LXZlaGljbGVfX21ha2UsXG4gICAgLm5ldy12ZWhpY2xlX19tb2RlbCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgICAubmV3LXZlaGljbGVfX21vZGVsLXZhcmlhbnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG4gIH1cbiAgLm5ldy12ZWhpY2xlX19mb290ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgfVxuICAuZHJvcGRvd24tcGFuZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgfVxufVxuIiwiLm5ldy12ZWhpY2xlIHtcbiAgJl9fbWVkaWEtY291bnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICAmID4gdWwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyg2KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDYpO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJhY2tncm91bmQ7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNiAyKTtcbiAgICAgICAgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fcHJvbW8tdGV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogcmVtLWNhbGMoOCk7XG4gICAgbGVmdDogcmVtLWNhbGMoOCk7XG4gICAgc3BhbiB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg0IDgpO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMyk7XG4gICAgfVxuICB9XG59XG4iLCIub2ZmZXItLWZlYXR1cmVkIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgLm9mZmVyX19wcmltYXJ5LWltYWdlcyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG4gICAgfVxuICB9XG4gIC5vZmZlcl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig4KTtcbiAgICB9XG4gIH1cbiAgLm9mZmVyX19jb250ZW50LS13aXRob3V0LWltYWdlIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpOyB9XG4gIC5vZmZlcl9fdGl0bGUge1xuICAgIEBleHRlbmQgaDI7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICB9XG4gIC5vZmZlcl9fc3ViLXRpdGxlIHtcbiAgICBAZXh0ZW5kIGgzO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgfVxuICAub2ZmZXJfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIH1cbiAgLm9mZmVyX19saW5rIHtcbiAgICAuYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICB9XG59XG4iLCIuYWRkLW9uIHtcblx0cGFkZGluZzogcmVtLWNhbGMoMTApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBzbWFydC1zY2FsZSgkYm9keS1iYWNrZ3JvdW5kLCAxMCUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYygxNSk7IH1cblx0c3Bhbi5oYXMtZXJyb3IgeyBjb2xvcjogJGFsZXJ0LWNvbG9yOyB9XG5cdCZfX2lubmVyIHtcblx0XHRAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuXHR9XG5cdCZfX2ltYWdlIHtcblx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDMpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgaW1nIHsgd2lkdGg6IDEwMCU7IH1cblx0fVxuXHQmX19kZXRhaWxzIHtcblx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdH1cbiAgJl9fdGl0bGUge1xuICAgIEBleHRlbmQgaDM7XG4gIH1cblx0Jl9fbGluayB7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAuYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXHR9XG5cdCZfX2Rlc2NyaXB0aW9uIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApOyB9XG5cdCZfX3ZpZGVvIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG4gICAgYTpob3ZlcixcbiAgICBhOmZvY3VzIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgc3BhbiB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgfVxuXHQmX192aWRlby1hcHByb3ZhbCB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTsgfVxuXHQmLS1zZWxlY3RlZCB7IGJhY2tncm91bmQtY29sb3I6IHNtYXJ0LXNjYWxlKCRib2R5LWJhY2tncm91bmQsIDIwJSk7IH1cblx0Ji0taW1hZ2Uge1xuXHRcdC5hZGQtb25fX2RldGFpbHMge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig5KTtcbiAgICAgIH1cblx0XHR9XG5cdH1cbn1cbi5saXN0aW5nLS1hZGQtb24ge1xuXHQubGlzdGluZ19fbGlzdCB7XG5cdFx0QGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcblx0XHRAaW5jbHVkZSBncmlkLWxheW91dCgxLCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcblx0XHRtYXJnaW46IDA7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHQmLWl0ZW0ge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpOyB9XG5cdFx0XHQmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cdFx0fVxuXHR9XG59XG4iLCIuY2FsZW5kYXIge1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDE1KTsgfVxuICAmX19oZWFkZXIge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgLmNhbGVuZGFyX19zd2l0Y2gge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygxNik7IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDE4KTsgfVxuICAgICAgICBpIHsgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg2KTsgfVxuICAgICAgfVxuICAgICAgJi0tbmV4dCB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBhIHtcbiAgICAgICAgICBpIHsgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDYpOyB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmNhbGVuZGFyX19tb250aCB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig0KTtcbiAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgc3BhbiB7XG4gICAgICAgIEBleHRlbmQgaDM7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX3RhYmxlIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIHRhYmxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB0aCB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpOyB9XG4gICAgICB0ZCB7XG4gICAgICAgICYuc2xvdCB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRwcmltYXJ5LWNvbG9yLCAxMCUpO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgICBjdXJzb3I6IGF1dG87XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc21hcnQtc2NhbGUoJGJvZHktYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgICAmOmhvdmVyIHsgY3Vyc29yOiBhdXRvOyB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jbG9zZWQge1xuICAgICAgICAgIGN1cnNvcjogYXV0bztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzbWFydC1zY2FsZSgkYm9keS1iYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICAgICY6aG92ZXIgeyBjdXJzb3I6IGF1dG87IH1cbiAgICAgICAgfVxuICAgICAgICAmLnNlbGVjdGVkIHsgYmFja2dyb3VuZC1jb2xvcjogJHN1Y2Nlc3MtY29sb3I7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5yZXZlYWwucmV2ZWFsLS1jb2xsZWN0aW9uLW1hcCB7IHBhZGRpbmctdG9wOiByZW0tY2FsYyg1MCk7IH1cbiNjb2xsZWN0aW9uLW1hcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAxMDAlO1xufVxuIiwiLmNvbGxlY3Rpb24tZGVsaXZlcnkge1xuICBwYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHNtYXJ0LXNjYWxlKCRib2R5LWJhY2tncm91bmQsIDEwJSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmc6IHJlbS1jYWxjKDE1KTsgfVxuICAmLS1zZWxlY3RlZCB7IGJhY2tncm91bmQtY29sb3I6IHNtYXJ0LXNjYWxlKCRib2R5LWJhY2tncm91bmQsIDIwJSk7IH1cbiAgJl9faW5uZXIge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gIH1cbiAgJl9faW1hZ2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICBpbWcgeyB3aWR0aDogMTAwJTsgfVxuICB9XG4gICZfX2RldGFpbHMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgfVxuICAmX190aXRsZSB7XG4gICAgQGV4dGVuZCBoMztcbiAgfVxuICAmX19kZXNjcmlwdGlvbiB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTsgfVxuICAmX19hZGRyZXNzIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApOyB9XG4gICZfX21hcCB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICAgIHNwYW4geyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIH1cbiAgJl9fbGluayB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAuYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICB9XG4gICYtLWltYWdlIHtcbiAgICAuY29sbGVjdGlvbi1kZWxpdmVyeV9fZGV0YWlscyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmxpc3RpbmctLWNvbGxlY3Rpb24tZGVsaXZlcnkge1xuXHQubGlzdGluZ19fbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0QGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcblx0XHRAaW5jbHVkZSBncmlkLWxheW91dCgxLCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcblx0XHQmLWl0ZW0ge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpOyB9XG5cdFx0XHQmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cdFx0fVxuXHR9XG59XG4iLCIub3JkZXItaW50cm9kdWN0aW9uIHtcbiAgJl9fY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgIHAge1xuICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgYTpub3QoLmJ1dHRvbikge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgJjpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19saW5rIHtcbiAgICAuYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICB9XG59XG4iLCIub3JkZXItcGF5bWVudCB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogc21hcnQtc2NhbGUoJGJvZHktYmFja2dyb3VuZCwgMTAlKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZzogcmVtLWNhbGMoMTUpOyB9XG4gICZfX3RpdGxlIHtcbiAgICBAZXh0ZW5kIGgzO1xuICB9XG4gICZfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgfVxuICAmX19saW5rIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi5vcmRlci1wcm9ncmVzcyB7XG4gICZfX2xpc3Qge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMSwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGxpLmFjdGl2ZSB7XG4gICAgICAub3JkZXItcHJvZ3Jlc3NfX2JhciB7IGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yOyB9XG4gICAgfVxuICAgICYtLTIge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMiwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgfVxuICAgICYtLTMge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMywgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgfVxuICAgICYtLTQge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoNCwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgfVxuICAgICYtLTUge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoNSwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgfVxuICAgICYtLTYge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoNiwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgfVxuICB9XG4gICZfX3RpdGxlIHtcbiAgICBAZXh0ZW5kIGgyO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgJl9fc3ViLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDE2KTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDE4KTsgfVxuICB9XG4gICZfX2JhciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc21hcnQtc2NhbGUoJGJvZHktYmFja2dyb3VuZCwgMTAlKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGhlaWdodDogcmVtLWNhbGMoMTUpOyB9XG4gIH1cbn1cbiIsIi5vcmRlci1zdGF0ZS1zdW1tYXJ5IHtcbiAgcGFkZGluZzogcmVtLWNhbGMoMTApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBzbWFydC1zY2FsZSgkYm9keS1iYWNrZ3JvdW5kLCAxMCUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYygxNSk7IH1cbiAgJl9fdmVoaWNsZS1pbWFnZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgIGltZyB7IHdpZHRoOiAxMDAlOyB9XG4gIH1cbiAgJl9fdmVoaWNsZS10aXRsZSB7XG4gICAgQGV4dGVuZCBoMztcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1KTtcbiAgfVxuICAmX192ZWhpY2xlLXByaWNlIHsgZm9udC1zaXplOiByZW0tY2FsYygyMCk7IH1cbiAgJl9fdmVoaWNsZS1hZG1pbi1mZWUgeyBmb250LXNpemU6IDc1JTsgfVxuICAub3JkZXItc3RhdGUtc3VtbWFyeS10YWJsZSB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygxNSk7IH1cbiAgICB0Ym9keSB7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkYm9keS1iYWNrZ3JvdW5kLCAxMCUpOyB9XG4gICAgdHIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCRib2R5LWJhY2tncm91bmQsIDEwJSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAmOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiBub25lOyB9XG4gICAgICAmLm9yZGVyLXN0YXRlLXN1bW1hcnktdGFibGVfX3RvdGFsIHsgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDsgfVxuICAgICAgdGQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICYub3JkZXItc3RhdGUtc3VtbWFyeS10YWJsZV9fdmFsdWUge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCRib2R5LWJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5vcmRlci1zdW1tYXJ5IHtcbiAgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxNSk7IH1cbiAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1yaWdodDogMDsgfVxuICAgIH1cbiAgfVxuICAuYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxufVxuIiwiLm9yZGVyIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgJl9fcHJvZ3Jlc3Mge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApOyB9XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDgpO1xuICAgIH1cbiAgfVxuICAmX19zdW1tYXJ5IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDQpO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cbiAgJl9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICB9XG4gICZfX2Zvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTsgfVxuICAgIC5idXR0b24geyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIH1cbn1cbiIsIi5wYXJ0LWV4Y2hhbmdlIHtcbiAgJl9fZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApOyB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5wYXJ0LS1mZWF0dXJlZCB7XG4gIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gIC5wYXJ0X19wcmltYXJ5LWltYWdlcyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG4gICAgfVxuICB9XG4gIC5wYXJ0X19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDgpO1xuICAgIH1cbiAgfVxuICAucGFydF9fY29udGVudC0td2l0aG91dC1pbWFnZSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTsgfVxuICAucGFydF9fdGl0bGUge1xuICAgIEBleHRlbmQgaDI7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICB9XG4gIC5wYXJ0X19zdWItdGl0bGUge1xuICAgIEBleHRlbmQgaDM7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICB9XG4gIC5wYXJ0X19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICB9XG4gIC5wYXJ0X19saW5rIHtcbiAgICAuYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICB9XG59XG4iLCIucGFydC0tZnVsbCB7XG4gIC5wYXJ0X19wcmltYXJ5LWltYWdlcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5wYXJ0X19zZWNvbmRhcnktaW1hZ2VzIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygzMjApO1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDIwKTtcbiAgICB9XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLnBhcnRfX3ZpZGVvcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGNsZWFyOiByaWdodDtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygzMjApO1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDIwKTtcbiAgICB9XG4gICAgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDEsICdsaScsICRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuICAgICAgbGkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7IH1cbiAgICB9XG4gIH1cbiAgLnBhcnRfX2Rlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygyMCk7IH1cbiAgICBwIHtcbiAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICY6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnBhcnRfX2ZpbGVzIHtcbiAgICB1bCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnBhcnRfX2Zvcm0ge1xuICAgIGNsZWFyOiByaWdodDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHsgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDIwKTsgfVxuICAgICYtdGl0bGUgeyBAZXh0ZW5kIGgyOyB9XG4gIH1cbn1cbiIsIi5wYXJ0LS10ZWFzZXIge1xuICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAucGFydF9fcHJpbWFyeS1pbWFnZXMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDQpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgLnBhcnRfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOCk7XG4gICAgfVxuICB9XG4gIC5wYXJ0X19jb250ZW50LS13aXRob3V0LWltYWdlIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpOyB9XG4gIC5wYXJ0X19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICB9XG4gIC5wYXJ0X19saW5rIHtcbiAgICAuYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICB9XG59XG4iLCIucG9zdC0tZmVhdHVyZWQge1xuICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAucG9zdF9fcHJpbWFyeS1pbWFnZXMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDQpO1xuICAgIH1cbiAgfVxuICAucG9zdF9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig4KTtcbiAgICB9XG4gIH1cbiAgLnBvc3RfX2NvbnRlbnQtLXdpdGhvdXQtaW1hZ2UgeyBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7IH1cbiAgLnBvc3RfX3RpdGxlIHtcbiAgICBAZXh0ZW5kIGgyO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgfVxuICAucG9zdF9fc3ViLXRpdGxlIHtcbiAgICBAZXh0ZW5kIGgzO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgfVxuICAucG9zdF9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgfVxuICAucG9zdF9fbGluayB7XG4gICAgLmJ1dHRvbiB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgfVxufVxuIiwiLnF1aWNrLXNlYXJjaCB7XG4gIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgJl9fbGVnZW5kIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgQGV4dGVuZCBoMztcbiAgfVxuICAuZmllbGQtc2VhcmNoLXN0cmluZyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDgpO1xuICAgIH1cbiAgfVxuICAuZmllbGQtc3VibWl0IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgd2lkdGg6IDEwMCU7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi5zZWFyY2gtc2VsZWN0aW9uIHtcbiAgJl9fY291bnQgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgJl9fdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAmOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY29udGVudDogJy0nO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzKTtcbiAgICB9XG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICY6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICB9XG4gIH1cbiAgJl9fcGFyYW1ldGVycyB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG4gIH1cbiAgJl9fbGlzdCB7XG4gICAgbWFyZ2luOiByZW0tY2FsYygwIDAgNSk7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG4gICZfX2xpc3QtaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogcmVtLWNhbGMoNSA1IDUgMCk7XG4gIH1cbiAgJl9fcGFyYW1ldGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNSA2IDUgMTIpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmFja2dyb3VuZDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMTUpO1xuICAgICY6aG92ZXIge1xuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbGVydC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoNik7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDYpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogc21hcnQtc2NhbGUoJGJvZHktYmFja2dyb3VuZCwgNSUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIH1cbiAgfVxufVxuIiwiLnNob3dyb29tLS1mZWF0dXJlZCB7XG4gIC5zaG93cm9vbV9fcHJpbWFyeS1pbWFnZXMgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7IH1cbn1cbiIsIi52ZWhpY2xlLS1nZW5lcmFsIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3coKTtcbiAgLnZlaGljbGVfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczoxMiwkZ3V0dGVyczowKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLnZlaGljbGVfX21lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLnZlaGljbGVfX2RldGFpbHMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmFja2dyb3VuZDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpO1xuICAgIH1cbiAgfVxuICAudmVoaWNsZV9faGVhZGVyIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApOyB9XG4gIC52ZWhpY2xlX190aXRsZSB7XG4gICAgQGV4dGVuZCBoMjtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICAudmVoaWNsZV9fbWFrZSxcbiAgICAudmVoaWNsZV9fbW9kZWwge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG4gICAgLnZlaGljbGVfX21vZGVsLXZhcmlhbnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkIHtcbiAgICAmID4gdWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMik7XG4gICAgICAmID4gbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIC50ZWNobmljYWwtZGF0YV9fbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnOic7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzKTtcbiAgICAgICAgfVxuICAgICAgICAudGVjaG5pY2FsLWRhdGFfX3ZhbHVlOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJywnO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMyk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQgLnRlY2huaWNhbC1kYXRhX192YWx1ZTo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnZlaGljbGUtLWxhdGVzdCB7XG4gIEBpbmNsdWRlIGdyaWQtcm93KCk7XG4gIC52ZWhpY2xlX19wcmltYXJ5LWltYWdlcyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnM6MTIsJGd1dHRlcnM6MCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC52ZWhpY2xlX19tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gIC52ZWhpY2xlX19kZXRhaWxzIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJhY2tncm91bmQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX2hlYWRlciB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTsgfVxuICAudmVoaWNsZV9fdGl0bGUge1xuICAgIEBleHRlbmQgaDI7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNik7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgLnZlaGljbGVfX21ha2UsXG4gICAgLnZlaGljbGVfX21vZGVsIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuICAgIC52ZWhpY2xlX19tb2RlbC12YXJpYW50IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuICB9XG4gIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YS1wcm9tb3RlZCB7XG4gICAgJiA+IHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjIpO1xuICAgICAgJiA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAudGVjaG5pY2FsLWRhdGFfX2xhYmVsOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJzonO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMyk7XG4gICAgICAgIH1cbiAgICAgICAgLnRlY2huaWNhbC1kYXRhX192YWx1ZTo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcsJztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDMpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIC50ZWNobmljYWwtZGF0YV9fdmFsdWU6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi52ZWhpY2xlLS1yZWNlbnRseS12aWV3ZWQge1xuICBAaW5jbHVkZSBncmlkLXJvdygpO1xuICAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnZlaGljbGVfX2RldGFpbHMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTUgNiAwKTtcbiAgfVxuICAudmVoaWNsZV9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG59XG4iLCIubC1hbGVydCB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xufVxuIiwiLmNyZWRpdC1jYWxjdWxhdG9yIHtcbiAgJi0tZnVsbCB7XG4gICAgLmNyZWRpdC1jYWxjdWxhdG9yX19yZXN1bHRzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICB9XG4gIH1cbn1cbiIsIi5mYW5jeWJveC1zbGlkZSA+IC5mYW5jeWJveC1sb2FkaW5nIHsgLXdlYmtpdC1hbmltYXRpb246IGIgLjhzIGluZmluaXRlIGxpbmVhcjsgfVxuLmZhbmN5Ym94LXNsaWRlLS1pbWFnZSB7IHBhZGRpbmc6IDA7IH1cbiIsIi5yZXZpZXctc3VtbWFyeSB7XG4gICZfX3RpdGxlIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG4gICZfX2F2ZXJhZ2Uge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNjApO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiA1MCU7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIH1cbiAgfVxuICAmX190b3RhbC1yZXNwb25zZXMge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUpO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICB9XG4gICZfX2xpbmsge1xuICAgIGEge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgfVxuICB9XG59XG4ucmV2aWV3LWxpc3Rpbmcge1xuICAmX19oZWFkZXIge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgICYtZmlyc3Qge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgICB9XG4gICAgfVxuICAgICYtc2Vjb25kIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19sb2dvIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApOyB9XG4gICZfX3N1bW1hcnkge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZsb2F0OiByaWdodDsgfVxuICB9XG4gICZfX2xpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbiAgJl9fbGlzdC1pdGVtIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpOyB9XG4gICZfX2xpbmsge1xuICAgIGEge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgfVxuICB9XG59XG4ucmV2aWV3IHtcbiAgcGFkZGluZzogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmc6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7IH1cbiAgJl9faGVhZGVyIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgJi1maXJzdCB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1zZWNvbmQge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19kYXRlIHtcbiAgICBzcGFuIHtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMyk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICB9XG4gIH1cbiAgJl9fcmF0aW5nLWxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG4gICZfX2xpbmsge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgJjpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIH1cbiAgfVxufVxuLnJldmlldy1yYXRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiByZW0tY2FsYygxNjEpO1xuICBoZWlnaHQ6IHJlbS1jYWxjKDI3KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2NvcmUvaW1nL2ZlZWZvL3N0YXJzLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBiYWNrZ3JvdW5kLXNpemU6IHJlbS1jYWxjKDMyIDU1KTtcbiAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI3KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgJl9faW5uZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDI3KTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvY29yZS9pbWcvZmVlZm8vc3RhcnMucG5nXCIpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTI3cHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGJhY2tncm91bmQtc2l6ZTogcmVtLWNhbGMoMzIgNTQpO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNyk7XG4gIH1cbn1cbiIsIi53aXphcmQge1xuICAmID4gLnN0ZXBzIHtcbiAgICAmID4gdWwgbGkge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCBhIHsgbWFyZ2luLXJpZ2h0OiAwIH1cbiAgICB9XG4gICAgYSxcbiAgICBhOmhvdmVyLFxuICAgIGE6YWN0aXZlIHtcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDgpO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoOCAxNSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbjogcmVtLWNhbGMoMCA4IDggMCk7IH1cbiAgICB9XG4gICAgLmN1cnJlbnQgYSxcbiAgICAuY3VycmVudCBhOmhvdmVyLFxuICAgIC5jdXJyZW50IGE6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gICAgLmRvbmUgYSxcbiAgICAuZG9uZSBhOmhvdmVyLFxuICAgIC5kb25lIGE6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRwcmltYXJ5LWNvbG9yLCAyMCUpO1xuICAgIH1cbiAgICAuZGlzYWJsZWQgYSxcbiAgICAuZGlzYWJsZWQgYTpob3ZlcixcbiAgICAuZGlzYWJsZWQgYTphY3RpdmUge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzbWFydC1zY2FsZSgkYm9keS1iYWNrZ3JvdW5kLCAxMCUpO1xuICAgIH1cbiAgICAuZXJyb3IgYSxcbiAgICAuZXJyb3IgYTpob3ZlcixcbiAgICAuZXJyb3IgYTphY3RpdmUge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbGVydC1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJiA+IC5jb250ZW50ID4gLmJvZHkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogcmVtLWNhbGMoOCAwKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAmID4gLmFjdGlvbnMge1xuICAgIGEsXG4gICAgYTpob3ZlcixcbiAgICBhOmFjdGl2ZSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg4IDE1KTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cbiAgICAuZGlzYWJsZWQgYSxcbiAgICAuZGlzYWJsZWQgYTpob3ZlcixcbiAgICAuZGlzYWJsZWQgYTphY3RpdmUge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzbWFydC1zY2FsZSgkYm9keS1iYWNrZ3JvdW5kLCAxMCUpO1xuICAgIH1cbiAgICAmID4gdWwgPiBsaSB7IG1hcmdpbjogcmVtLWNhbGMoMCAwIDAgOCk7IH1cbiAgfVxufVxuIiwiLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gICYgPiBsaSB7XG4gICAgYS5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgfVxuICAgIH1cbiAgICBhLmFjY29yZGlvbi10aXRsZTpmb2N1cyxcbiAgICBhLmFjY29yZGlvbi10aXRsZTpob3ZlcixcbiAgICBhLmFjY29yZGlvbi10aXRsZVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICAgIGEuYWNjb3JkaW9uLXRpdGxlW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoOCk7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSguOTk5OSk7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItdG9wOiA4cHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgei1pbmRleDogNDAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5hY2NvcmRpb24tY29udGVudC0tbm8tcGFkZGluZyB7IHBhZGRpbmc6IDA7IH1cbiAgfVxuICAmLS1iYXNpYyB7XG4gICAgJiA+IGxpIHtcbiAgICAgIGEuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICByaWdodDogaW5oZXJpdDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBmbG9hdDogcmlnaHQ7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYS5hY2NvcmRpb24tdGl0bGU6Zm9jdXMsXG4gICAgICBhLmFjY29yZGlvbi10aXRsZTpob3ZlcixcbiAgICAgIGEuYWNjb3JkaW9uLXRpdGxlW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgICAgfVxuICAgICAgYS5hY2NvcmRpb24tdGl0bGVbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgICAgJjo6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICB9XG4gICAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi0tY3VzdG9tIHtcbiAgICBsaS5hY2NvcmRpb24taXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWVlZWVlO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIGEuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygyMCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICAgICY6OmJlZm9yZSB7IHJpZ2h0OiByZW0tY2FsYygyMCk7IH1cbiAgICAgICAgJjo6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICB9XG4gICAgfVxuICAgIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDIwIDIwKTtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIC5oZWxwLWJsb2NrIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLXdhcnJhbnR5IHtcbiAgICAmID4gbGkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibGFjaztcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIGEuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMik7XG4gICAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpOyB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHsgcmlnaHQ6IDA7IH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGZsb2F0OiByaWdodDsgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhLmFjY29yZGlvbi10aXRsZTpmb2N1cyxcbiAgICAgIGEuYWNjb3JkaW9uLXRpdGxlOmhvdmVyLFxuICAgICAgYS5hY2NvcmRpb24tdGl0bGVbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgICBhLmFjY29yZGlvbi10aXRsZVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgICAmOjphZnRlciB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIH1cbiAgICAgIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygxOCk7IH1cbiAgICAgICAgcCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi0tZmFxIHtcbiAgICAmID4gbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAmOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSxcbiAgICAgICYuYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQgeyBib3JkZXItcmFkaXVzOiBpbmhlcml0OyB9XG4gICAgICAmLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgfVxuICAgICAgYS5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCA4MCAyMCAyMCk7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyNyA4MCAyNyAzMCk7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtIHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDApO1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhLmFjY29yZGlvbi10aXRsZTpmb2N1cyxcbiAgICAgIGEuYWNjb3JkaW9uLXRpdGxlOmhvdmVyLFxuICAgICAgYS5hY2NvcmRpb24tdGl0bGVbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgJjo6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICB9XG4gICAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCk7XG4gICAgICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlZWVlO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYygzMCk7IH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmJhbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICBjb2xvcjogJHdoaXRlO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZzogcmVtLWNhbGMoMzApOyB9XG4gICZfX2JvdHRvbSB7IFxuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KDc2OCkgeyBtYXJnaW4tdG9wOiBhdXRvOyB9XG4gICAgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHJpZ2h0OiAtIHJlbS1jYWxjKDEwMCk7XG4gICAgfVxuICB9XG4gICZfX3RpdGxlIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxuICAmX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTUpO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgfVxufSIsIi5icmVhZGNydW1icyB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgJjpob3ZlciB7IHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI7IH1cbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU1Y2MnO1xuICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDYpO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiYnV0dG9uIHsgZm9udC1mYW1pbHk6IGluaGVyaXQ7IH1cbi5idXR0b24ge1xuICBwYWRkaW5nOiByZW0tY2FsYygxNCk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICYtLWFsZXJ0IHtcbiAgICBAaW5jbHVkZSBidXR0b24oJGJhY2tncm91bmQ6JGFsZXJ0LWNvbG9yLCRiYWNrZ3JvdW5kLWhvdmVyOmF1dG8pO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gIH1cbiAgJi0tZmlsdGVyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgfVxuICAmLS1mdWxsLXdpZHRoIHsgd2lkdGg6IDEwMCU7IH1cbiAgJi0tbGFyZ2Uge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmc6IHJlbS1jYWxjKDE4IDI4KTsgfVxuICB9XG4gICYtLXhsYXJnZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDI1IDQwKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIH1cbiAgfVxuICAmLS1yZXNldCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg5IDE0IDcpO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICAmLS1yZXNlcnZlIHtcbiAgICBAaW5jbHVkZSBidXR0b24oJGJhY2tncm91bmQ6JHByaW1hcnktY3RhLCRiYWNrZ3JvdW5kLWhvdmVyOmF1dG8pO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE0KTtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gIH1cbiAgJi0tc2Vjb25kYXJ5LWNvbG9yIHtcbiAgICBAaW5jbHVkZSBidXR0b24oJGJhY2tncm91bmQ6JHNlY29uZGFyeS1jb2xvciwkYmFja2dyb3VuZC1ob3ZlcjphdXRvKTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgJi0tcGluayB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKCRiYWNrZ3JvdW5kOiRwaW5rLCRiYWNrZ3JvdW5kLWhvdmVyOmF1dG8pO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICAmLS1sYXJnZSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTAgMTIpO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICB9XG4gICYtLXNtYWxsIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAxMik7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gIH1cbiAgJi0teHNtYWxsIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg2IDgpO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICB9XG4gICYtLW5vLW1hcmdpbiB7IG1hcmdpbi1ib3R0b206IDA7IH1cbn1cbi5ub3QtZnJvbnQge1xuICAuYnV0dG9uLS1zZWFyY2gge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHJlbS1jYWxjKDEwKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiByZW0tY2FsYygxMCk7XG4gIH1cbn1cbiIsIi5jbG9zZS1idXR0b24ge1xuICB0b3A6IHJlbS1jYWxjKDEyKTtcbiAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICYtLXRvZ2dsZXIge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogcmVtLWNhbGMoMTQpO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDUwKTtcbiAgICB6LWluZGV4OiAzO1xuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7IGNvbG9yOiAkYmxhY2s7IH1cbiAgfVxufVxuIiwiLmNyZWRpdHMge1xuICBjb2xvcjogIzcxNzU4MDtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpOyB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgb3JkZXI6IC0xOyB9XG4gIGEgeyBjb2xvcjogIzcxNzU4MDsgfVxuICAmID4gZGl2IHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICZfX2NvbXBhbnkgeyBtYXJnaW4tbGVmdDogcmVtLWNhbGMoOCk7IH1cbn1cbiIsIi5pY29uIHtcbiAgJjo6YmVmb3JlIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICBkaXJlY3Rpb246IGx0cjtcbiAgICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgJi0tYXVkaW86OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgY29udGVudDogJ1xcZTA1MCc7XG4gIH1cbiAgJi0tYXJyb3ctYmFjazo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlNWM0JztcbiAgfVxuICAmLS1hcnJvdy1mb3J3YXJkOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU1YzgnO1xuICB9XG4gICYtLWJpa2U6OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgY29udGVudDogJ1xcZTUyZic7XG4gIH1cbiAgJi0tY2FyOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU1MzEnO1xuICB9XG4gICYtLWNoZXZyb24tbGVmdDo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlNWNiJztcbiAgfVxuICAmLS1jaGV2cm9uLXJpZ2h0OjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU1Y2MnO1xuICB9XG4gICYtLWNsb2NrOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU4NTUnO1xuICB9XG4gICYtLWZpbmFuY2U6OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgY29udGVudDogJ1xcZTg3Nyc7XG4gIH1cbiAgJi0tZnVsbHNjcmVlbjo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlNWQwJztcbiAgfVxuICAmLS1lbmxhcmdlOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU1NmInO1xuICB9XG4gICYtLWV4cGFuZC1sZXNzOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU1Y2UnO1xuICB9XG4gICYtLWV4cGFuZC1tb3JlOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU1Y2YnO1xuICB9XG4gICYtLWRvY3VtZW50OjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU4NzMnO1xuICB9XG4gICYtLWZhY2Vib29rOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICAgIGNvbnRlbnQ6IFwiXFxmMDlhXCI7XG4gIH1cbiAgJi0tZmlsdGVyOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGUxNTInO1xuICB9XG4gICYtLWdvb2dsZS1wbHVzOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICAgIGNvbnRlbnQ6IFwiXFxmMGQ1XCI7XG4gIH1cbiAgJi0taW1hZ2UtbGlicmFyeTo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlNDEzJztcbiAgfVxuICAmLS1pbmZvOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU4OGYnO1xuICB9XG4gICYtLWxpbmtlZGluOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICAgIGNvbnRlbnQ6IFwiXFxmMGUxXCI7XG4gIH1cbiAgJi0tbWFpbDo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlMTU4JztcbiAgfVxuICAmLS1tZW51OjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU1ZDInO1xuICB9XG4gICYtLW1vYmlsZTo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlMzI0JztcbiAgfVxuICAmLS1wbGF5OjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGUwMzknO1xuICB9XG4gICYtLXBob25lOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGUwYjAnO1xuICB9XG4gICYtLXBvdW5kOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGVhZjEnO1xuICB9XG4gICYtLXJlY2VudDo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlODg5JztcbiAgfVxuICAmLS1zaGFyZTo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlODBkJztcbiAgfVxuICAmLS1zYXZlZDo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlODdkJztcbiAgfVxuICAmLS1zZWFyY2g6OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgY29udGVudDogJ1xcZThiNic7XG4gIH1cbiAgJi0tc3Rhcjo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxmMDZmJztcbiAgfVxuICAmLS1zbXM6OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgY29udGVudDogJ1xcZTYyNSc7XG4gIH1cbiAgJi0tdHJhbnNpdDo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlNTM1JztcbiAgfVxuICAmLS10aWNrOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGU4NzcnO1xuICB9XG4gICYtLXR3aXR0ZXI6OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gICAgY29udGVudDogXCJcXGYwOTlcIjtcbiAgfVxuICAmLS1wcmludDo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlOGFkJztcbiAgfVxuICAmLS12aWRlby1saWJyYXJ5OjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgIGNvbnRlbnQ6ICdcXGUwMzgnO1xuICB9XG4gICYtLXZpc2liaWxpdHk6OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgY29udGVudDogJ1xcZThmNCc7XG4gIH1cbiAgJi0td2Fsazo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICBjb250ZW50OiAnXFxlNTM2JztcbiAgfVxuICAmLS13aGF0c2FwcDo6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICBjb250ZW50OiBcIlxcZjIzMlwiO1xuICB9XG59XG4iLCIubGlzdGluZyB7XG4gICZfX2xpc3Qge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG4gICYtLWJsb2NrIHtcbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBnYXA6IHJlbS1jYWxjKDEwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGdhcDogcmVtLWNhbGMoMjApOyB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIGdhcDogcmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1ibG9jay11c3Age1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTEwMCk7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTsgfVxuICAgIC5saXN0aW5nX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTApO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ0KTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgfVxuICAgIC5saXN0aW5nX19saXN0IHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiByZW0tY2FsYygzMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyO1xuICAgICAgICBnYXA6IDA7XG4gICAgICB9XG4gICAgICAmLWl0ZW0ge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0UzRTNFMzsgfVxuICAgICAgICAmOmxhc3QtY2hpbGQgeyBib3JkZXItcmlnaHQ6IG5vbmU7IH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX2Zvb3RlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZ2FwOiByZW0tY2FsYygxMCk7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIGk6OmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMzApO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLWJsb2NrLWF3YXJkIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICAubGlzdGluZ19faGVhZGluZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7IH1cbiAgICB9XG4gIH1cbiAgJi0tYmxvY2stZm9vdGVyIHtcbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZ2FwOiByZW0tY2FsYygxMCk7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAzMCk7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZ2FwOiByZW0tY2FsYygyMCk7IH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZ2FwOiByZW0tY2FsYygzMCk7IH1cbiAgICB9XG4gIH1cbiAgJi0tYmxvY2staGVybyB7XG4gICAgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGdhcDogcmVtLWNhbGMoMzApO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cbiAgJi0tYmxvY2stcGFydG5lciB7XG4gICAgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikgeyB3aWR0aDogcmVtLWNhbGMoMzAwKTsgfVxuICAgIH1cbiAgfVxuICAmLS1ibG9jay1zZWFyY2gge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgJi1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1ibG9jay1zaWRlYmFyIHtcbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMSwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgICAmLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkpO1xuICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLWJsb2NrLWZpbmFuY2Uge1xuICAgIC5saXN0aW5nX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cbiAgfVxuICAmLS1ibG9jay1zZXJ2aWNlIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg4MCk7IH1cbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiByZW0tY2FsYygyMCk7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZ2FwOiByZW0tY2FsYygzMCk7IH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7IGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAgICYtaXRlbSB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLWJsb2NrLXZlaGljbGUtdHlwZXMge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFM0UzRTM7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTsgfVxuICAgIC5saXN0aW5nX19pbm5lciB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTU2MCk7XG4gICAgfVxuICAgIC5saXN0aW5nX19jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgfVxuICAgIH1cbiAgICAubGlzdGluZ19fbGlzdC1vdXRlciB7IG1pbi13aWR0aDogMDsgfVxuICAgIC5saXN0aW5nX19saXN0IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICB9XG4gICAgICAmLWl0ZW0ge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI0UzRTNFMztcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7IGZsZXg6IDAgMCA1MCU7IH1cbiAgICAgICAgJi0tb2RkIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHsgYm9yZGVyLWxlZnQ6IG5vbmU7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubGlzdGluZ19fdGl0bGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi0tYmxvY2stYXdhcmRzIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg4MCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgxNjAwKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgIC5saXN0aW5nX19pbm5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICB9XG4gICAgLmxpc3RpbmdfX2NvbnRlbnQge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICAgICAgZ3JpZC1nYXA6IHJlbS1jYWxjKDIwKTtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwIDMwKTtcbiAgICAgICAgZ3JpZC1nYXA6IHJlbS1jYWxjKDMwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDE4KTsgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHsgZm9udC1zaXplOiByZW0tY2FsYygyMCk7IH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICBncmlkLWdhcDogcmVtLWNhbGMoMTApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTsgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NjgpIHsgZ3JpZC1nYXA6IHJlbS1jYWxjKDIwKTsgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBncmlkLWNvbHVtbjogMiAvIHNwYW4gMjsgfVxuICAgIH1cbiAgICAubGlzdGluZ19fdGl0bGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgd3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1scjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7IGRpc3BsYXk6IGZsZXg7IH1cbiAgICB9XG4gIH1cbiAgJi0tYmxvY2stcGFydG5lci1yZXZpZXdzIHtcbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBnYXA6IHJlbS1jYWxjKDIwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGdhcDogcmVtLWNhbGMoMzApOyB9XG4gICAgfVxuICB9XG4gICYtLWJyYW5jaC1mb290ZXIge1xuICAgIC5saXN0aW5nX19kaXJlY3Rpb25zIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICAgICYtdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgfVxuICAgIH1cbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMSwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgICAmLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICAgIC5icmFuY2gge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIC5icmFuY2gge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1icmFuY2gtdGVhc2VyIHtcbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICAmLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTsgfVxuICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLWJyYW5jaC13aWRnZXQge1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNTApO1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEwMCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTAwKTtcbiAgICB9XG4gICAgLmxpc3RpbmdfX2lubmVyIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIH1cbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGdhcDogcmVtLWNhbGMoMjApO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGdhcDogcmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgICAgJi1pdGVtIHsgZmxleDogMTsgfVxuICAgIH1cbiAgfVxuICAmLS1wYWdlLXRlYXNlciB7XG4gICAgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDEsICdsaScsICRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuICAgICAgJi1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7IH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1jYXJlZXJzIHtcbiAgICAubGlzdGluZ19fdGl0bGUgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7IH1cbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiByZW0tY2FsYygyMCk7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBnYXA6IHJlbS1jYWxjKDMwKTsgfVxuICAgIH1cbiAgICAubGlzdGluZ19fZm9vdGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDE1KTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTsgfVxuICAgIH1cbiAgfVxuICAmLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDYwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoODApOyB9XG4gICAgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgIEBleHRlbmQgaDI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygyMCk7IH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX2xpbmsge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogcmVtLWNhbGMoMTEwKTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBsZWZ0OiByZW0tY2FsYygxMzApO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDUwKTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1uZXctdmVoaWNsZS10ZWFzZXIge1xuICAgIC5saXN0aW5nX19oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgICB9XG4gICAgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOCk7IH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICB9XG4gICAgLmxpc3RpbmdfX29yZGVyIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7IH1cbiAgICAgIC52ZWhpY2xlLW9yZGVyIHsgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTsgfVxuICAgICAgLmZpZWxkLXZlaGljbGVfc2VhcmNoX29yZGVyIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOCk7IH1cbiAgICAgIC5maWVsZC12ZWhpY2xlX3NlYXJjaF9wZXJfcGFnZSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKDQpOyB9XG4gICAgfVxuICAgIC5saXN0aW5nX19pdGVtLWNvdW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMpO1xuICAgICAgc3BhbiB7IGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7IH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDEsICdsaScsICRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMiwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDMsICdsaScsICRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuICAgICAgfVxuICAgICAgJi1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpOyB9XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0aW5nX19mb290ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgfVxuICAmLS1wYWdlLWZ1bGwtd2lkdGgtdGVhc2VyIHtcbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMSwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgICAmLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTsgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDgwKTsgfVxuICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLXBvc3QtZmVhdHVyZWQge1xuICAgIC5saXN0aW5nX19saXN0IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgxLCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDMsICdsaScsICRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgxLCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICAgIH1cbiAgICAgICYtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS12ZWhpY2xlLWNvbXBhcmUge1xuICAgIC5saXN0aW5nX19oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coKTtcbiAgICB9XG4gICAgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgaDEgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgfVxuICAgIC5saXN0aW5nX19yZW1vdmUge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuICAgICAgLmJ1dHRvbiB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX21haW4ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coKTtcbiAgICB9XG4gICAgLmxpc3RpbmdfX2tleSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigyKTtcbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiByZW0tY2FsYygyNTggMCAwIDApO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNjApO1xuICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTUpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7IGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5OyB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX2NvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOSk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi0tdmVoaWNsZS1yZWNlbnRseS12aWV3ZWQge1xuICAgIC5saXN0aW5nX190aXRsZSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMSwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgICAmLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0KTtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgfVxuICAgIH1cbiAgICAubGlzdGluZ19fbm8taXRlbXMgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgfVxuICAmLS12ZWhpY2xlLWxhdGVzdCxcbiAgJi0tYmxvY2stdGlsZSxcbiAgJi0tc2hvd3Jvb20tZmVhdHVyZWQge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIC5saXN0aW5nX19oZWFkaW5nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTsgfVxuICAgIH1cbiAgfVxuICAmLS12ZWhpY2xlLWZlYXR1cmVkIHtcbiAgICAubGlzdGluZ19faGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTApO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0aW5nX190aXRsZSB7XG4gICAgICBAZXh0ZW5kIGgyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYyg0NCk7IH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX2xpbmsge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiByZW0tY2FsYygxNSk7XG4gICAgICB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgICBpOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0aW5nX19saXN0IHtcbiAgICAgIHdpZHRoOiA4NSU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KDc2OCkgeyB3aWR0aDogYXV0bzsgfVxuICAgIH1cbiAgfVxuICAmLS12ZWhpY2xlLXNpbWlsYXIge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg1MCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMDApO1xuICAgIH1cbiAgICAubGlzdGluZ19faW5uZXIge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE1NjApO1xuICAgIH1cbiAgICAubGlzdGluZ19faGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTApO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0aW5nX190aXRsZSB7XG4gICAgICBAZXh0ZW5kIGgyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygzMCk7IH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX2xpc3Qge1xuICAgICAgd2lkdGg6IDg1JTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7IHdpZHRoOiBhdXRvOyB9XG4gICAgfVxuICB9XG4gICYtLXZlaGljbGUtaW4tc3RvY2ssXG4gICYtLW9mZmVyLWZlYXR1cmVkIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApOyB9XG4gICAgLmxpc3RpbmdfX2lubmVyIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNTYwKTtcbiAgICB9XG4gICAgLmxpc3RpbmdfX2hlYWRlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgfVxuICAgIH1cbiAgICAubGlzdGluZ19fdGl0bGUge1xuICAgICAgQGV4dGVuZCBoMjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApOyB9XG4gICAgfVxuICAgIC5saXN0aW5nX19saXN0IHtcbiAgICAgIHdpZHRoOiA4NSU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KDc2OCkgeyB3aWR0aDogYXV0bzsgfVxuICAgIH1cbiAgfVxuICAmLS12ZWhpY2xlLWZlYXR1cmVkLXNpZGViYXIsXG4gICYtLXZlaGljbGUtbGF0ZXN0LXNpZGViYXIge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSk7XG4gICAgLmxpc3RpbmdfX3RpdGxlIHsgZGlzcGxheTogbm9uZTsgfVxuICB9XG4gICYtLXNob3dyb29tLXRlYXNlciB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNTYwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMCk7IH1cbiAgICAubGlzdGluZ19fdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7IH1cbiAgICAgIGgxIHtcbiAgICAgICAgQGV4dGVuZCBoMztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0aW5nX19saXN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBtYXJnaW4tbGVmdDogLSByZW0tY2FsYygxMCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0gcmVtLWNhbGMoMTApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoMTUpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0gcmVtLWNhbGMoMTUpO1xuICAgICAgfVxuICAgICAgJi1pdGVtIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NjgpIHsgZmxleC1iYXNpczogNTAlOyB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBmbGV4LWJhc2lzOiAzMy4zMyU7IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7IGZsZXgtYmFzaXM6IDI1JTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1wb3N0LXRlYXNlciB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNTYwKTtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmctdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IHBhZGRpbmctdG9wOiByZW0tY2FsYygxMDApOyB9XG4gICAgLmxpc3RpbmdfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTApOyB9XG4gICAgICBoMSB7XG4gICAgICAgIEBleHRlbmQgaDM7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICAgICAgfVxuICAgIH1cbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoMTApO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKDEwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtIHJlbS1jYWxjKDE1KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKDE1KTtcbiAgICAgIH1cbiAgICAgICYtaXRlbSB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApOyB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7IGZsZXgtYmFzaXM6IDUwJTsgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTUpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZmxleC1iYXNpczogMzMuMzMlOyB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkgeyBmbGV4LWJhc2lzOiAyNSU7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi0tb2ZmZXItdGVhc2VyIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE1NjApO1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEwMCk7IH1cbiAgICAubGlzdGluZ19fdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7IH1cbiAgICAgIGgxIHtcbiAgICAgICAgQGV4dGVuZCBoMztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0aW5nX19saXN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBtYXJnaW4tbGVmdDogLSByZW0tY2FsYygxMCk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0gcmVtLWNhbGMoMTApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoMTUpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0gcmVtLWNhbGMoMTUpO1xuICAgICAgfVxuICAgICAgJi1pdGVtIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NjgpIHsgZmxleC1iYXNpczogNTAlOyB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBmbGV4LWJhc2lzOiAzMy4zMyU7IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7IGZsZXgtYmFzaXM6IDI1JTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1jdXN0b20tZW50cnktdGVhc2VyIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE1NjApO1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUwKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg1MCk7XG4gICAgfVxuICAgIC5saXN0aW5nX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTsgfVxuICAgICAgaDEge1xuICAgICAgICBAZXh0ZW5kIGgzO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX2Jsb2NrLFxuICAgIC5saXN0aW5nX19qdWRnZS1zZXJ2aWNlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTApOyB9XG4gICAgfVxuICAgICYgPiAubGlzdGluZ19fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoMTApO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKDEwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtIHJlbS1jYWxjKDE1KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKDE1KTtcbiAgICAgIH1cbiAgICAgICYgPiAubGlzdGluZ19fbGlzdC1pdGVtIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NjgpIHsgZmxleC1iYXNpczogNTAlOyB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBmbGV4LWJhc2lzOiAzMy4zMyU7IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7IGZsZXgtYmFzaXM6IDI1JTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS12ZWhpY2xlLXRlYXNlciB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNTYwKTtcbiAgICAubGlzdGluZ19faGVhZGVyIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTsgfVxuICAgIH1cbiAgICAubGlzdGluZ19fdGl0bGUge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKDgpOyB9XG4gICAgICBoMSB7XG4gICAgICAgIEBleHRlbmQgaDM7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX29yZGVyIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7IH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKDQpOyB9XG4gICAgICAudmVoaWNsZS1vcmRlciB7IEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7IH1cbiAgICAgIC5maWVsZC12ZWhpY2xlX3NlYXJjaF9vcmRlciB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKDgpOyB9XG4gICAgICAuZmllbGQtdmVoaWNsZV9zZWFyY2hfcGVyX3BhZ2UgeyBAaW5jbHVkZSBncmlkLWNvbHVtbig0KTsgfVxuICAgICAgbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIH1cbiAgICAgIHNlbGVjdCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgaGVpZ2h0OiByZW0tY2FsYyg1MCk7IH1cbiAgICAgIH1cbiAgICAgIC5oZWxwLWJsb2NrIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0aW5nX19maWx0ZXItcmVzdWx0cyB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDMpO1xuICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMik7IH1cbiAgICAgIC5idXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX2ZpbHRlci1yZXN1bHRzLS1yZWR1Y2VkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0aW5nX19hZGp1c3QtZmluYW5jZSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyk7IH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKDIpOyB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0aW5nX19maW5hbmNlLWZvcm0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTsgfVxuICAgIH1cbiAgICAubGlzdGluZ19faXRlbS1jb3VudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBzcGFuIHsgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDsgfVxuICAgIH1cbiAgICAubGlzdGluZ19fbGlzdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoMTApO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKDEwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtIHJlbS1jYWxjKDE1KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKDE1KTtcbiAgICAgIH1cbiAgICAgICYtaXRlbSB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApOyB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7IGZsZXgtYmFzaXM6IDUwJTsgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTUpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZmxleC1iYXNpczogMzMuMzMlOyB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkgeyBmbGV4LWJhc2lzOiAyNSU7IH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmxpc3RpbmdfX2ZpbmFuY2UtZGlzY2xhaW1lcixcbiAgICAubGlzdGluZ19fZGVzY3JpcHRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApOyB9XG4gICAgfVxuICB9XG59XG4uY29udHJvbGxlci12ZWhpY2xlLmFjdGlvbi1kZXRhaWwge1xuICAubGlzdGluZy5saXN0aW5nLS1ibG9jay11c3AgLmxpc3RpbmdfX3RpdGxlIHsgZGlzcGxheTogbm9uZTsgfVxufVxuIiwiLmxvZ28ge1xuICAmLS1wcmltYXJ5IHtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIwMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWF4LXdpZHRoOiByZW0tY2FsYygzMDApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHsgbWF4LXdpZHRoOiByZW0tY2FsYygzNTApOyB9XG4gIH1cbn1cbiIsIi5tZWV0LXRoZS10ZWFtIHtcblx0Jl9fY2F0ZWdvcnktdGl0bGUgaDIge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7IH1cblx0fVxuXHQmX19jYXJkIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdCAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG5cdCAgYm94LXNoYWRvdzogMCAzMHB4IDYwcHggMCByZ2JhKDAsIDAsIDAsIC4xKTtcblx0fVxuXHQmX19wcmltYXJ5LWltYWdlcyB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGltZyB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjVzO1xuXHRcdFx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogcmVtLWNhbGMoNSk7XG5cdFx0XHRib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogcmVtLWNhbGMoNSk7XG5cdFx0XHQmOmhvdmVyIHsgb3BhY2l0eTogLjg7IH1cblx0XHR9XG5cdH1cblx0Jl9fY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYygzMCk7IH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygyMik7IH1cbiAgICB9XG4gIH1cblx0Jl9fZGVzY3JpcHRpb24ge1xuXHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDUpO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNvbG9yOiAjNjY2NjY2O1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuXHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygxNik7IH1cblx0XHRwOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cdH1cblx0Jl9fbGlzdCB7XG5cdFx0dWwge1xuXHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0QGluY2x1ZGUgZ3JpZC1sYXlvdXQoMSwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWxheW91dCgyLCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWQtbGF5b3V0KDMsICdsaScsICRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWxheW91dCg0LCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcblx0XHRcdH1cblx0XHRcdGxpIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7IH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5tZW51LXRvZ2dsZSB7XG4gIGEge1xuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTUpO1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNzcpO1xuICAgIGksXG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICAgIGk6OmJlZm9yZSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpOyB9XG4gIH1cbn1cbi5tZW51IHtcbiAgJi0tbWFpbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogcmVtLWNhbGMoMjApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGdhcDogcmVtLWNhbGMoMzApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGdhcDogcmVtLWNhbGMoMTUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KDE2MDApIHsgY29sdW1uLWdhcDogcmVtLWNhbGMoMjApOyB9XG4gICAgJi5sYXJnZS1ob3Jpem9udGFsID4gbGkgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgIGxpIHtcbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpOyB9XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICYuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtYWN0aXZlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgZ2FwOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZ2FwOiByZW0tY2FsYygzMCk7IH1cbiAgICAgICAgfVxuICAgICAgICAmLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICAgICAgei1pbmRleDogOTk5OTk7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuICB9XG4gICYtLW1haW4tZm9vdGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgJi5ob3Jpem9udGFsID4gbGkgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBsaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTUpOyB9XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmFjdGl2ZSA+IGEge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxuICAgICYgPiBsaSA+IHVsIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIC5zdWJtZW51IHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg1KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg1KTtcbiAgICAgIGxpIGEge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLWZpeGVkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiByZW0tY2FsYygxNSk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7IGdhcDogcmVtLWNhbGMoMjApOyB9XG4gICAgLm1lbnUtaXRlbSB7XG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtLXBob25lIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi0tbWVudS10b2dnbGUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIH1cbiAgICAgICYtLXNvY2lhbCB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGk6OmJlZm9yZSB7IGNvbG9yOiAkYmxhY2s7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1mb290ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDQpO1xuICAgICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpOyB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgcGFkZGluZzogcmVtLWNhbGMoMCA4IDAgMCk7IH1cbiAgICAgIH1cbiAgICAgICYuYWN0aXZlID4gYSB7XG4gICAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAmID4gbGkgPiB1bCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgfVxuICAmLS1zaGFyZSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgIC5tZW51LWl0ZW0ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDApO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg4IDApO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICYtLWZhY2Vib29rIHsgYmFja2dyb3VuZC1jb2xvcjogIzBiNTk5ODsgfVxuICAgICAgICAgICYtLWdvb2dsZS1wbHVzIHsgYmFja2dyb3VuZC1jb2xvcjogI0RBNDgzNTsgfVxuICAgICAgICAgICYtLWxpbmtlZGluIHsgYmFja2dyb3VuZC1jb2xvcjogIzAwNzdCNTsgfVxuICAgICAgICAgICYtLXR3aXR0ZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjNDA5OWZmOyB9XG4gICAgICAgICAgJi0td2hhdHNhcHAgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDFFNjc1OyB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtLXNtcyxcbiAgICAgICYtLXdoYXRzYXBwIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1zaGFyZS1ibG9nIHtcbiAgICAubWVudS1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMSAxIDAgMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW46IHJlbS1jYWxjKDUgNSAwIDApOyB9XG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDggMCk7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgJi0tZmFjZWJvb2sgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMGI1OTk4OyB9XG4gICAgICAgICAgJi0tZ29vZ2xlLXBsdXMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjREE0ODM1OyB9XG4gICAgICAgICAgJi0tbGlua2VkaW4geyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3N0I1OyB9XG4gICAgICAgICAgJi0tdHdpdHRlciB7IGJhY2tncm91bmQtY29sb3I6ICM0MDk5ZmY7IH1cbiAgICAgICAgICAmLS13aGF0c2FwcCB7IGJhY2tncm91bmQtY29sb3I6ICMwMUU2NzU7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi0tc21zLFxuICAgICAgJi0td2hhdHNhcHAge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLXNvY2lhbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogaW5oZXJpdDtcbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCBhIHsgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgfVxuICAgICYgPiBsaSA+IHVsIHsgZGlzcGxheTogbm9uZTsgfVxuICB9XG4gICYtLXZlaGljbGUtZmVhdHVyZWQsXG4gICYtLXZlaGljbGUtbGF0ZXN0IHtcbiAgICAubWVudS1pdGVtIHtcbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBpIHtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIHNwYW4geyBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIGk6OmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgICAgICAgY29udGVudDogJ1xcZTg3ZSc7XG4gICAgICAgIH1cbiAgICAgICAgJi5qcy1zYXZlLXZlaGljbGUtLXNhdmVkIGk6OmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgICAgICAgY29udGVudDogJ1xcZTg3ZCc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi0tdmVoaWNsZS10ZWFzZXIge1xuICAgIC5tZW51LWl0ZW0ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHsgcGFkZGluZzogcmVtLWNhbGMoMiA1KTsgfVxuICAgICAgICBpIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm1lbnUtaXRlbS0tZmluYW5jZSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmc6IHJlbS1jYWxjKDEwIDE2IDkgMCk7IH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm1lbnUtaXRlbS0tc2hhcmUge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIGEge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYygxMCAxNiA5IDApOyB9XG4gICAgICB9XG4gICAgfVxuICAgIC5tZW51LWl0ZW0tLXNhdmUge1xuICAgICAgYSB7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDFweCByZ2JhKCRibGFjaywgMC4zKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAxNiA5IDApO1xuICAgICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIH1cbiAgICAgICAgaTo6YmVmb3JlIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICAgICAgICBjb250ZW50OiAnXFxlODdlJztcbiAgICAgICAgfVxuICAgICAgICAmLmpzLXNhdmUtdmVoaWNsZS0tc2F2ZWQgaTo6YmVmb3JlIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICAgICAgICBjb250ZW50OiAnXFxlODdkJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubWVudS1pdGVtLS12aWV3LWRldGFpbHMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG4gIH1cbiAgJi0tdmVoaWNsZS1mdWxsIHtcbiAgICAubWVudS1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxOCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS12ZWhpY2xlLWZ1bGwtc2Vjb25kYXJ5IHtcbiAgICBvcmRlcjogMTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KDc2OCkge1xuICAgICAgb3JkZXI6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIC5tZW51LWl0ZW0ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDMpO1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm1lbnUtaXRlbS0tc2F2ZSB7XG4gICAgICBhIHtcbiAgICAgICAgaTo6YmVmb3JlIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICAgICAgICBjb250ZW50OiAnXFxlODdlJztcbiAgICAgICAgfVxuICAgICAgICAmLmpzLXNhdmUtdmVoaWNsZS0tc2F2ZWQgaTo6YmVmb3JlIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICAgICAgICBjb250ZW50OiAnXFxlODdkJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1zaG93cm9vbS1mdWxsLFxuICAmLS1vZmZlci1mdWxsIHtcbiAgICAubWVudS1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxOCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgei1pbmRleDogMjtcbn1cbi5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEsXG4uZHJvcGRvd24ubWVudS5ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHsgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTgpOyB9XG4uZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlcixcbi5kcm9wZG93bi5tZW51Lmhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB3aWR0aD0nMTInIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDEyIDgnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHBhdGggZD0nTTEwLjU5LjU5TDYgNS4xNyAxLjQxLjU5IDAgMmw2IDYgNi02JyBmaWxsPSclMjM5OTk5OTknIGZpbGwtcnVsZT0nZXZlbm9kZCcvPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiByZW0tY2FsYygxMSA3KTtcbiAgd2lkdGg6IHJlbS1jYWxjKDExKTtcbiAgaGVpZ2h0OiByZW0tY2FsYyg3KTtcbiAgYm9yZGVyOiBub25lO1xuICByaWdodDogMDtcbn1cbi5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgd2lkdGg9JzEyJyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCAxMiA4JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMC41OS41OUw2IDUuMTcgMS40MS41OSAwIDJsNiA2IDYtNicgZmlsbD0nJTIzOTk5OTk5JyBmaWxsLXJ1bGU9J2V2ZW5vZGQnLz48L3N2Zz5cIik7XG4gIGJhY2tncm91bmQtc2l6ZTogcmVtLWNhbGMoMTEgNyk7XG4gIHdpZHRoOiByZW0tY2FsYygxMSk7XG4gIGhlaWdodDogcmVtLWNhbGMoNyk7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luLXRvcDogLSByZW0tY2FsYygzKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbn1cbi5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgd2lkdGg9JzEyJyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCAxMiA4JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00xMC41OS41OUw2IDUuMTcgMS40MS41OSAwIDJsNiA2IDYtNicgZmlsbD0nJTIzOTk5OTk5JyBmaWxsLXJ1bGU9J2V2ZW5vZGQnLz48L3N2Zz5cIik7XG4gIGJhY2tncm91bmQtc2l6ZTogcmVtLWNhbGMoMTEgNyk7XG4gIHdpZHRoOiByZW0tY2FsYygxMSk7XG4gIGhlaWdodDogcmVtLWNhbGMoNyk7XG4gIGJvcmRlcjogbm9uZTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuLmpzLWRyaWxsZG93bi1iYWNrID4gYSBzcGFuIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuIiwiLnBhZ2luYXRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDggMCk7XG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg1IDEyIDgpO1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHNwYW4geyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgICAmOmZvY3VzLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmFjdGl2ZSxcbiAgICAmLmN1cnJlbnQge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgICYuZmlyc3QgYSBzcGFuOjpiZWZvcmUsXG4gICAgJi5wcmV2aW91cyBhIHNwYW46OmJlZm9yZSxcbiAgICAmLm5leHQgYSBzcGFuOjphZnRlcixcbiAgICAmLmxhc3QgYSBzcGFuOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgICAmLmZpcnN0IGEgc3Bhbjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU1ZGMnO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyKTtcbiAgICB9XG4gICAgJi5wcmV2aW91cyBhIHNwYW46OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFxlNWNiJztcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMik7XG4gICAgfVxuICAgICYubmV4dCBhIHNwYW46OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU1Y2MnO1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDIpO1xuICAgIH1cbiAgICAmLmxhc3QgYSBzcGFuOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFxlNWRkJztcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygyKTtcbiAgICB9XG4gICAgYTpob3ZlciB7XG4gICAgICBzcGFuOjpiZWZvcmUsXG4gICAgICBzcGFuOjphZnRlciB7IGNvbG9yOiAkd2hpdGU7IH1cbiAgICB9XG4gIH1cbiAgJi0tbW9iaWxlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgbGkge1xuICAgICAgJi5maXJzdCxcbiAgICAgICYucHJldmlvdXMsXG4gICAgICAmLm5leHQsXG4gICAgICAmLmxhc3Qge1xuICAgICAgICBhIHtcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJjpmb2N1cyBzcGFuLFxuICAgICAgICAgICY6aG92ZXIgc3BhbiB7XG4gICAgICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICAgICAmOjphZnRlciB7IGNvbG9yOiAkd2hpdGU7IH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi0tZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBkaXNwbGF5OiBibG9jazsgfVxuICB9XG59XG4iLCIucGxheSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlIC8gMTAlO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiAyZW07IC8qIGNoYW5nZSB0aGlzIHRvIGNoYW5nZSBzaXplICovXG4gIGhlaWdodDogM2VtO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtaW5kZW50OiAwLjFlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2Utb3V0O1xuICB3aWR0aDogNGVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBcbiAgICBmb250LXNpemU6IDNlbTsgLyogY2hhbmdlIHRoaXMgdG8gY2hhbmdlIHNpemUgKi9cbiAgfVxuICAmOmhvdmVyIHsgYmFja2dyb3VuZDogI2ZmMDAwMDsgfVxuICAmOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgYm9yZGVyLXJhZGl1czogNSUgLyA1MCU7XG4gICAgYm90dG9tOiA5JTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGxlZnQ6IC01JTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IC01JTtcbiAgICB0b3A6IDklO1xuICB9XG4gICY6OmFmdGVyIHtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMWVtIDAgMWVtIDEuNzMyZW07XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmb250LXNpemU6IDAuNzVlbTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAtMWVtIDAgMCAtMC43NWVtO1xuICAgIHRvcDogNTAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDtcbiAgfVxufVxuIiwiLnJldmVhbC1vdmVybGF5IHsgei1pbmRleDogOTk5OTk5OTk5OTk7IH1cbi5yZXZlYWwge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgJl9faGVhZGVyIHsgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTsgfVxuICAmX19pbWFnZSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDE1KTsgfVxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcbiAgICB9XG4gIH1cbiAgJl9fdmVoaWNsZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjM7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG4gICZfX3ZlaGljbGUtbWFrZS1tb2RlbCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG4gICZfX3ZlaGljbGUtaW1hZ2Uge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTApO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuICAmX19kZXNjcmlwdGlvbiB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICB9XG4gICYtLWN1c3RvbS1lbnRyeSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgICB9XG4gIH1cbiAgJi0tdmVoaWNsZS1lbnF1aXJ5LFxuICAmLS1lbWFpbC12ZWhpY2xlIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUwIDMwIDMwKTtcbiAgICB9XG4gIH1cbiAgJi0tcGFnZS1kZXNjcmlwdGlvbiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWxpZ2h0O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDByZW07XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICB9XG4gICAgLnJldmVhbF9fbG9nbyB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTsgfVxuICAgIC5yZXZlYWxfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIHA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICB9XG4gIH1cbiAgJi0tdWxleiB7XG4gICAgLnJldmVhbF9faGVhZGVyIHsgbWFyZ2luOiByZW0tY2FsYygwIDAgMTUgMCk7IH1cbiAgICAucmV2ZWFsX19mb290ZXIge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMDNiOTI7XG4gICAgfVxuICB9XG4gICYtLXZlaGljbGUtZGVzY3JpcHRpb24sXG4gICYtLXZlaGljbGUtdGVjaG5pY2FsLWRhdGEsXG4gICYtLXZlaGljbGUtc3BlY2lmaWNhdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDQwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyB3aWR0aDogMTAwJTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgICB9XG4gIH1cbiAgJi0tYWRtaW4tZmVlIHtcbiAgICBpbWcgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7IH1cbiAgICBvbCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgfVxufVxuIiwiLnJldmlld3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICZfX2ltYWdlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IHdpZHRoOiA5MCU7IH1cbiAgICBpbWcgeyB3aWR0aDogMTAwJTsgfVxuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgaGVpZ2h0OiA5MCU7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgIHRvcDogMTAlO1xuICAgICAgaGVpZ2h0OiA4MCU7XG4gICAgICB3aWR0aDogNDAlO1xuICAgIH1cbiAgICAmLW91dGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi10b3A6IC0gcmVtLWNhbGMoNTApO1xuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpO1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0gcmVtLWNhbGMoMTAwKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMik7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1pbm5lciB7IHdpZHRoOiAxMDAlOyB9XG4gIH1cbn1cbiIsIi5zYXZlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogOTk7XG4gIC5idXR0b24uZGlzYWJsZWQgeyBkaXNwbGF5OiBub25lOyB9XG4gIGEge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cbn0iLCIudGFicyB7XG4gIEBpbmNsdWRlIG1lbnUtYmFzZTtcbiAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XG4gICYgPiBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgJi50YWJzLXRpdGxlID4gYSB7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDcwKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg3MCk7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuICAgICYudGFicy10aXRsZSA+IGE6Zm9jdXMsXG4gICAgJi50YWJzLXRpdGxlID4gYTpob3ZlcixcbiAgICAmLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAmLnRhYnMtdGl0bGUgPiBhIHsgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgfVxuICB9XG59XG4udmVoaWNsZV9fdG9wICB7XG4gIC50YWJzLWNvbnRlbnQge1xuICAgIC50YWJzLXBhbmVsIHsgcGFkZGluZzogMDsgfVxuICB9XG59XG4udmVoaWNsZV9fbWlkZGxlIHtcbiAgLnRhYnMtY29udGVudCB7XG4gICAgLnRhYnMtcGFuZWwgeyBwYWRkaW5nOiByZW0tY2FsYygyMCAwIDApOyB9XG4gIH1cbn1cbi52ZWhpY2xlX19kYXRhIHtcbiAgLnRhYnMtY29udGVudCB7XG4gICAgLnRhYnMtcGFuZWwgeyBwYWRkaW5nOiByZW0tY2FsYygzMCAwIDApOyB9XG4gIH1cbn1cbiIsIi50b2dnbGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiByZW0tY2FsYygzNzApO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ib2R5LWJhY2tncm91bmQpO1xuICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgei1pbmRleDogOTk5O1xuICAmOjotd2Via2l0LXNjcm9sbGJhciB7IGRpc3BsYXk6IG5vbmU7IH1cbn1cbi50b2dnbGVyLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogOTk4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC40NSk7XG59XG4iLCIudG9wLW1ha2VzLWFuZC1tb2RlbHMge1xuICB1bCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgICBAaW5jbHVkZSBncmlkLWxheW91dCgyLCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMywgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCg0LCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMywgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCg0LCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCg1LCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgxNjAwKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCg2LCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICB9XG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpOyB9XG4gICAgfVxuICB9XG59IiwiLmJsb2NrLS1hYm91dC11cyB7XG4gIEBpbmNsdWRlIGdyaWQtcm93KCk7XG4gIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoODApOyB9XG4gIC5ibG9ja19fZmlyc3Qge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgfVxuICAuYmxvY2tfX3NlY29uZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDUpO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig0KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7IHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0MCk7IH1cbiAgfVxuICAmLWltYWdlIHtcbiAgICAuYmxvY2tfX2ZpcnN0IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig3KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJsb2NrX190aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTsgfVxuICB9XG4gIC5ibG9ja19fZGVzY3JpcHRpb24ge1xuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuICAgICAgICBjb2xvcjogIzY2NjY2NjtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZm9udC1zaXplOiByZW0tY2FsYygxOCk7IH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAn4pyTJztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJsb2NrX19wcmltYXJ5LWltYWdlcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaGFkb3c6IC0xMHB4IDEwcHggJHByaW1hcnktY29sb3I7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgYm94LXNoYWRvdzogLTE1cHggMTVweCAkcHJpbWFyeS1jb2xvcjsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgYm94LXNoYWRvdzogLTMwcHggMzBweCAkcHJpbWFyeS1jb2xvcjsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkgeyBib3gtc2hhZG93OiAtNDBweCA0MHB4ICRwcmltYXJ5LWNvbG9yOyB9XG4gIH1cbn0iLCIuYmxvY2stLWJhbm5lciB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDgwKTsgfVxuICB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgaW1nIHsgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7IH1cbiAgfVxufSIsIi5ibG9jay0tZGVmYXVsdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICB9XG4gICAgJi1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwwLDAsMCkgMCUsIHJnYmEoMCwwLDAsMCkgNTAlLCByZ2JhKDAsMCwwLDAuNzUpIDc1JSwgcmdiYSgwLDAsMCwwLjc1KSAxMDAlKTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICB9XG4gIH1cbiAgLmJsb2NrX19kZXRhaWxzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMjtcbiAgICAmLWlubmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygzMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ibG9ja19fdGl0bGUge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG4gIC5ibG9ja19faWNvbiB7XG4gICAgaTo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoNDApO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuICB9XG59XG4iLCIuYmxvY2stLWRpc2NsYWltZXIge1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gIGNvbG9yOiAjNzE3NTgwO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiAgfVxufVxuIiwiLmJsb2NrLS1kb2N1bWVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICB9XG4gICAgJi1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgICAgJjpob3ZlciB7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwKTsgfVxuICAgIH1cbiAgfVxuICAuYmxvY2tfX2RldGFpbHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAyO1xuICAgICYtaW5uZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDI1KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI1KTtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygyNSk7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxOCAyMCk7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICB9XG4gIH1cbiAgLmJsb2NrX190aXRsZSxcbiAgLmJsb2NrX19pY29uIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbiAgLmJsb2NrX19pY29uIGk6OmJlZm9yZSB7IGNvbG9yOiAjNjY2NjY2OyB9XG59XG4iLCIuYmxvY2stLWZvb3RlciB7XG4gIGltZyB7IGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpOyB9XG59IiwiLmJsb2NrLS1oZXJvIHtcbiAgaW1nIHsgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7IH1cbn0iLCIuYmxvY2stLWluZGV4LWhlYWRlciB7XG4gIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7IH1cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgICBpbWcgeyB3aWR0aDogMTAwJTsgfVxuICB9XG4gIC5ibG9ja19fdGl0bGUge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTU2MCk7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIH1cbiAgICBoMSB7XG4gICAgICBAZXh0ZW5kIGgzO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICAgIH1cbiAgfVxuICAuYmxvY2tfX2Rlc2NyaXB0aW9uIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE1NjApO1xuICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gIH1cbn0iLCIuYmxvY2stLW9mZmVycyB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwMCk7IH1cbiAgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG59IiwiLmJsb2NrLS1wYXJ0bmVyLXJldmlld3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHJlbS1jYWxjKDEwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHsgZ2FwOiByZW0tY2FsYygxNSk7IH1cbiAgLmJsb2NrX19wcmltYXJ5LWltYWdlcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiByZW0tY2FsYygxNTApO1xuICAgIGhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDE5MCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gIH1cbiAgLmJsb2NrX19yYXRpbmcge1xuICAgIGk6OmJlZm9yZSB7XG4gICAgICBjb2xvcjogI0ZEOEIxRDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgIH1cbiAgICAmLS0xIHtcbiAgICAgIGk6bnRoLWNoaWxkKDEpOjpiZWZvcmUgeyBjb250ZW50OiAnXFxlODM4JzsgfVxuICAgIH1cbiAgICAmLS0yIHtcbiAgICAgIGk6bnRoLWNoaWxkKDEpOjpiZWZvcmUsXG4gICAgICBpOm50aC1jaGlsZCgyKTo6YmVmb3JlIHsgY29udGVudDogJ1xcZTgzOCcgfVxuICAgIH1cbiAgICAmLS0zIHtcbiAgICAgIGk6bnRoLWNoaWxkKDEpOjpiZWZvcmUsXG4gICAgICBpOm50aC1jaGlsZCgyKTo6YmVmb3JlLFxuICAgICAgaTpudGgtY2hpbGQoMyk6OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MzgnIH1cbiAgICB9XG4gICAgJi0tNCB7XG4gICAgICBpOm50aC1jaGlsZCgxKTo6YmVmb3JlLFxuICAgICAgaTpudGgtY2hpbGQoMik6OmJlZm9yZSxcbiAgICAgIGk6bnRoLWNoaWxkKDMpOjpiZWZvcmUsXG4gICAgICBpOm50aC1jaGlsZCg0KTo6YmVmb3JlIHsgY29udGVudDogJ1xcZTgzOCcgfVxuICAgIH1cbiAgICAmLS01IHtcbiAgICAgIGk6OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MzgnIH1cbiAgICB9XG4gIH1cbiAgLmJsb2NrX19yYXRpbmctdmFsdWUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgfVxufSIsIi5ibG9jay0tcGFydG5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogcmVtLWNhbGMoMTApO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkgeyBnYXA6IHJlbS1jYWxjKDE1KTsgfVxuICAuYmxvY2tfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDE1MCk7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI0MjMyMTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDE5MCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICY6aG92ZXIgeyBmaWx0ZXI6IGJyaWdodG5lc3MoMSkgaW52ZXJ0KDApOyB9XG4gICAgfVxuICB9XG4gIC5ibG9ja19fcmF0aW5nIHtcbiAgICBpOjpiZWZvcmUge1xuICAgICAgY29sb3I6ICNGRDhCMUQ7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICB9XG4gICAgJi0tMSB7XG4gICAgICBpOm50aC1jaGlsZCgxKTo6YmVmb3JlIHsgY29udGVudDogJ1xcZTgzOCc7IH1cbiAgICB9XG4gICAgJi0tMiB7XG4gICAgICBpOm50aC1jaGlsZCgxKTo6YmVmb3JlLFxuICAgICAgaTpudGgtY2hpbGQoMik6OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MzgnIH1cbiAgICB9XG4gICAgJi0tMyB7XG4gICAgICBpOm50aC1jaGlsZCgxKTo6YmVmb3JlLFxuICAgICAgaTpudGgtY2hpbGQoMik6OmJlZm9yZSxcbiAgICAgIGk6bnRoLWNoaWxkKDMpOjpiZWZvcmUgeyBjb250ZW50OiAnXFxlODM4JyB9XG4gICAgfVxuICAgICYtLTQge1xuICAgICAgaTpudGgtY2hpbGQoMSk6OmJlZm9yZSxcbiAgICAgIGk6bnRoLWNoaWxkKDIpOjpiZWZvcmUsXG4gICAgICBpOm50aC1jaGlsZCgzKTo6YmVmb3JlLFxuICAgICAgaTpudGgtY2hpbGQoNCk6OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MzgnIH1cbiAgICB9XG4gICAgJi0tNSB7XG4gICAgICBpOjpiZWZvcmUgeyBjb250ZW50OiAnXFxlODM4JyB9XG4gICAgfVxuICB9XG4gIC5ibG9ja19fcmF0aW5nLXZhbHVlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgfVxufSIsIi5wb3AtdXAge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogOTk5OTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgJl9faW5uZXIge1xuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IHJlbS1jYWxjKDEwKTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIC8vIHdpZHRoOiA5MCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICB6LWluZGV4OiA5OTk5O1xuXG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMTApO1xuXG4gICAgbWF4LXdpZHRoOiA5NSU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHRvcDogcmVtLWNhbGMoMTUpO1xuICAgICAgbWF4LXdpZHRoOiBhdXRvO1xuICAgICAgLy8gd2lkdGg6IDgwJTtcbiAgICAgIC8vIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbiAgICAgIC8vIG1heC13aWR0aDogcmVtLWNhbGMoMTAyNCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHRvcDogcmVtLWNhbGMoMzApO1xuICAgICAgLy8gcGFkZGluZzogcmVtLWNhbGMoMzApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkgeyB0b3A6IHJlbS1jYWxjKDUwKTsgfVxuICB9XG4gICZfX292ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuOCk7XG4gICAgei1pbmRleDogOTk5OTtcbiAgfVxuICAmX19wcmltYXJ5LWltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgaW1nIHsgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNyk7IH1cbiAgfVxuICAmX19jbG9zZS1pY29uIHtcbiAgICByaWdodDogcmVtLWNhbGMoMjApO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgJjpob3ZlciB7IGNvbG9yOiAkd2hpdGU7IH1cbiAgfVxufVxuYm9keS5wb3AtdXAtb3BlbiB7IG92ZXJmbG93OiBoaWRkZW47IH0iLCIuYmxvY2stLXJlc3VsdHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGdhcDogcmVtLWNhbGMoMjApO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMwKTtcbiAgICBnYXA6IHJlbS1jYWxjKDMwKTtcbiAgfVxuICAuYmxvY2tfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC5ibG9ja19fZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogaW5zaWRlO1xuICAgIH1cbiAgfVxufSIsIi5ibG9jay0tc2VhcmNoIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoMjQwLDI0OSwyNTUsMSkgMCUsIHJnYmEoMjE0LDIxNCwyMTQsMSkgMTAwJSk7XG4gIC5ibG9ja19fZGV0YWlscyB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmc6IHJlbS1jYWxjKDE1KTsgfVxuICB9XG4gIC5ibG9ja19faWNvbiB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1KTsgfVxuICB9XG4gIC5ibG9ja19fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gIH1cbiAgJi0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSg5MCw5MCw5MCwxKSAwJSwgcmdiYSgwLDAsMCwxKSAxMDAlKTtcbiAgfVxufSIsIi5ibG9jay0tc2VydmljZSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjsgfVxuICAuYmxvY2tfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaW1nIHsgd2lkdGg6IDEwMCU7IH1cbiAgICAmLWZhZGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLDAsMCwwKSAwJSwgcmdiYSgwLDAsMCwwKSA1MCUsIHJnYmEoMCwwLDAsMC43NSkgNzUlLCByZ2JhKDAsMCwwLDAuNzUpIDEwMCUpO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgIH1cbiAgfVxuICAuYmxvY2tfX292ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAyO1xuICAgICYtaW5uZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMjApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJsb2NrX190aXRsZSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbiAgLmJsb2NrX19pY29uIHtcbiAgICBpOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiByZW0tY2FsYyg0MCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB9XG4gIH1cbiAgLmJsb2NrX19kZXRhaWxzIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygyMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZzogcmVtLWNhbGMoMzApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBwYWRkaW5nOiByZW0tY2FsYyg1MCk7IH1cbiAgfVxuICAuYmxvY2tfX3N1Yi10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgfVxuICB9XG4gIC5ibG9ja19fZGVzY3JpcHRpb24ge1xuICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIH1cbn0iLCIuYmxvY2stLXRpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC4wNSksIDAgNnB4IDIwcHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBwYWRkaW5nOiByZW0tY2FsYygzMCA1MCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgcGFkZGluZzogcmVtLWNhbGMoNDApOyB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkgeyBwYWRkaW5nOiByZW0tY2FsYyg1MCk7IH1cbiAgLmJsb2NrX19pY29uIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpOyB9XG4gICAgaSB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgfVxuICAuYmxvY2tfX3RpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgfVxuICAuYmxvY2tfX2Rlc2NyaXB0aW9uIHtcbiAgICBjb2xvcjogIzZGNkY2RjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICB9XG59IiwiLmJsb2NrLS11c3Age1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiByZW0tY2FsYygxMCk7XG4gIGhlaWdodDogMTAwJTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZ2FwOiByZW0tY2FsYygyMCk7IH1cbiAgLmJsb2NrX190aXRsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygxOCk7IH1cbiAgfVxufSIsIi5ibG9jay0tdmVoaWNsZS10eXBlcyB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiAgLmJsb2NrX19wcmltYXJ5LWltYWdlcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgaW1nIHsgd2lkdGg6IDEwMCU7IH1cbiAgfVxuICAuYmxvY2tfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gICY6aG92ZXIge1xuICAgIC5ibG9ja19fcHJpbWFyeS1pbWFnZXMgeyBvcGFjaXR5OiAwLjc1OyB9XG4gIH1cbn1cbiIsIi5icmFuY2gtLWNvbnRhY3Qge1xuICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAuYnJhbmNoX190ZWxlcGhvbmUge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzNik7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoNDIpOyB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG4gIC5icmFuY2hfX29wZW5pbmctaG91cnMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgJi10aXRsZSB7IEBleHRlbmQgaDM7IH1cbiAgICBzZWxlY3QgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7IH1cbiAgfVxufVxuIiwiLmJyYW5jaC0tZm9vdGVyIHtcbiAgY29sb3I6ICMyNDIzMjE7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICBsaW5lLWhlaWdodDogMS42O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpOyB9XG4gIGEgeyBjb2xvcjogIzI0MjMyMTsgfVxuICAuYnJhbmNoX19zb2NpYWwgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7IH1cbiAgLmJyYW5jaF9fbmFtZSB7IGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkOyB9XG4gIC5icmFuY2hfX2FkZHJlc3Mge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgc3BhbiB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcsJztcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZDo6YWZ0ZXIgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgfVxuICB9XG59XG4iLCIuYnJhbmNoLS1mdWxsIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNTApO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTAwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTAwKTtcbiAgfVxuICAuYnJhbmNoX19kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTsgfVxuICAgIGE6bm90KC5idXR0b24pIHtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGRhcmtlbigkc2Vjb25kYXJ5LWNvbG9yLDEwJSk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYge1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygyNik7IH1cbiAgICB9XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDI0KTsgfVxuICAgIH1cbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpOyB9XG4gICAgfVxuICAgIHAge1xuICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIH1cbiAgfVxuICAuYnJhbmNoX19mb3JtIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApOyB9XG4gICAgJi10aXRsZSB7XG4gICAgICBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuYnJhbmNoLS10ZWFzZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAuYnJhbmNoX19tYXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDQwMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZmxleDogMTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gICAgI21hcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgdG9wOiBpbmhlcml0O1xuICAgICAgICBsZWZ0OiBpbmhlcml0O1xuICAgICAgICBib3R0b206IGluaGVyaXQ7XG4gICAgICAgIHJpZ2h0OiBpbmhlcml0O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5icmFuY2hfX2RldGFpbHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGZsZXg6IDE7IH1cbiAgICAmLWlubmVyIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgcGFkZGluZzogcmVtLWNhbGMoMzApOyB9XG4gICAgfVxuICB9XG4gIC5icmFuY2hfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDE4KTsgfVxuICAgIFxuICB9XG4gIC5icmFuY2hfX25hbWUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpOyB9XG4gIH1cbiAgaDEuYnJhbmNoX19uYW1lIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygzMCk7IH1cbiAgfVxuICAuYnJhbmNoX19hZGRyZXNzIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygxNik7IH1cbiAgICBzcGFuIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgfVxuICAuYnJhbmNoX190ZWxlcGhvbmUge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICAmID4gdWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBnYXA6IHJlbS1jYWxjKDEwKTtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG4gIC5icmFuY2hfX3RlbGVwaG9uZS1vcHRpb25zIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG4gICAgc3Ryb25nIHsgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDsgfVxuICB9XG4gIC5icmFuY2hfX29wZW5pbmctaG91cnMge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBzZWxlY3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0OSk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpOyB9XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiByZW0tY2FsYyg1KTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5icmFuY2hfX3N0b2NrIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24oKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICB9XG4gIH1cbiAgLmJyYW5jaF9fbGluayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgYSB7XG4gICAgICBpOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5icmFuY2hfX2RpcmVjdGlvbnMgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7IH1cbiAgJi5icmFuY2gtLXRlYXNlci12ZWhpY2xlIHtcbiAgICAuYnJhbmNoX19tYXAge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgZmxleDogbm9uZTtcbiAgICAgICAgZmxleC1iYXNpczogNzAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmJyYW5jaC0tdGVhc2VyLWZ1bGwge1xuICAgIC5icmFuY2hfX2RldGFpbHMgeyBvcmRlcjogLTE7IH1cbiAgfVxufSIsIi5icmFuY2gtLXZlaGljbGUge1xuICBAaW5jbHVkZSBncmlkLXJvdygpO1xuICAuYnJhbmNoX19maXJzdCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICB9XG4gIC5icmFuY2hfX3NlY29uZCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDE1KTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDUpO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDMpO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDIpO1xuICAgIH1cbiAgfVxuICAmLWltYWdlIHtcbiAgICAuYnJhbmNoX19maXJzdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7IH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig3KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJyYW5jaF9fZGV0YWlscyB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDAsIDAsIDAsIDAuMDMpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjAzKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYygzMCk7IH1cbiAgICAmLWlubmVyIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYnJhbmNoX19hZGRyZXNzIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig1KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICYuYnJhbmNoX19uYW1lIHsgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDsgfVxuICAgIH1cbiAgfVxuICAuYnJhbmNoX19jdGEge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNyk7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgfVxuICAgICAgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpOyB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDQpO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5icmFuY2hfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm94LXNoYWRvdzogLTEwcHggMTBweCAkcHJpbWFyeS1jb2xvcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBib3gtc2hhZG93OiAtMTVweCAxNXB4ICRwcmltYXJ5LWNvbG9yOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBib3gtc2hhZG93OiAtMzBweCAzMHB4ICRwcmltYXJ5LWNvbG9yOyB9XG4gIH1cbn0iLCIuYnJhbmNoLS13aWRnZXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBib3gtc2hhZG93OiAwIDRweCA4cHggMCByZ2JhKDAsIDAsIDAsIDAuMDUpLCAwIDZweCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgcGFkZGluZzogcmVtLWNhbGMoMzApO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYyg1MCk7IH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7IHBhZGRpbmc6IHJlbS1jYWxjKDcwKTsgfVxuICAuYnJhbmNoX19uYW1lIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gIH1cbiAgLmJyYW5jaF9fYWRkcmVzcyB7XG4gICAgY29sb3I6ICM2RjZGNkY7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxuICAuYnJhbmNoX19saW5rIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtIHJlbS1jYWxjKDIzKTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUgMzApO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNTApO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg1MCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmN1c3RvbS1lbnRyeS0tZmFxIHtcbiAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApOyB9XG4gIC5jdXN0b20tZW50cnlfX2lubmVyIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgfVxuICAuY3VzdG9tLWVudHJ5X190aXRsZSB7XG4gICAgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5jdXN0b20tZW50cnktLXJldmlld3Mge1xuICAmLmN1c3RvbS1lbnRyeS0tZmVhdHVyZWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmN1c3RvbS1lbnRyeV9fY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgLmN1c3RvbS1lbnRyeV9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoNTApOyB9XG4gICAgfVxuICAgIC5jdXN0b20tZW50cnlfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICB9XG4gICAgfVxuICAgIC5jdXN0b20tZW50cnlfX2Zvb3RlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IHJlbS1jYWxjKDE1KTtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgZ2FwOiByZW0tY2FsYygzMCk7XG4gICAgICB9XG4gICAgfVxuICAgIC5jdXN0b20tZW50cnlfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICAgIGltZyB7IGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAgIH1cbiAgICAuY3VzdG9tLWVudHJ5X19kZXRhaWxzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiByZW0tY2FsYyg4KTtcbiAgICB9XG4gICAgLmN1c3RvbS1lbnRyeV9fbmFtZSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygyMik7IH1cbiAgICB9XG4gICAgLmN1c3RvbS1lbnRyeV9fcmF0aW5nIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiByZW0tY2FsYygzKTtcbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogI0ZEOEIxRDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuY3VzdG9tLWVudHJ5LS10ZWFzZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMzApO1xuICAgIH1cbiAgICAuY3VzdG9tLWVudHJ5X19jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICAuY3VzdG9tLWVudHJ5X190aXRsZSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cbiAgICAuY3VzdG9tLWVudHJ5X19kZXNjcmlwdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7IH1cbiAgICB9XG4gICAgLmN1c3RvbS1lbnRyeV9fZm9vdGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogcmVtLWNhbGMoMTUpO1xuICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGdhcDogcmVtLWNhbGMoMzApOyB9XG4gICAgfVxuICAgIC5jdXN0b20tZW50cnlfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICAgIGltZyB7IGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAgIH1cbiAgICAuY3VzdG9tLWVudHJ5X19kZXRhaWxzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiByZW0tY2FsYyg4KTtcbiAgICB9XG4gICAgLmN1c3RvbS1lbnRyeV9fbmFtZSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cbiAgICAuY3VzdG9tLWVudHJ5X19yYXRpbmcge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IHJlbS1jYWxjKDMpO1xuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAjRkQ4QjFEO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5jdXN0b20tZW50cnktLWZ1bGwge1xuICAgIC5jdXN0b20tZW50cnlfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNTApOyB9XG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY3VzdG9tLWVudHJ5X19jdXN0b20tZmllbGRzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgc3BhbiB7IGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY3VzdG9tLWVudHJ5X19kZXNjcmlwdGlvbiB7XG4gICAgICBwIGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICY6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5kZXBhcnRtZW50LS1mb290ZXIge1xuICBjb2xvcjogJHdoaXRlO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygxNik7IH1cbiAgYSB7IGNvbG9yOiAkd2hpdGU7IH1cbiAgLmRlcGFydG1lbnRfX25hbWUge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cbiAgLmRlcGFydG1lbnRfX29wZW5pbmctaG91cnMge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNik7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmRlcGFydG1lbnRfX2xpc3QtaXRlbSB7IGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgfVxuICAuZGVwYXJ0bWVudF9fdGVsZXBob25lIHtcbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZ2FwOiByZW0tY2FsYygxMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBnYXA6IHJlbS1jYWxjKDE1KTsgfVxuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGxpIHtcbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg1KTtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygyNCk7IH1cbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5kZXBhcnRtZW50LS10ZWFzZXIge1xuICAuZGVwYXJ0bWVudF9fbmFtZSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDE4KTsgfVxuICB9XG4gIC5kZXBhcnRtZW50X190ZWxlcGhvbmUge1xuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZ2FwOiByZW0tY2FsYyg1KTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDE2KTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZGVwYXJ0bWVudF9fb3BlbmluZy1ob3VycyB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDE2KTsgfVxuICB9XG4gIC5kZXBhcnRtZW50X19sYWJlbCB7IGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7IH1cbiAgLmRlcGFydG1lbnRfX3ZhbHVlIHsgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTsgfVxufSIsIi5mb3JtLS1kaXJlY3Rpb25zIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgLmZpZWxkLXN0YXJ0aW5nLXBvaW50IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNSk7XG4gICAgfVxuICB9XG4gIC5maWVsZC1kZXN0aW5hdGlvbiB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDUpO1xuICAgIH1cbiAgfVxuICAuZmllbGQtc3VibWl0IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgLmJ1dHRvbiB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMik7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygyNSk7XG4gICAgICAuYnV0dG9uIHsgd2lkdGg6IDEwMCU7IH1cbiAgICB9XG4gIH1cbiAgaW5wdXQsXG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgaGVpZ2h0OiByZW0tY2FsYyg1MCk7IH1cbiAgfVxuICAuaGVscC1ibG9jayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICB9XG4gICYuZm9ybS0tc2luZ2xlLWJyYW5jaCB7XG4gICAgLmZpZWxkLXN0YXJ0aW5nLXBvaW50IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5mb3JtLS12ZWhpY2xlLWRpcmVjdGlvbnMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5jb250cm9sLWxhYmVsIHsgZGlzcGxheTogbm9uZTsgfVxuICBpbnB1dCxcbiAgW3R5cGU9J3RleHQnXSB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg1MCk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTApO1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTUpO1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTUpO1xuICAgIH1cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogIzk5OTk5OTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICB9XG4gIH1cbiAgLmZpZWxkLXN1Ym1pdCB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgLmJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24oKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDQwKTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICB9XG4gIH1cbn0iLCIuZm9ybS0tZW5xdWlyeSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gIC5maWVsZC1lbnF1aXJ5Zm9ybS1maXJzdF9uYW1lLFxuICAuZmllbGQtZW5xdWlyeWZvcm0tbGFzdF9uYW1lLFxuICAuZmllbGQtZW5xdWlyeWZvcm0tZW1haWwsXG4gIC5maWVsZC1lbnF1aXJ5Zm9ybS10ZWxlcGhvbmUge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDMpO1xuICAgIH1cbiAgfVxuICAuZmllbGQtZW5xdWlyeWZvcm0tYnJhbmNoLFxuICAuZmllbGQtZW5xdWlyeWZvcm0tbWVzc2FnZSxcbiAgLmZvcm0tbWFya2V0aW5nLFxuICAuZmllbGQtc3VibWl0LFxuICAuZm9ybS1kaXNjbGFpbWVyIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gIH1cbn1cbiIsIi5mb3JtLS1wYXJ0LWV4Y2hhbmdlIHtcbiAgLmZvcm1fX3RpdGxlIHtcbiAgICBAZXh0ZW5kIGgzO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgfVxuICAuZm9ybV9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICBjb2xvcjogIzcxNzU4MDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIH1cbiAgLmZpZWxkLXZlaGljbGUtcmVnaXN0cmF0aW9uIHtcbiAgICBmbGV4OiAxO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgaW5wdXQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDU0KTtcbiAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNSk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg1KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICY6OnBsYWNlaG9sZGVyIHsgY29sb3I6ICM4Njg2ODY7IH1cbiAgICB9XG4gICAgLmNvbnRyb2wtbGFiZWwgeyBkaXNwbGF5OiBub25lOyB9XG4gIH1cbiAgLmZpZWxkLXN1Ym1pdCB7XG4gICAgZmxleDogMTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAuYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbiAgJi5mb3JtLS1wYXJ0LWV4Y2hhbmdlLW5vLXZlaGljbGUge1xuICAgIC5maWVsZC12ZWhpY2xlLXJlZ2lzdHJhdGlvbiB7XG4gICAgICBpbnB1dCB7IGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7IH1cbiAgICB9XG4gIH1cbn0iLCIuZm9ybS0tc2VsbC15b3VyLXZlaGljbGUge1xuICBbdHlwZT0ndGV4dCddLFxuICBbdHlwZT0ncGFzc3dvcmQnXSxcbiAgW3R5cGU9J2RhdGUnXSxcbiAgW3R5cGU9J2RhdGV0aW1lJ10sXG4gIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLFxuICBbdHlwZT0nbW9udGgnXSxcbiAgW3R5cGU9J3dlZWsnXSxcbiAgW3R5cGU9J2VtYWlsJ10sXG4gIFt0eXBlPSdudW1iZXInXSxcbiAgW3R5cGU9J3NlYXJjaCddLFxuICBbdHlwZT0ndGVsJ10sXG4gIFt0eXBlPSd0aW1lJ10sXG4gIFt0eXBlPSd1cmwnXSxcbiAgW3R5cGU9J2NvbG9yJ10sXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7IH1cbiAgbGFiZWwuZXJyb3Ige1xuICAgIGhlaWdodDogcmVtLWNhbGMoMTkpO1xuICAgIG1hcmdpbi10b3A6IC0gcmVtLWNhbGMoMTUpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICBjb2xvcjogJGFsZXJ0LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygxOSk7XG4gIH1cbiAgLmZvcm1fX2JhY2sge1xuICAgIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2KTtcbiAgICAgIGkgeyBmb250LXNpemU6IHJlbS1jYWxjKDEyKTsgfVxuICAgICAgc3BhbiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9ybV9fc3RlcDAge1xuICAgIC5maWVsZC12ZWhpY2xlLXJlZ2lzdHJhdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICAuZm9ybS1ncm91cF9faW5wdXQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDYwKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyg2MCk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDYpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg2KTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBmb250LWZhbWlseTogXCI2N2RlZ3JlZXNcIjtcbiAgICAgICAgICBjb250ZW50OiBcIlxcNDdcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg2MCk7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDUwKTtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMi4xO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogcmVtLWNhbGMoNik7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogcmVtLWNhbGMoNik7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICAgICAgICBkaXJlY3Rpb246IGx0cjtcbiAgICAgICAgICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNTgpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb250cm9sLWxhYmVsIHsgZGlzcGxheTogbm9uZTsgfVxuICAgIH1cbiAgfVxufVxuIiwiLmZvcm0tLXZlaGljbGUtZW5xdWlyeSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gIC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tZmlyc3RfbmFtZSxcbiAgLmZpZWxkLXZlaGljbGVlbnF1aXJ5Zm9ybS1sYXN0X25hbWUsXG4gIC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tZW1haWwsXG4gIC5maWVsZC12ZWhpY2xlZW5xdWlyeWZvcm0tdGVsZXBob25lIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigzKTtcbiAgICB9XG4gIH1cbiAgLmZpZWxkLXZlaGljbGVlbnF1aXJ5Zm9ybS1tZXNzYWdlLFxuICAuZm9ybS1tYXJrZXRpbmcsXG4gIC5maWVsZC1zdWJtaXQsXG4gIC5mb3JtLWRpc2NsYWltZXIge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgfVxufVxuIiwiLm5vLWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDc1JTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICZfX3RleHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBtYXJnaW4tdG9wOiAtIHJlbS1jYWxjKDEwKTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG4udmVoaWNsZS0tcmVjZW50bHktdmlld2VkIHtcbiAgLm5vLWltYWdlIHtcbiAgICAubm8taW1hZ2VfX3RleHQge1xuICAgICAgbWFyZ2luLXRvcDogLSByZW0tY2FsYyg2KTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgIH1cbiAgfVxufVxuLnZlaGljbGUtLWZ1bGwge1xuICAubm8taW1hZ2Uge1xuICAgIC5uby1pbWFnZV9fdGV4dCB7XG4gICAgICBtYXJnaW4tdG9wOiAtIHJlbS1jYWxjKDEzKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICAgIH1cbiAgfVxufVxuLnZlaGljbGUtLXNpbWlsYXIge1xuICAubm8taW1hZ2Uge1xuICAgIC5uby1pbWFnZV9fdGV4dCB7XG4gICAgICBtYXJnaW4tdG9wOiAtIHJlbS1jYWxjKDEwKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgfVxufVxuLnZlaGljbGUtLWNvbXBhcmUge1xuICAubm8taW1hZ2Uge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE4MCk7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cbi52ZWhpY2xlLS10ZWFzZXIsXG4udmVoaWNsZS0tZmVhdHVyZWQsXG4udmVoaWNsZS0tZmVhdHVyZWQtc2lkZWJhcixcbi52ZWhpY2xlLS1sYXRlc3QsXG4udmVoaWNsZS0tbGF0ZXN0LXNpZGViYXIsXG4udmVoaWNsZS0tc2ltaWxhciB7XG4gIC5uby1pbWFnZSB7XG4gICAgLm5vLWltYWdlX190ZXh0IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAtIHJlbS1jYWxjKDEzKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucHJpbWFyeS1pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJl9fdGl0bGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC41KTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMik7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG4gICZfX2Rlc2NyaXB0aW9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgfVxuICAmX19lbmxhcmdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICB0b3A6IHJlbS1jYWxjKDEwKTtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgICB0b3A6IHJlbS1jYWxjKDE1KTtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMyk7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuICAmLS12ZWhpY2xlIHtcbiAgICAucHJpbWFyeS1pbWFnZV9faW1hZ2UgaW1nIHsgY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIH1cbn1cbiIsIi5zZWNvbmRhcnktaW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICZfX2ltYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgfVxuICAgICYtb3ZlcmxheSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsMCwwLDApIDAlLCByZ2JhKDAsMCwwLDApIDUwJSwgcmdiYSgwLDAsMCwwLjc1KSA3NSUsIHJnYmEoMCwwLDAsMC43NSkgMTAwJSk7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgfVxuICB9XG4gICZfX2RldGFpbHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAyO1xuICAgICYtaW5uZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgfVxuICAmX190aXRsZSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbiAgJl9faWNvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgaTo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoNDApO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuICB9XG59XG4iLCIub2ZmZXItLWZ1bGwge1xuICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzApO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEwMCk7IH1cbiAgLm9mZmVyX19oZWFkaW5nIHtcbiAgICBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7IH1cbiAgICB9XG4gIH1cbiAgLm9mZmVyX19saW5rIHtcbiAgICBAaW5jbHVkZSBidXR0b24oKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDggMTQpO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gIH1cbiAgLm9mZmVyX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdygpO1xuICAgICYtZmlyc3Qge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1zZWNvbmQge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICB0b3A6IHJlbS1jYWxjKDMwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm9mZmVyX19tZWRpYSB7XG4gICAgLm9mZmVyX19wcmltYXJ5LWltYWdlcyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgaW1nIHsgd2lkdGg6IDEwMCU7IH1cbiAgICAgIH0gICAgXG4gICAgfVxuICB9XG4gIC5vZmZlcl9faGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7IH1cbiAgICAub2ZmZXJfX3RpdGxlIHtcbiAgICAgIGgxIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApOyB9XG4gICAgICB9XG4gICAgfVxuICAgIC5vZmZlcl9fbW9udGhseS1wcmljZSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1KTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBzcGFuIHsgY29sb3I6ICM3MTc1ODA7IH1cbiAgICB9XG4gIH1cbiAgLm9mZmVyX19tb2JpbGUtc2lkZWJhciB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZGlzcGxheTogbm9uZTsgfVxuICB9XG4gIC5vZmZlcl9fZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICAub2ZmZXJfX3N1Yi10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygzMCk7IH1cbiAgICB9XG4gICAgJi1pbm5lciB7XG4gICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJHByaW1hcnktY29sb3IsMTAlKTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5vZmZlcl9fdGFibGUge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICB0YWJsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGJvZHkge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygxNik7IH1cbiAgICAgICAgICAmOm50aC1jaGlsZChvZGQpIHsgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHsgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgICAgICAgIHRoLFxuICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYpO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGNkY2RjY7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYygxMCk7IH1cbiAgICAgICAgICB9XG4gICAgICAgICAgdGgge1xuICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAub2ZmZXJfX3ZpZGVvcyB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApOyB9XG4gICAgICAgICY6Omxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIGlmcmFtZSB7IGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5vZmZlcl9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNTYwKTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApOyB9XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGxpIHtcbiAgICAgICAgaW1nIHsgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm9mZmVyX19jb250YWN0IHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgIGgzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgfVxuICAgIHAge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgfVxuICB9XG4gIC5vZmZlcl9fdGVsZXBob25lIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygyMCk7XG4gICAgJi1sYWJlbCB7XG4gICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgfVxuICAgICYtdmFsdWUge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICBpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg1KTtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgICAgc3BhbiB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICB9XG4gIH1cbiAgLm9mZmVyX19mb3JtIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApOyB9XG4gICAgJi10aXRsZSB7XG4gICAgICBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLm9mZmVyLS10ZWFzZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC5vZmZlcl9fcHJpbWFyeS1pbWFnZXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICY6aG92ZXIgeyBvcGFjaXR5OiAuODsgfVxuICAgIH1cbiAgfVxuICAub2ZmZXJfX2RldGFpbHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygyMCAxMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmc6IHJlbS1jYWxjKDIwKTsgfVxuICB9XG4gIC5vZmZlcl9fdGl0bGUge1xuICAgIGgyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpOyB9XG4gICAgfVxuICB9XG4gIC5vZmZlcl9fc3ViLXRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzY2NjY2NjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpOyB9XG4gIH1cbiAgLm9mZmVyX19ib3R0b20ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgZ2FwOiByZW0tY2FsYygzMCk7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNSAxMCk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFOEU4RTg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZzogcmVtLWNhbGMoMjApOyB9XG4gIH1cbiAgLm9mZmVyX19saW5rIHtcbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEzKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYygxNik7IH1cbiAgICB9XG4gIH1cbiAgLm9mZmVyX19tb250aGx5LXByaWNlIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygyMik7IH1cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgZm9udC1zaXplOiA3MCU7XG4gICAgfVxuICB9XG59XG4iLCIucGFnZS0tY29udGFjdCB7XG4gIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg1MCk7IH1cbiAgJiA+IC5wYWdlX19wcmltYXJ5LWltYWdlcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gICAgaW1nIHsgd2lkdGg6IDEwMCU7IH1cbiAgfVxuICAmID4gLnBhZ2VfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIC5wYWdlX190aXRsZSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTsgfVxuICAgICAgaDEge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygzMCk7IH1cbiAgICAgIH1cbiAgICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpOyB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wYWdlX19kZXNjcmlwdGlvbiB7XG4gICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgYTpub3QoLmJ1dHRvbikge1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IGRhcmtlbigkc2Vjb25kYXJ5LWNvbG9yLDEwJSk7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBoMSxcbiAgICAgIGgyLFxuICAgICAgaDMsXG4gICAgICBoNCxcbiAgICAgIGg1LFxuICAgICAgaDYgeyBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTApOyB9XG4gICAgICBwIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgfVxuICAgIH1cbiAgICAucGFnZV9fZmlsZXMge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgICAgdWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnBhZ2VfX2JyYW5jaGVzIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gIH1cbiAgLnBhZ2VfX3ZpZGVvcyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTsgfVxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IHJlbS1jYWxjKDIwKTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZ2FwOiByZW0tY2FsYygzMCk7IH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7IGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAgIGxpIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgaWZyYW1lIHsgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTU2MCk7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTsgfVxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgIGltZyB7IGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5wYWdlX19zaG9ydC1kZXNjcmlwdGlvbiB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApOyB9XG4gICAgcCB7XG4gICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgfVxuICB9XG4gIC5wYWdlX19mb3JtIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApOyB9XG4gICAgJi10aXRsZSB7XG4gICAgICBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnBhZ2UtLWRlZmF1bHQge1xuICAmID4gLnBhZ2VfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgICBpbWcgeyB3aWR0aDogMTAwJTsgfVxuICB9XG4gICYgPiAucGFnZV9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgLnBhZ2VfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApOyB9XG4gICAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDMwKTsgfVxuICAgICAgfVxuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygyNik7IH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnBhZ2VfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogZGFya2VuKCRzZWNvbmRhcnktY29sb3IsMTAlKTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGgxLFxuICAgICAgaDIsXG4gICAgICBoMyxcbiAgICAgIGg0LFxuICAgICAgaDUsXG4gICAgICBoNiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMCk7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDI2KTsgfVxuICAgICAgfVxuICAgICAgaDMge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygyNCk7IH1cbiAgICAgIH1cbiAgICAgIGg0LFxuICAgICAgaDUsXG4gICAgICBoNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDIyKTsgfVxuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnBhZ2VfX2ZpbGVzIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgICAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5wYWdlX192aWRlb3Mge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwMCk7IH1cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbGkge1xuICAgICAgICAmICsgbGkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygyMCk7IH1cbiAgICAgICAgLnZpZGVvIC52aWRlb19fdGl0bGUge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpOyB9XG4gICAgICAgIH1cbiAgICAgICAgaWZyYW1lIHsgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7IH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiByZW0tY2FsYygzMCk7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBmbGV4OiAxIDEgNDUlO1xuICAgICAgICAgICYgKyBsaSB7IG1hcmdpbi10b3A6IDA7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucGFnZV9fc2VydmljZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTsgfVxuICB9XG4gIC5wYWdlX19zZWNvbmRhcnktaW1hZ2VzIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE1NjApO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwMCk7IH1cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbGkge1xuICAgICAgICBpbWcgeyBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucGFnZV9fc2hvcnQtZGVzY3JpcHRpb24ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBjb2xvcjogIzcxNzU4MDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTsgfVxuICAgIHAge1xuICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIH1cbiAgfVxuICAucGFnZV9fY2hpbGRyZW4ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwMCk7IH1cbiAgfVxuICAucGFnZV9fZm9ybSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTsgfVxuICAgICYtdGl0bGUge1xuICAgICAgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnBhZ2UtLWhvbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAucGFnZV9fdG9wLFxuICAucGFnZV9fbWVkaWEgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnBhZ2VfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgICBpbWcgeyB3aWR0aDogMTAwJTsgfVxuICB9XG4gIC5wYWdlX19vdmVybGF5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogOTk5O1xuICAgIH1cbiAgfVxuICAucGFnZV9faGVybyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNTYwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgJi1pbm5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogcmVtLWNhbGMoMzApO1xuICAgIH1cbiAgfVxuICAucGFnZV9fc2xvZ2FuIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg3MCk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtZXh0cmEtYm9sZDtcbiAgICB9XG4gIH1cbiAgLnBhZ2VfX3BhcnRuZXJzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogLSByZW0tY2FsYyg3MCk7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDE1KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KTtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApO1xuICAgICAgb3JkZXI6IDI7XG4gICAgfVxuICAgICYtaW5uZXIge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE1NjApO1xuICAgIH1cbiAgfVxuICAucGFnZV9fc2VhcmNoIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE1NjApO1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTUpO1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuICAucGFnZV9fZmFkZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwwLDAsMCkgMCUsIHJnYmEoMCwwLDAsMC4xNSkgNTAlLCByZ2JhKDAsMCwwLDAuMzUpIDc1JSwgcmdiYSgwLDAsMCwwLjM1KSAxMDAlKTtcbiAgfVxuICAucGFnZV9fbWlkZGxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgLnBhZ2VfX3ZlaGljbGUtdHlwZXMsXG4gICAgLnBhZ2VfX2p1ZGdlLXNlcnZpY2Uge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7IG9yZGVyOiAtMTsgfSBcbiAgICB9XG4gIH1cbiAgLnBhZ2VfX2p1ZGdlLXNlcnZpY2Uge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApO1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRTNFM0UzO1xuICAgIH1cbiAgICAmLWlubmVyIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIH1cbiAgfVxuICAucGFnZV9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgXG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1MCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgXG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTAwKTtcbiAgICB9XG4gICAgJi1pbm5lciB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBnYXA6IHJlbS1jYWxjKDMwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGdhcDogcmVtLWNhbGMoNTApOyB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgZ2FwOiByZW0tY2FsYygxMDApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1MCUgMWZyO1xuICAgICAgICBnYXA6IHJlbS1jYWxjKDE0MCk7XG4gICAgICB9XG4gICAgfVxuICAgICYtaW1hZ2VzIHtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgb3JkZXI6IC0xOyB9XG4gICAgfVxuICB9XG4gIC5wYWdlX190aXRsZSB7XG4gICAgaDEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzQpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoNTApOyB9XG4gICAgfVxuICB9XG4gIC5wYWdlX19zdWItdGl0bGUge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbWVkaXVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygyMCk7IH1cbiAgfVxuICAucGFnZV9fZGVzY3JpcHRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNSk7XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygyMCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICB9XG4gICAgYTpub3QoLmJ1dHRvbikge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oJHByaW1hcnktY29sb3IsMTAlKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICB9XG4gICAgLmV4cGFuZCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTAwKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKCR3aGl0ZSwxKTAlLCByZ2JhKCR3aGl0ZSwxKTI1JSwgcmdiYSgkd2hpdGUsMCkxMDAlKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiByZW0tY2FsYygzMCk7XG4gICAgICBhLmV4cGFuZF9fcmVhZC1tb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMzApO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmc6IHJlbS1jYWxjKDIwIDQwKTsgfVxuICAgICAgfVxuICAgICAgYS5leHBhbmRfX3ZpZXctb3VyLXN0b2NrIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5wYWdlX192aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHsgcGFkZGluZzogcmVtLWNhbGMoMzApOyB9XG4gICAgaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDcwKTsgfVxuICAgICAgfVxuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygxOSk7IH1cbiAgICB9XG4gIH1cbiAgLnBhZ2VfX2ZlYXR1cmVkLXZlaGljbGVzIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUwKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg1MCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMDApO1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEwMCk7XG4gICAgfVxuICAgICYtaW5uZXIge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE1NjApO1xuICAgIH1cbiAgfVxuICAucGFnZV9fYmxvY2tzIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LDI1NSwyNTUsMSkgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMSkgNTAlLCByZ2JhKDI0NiwyNDYsMjQ2LDEpIDUwJSwgcmdiYSgyNDYsMjQ2LDI0NiwxKSAxMDAlKTtcbiAgICB9XG4gICAgJi1pbm5lciB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICB9XG4gIH1cbiAgLnBhZ2VfX3Jldmlld3Mge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUwKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg1MCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMDApO1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEwMCk7XG4gICAgfVxuICAgICYtb3V0ZXIgeyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI0NiwyNDYsMjQ2LDEpIDAlLCByZ2JhKDI1NSwyNTUsMjU1LDEpIDEwMCUpOyB9XG4gICAgJi1pbm5lciB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiByZW0tY2FsYygzMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgZ2FwOiByZW0tY2FsYyg1MCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkgeyBnYXA6IHJlbS1jYWxjKDEwMCk7IH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDUwJSAxZnI7XG4gICAgICAgIGdhcDogcmVtLWNhbGMoMTM1KTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1maXJzdCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgaW1nIHsgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7IH1cbiAgICB9XG4gICAgJi1zZWNvbmQgeyBtaW4td2lkdGg6IDA7IH1cbiAgfVxufVxuIiwiLnBhZ2UtLXRlYXNlciB7XG4gIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gIC5wYWdlX19wcmltYXJ5LWltYWdlcyxcbiAgLnBhZ2VfX3ZpZGVvcyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICBpbWcsXG4gICAgaWZyYW1lIHsgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSkgfVxuICB9XG4gIC5wYWdlX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDgpO1xuICAgIH1cbiAgfVxuICAucGFnZV9fY29udGVudC0td2l0aG91dC1tZWRpYSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTsgfVxuICAucGFnZV9fdGl0bGUge1xuICAgIEBleHRlbmQgaDI7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApOyB9XG4gIH1cbiAgLnBhZ2VfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpO1xuICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gIH1cbiAgLnBhZ2VfX2xpbmsge1xuICAgIC5idXR0b24geyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIH1cbn1cbiIsIi5tZXRhIHtcbiAgJiA+IHVsIHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxNSAwKTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICYgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDYpO1xuICAgIH1cbiAgfVxuICAmX19wdWJsaXNoZWQge1xuICAgIHNwYW4geyBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkOyB9XG4gIH1cbiAgJl9fY2F0ZWdvcmllcyxcbiAgJl9fdGFncyxcbiAgJl9fcmVhZC10aW1lIHtcbiAgICAmLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMyk7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcsJztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDMpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5wb3N0LS1kZWZhdWx0IHtcbiAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IHBhZGRpbmctdG9wOiByZW0tY2FsYygxMDApOyB9XG4gICYgPiAucG9zdF9fcHJpbWFyeS1pbWFnZXMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTAyNCk7XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgfVxuICB9XG4gICYgPiAucG9zdF9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMDI0KTtcbiAgICAucG9zdF9fdGl0bGUge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICB9XG4gICAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDMwKTsgfVxuICAgICAgfVxuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygyNik7IH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnBvc3RfX2Rlc2NyaXB0aW9uIHtcbiAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogZGFya2VuKCRzZWNvbmRhcnktY29sb3IsMTAlKTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGgxLFxuICAgICAgaDIsXG4gICAgICBoMyxcbiAgICAgIGg0LFxuICAgICAgaDUsXG4gICAgICBoNiB7IHBhZGRpbmctdG9wOiByZW0tY2FsYygxMCk7IH1cbiAgICAgIHAge1xuICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wb3N0X19maWxlcyB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucG9zdF9fdmlkZW9zIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApOyB9XG4gICAgdWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogcmVtLWNhbGMoMjApO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBnYXA6IHJlbS1jYWxjKDMwKTsgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NjgpIHsgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgICAgbGkge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBpZnJhbWUgeyBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucG9zdF9fc2Vjb25kYXJ5LWltYWdlcyB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNTYwKTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApOyB9XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGxpIHtcbiAgICAgICAgaW1nIHsgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnBvc3RfX3Nob3J0LWRlc2NyaXB0aW9uIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgY29sb3I6ICM3MTc1ODA7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwMCk7IH1cbiAgICBwIHtcbiAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICB9XG4gIH1cbn0iLCIucG9zdC0tdGVhc2VyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAucG9zdF9fcHJpbWFyeS1pbWFnZXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgICY6aG92ZXIgeyBvcGFjaXR5OiAuODsgfVxuICAgIH1cbiAgfVxuICAucG9zdF9fc2FzaCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogcmVtLWNhbGMoMTUpO1xuICAgIGxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg1IDEwKTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjYyQjM1O1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICB0b3A6IHJlbS1jYWxjKDIwKTtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDcgMTMpO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IHJlbS1jYWxjKDEwKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OicsJztcbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQ6OmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgfVxuICAgIH1cbiAgICBhIHsgY29sb3I6ICR3aGl0ZTsgfVxuICB9XG4gIC5wb3N0X19kZXRhaWxzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjAgMTApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYygyMCk7IH1cbiAgfVxuICAucG9zdF9fdGl0bGUge1xuICAgIGgyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpOyB9XG4gICAgfVxuICB9XG4gIC5wb3N0X19yZWFkLXRpbWUge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygxNyk7IH1cbiAgfVxuICAucG9zdF9fYm90dG9tIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ2FwOiByZW0tY2FsYygzMCk7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNSAxMCk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNFOEU4RTg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZzogcmVtLWNhbGMoMjApOyB9XG4gIH1cbiAgLnBvc3RfX2xpbmsge1xuICAgIGEge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTMpO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmc6IHJlbS1jYWxjKDE2KTsgfVxuICAgIH1cbiAgfVxufVxuIiwiLnNlYXJjaCB7XG4gIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2O1xuICBib3gtc2hhZG93OiAwIDMwcHggNjBweCAwIHJnYmEoMCwgMCwgMCwgLjEpO1xuICAmX19oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNTAgMzAgMCk7XG4gICAgbGVnZW5kIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG4gIH1cbiAgLnNlYXJjaF9fZm9ybSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgIH1cbiAgfVxuICAuaGVscC1ibG9jayB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTsgfVxuICBsYWJlbC5jb250cm9sLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbiAgc2VsZWN0IHtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDQ5KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICB9XG4gIC5mb3JtLWdyb3VwIHtcbiAgICBsYWJlbDpub3QoLmNvbnRyb2wtbGFiZWwpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoNCA4KTtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgICAgIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIC5sYWJlbC1jb3VudCB7IG1hcmdpbi1sZWZ0OiByZW0tY2FsYygzKTsgfVxuICAgICAgaW5wdXQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgfVxuICAgIGRpdjpub3QoLmhlbHAtYmxvY2spOm5vdCgjcHJpY2VfdHlwZSkge1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICBsYWJlbCB7XG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkgeyBib3JkZXItdG9wOiBub25lOyB9XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJiNjb2xvdXJzIHtcbiAgICAgICAgbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICByaWdodDogcmVtLWNhbGMoOCk7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxNik7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgbGFiZWxbZm9yPWNvbG91cnMtd2hpdGVdOjphZnRlciB7IGJvcmRlcjogJGlucHV0LWJvcmRlcjsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VhcmNoX19wcmljZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgLmZpZWxkLXByaWNlX3R5cGUge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAjcHJpY2VfdHlwZSB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgZ2FwOiByZW0tY2FsYygxMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZ2FwOiByZW0tY2FsYygyMCk7IH1cbiAgICAgIH1cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgICAmOm5vdCguY29udHJvbC1sYWJlbCkgeyBiYWNrZ3JvdW5kOiBub25lOyB9XG4gICAgICAgIC5sYWJlbC12YWx1ZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTApO1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpbnB1dCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIGlucHV0OmNoZWNrZWQgKyAubGFiZWwtdmFsdWUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZpZWxkLXByaWNlX21pbixcbiAgICAuZmllbGQtcHJpY2VfbW9udGhseV9taW4ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgLmZpZWxkLXByaWNlX21heCxcbiAgICAuZmllbGQtcHJpY2VfbW9udGhseV9tYXgge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLnNob3ctbW9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDUpO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICAuZmllbGQtc3VibWl0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGEge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjEgNSk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIH1cbiAgfVxufVxuLnBhZ2UtLWhvbWUge1xuICAuc2VhcmNoIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAuc2VhcmNoX19oZWFkZXIgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgLnNlYXJjaF9fZm9ybSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ2FwOiByZW0tY2FsYygxMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KDc2OCkgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAyZnIgMmZyIDFmcjsgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBnYXA6IHJlbS1jYWxjKDIwKTsgfVxuICAgIH1cbiAgICAuaGVscC1ibG9jayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICBzZWxlY3Qge1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg2MCk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbiAgICAuZmllbGQtc3VibWl0IHtcblxuICAgIH1cbiAgICAuZmllbGQtbWFrZV9zbHVnIHtcblxuICAgIH1cbiAgICAuZmllbGQtbW9kZWxfc2x1ZyB7XG4gXG4gICAgfVxuICAgIC5zZWFyY2hfX21ha2UtbW9kZWwge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgIGdhcDogcmVtLWNhbGMoMTApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBnYXA6IHJlbS1jYWxjKDIwKTsgfVxuICAgIH1cbiAgICAuc2VhcmNoX19wcmljZSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ2FwOiByZW0tY2FsYygxMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGdhcDogcmVtLWNhbGMoMjApOyB9XG4gICAgICAmLXR5cGUge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBnYXA6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGdhcDogcmVtLWNhbGMoMjApOyB9XG4gICAgICB9IFxuXG4gICAgICAuZmllbGQtcHJpY2VfdHlwZSB7XG5cbiAgICAgIH1cbiAgICAgIC5maWVsZC1wcmljZV9taW4sXG4gICAgICAuZmllbGQtcHJpY2VfbW9udGhseV9taW4ge1xuXG4gICAgICB9XG4gICAgICAuZmllbGQtcHJpY2VfbWF4LFxuICAgICAgLmZpZWxkLXByaWNlX21vbnRobHlfbWF4IHtcblxuICAgICAgfVxuICAgIH1cbiAgICAmLS1maW5hbmNlIHtcbiAgICAgIC5maWVsZC1pc19uZXcsXG4gICAgICAuc2VhcmNoX19tYWtlLW1vZGVsLFxuICAgICAgLmZpZWxkLXN1Ym1pdCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDQ3KTsgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDU3KTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLnRvZ2dsZXIge1xuICAuc2VhcmNoIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuc2VhcmNoX19oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikgeyBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgfVxuICB9XG59XG4uc2Vuc2ktc3Bpbm5lci1vdmVybGF5IHsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuNzUpOyB9XG4uc2stc3Bpbm5lci10aHJlZS1ib3VuY2UgZGl2IHsgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7IH1cbiIsIi5zaG93cm9vbS0tZnVsbCB7XG4gIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmctdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTAwKTsgfVxuICAuc2hvd3Jvb21fX2hlYWRpbmcge1xuICAgIGgyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNob3dyb29tX19saW5rIHtcbiAgICBAaW5jbHVkZSBidXR0b24oKTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDggMTQpO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gIH1cbiAgLnNob3dyb29tX19iYW5uZXIge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7IH1cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgaW1nIHsgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7IH1cbiAgICB9XG4gIH1cbiAgLnNob3dyb29tX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdygpO1xuICAgICYtZmlyc3Qge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDgpO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAmLXNlY29uZCB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig0KTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogcmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2hvd3Jvb21fX21lZGlhIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAxMCAwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmc6IHJlbS1jYWxjKDIwIDIwIDApOyB9XG4gICAgLnNob3dyb29tX19wcmltYXJ5LWltYWdlcyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgaW1nIHsgd2lkdGg6IDEwMCU7IH1cbiAgICAgIH0gICAgXG4gICAgfVxuICB9XG4gIC5zaG93cm9vbV9faGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiByZW0tY2FsYygyMCk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGdhcDogcmVtLWNhbGMoMzApO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgICAuc2hvd3Jvb21fX3RpdGxlIHtcbiAgICAgIGgxIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICB9XG4gICAgfVxuICAgIC5zaG93cm9vbV9fc3ViLXRpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUpO1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgfVxuICAgIC5zaG93cm9vbV9fcHJpY2Uge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICBmbGV4OiAxO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgIHNwYW4geyBmb250LXNpemU6IDcwJTsgfVxuICAgIH1cbiAgfVxuICAuc2hvd3Jvb21fX21vYmlsZS1jb250YWN0IHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBkaXNwbGF5OiBub25lOyB9XG4gIH1cbiAgLnNob3dyb29tX19kZXNjcmlwdGlvbiB7XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICBwIHtcbiAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgY29sb3I6ICM2NjY2NjY7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAmOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICB9XG4gICAgfVxuICAgICYtb3V0ZXIge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgfVxuICB9XG4gIC5zaG93cm9vbV9fdmlkZW9zIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7IH1cbiAgICAgICAgJjo6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgICAgaWZyYW1lIHsgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNob3dyb29tX19zZWNvbmRhcnktaW1hZ2VzIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE1NjApO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwMCk7IH1cbiAgICB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbGkge1xuICAgICAgICBpbWcgeyBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2hvd3Jvb21fX2NvbnRhY3Qge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgfVxuICAgIHAge1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIH1cbiAgfVxuICAuc2hvd3Jvb21fX3RlbGVwaG9uZSB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgICYtbGFiZWwge1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIH1cbiAgICAmLXZhbHVlIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNSk7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICAgIHNwYW4geyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgfVxuICB9XG4gIC5zaG93cm9vbV9fcGFydC1leGNoYW5nZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMzApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIH1cbiAgLnNob3dyb29tX19yZXZpZXdzIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg4MCk7IH1cbiAgfVxuICAuc2hvd3Jvb21fX3BhcnQtZXhjaGFuZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAtIHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiAtIHJlbS1jYWxjKDUwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLWJvdHRvbTogLSByZW0tY2FsYyg4MCk7IH1cbiAgfVxufSIsIi5zaG93cm9vbS0tdGVhc2VyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAuc2hvd3Jvb21fX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgICAmOmhvdmVyIHsgb3BhY2l0eTogLjg7IH1cbiAgICB9XG4gIH1cbiAgLnNob3dyb29tX19kZXRhaWxzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjAgMTApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYygyMCk7IH1cbiAgfVxuICAuc2hvd3Jvb21fX3RpdGxlIHtcbiAgICBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDIyKTsgfVxuICAgIH1cbiAgfVxuICAuc2hvd3Jvb21fX3N1Yi10aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDE3KTsgfVxuICB9XG4gIC5zaG93cm9vbV9fYm90dG9tIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIGdhcDogcmVtLWNhbGMoMzApO1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMTApO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRThFOEU4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmc6IHJlbS1jYWxjKDIwKTsgfVxuICB9XG4gIC5zaG93cm9vbV9fbGluayB7XG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24oKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxMyk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZzogcmVtLWNhbGMoMTYpOyB9XG4gICAgfVxuICB9XG4gIC5zaG93cm9vbV9fcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDIyKTsgfVxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IDcwJTtcbiAgICB9XG4gIH1cbn1cbiIsIi5wcmljZSB7XG4gICZfX3RvdGFsLFxuICAmX19zb2xkLFxuICAmX19tb250aGx5IHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG4gICZfX3NvbGQgeyBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkOyB9XG4gICYtLXRlYXNlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogcmVtLWNhbGMoMyk7XG4gICAgLnByaWNlX190b3RhbCxcbiAgICAucHJpY2VfX21vbnRobHksXG4gICAgLnByaWNlX19zb2xkIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygyMik7IH1cbiAgICB9XG4gIH1cbiAgJi0tZnVsbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogcmVtLWNhbGMoMyk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NjgpIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAucHJpY2VfX3RvdGFsLFxuICAgIC5wcmljZV9fbW9udGhseSxcbiAgICAucHJpY2VfX3NvbGQgeyBmb250LXNpemU6IHJlbS1jYWxjKDI2KTsgfVxuICB9XG4gICYtLWNvbXBhcmUge1xuICAgIC5wcmljZV9fdG90YWwsXG4gICAgLnByaWNlX19zb2xkIHtcbiAgICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICB9XG4gIH1cbiAgJi0tcmVjZW50bHktdmlld2VkIHtcbiAgICAucHJpY2VfX3RvdGFsLFxuICAgIC5wcmljZV9fc29sZCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgfVxufVxuLnByaWNlLWNvbWJpbmVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gICZfX3ZhbHVlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICB9XG4gICZfX3ZhdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDQpO1xuICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gIH1cbiAgJl9fd2FzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoNSk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAmLWxhYmVsIHsgZm9udC1zaXplOiA3MCU7IH1cbiAgICAmLXZhbHVlIHtcbiAgICAgIGZvbnQtc2l6ZTogNzAlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgfVxuICB9XG59XG4iLCIuc3BlY2lmaWNhdGlvbixcbi5zcGVjaWZpY2F0aW9uLWxpbmsge1xuICBjb2xvcjogJGJsYWNrO1xuICBwYWRkaW5nOiByZW0tY2FsYygxMyk7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpO1xufVxuLnNwZWNpZmljYXRpb24tbGluayB7XG4gIEBpbmNsdWRlIGJ1dHRvbigpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiByZW0tY2FsYygxNik7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG59IiwiLnRlY2huaWNhbC1kYXRhIHtcbiAgJi0tZGVmYXVsdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgLnRlY2huaWNhbC1kYXRhX19sYWJlbCB7IGNvbG9yOiAjNzE3NTgwOyB9XG4gIH1cbiAgJi0tZnVsbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC50ZWNobmljYWwtZGF0YV9fbGFiZWwge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgICAudGVjaG5pY2FsLWRhdGFfX3ZhbHVlIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgfVxuICAmLS1wcm9tb3RlZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyOyB9XG4gICAgLnRlY2huaWNhbC1kYXRhX19pY29uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgfVxuICAgIC50ZWNobmljYWwtZGF0YV9fbGFiZWwge1xuICAgICAgY29sb3I6ICM2NjY2NjY7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KDc2OCkge1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICB9XG4gICAgfVxuICAgIC50ZWNobmljYWwtZGF0YV9fdmFsdWUge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NjgpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMyk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1wcm9tb3RlZC1yZXZlYWwge1xuICAgIC50ZWNobmljYWwtZGF0YV9faWNvbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiByZW0tY2FsYyg0MCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg1MCk7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzNCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC50ZWNobmljYWwtZGF0YV9fbGFiZWwge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjb2xvcjogIzY2NjY2NjtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDUwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQpO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRlY2huaWNhbC1kYXRhX192YWx1ZSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNTApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLXN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjtcbiAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAudGVjaG5pY2FsLWRhdGFfX2xhYmVsIHsgY29sb3I6ICM3MTc1ODA7IH1cbiAgfVxuICAmLS10ZWFzZXIge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQgOCk7XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygxNik7IH1cbiAgfVxuICAmLS1mZWF0dXJlZCB7XG4gICAgLnRlY2huaWNhbC1kYXRhX19pY29uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC50ZWNobmljYWwtZGF0YV9fbGFiZWwge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICAudGVjaG5pY2FsLWRhdGFfX3ZhbHVlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgfVxuICB9XG4gICYtLWNvbXBhcmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIC50ZWNobmljYWwtZGF0YV9fbGFiZWwge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiByZW0tY2FsYyg1KTtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKDUpO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgfVxuICAgIC50ZWNobmljYWwtZGF0YV9fdmFsdWUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZzogMDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLnZlaGljbGUtLWNvbXBhcmUge1xuICAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIxNSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWF4LWhlaWdodDogMTAwdmg7XG4gICAgICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgJiA+IGxpIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDYwKTtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKG9kZCkgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTsgfVxuICAgIH1cbiAgfVxuICAudmVoaWNsZV9fYWRtaW4tZmVlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICBmb250LXNpemU6IDY1JTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJysnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzKTtcbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX2Zvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBhIHsgbWFyZ2luOiByZW0tY2FsYygzKTsgfVxuICB9XG59XG4iLCIudmVoaWNsZS0tZnVsbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC52ZWhpY2xlX19oZWFkaW5nIHtcbiAgICBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC52ZWhpY2xlX19iYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBzcGFuIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC52ZWhpY2xlX190b3Age1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBwYWRkaW5nOiByZW0tY2FsYygzMCk7IH1cbiAgICAmLWJnIHtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyg1MCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg1MCk7XG4gICAgICB9XG4gICAgfVxuICAgICYtb3V0ZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7IH1cbiAgICB9XG4gICAgJi1pbm5lciB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICAudmVoaWNsZV9fcHJpbWFyeS1pbWFnZXMge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig4KTtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBpbWcgeyB3aWR0aDogMTAwJTsgfVxuICAgICAgfVxuICAgICAgJi1pbm5lciB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgICAgfSAgICBcbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX3ByaW1hcnktaW1hZ2VzLXRodW1ibmFpbHMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7IH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi1pbm5lciB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX3ZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiByZW0tY2FsYygxMDApO1xuICAgIG1hcmdpbi1sZWZ0OiAtIHJlbS1jYWxjKDUwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICBpOjpiZWZvcmUge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTAwKTtcbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX21lZGlhLW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IHJlbS1jYWxjKDMwICsgMTUpO1xuICAgIGJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICB0ZXh0LXNoYWRvdzogcmVtLWNhbGMoMiAyIDUpIHJnYmEoJGJsYWNrLC4xNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgIHVsIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7IG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDUpO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX2hlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygyMCk7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgIGdhcDogcmVtLWNhbGMoMjApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgICBnYXA6IHJlbS1jYWxjKDMwKTtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gICAgLnZlaGljbGVfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmbGV4OiAxO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgIC52ZWhpY2xlX19tYWtlLFxuICAgICAgLnZlaGljbGVfX21vZGVsIHsgZm9udC1zaXplOiByZW0tY2FsYygyNik7IH1cbiAgICAgIC52ZWhpY2xlX19tb2RlbCB7IG1hcmdpbi1sZWZ0OiByZW0tY2FsYygyKTsgfVxuICAgICAgLnZlaGljbGVfX21vZGVsLXZhcmlhbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNSk7XG4gICAgICAgIGNvbG9yOiAjNzE3NTgwO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnZlaGljbGVfX3ByaWNlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBmbGV4OiAxO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NjgpIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gICAgfVxuICAgIC52ZWhpY2xlX19wcm9tby10ZXh0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDggMTUpO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyNjJCMzU7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93KCk7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgICYtZmlyc3Qge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig0KTtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oOCk7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogcmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgIH1cbiAgICAmLXNlY29uZCB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOCk7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKC00KTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXByb21vdGVkIHtcbiAgICAgICYgPiB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogcmVtLWNhbGMoMTApO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7IGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAgICAgbGkge1xuICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0UzRTNFMztcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDc2OCkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtc3VtbWFyeSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCg3NjgpIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICYgPiB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIGdhcDogcmVtLWNhbGMoMTApO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjsgfVxuICAgICAgfVxuICAgICAgJi1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX2Rlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgJi1pbm5lciB7XG4gICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpOyB9XG4gICAgICBwIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAmOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX3NwZWNpZmljYXRpb24ge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBnYXA6IHJlbS1jYWxjKDEwKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7IH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7IH1cbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX3NpZGViYXItb3B0aW9ucyB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0Y2RjZGNjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNDApO1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDQwKTtcbiAgICB9XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Y2RjZGNjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICB9XG4gICAgfVxuICAgIC52ZWhpY2xlLXNpZGViYXItb3B0aW9ucyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGdhcDogcmVtLWNhbGMoMjApO1xuICAgICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpOyB9XG4gICAgICB9XG4gICAgICAmX19pY29uIGk6OmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC52ZWhpY2xlX19jb250YWN0IHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjtcbiAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICB9XG4gICAgcCB7XG4gICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgfVxuICB9XG4gIC52ZWhpY2xlX19icmFuY2gge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICAmLW5hbWUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgY29sb3I6ICM3MTc1ODA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgfVxuICAgIH1cbiAgICAmLXRlbGVwaG9uZS1sYWJlbCB7XG4gICAgICBjb2xvcjogIzcxNzU4MDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW1lZGl1bTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgfVxuICAgICYtdGVsZXBob25lLXZhbHVlIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNSk7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICAgIHNwYW4geyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgfVxuICB9XG4gIC52ZWhpY2xlX19wYXJ0LWV4Y2hhbmdlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjtcbiAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIH1cbiAgLnZlaGljbGVfX3NlY29uZGFyeS1pbWFnZXMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTU2MCk7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTsgfVxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgIGltZyB7IGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDUpOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC52ZWhpY2xlX19maW5hbmNlIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1yb3coKTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygxMDApOyB9XG4gIH1cbiAgLnZlaGljbGVfX2p1ZGdlLXNlcnZpY2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwMCk7IH1cbiAgfVxuICAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEge1xuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMCk7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC52ZWhpY2xlX19zZXJ2aWNlLWhpc3Rvcnkge1xuICAgICYgPiB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgJiA+IGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgICYgPiB1bCB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5zZXJ2aWNlLWhpc3Rvcnkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogcmVtLWNhbGMoMTApO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgLnNlcnZpY2UtaGlzdG9yeV9fbGFiZWwge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIH1cbiAgICAgIC5zZXJ2aWNlLWhpc3RvcnlfX3ZhbHVlIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX2RvY3VtZW50cyB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIGEge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgJHByaW1hcnktY29sb3IgOTAlLCBibGFjayk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC52ZWhpY2xlX19kaXNjbGFpbWVyIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgfVxuICAmLXJldmVhbCB7XG4gICAgLnZlaGljbGVfX3NwZWNpZmljYXRpb24ge1xuICAgICAgdWwge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgZ2FwOiByZW0tY2FsYygxMCk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyOyB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjsgfVxuICAgICAgfVxuICAgIH1cbiAgICAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApOyB9XG4gICAgICAmID4gdWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygwKTtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgxLCAnbGknKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgyLCAnbGknKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuICAgICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgICB9XG4gICAgICAgICYgPiBsaSB7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnZlaGljbGVfX3RlY2huaWNhbC1kYXRhLXN1bW1hcnkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApOyB9XG4gICAgICAmID4gdWwge1xuICAgICAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgxLCAnbGknKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMiwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7IH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBAaW5jbHVkZSBncmlkLWxheW91dCgzLCAnbGknLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTsgfVxuICAgICAgICAmID4gbGkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7IH1cbiAgICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgICAgJjpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6bnRoLWxhc3QtY2hpbGQoMykge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC52ZWhpY2xlX190ZWNobmljYWwtZGF0YSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxNiAxNiA2KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgICYgPiB1bCB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDEsICdsaScpO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDMsICdsaScpO1xuICAgICAgICB9XG4gICAgICAgICYgPiBsaSB7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAgKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAudGVjaG5pY2FsLWRhdGEtY2F0ZWdvcnlfX3RpdGxlIHtcbiAgICAgICAgICAgIEBleHRlbmQgaDQ7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJiB1bCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnZlaGljbGUtLXRlYXNlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLnZlaGljbGVfX3ByaW1hcnktaW1hZ2VzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgICAmOmhvdmVyIHsgb3BhY2l0eTogLjg7IH1cbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX3NhdmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IHJlbS1jYWxjKDE1KTtcbiAgICBsZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHRvcDogcmVtLWNhbGMoMjApO1xuICAgICAgbGVmdDogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGkgeyBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIGk6OmJlZm9yZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgICAgICBjb250ZW50OiAnXFxlODdlJztcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApOyB9XG4gICAgICB9XG4gICAgICAmLmpzLXNhdmUtdmVoaWNsZS0tc2F2ZWQgaTo6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGU4N2QnO1xuICAgICAgfVxuICAgICAgc3BhbiB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX3Nhc2gge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICBsZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNSAxMCk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI2MkIzNTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICBsZWZ0OiByZW0tY2FsYygyMCk7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg3IDEzKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIH1cbiAgfVxuICAudmVoaWNsZV9fZGV0YWlscyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwIDEwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZzogcmVtLWNhbGMoMjApOyB9XG4gIH1cbiAgLnZlaGljbGVfX3RpdGxlIHtcbiAgICBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDIyKTsgfVxuICAgIH1cbiAgICAudmVoaWNsZV9fbW9kZWwtdmFyaWFudCB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1KTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICM2NjY2NjY7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1tZWRpdW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDE3KTsgfVxuICAgIH1cbiAgfVxuICAudmVoaWNsZV9fdGVjaG5pY2FsLWRhdGEtcHJvbW90ZWQge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDE1KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygyMCk7IH1cbiAgICAmID4gdWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGdhcDogcmVtLWNhbGMoNSk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxuICAudmVoaWNsZV9fYm90dG9tIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIGdhcDogcmVtLWNhbGMoMzApO1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMTApO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRThFOEU4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IHBhZGRpbmc6IHJlbS1jYWxjKDIwKTsgfVxuICB9XG4gIC52ZWhpY2xlX19saW5rIHtcbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEzKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBwYWRkaW5nOiByZW0tY2FsYygxNik7IH1cbiAgICB9XG4gIH1cbiAgLnZlaGljbGVfX3ByaWNlIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnZlaGljbGVfX2ZpbmFuY2UgeyBkaXNwbGF5OiBub25lOyB9XG59XG4iLCIudmVoaWNsZSB7XG4gICZfX21lZGlhLWNvdW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgICYgPiB1bCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDYpO1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNik7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYm9keS1iYWNrZ3JvdW5kLCAwLjYpO1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYgMik7XG4gICAgICAgIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJvZHkge1xuICAmX193cmFwcGVyIHsgcG9zaXRpb246IHJlbGF0aXZlOyB9XG59IiwiLmwtYnJlYWRjcnVtYnMgeyBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2OyB9XG4iLCJAZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdOaXNzYW4tQm9sZCc7XG4gIHNyYzogdXJsKCcuLi8uLi9mb250L05pc3Nhbi1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ05pc3Nhbi1SZWd1bGFyJztcbiAgc3JjOiB1cmwoJy4uLy4uL2ZvbnQvTmlzc2FuLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufSIsIi5sLWZvb3RlciB7XG4gIHBhZGRpbmctdG9wOiByZW0tY2FsYyg1MCk7XG4gIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygzMCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNkY2RjY7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEwMCk7IH1cbiAgJl9faW5uZXIge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygpO1xuICB9XG4gICZfX2ZpcnN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTApOyB9XG4gIH1cbiAgJl9fc2Vjb25kIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgaHIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTNFM0UzO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApOyB9XG4gICAgfVxuICB9XG4gICZfX3RoaXJkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiByZW0tY2FsYygxMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZ2FwOiByZW0tY2FsYygyMCk7IH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgfVxufVxuIiwiLmwtaGVhZGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiAgbWF4LXdpZHRoOiByZW0tY2FsYygxNTYwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZzogcmVtLWNhbGMoMzAgMTUpOyB9XG4gICZfX2lubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBjb2x1bW4tZ2FwOiByZW0tY2FsYygyMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgY29sdW1uLWdhcDogcmVtLWNhbGMoMzApOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkgeyBjb2x1bW4tZ2FwOiByZW0tY2FsYyg0MCk7IH1cbiAgfVxuICAmX19zZWNvbmQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgb3JkZXI6IDE7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiByaWdodDtcbiAgICB9XG4gIH1cbiAgJl9fdGhpcmQge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygzMCk7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNFM0UzRTM7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkgeyBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDQwKTsgfVxuICB9XG59XG4iLCIubC1tYWluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y2RjZGNjtcbiAgJi0tZnVsbC13aWR0aCB7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNTApO1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDEwMCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTAwKTtcbiAgICB9XG4gICAgLmwtbWFpbl9faW5uZXIge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCk7XG4gICAgfVxuICB9XG59XG4uZnJvbnQsXG4uY29udHJvbGxlci12ZWhpY2xlLmFjdGlvbi1kZXRhaWwge1xuICAubC1tYWluIHsgYmFja2dyb3VuZDogbm9uZTsgfVxufVxuIiwiLmwtbmF2IHtcbiAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICBwYWRkaW5nOiAwO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7IH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBtYXJnaW4tdG9wOiAwOyB9XG59XG4iLCIuZXh0cmFzLXByaWNlIHtcbiAgJl9fdmFsdWUgeyBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkOyB9XG4gICYtLXRlYXNlciB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMyk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgLmV4dHJhcy1wcmljZV9fbGFiZWwgeyBmb250LXNpemU6IDY1JTsgfVxuICB9XG4gICYtLWZ1bGwge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC5leHRyYXMtcHJpY2VfX3ZhbHVlcyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgc3Ryb25nIHsgZm9udC1zaXplOiByZW0tY2FsYygyMCk7IH1cbiAgICB9XG4gICAgLmV4dHJhcy1wcmljZV9fbGluayB7XG4gICAgICBhIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCRiYWNrZ3JvdW5kOiRkYXJrLWdyYXksJGJhY2tncm91bmQtaG92ZXI6YXV0byk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygxMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uZXh0cmFzIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICAmX19saXN0IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgfVxuICAgICYtaGVhZGluZyB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTsgfVxuICB9XG4gICZfX3N1bW1hcnkge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtc2hhZG93OiAxcHggMXB4ICR3aGl0ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDQpO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KDEpO1xuICAgIH1cbiAgICAmLWFtb3VudCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgICAmLWxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIH1cbiAgICAmLXZhbHVlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDcwKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgfVxufVxuIiwiLmZpbmFuY2UtcHJpY2Uge1xuICBtYXJnaW4tdG9wOiAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgJl9fbGlzdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICYtaXRlbSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG4gICZfX2xhYmVsIHtcbiAgICBmb250LXNpemU6IDY1JTtcbiAgfVxuICAmX192YWx1ZSB7IGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7IH1cbiAgJl9fc3VmZml4IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDMpO1xuICAgIGZvbnQtc2l6ZTogNjAlO1xuICB9XG4gICYtLXRlYXNlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICM3MTc1ODA7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gIH1cbiAgJi0tZnVsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICM3MTc1ODA7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgLmZpbmFuY2UtcHJpY2VfX2xpc3QtaXRlbSB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDMpO1xuICAgICAgICBmb250LXNpemU6IDY1JTtcbiAgICAgICAgY29udGVudDogJ29yJztcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICY6OmFmdGVyIHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmZpbmFuY2UtZm9ybSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gIC5maW5hbmNlLWZvcm1fX3RpdGxlIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgQGV4dGVuZCBoNDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4KTtcbiAgfVxuICAuZm9ybS1ncm91cCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBAaW5jbHVkZSBncmlkLWNvbHVtbigzKTsgfVxuICB9XG4gIC5idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDI1KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4uZmluYW5jZS1zdW1tYXJ5IHsgZGlzcGxheTogbm9uZTsgfVxuLmZpbmFuY2UtdGFibGVzIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOiBuZXN0KTtcbiAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMSwgJy5maW5hbmNlLXRhYmxlJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBAaW5jbHVkZSBncmlkLWxheW91dCgyLCAnLmZpbmFuY2UtdGFibGUnLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgfVxuICAmLS0zIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgzLCAnLmZpbmFuY2UtdGFibGUnLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgICB9XG4gIH1cbiAgLmZpbmFuY2Utd2FybmluZyB7XG4gICAgQGV4dGVuZCBoNDtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG4uZmluYW5jZS10YWJsZS0tdGVhc2VyIHtcbiAgbWFyZ2luLXRvcDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgdGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdGhlYWQgdGgsXG4gICAgdGhlYWQgdGQsXG4gICAgdGJvZHkgdGQge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoNCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICB0Ym9keSB0ZCB7IGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7IH1cbiAgICB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikgeyBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XG4gIH1cbn1cbi5maW5hbmNlLXRhYmxlLS1mdWxsIHtcbiAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTUpO1xuICAuZmluYW5jZS10YWJsZV9fdGl0bGUgeyBAZXh0ZW5kIGgzOyB9XG4gIC5maW5hbmNlLXRhYmxlX190YWJsZSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgdGJvZHkge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICB9XG4gICAgICB0aCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG4gICAgICB0ZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZmluYW5jZS10YWJsZV9fY2hlY2tlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCRib2R5LWJhY2tncm91bmQsIDEwJSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpO1xuICAgIH1cbiAgICAmLXRpdGxlIHtcbiAgICAgIEBleHRlbmQgaDQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgfVxuICAgICYtaW1hZ2Uge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBpbWcgeyBtYXgtd2lkdGg6IHJlbS1jYWxjKDIyMCk7IH1cbiAgICB9XG4gICAgLmJ1dHRvbiB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgfVxuICAuZmluYW5jZS10YWJsZV9fYXBwbHkge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAuYnV0dG9uIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNSk7IH1cbiAgfVxuICAuZmluYW5jZS10YWJsZV9fd2h5LWFwcGx5IHsgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5maW5hbmNlLXRhYmxlX192aWRlbyB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgxNiBieSA5KTtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDE1IDAgMCk7XG4gIH1cbn1cbi5maW5hbmNlLWV4YW1wbGUge1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDE1KTtcbiAgYmFja2dyb3VuZDogJHdoaXRlO1xuICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBwYWRkaW5nOiByZW0tY2FsYygzMCk7IH1cbiAgJl9fdGl0bGUge1xuICAgIEBleHRlbmQgaDQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAmX190YWJsZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJGJvZHktYmFja2dyb3VuZCwgMTAlKTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNSk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkYm9keS1iYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgJjpsYXN0LWNoaWxkIHsgYm9yZGVyLXJpZ2h0OiBub25lOyB9XG4gICAgfVxuICAgIHRoZWFkLFxuICAgIHRib2R5LFxuICAgIHRmb290IHsgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgIHRoZWFkIHRoIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgICB0Ym9keSB0ZCB7IHBhZGRpbmctdG9wOiAwOyB9XG4gICAgdGZvb3QgdGQge1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDQpO1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDQpO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkYm9keS1iYWNrZ3JvdW5kLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuLmZpbmFuY2UtZGlzY2xhaW1lciB7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICYtLWZ1bGwge1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMTUgMCAwKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbi5maW5hbmNlLWNoZWNrZXIge1xuICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNSk7XG4gICZfX3ZpZGVvIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuICAgIH1cbiAgICAmLWlubmVyIHtcbiAgICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZW1iZWQoMTYgYnkgOSk7XG4gICAgfVxuICB9XG4gICZfX2RldGFpbHMge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG4gICAgfVxuICAgICYtdGl0bGUgeyBAZXh0ZW5kIGgzOyB9XG4gICAgJi1pbWFnZSB7XG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIyMCk7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uZmluYW5jZS13aWRnZXQge1xuICAmX192aWRlb3Mge1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcGFkZGluZy10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSk7IH1cbiAgICB1bCB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdygkYmVoYXZpb3I6IG5lc3QpO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMSwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMiwgJ2xpJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gICAgICB9XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX3ZpZGVvIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKDE2IGJ5IDkpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi5maW5hbmNlLXByaWNlLXNsaWRlciB7XG4gIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7IG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTsgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KDE2MDApIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoNDApOyB9XG4gICZfX2xhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApOyB9XG4gICAgJi12YWx1ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzYpO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWV4dHJhLWJvbGQ7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBmb250LXNpemU6IHJlbS1jYWxjKDQyKTsgfVxuICAgIH1cbiAgfVxuICAmX19zbGlkZXIge1xuICAgIC5ub1VpLWNvbm5lY3RzIHsgYmFja2dyb3VuZC1jb2xvcjogI0U3RTdFNzsgfVxuICAgIC5ub1VpLXRhcmdldCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgIH1cbiAgICAubm9VaS1oYW5kbGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0IxQjFCMTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNCMUIxQjE7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxuICAmX19idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE4IDMwKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICB9XG59XG4uZmluYW5jZS10YWJsZS0tb3JkZXIsXG4uZmluYW5jZS10YWJsZS0tZnVsbCB7XG4gIEBpbmNsdWRlIGdyaWQtcm93KCRiZWhhdmlvcjogbmVzdCk7XG4gIEBpbmNsdWRlIGdyaWQtbGF5b3V0KDEsICcuZmluYW5jZS10YWJsZV9fY29udGFpbmVyJywgJGdyaWQtY29sdW1uLWd1dHRlcik7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoMiwgJy5maW5hbmNlLXRhYmxlX19jb250YWluZXInLCAkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcbiAgfVxuICAuZmluYW5jZS10YWJsZV9fY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNSk7XG4gICAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWVlZWU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5maW5hbmNlLXRhYmxlX190aXRsZSB7XG4gICAgQGV4dGVuZCBoMztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNSk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTApO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICB9XG4gIC5maW5hbmNlLXRhYmxlX19zdWItdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpO1xuICB9XG4gIC5maW5hbmNlLXRhYmxlX19saW5rLFxuICAuZmluYW5jZS10YWJsZV9fYXBwbHksXG4gIC5maW5hbmNlLXRhYmxlX19kZWFsIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNSk7XG4gICAgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMTApO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5maW5hbmNlLXRhYmxlX19hcHBseSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNDglO1xuICAgIH1cbiAgfVxuICAuZmluYW5jZS10YWJsZV9fZGVhbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDQ4JTtcbiAgICB9XG4gIH1cbiAgLmZpbmFuY2UtdGFibGVfX2Rpc2NsYWltZXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDE1KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICB9XG59XG4iLCIuc2xpY2stc2xpZGVyIHtcbiAgLnNsaWNrLXNsaWRlIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMgeyBvdXRsaW5lOiBub25lOyB9XG4gIH1cbiAgLnNsaWNrLXByZXYsXG4gIC5zbGljay1uZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDQwKTtcbiAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICB6LWluZGV4OiA5O1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDUwKTtcbiAgICAgIHdpZHRoOiByZW0tY2FsYyg1MCk7XG4gICAgfVxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAmLnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnTWF0ZXJpYWwgSWNvbnMnO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgZm9udC1zaXplOiByZW0tY2FsYygxOCk7IH1cbiAgICB9XG4gIH1cbiAgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IHJlbS1jYWxjKDUpO1xuICAgICY6YmVmb3JlIHsgY29udGVudDogJ1xcZTVjNCc7IH1cbiAgfVxuICAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IHJlbS1jYWxjKDUpO1xuICAgICY6YmVmb3JlIHsgY29udGVudDogJ1xcZTVjOCc7IH1cbiAgfVxuICAmLnNsaWNrLWRvdHRlZCB7IHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygyMCk7IH1cbiAgLnNsaWNrLWRvdHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0gcmVtLWNhbGMoNyk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygzKTtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygyMCk7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMik7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMzApO1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgNCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYyg0MCk7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCA2KTtcbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzKTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbiB7IGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yOyB9XG4gICAgfVxuICB9XG59XG4ubGlzdGluZy0tYmxvY2stdGlsZSB7XG4gIC5zbGljay1zbGlkZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAtIHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0gcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgfVxuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stcHJldixcbiAgICAuc2xpY2stbmV4dCB7IGhlaWdodDogcmVtLWNhbGMoMTAwKTsgfVxuICAgIC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGxlZnQ6IHJlbS1jYWxjKDE1KTsgfVxuICAgIH1cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogcmVtLWNhbGMoMTApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHsgcmlnaHQ6IHJlbS1jYWxjKDE1KTsgfVxuICAgIH1cbiAgfVxufVxuLmxpc3RpbmctLWJsb2NrLXZlaGljbGUtdHlwZSB7XG4gIC5zbGljay1zbGlkZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAtIHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0gcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgfVxuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stcHJldixcbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoNDApO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KDQ4MCkgeyB0b3A6IC0gcmVtLWNhbGMoNDApOyB9XG4gICAgfVxuICAgIC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNDgwKSB7XG4gICAgICAgIGxlZnQ6IGluaGVyaXQ7XG4gICAgICAgIHJpZ2h0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyICsgNDUpKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHJpZ2h0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMiArIDQ1KSk7XG4gICAgICB9XG4gICAgfVxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICByaWdodDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5saXN0aW5nLS1zaG93cm9vbS1mZWF0dXJlZCB7XG4gIHBhZGRpbmctdG9wOiByZW0tY2FsYyg2MCk7XG4gIC5zbGljay1zbGlkZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAtIHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0gcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgfVxuICAgIC5zbGljay1saXN0IHsgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICAuc2xpY2stc2xpZGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLXByZXYge1xuICAgICAgdG9wOiAtIHJlbS1jYWxjKDQwKTtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgdG9wOiAtIHJlbS1jYWxjKDQwKTtcbiAgICAgIHJpZ2h0OiBpbmhlcml0O1xuICAgICAgbGVmdDogcmVtLWNhbGMoNjApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbGVmdDogcmVtLWNhbGMoNjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmxpc3RpbmctLWJsb2NrIHtcbiAgLnNsaWNrLXNsaWRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoNSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKDUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSByZW0tY2FsYygxNSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0gcmVtLWNhbGMoMTUpO1xuICAgIH1cbiAgICAuc2xpY2stbGlzdCB7IG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gICAgLnNsaWNrLXRyYWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICAuc2xpY2stc2xpZGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDUpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmxpc3RpbmctLXZlaGljbGUtZmVhdHVyZWQsXG4ubGlzdGluZy0tdmVoaWNsZS1zaW1pbGFyLFxuLmxpc3RpbmctLXZlaGljbGUtaW4tc3RvY2ssXG4ubGlzdGluZy0tb2ZmZXItZmVhdHVyZWQge1xuICAuc2xpY2stc2xpZGVyIHtcbiAgICBtYXJnaW4tbGVmdDogLSByZW0tY2FsYygxMCk7XG4gICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKDEwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoMTUpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKDE1KTtcbiAgICB9XG4gICAgLnNsaWNrLXRyYWNrIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBpbmhlcml0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O1xuICAgIH1cbiAgICAuc2xpY2stbGlzdCB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzY4KSB7IG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICB9XG4gICAgLnNsaWNrLXRyYWNrIHsgZGlzcGxheTogZmxleDsgfVxuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTApO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTUpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5saXN0aW5nLS1jdXN0b20tZW50cnktcmV2aWV3LWZlYXR1cmVkIHtcbiAgLnNsaWNrLXNsaWRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgIG1hcmdpbi1yaWdodDogLSByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtIHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0gcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgICB9XG4gICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgICB9XG4gICAgfVxuICAgIC5zbGljay1wcmV2IHtcbiAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKDEwKTtcbiAgICAgIGJvdHRvbTogLSByZW0tY2FsYyg4MCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBib3R0b206IC0gcmVtLWNhbGMoMTA1KTtcbiAgICAgICAgbGVmdDogcmVtLWNhbGMoMTUpO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICB0b3A6IGluaGVyaXQ7XG4gICAgICByaWdodDogaW5oZXJpdDtcbiAgICAgIGJvdHRvbTogLSByZW0tY2FsYyg4MCk7XG4gICAgICBsZWZ0OiByZW0tY2FsYyg2MCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBib3R0b206IC0gcmVtLWNhbGMoMTA1KTtcbiAgICAgICAgbGVmdDogcmVtLWNhbGMoNzUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLnZlaGljbGVfX3ByaW1hcnktaW1hZ2VzIHtcbiAgLnNsaWNrLXByZXYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IGxlZnQ6IHJlbS1jYWxjKDE1KTsgfVxuICB9XG4gIC5zbGljay1uZXh0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyByaWdodDogcmVtLWNhbGMoMTUpOyB9XG4gIH1cbn1cbi52ZWhpY2xlX19wcmltYXJ5LWltYWdlcy10aHVtYm5haWxzIHtcbiAgLnNsaWNrLXNsaWRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoMSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAtIHJlbS1jYWxjKDEpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSByZW0tY2FsYyg1KTtcbiAgICAgIG1hcmdpbi1yaWdodDogLSByZW0tY2FsYyg1KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLXRvcDogLSByZW0tY2FsYygxMSk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtIHJlbS1jYWxjKDExKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiBpbmhlcml0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiBpbmhlcml0O1xuICAgIH1cbiAgICAuc2xpY2stc2xpZGUge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDEpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg1KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg1KTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTEpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMSk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBpbmhlcml0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5saXN0aW5nLS12ZWhpY2xlLWNvbXBhcmUge1xuICAuc2xpY2stc2xpZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNDEpO1xuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMyk7IH1cbiAgICB9XG4gICAgLnNsaWNrLXByZXYsXG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgdG9wOiByZW0tY2FsYygyMCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDM0KTtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiBpbmhlcml0O1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKDQxKTtcbiAgICB9XG4gICAgLnNsaWNrLW5leHQgeyByaWdodDogMDsgfVxuICB9XG59XG4ubGlzdGluZy0tYmxvY2stcGFydG5lciB7XG4gIC5zbGljay1saXN0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7IG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gIH1cbiAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgLnNsaWNrLXNsaWRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgIG1hcmdpbi1yaWdodDogLSByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICB9XG4gIH1cbn1cbi5saXN0aW5nLS12ZWhpY2xlLWZlYXR1cmVkLXNpZGViYXIge1xuICAuc2xpY2stc2xpZGVyIHtcbiAgICAuc2xpY2stcHJldixcbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICB0b3A6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpICsgMjUpO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg1MCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgdG9wOiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikgKyAzMCk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNjApO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgbGVmdDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgcmlnaHQ6IGluaGVyaXQ7XG4gICAgICBsZWZ0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyICsgMzkpKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBsZWZ0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMiArIDQ0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ucGFnZS0tZGVmYXVsdCAucGFnZV9fc2Vjb25kYXJ5LWltYWdlcyxcbi5wb3N0LS1kZWZhdWx0IC5wb3N0X19zZWNvbmRhcnktaW1hZ2VzLFxuLnBhZ2UtLWNvbnRhY3QgLnBhZ2VfX3NlY29uZGFyeS1pbWFnZXMsXG4udmVoaWNsZS0tZnVsbCAudmVoaWNsZV9fc2Vjb25kYXJ5LWltYWdlcyxcbi5zaG93cm9vbS0tZnVsbCAuc2hvd3Jvb21fX3NlY29uZGFyeS1pbWFnZXMsXG4ub2ZmZXItLWZ1bGwgLm9mZmVyX19zZWNvbmRhcnktaW1hZ2VzIHtcbiAgLnNsaWNrLXNsaWRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IC0gcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgc21hbGwpIC8gMikpO1xuICAgIG1hcmdpbi1yaWdodDogLSByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtIHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0gcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpKTtcbiAgICB9XG4gICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkgLyAyKSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkgLyAyKSk7XG4gICAgICB9XG4gICAgfVxuICAgIC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpICsgNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBsZWZ0OiByZW0tY2FsYygobWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pIC8gMikgKyA1KTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKChtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSAvIDIpICsgNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICByaWdodDogcmVtLWNhbGMoKG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKSAvIDIpICsgNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ubGlzdGluZy0tYmxvY2stdmVoaWNsZS10eXBlcyB7XG4gIC5zbGljay1zbGlkZXIge1xuICAgIC5zbGljay1wcmV2LFxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjZGNkY2O1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLXByZXYge1xuICAgICAgdG9wOiAtIHJlbS1jYWxjKDIxKTtcbiAgICAgIGxlZnQ6IGluaGVyaXQ7XG4gICAgICByaWdodDogcmVtLWNhbGMoNjApO1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogcmVtLWNhbGMoNSk7XG4gICAgICAmOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYxZTYnOyB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygxKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UzRTNFMztcbiAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgdG9wOiAtIHJlbS1jYWxjKDIxKTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHJlbS1jYWxjKDUpO1xuICAgICAgJjpiZWZvcmUgeyBjb250ZW50OiAnXFxmMWRmJzsgfVxuICAgIH1cbiAgfVxufSIsIkBjaGFyc2V0ICd1dGYtOCc7XG5cbi8vIFp1cmIgRm91bmRhdGlvblxuLy8gLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0ICdzZXR0aW5ncyc7XG5AaW1wb3J0ICdmb3VuZGF0aW9uJztcbkBpbXBvcnQgJ21vdGlvbi11aSc7XG5cbkBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbkBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1yYW5nZS1pbnB1dDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbkBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbkBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWVsZW1lbnQ7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLW1ldGVyLWVsZW1lbnQ7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbkBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbi8vIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcztcblxuQGluY2x1ZGUgbW90aW9uLXVpLXRyYW5zaXRpb25zO1xuQGluY2x1ZGUgbW90aW9uLXVpLWFuaW1hdGlvbnM7XG5cbi8vIFRoZW1lIEhlbHBlciBQYXJ0aWFsc1xuLy8gLS0tLS0tLS0tLS0tLVxuXG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvYmFzZS9fYmFzZS5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9fdGVtcG9yYXJ5LXNsb2dhbi5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9ibG9jay9fYmxvY2stLXNpZGViYXIuc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvZGVwYXJ0bWVudC9fZGVwYXJ0bWVudC0tdmVoaWNsZS5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9mb3JtL19mb3JtLS1kZWxpdmVyeS1jYWxlbmRhci5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9mb3JtL19mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS12YWx1YXRpb24uc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvZm9ybS9fZm9ybS0tc2VydmljZS1ib29raW5nLnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL2Zvcm0vX2Zvcm0tLXVwbG9hZC1lbnF1aXJ5LnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL2Zvcm0vX2Zvcm0tLXZlaGljbGUtcGF5bWVudC5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9mb3JtL19mb3JtLS12ZWhpY2xlLXNvcnQuc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvZm9ybS9fZm9ybS0tdmVoaWNsZS12YWx1YXRpb24uc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvZm9ybS9fZm9ybS5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9tZWRpYS9fdmlkZW8uc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvbmV3LXZlaGljbGUvX25ldy12ZWhpY2xlLS1mdWxsLnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL25ldy12ZWhpY2xlL19uZXctdmVoaWNsZS0tdGVhc2VyLnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL25ldy12ZWhpY2xlL19uZXctdmVoaWNsZS5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9vZmZlci9fb2ZmZXItLWZlYXR1cmVkLnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL29yZGVyL19hZGQtb24uc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvb3JkZXIvX2NhbGVuZGFyLnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL29yZGVyL19jb2xsZWN0aW9uLWRlbGl2ZXJ5LnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL29yZGVyL19vcmRlci1pbnRyb2R1Y3Rpb24uc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvb3JkZXIvX29yZGVyLXBheW1lbnQuc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvb3JkZXIvX29yZGVyLXByb2dyZXNzLnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL29yZGVyL19vcmRlci1zdGF0ZS1zdW1tYXJ5LnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL29yZGVyL19vcmRlci1zdW1tYXJ5LnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL29yZGVyL19vcmRlci5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9vcmRlci9fcGFydC1leGNoYW5nZS5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9wYXJ0L19wYXJ0LS1mZWF0dXJlZC5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9wYXJ0L19wYXJ0LS1mdWxsLnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL3BhcnQvX3BhcnQtLXRlYXNlci5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9wb3N0L19wb3N0LS1mZWF0dXJlZC5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9zZWFyY2gvX3F1aWNrLXNlYXJjaC5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy9zZWFyY2gvX3NlYXJjaC1zZWxlY3Rpb24uc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2NvbXBvbmVudHMvc2hvd3Jvb20vX3Nob3dyb29tLS1mZWF0dXJlZC5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy92ZWhpY2xlL192ZWhpY2xlLS1nZW5lcmFsLnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy9jb21wb25lbnRzL3ZlaGljbGUvX3ZlaGljbGUtLWxhdGVzdC5zY3NzXCI7XG5AaW1wb3J0IFwiL3Zhci93d3cvY21zL3RoZW1lcy9hbHBoYS9oZWxwZXJzL3Njc3MvY29tcG9uZW50cy92ZWhpY2xlL192ZWhpY2xlLS1yZWNlbnRseS12aWV3ZWQuc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL2xheW91dC9fYWxlcnQuc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL3ZlbmRvci9fY3JlZGl0LWNhbGN1bGF0b3Iuc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL3ZlbmRvci9fZmFuY3lib3guc2Nzc1wiO1xuQGltcG9ydCBcIi92YXIvd3d3L2Ntcy90aGVtZXMvYWxwaGEvaGVscGVycy9zY3NzL3ZlbmRvci9fcmV2aWV3LnNjc3NcIjtcbkBpbXBvcnQgXCIvdmFyL3d3dy9jbXMvdGhlbWVzL2FscGhhL2hlbHBlcnMvc2Nzcy92ZW5kb3IvX3dpemFyZC5zY3NzXCI7XG5cbi8vIFNpdGUgU3BlY2lmaWNcbi8vIC0tLS0tLS0tLS0tLS1cblxuQGltcG9ydCBcImNvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYmFubmVyLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fYnV0dG9uLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL19jbG9zZS1idXR0b24uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2NyZWRpdHMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2ljb24uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2xpc3Rpbmcuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX2xvZ28uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX21lZXQtdGhlLXRlYW0uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX21lbnUuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3BhZ2luYXRpb24uc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3BsYXkuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3JldmVhbC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fcmV2aWV3cy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9fc2F2ZWQuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3RhYnMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3RvZ2dsZXIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvX3RvcC1tYWtlcy1hbmQtbW9kZWxzLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jsb2NrL19ibG9jay0tYWJvdXQtdXMuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYmxvY2svX2Jsb2NrLS1iYW5uZXIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYmxvY2svX2Jsb2NrLS1kZWZhdWx0LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jsb2NrL19ibG9jay0tZGlzY2xhaW1lci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ibG9jay9fYmxvY2stLWRvY3VtZW50LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jsb2NrL19ibG9jay0tZm9vdGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jsb2NrL19ibG9jay0taGVyby5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ibG9jay9fYmxvY2stLWluZGV4LWhlYWRlci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ibG9jay9fYmxvY2stLW9mZmVycy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ibG9jay9fYmxvY2stLXBhcnRuZXItcmV2aWV3cy5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ibG9jay9fYmxvY2stLXBhcnRuZXIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYmxvY2svX2Jsb2NrLS1wb3AtdXAuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYmxvY2svX2Jsb2NrLS1yZXN1bHRzLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jsb2NrL19ibG9jay0tc2VhcmNoLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Jsb2NrL19ibG9jay0tc2VydmljZS5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9ibG9jay9fYmxvY2stLXRpbGUuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYmxvY2svX2Jsb2NrLS11c3Auc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYmxvY2svX2Jsb2NrLS12ZWhpY2xlLXR5cGVzLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2JyYW5jaC9fYnJhbmNoLS1jb250YWN0LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2JyYW5jaC9fYnJhbmNoLS1mb290ZXIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYnJhbmNoL19icmFuY2gtLWZ1bGwuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvYnJhbmNoL19icmFuY2gtLXRlYXNlci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9icmFuY2gvX2JyYW5jaC0tdmVoaWNsZS5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9icmFuY2gvX2JyYW5jaC0td2lkZ2V0LnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2N1c3RvbS1lbnRyeS9fY3VzdG9tLWVudHJ5LS1mYXEuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvY3VzdG9tLWVudHJ5L19jdXN0b20tZW50cnktLXJldmlld3Muc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZGVwYXJ0bWVudC9fZGVwYXJ0bWVudC0tZm9vdGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2RlcGFydG1lbnQvX2RlcGFydG1lbnQtLXRlYXNlci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mb3JtL19mb3JtLS1kaXJlY3Rpb25zLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Zvcm0vX2Zvcm0tLWVucXVpcnkuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvZm9ybS9fZm9ybS0tcGFydC1leGNoYW5nZS5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mb3JtL19mb3JtLS1zZWxsLXlvdXItdmVoaWNsZS5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9mb3JtL19mb3JtLS12ZWhpY2xlLWVucXVpcnkuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbWVkaWEvX25vLWltYWdlLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL21lZGlhL19wcmltYXJ5LWltYWdlLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL21lZGlhL19zZWNvbmRhcnktaW1hZ2Uuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvb2ZmZXIvX29mZmVyLS1mdWxsLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL29mZmVyL19vZmZlci0tdGVhc2VyLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhZ2UvX3BhZ2UtLWNvbnRhY3Quc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcGFnZS9fcGFnZS0tZGVmYXVsdC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9wYWdlL19wYWdlLS1ob21lLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhZ2UvX3BhZ2UtLXRlYXNlci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9wb3N0L19tZXRhLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3Bvc3QvX3Bvc3QtLWRlZmF1bHQuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvcG9zdC9fcG9zdC0tdGVhc2VyLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3NlYXJjaC9fc2VhcmNoLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3Nob3dyb29tL19zaG93cm9vbS0tZnVsbC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9zaG93cm9vbS9fc2hvd3Jvb20tLXRlYXNlci5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy92ZWhpY2xlL19wcmljZS5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy92ZWhpY2xlL19zcGVjaWZpY2F0aW9uLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3ZlaGljbGUvX3RlY2huaWNhbC1kYXRhLnNjc3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3ZlaGljbGUvX3ZlaGljbGUtLWNvbXBhcmUuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdmVoaWNsZS9fdmVoaWNsZS0tZnVsbC5zY3NzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy92ZWhpY2xlL192ZWhpY2xlLS10ZWFzZXIuc2Nzc1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdmVoaWNsZS9fdmVoaWNsZS5zY3NzXCI7XG5AaW1wb3J0IFwibGF5b3V0L19ib2R5LnNjc3NcIjtcbkBpbXBvcnQgXCJsYXlvdXQvX2JyZWFkY3J1bWJzLnNjc3NcIjtcbkBpbXBvcnQgXCJsYXlvdXQvX2ZvbnRzLnNjc3NcIjtcbkBpbXBvcnQgXCJsYXlvdXQvX2Zvb3Rlci5zY3NzXCI7XG5AaW1wb3J0IFwibGF5b3V0L19oZWFkZXIuc2Nzc1wiO1xuQGltcG9ydCBcImxheW91dC9fbWFpbi5zY3NzXCI7XG5AaW1wb3J0IFwibGF5b3V0L19uYXYuc2Nzc1wiO1xuQGltcG9ydCBcInZlbmRvci9fZXh0cmFzLnNjc3NcIjtcbkBpbXBvcnQgXCJ2ZW5kb3IvX2ZpbmFuY2Uuc2Nzc1wiO1xuQGltcG9ydCBcInZlbmRvci9fc2xpY2stc2xpZGVyLnNjc3NcIjtcblxuLmRhdGVwaWNrZXIuZHJvcGRvd24tbWVudSB7IHotaW5kZXg6IDk5OTk5OTk5OTk5ICFpbXBvcnRhbnQ7IH1cblxuLm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQge1xuICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczpcbiAgJ0ZJTEwnIDAsXG4gICd3Z2h0JyA0MDAsXG4gICdHUkFEJyAwLFxuICAnb3BzeicgMjRcbn1cblxuLmRyb3Bkb3duLXBhbmUge1xuICBjb2xvcjogJHdoaXRlO1xuICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg1KTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBhIHsgY29sb3I6ICR3aGl0ZTsgfVxufVxuXG5odG1sIHsgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7IH1cblxuLy8gQ29udGFpbmVyIGNyZWF0ZWQgZHluYW1pY2FsbHkgYnkgalF1ZXJ5IHRvIGhhbmRsZSB0YWJsZSBob3Jpem9udGFsIHNjcm9sbGluZ1xuLnRhYmxlLXNjcm9sbC13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAvLyBGb3JjZSB3cmFwcGVkIHRhYmxlcyB0byBzdHJldGNoIHRvIDEwMCUgb24gZGVza3RvcCBhbmQgb3ZlcnJpZGUgaW5saW5lIHN0eWxlc1xuICB0YWJsZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgIG1pbi13aWR0aDogNjUwcHg7XG4gICAgfVxuICB9XG59Il19 */
